Comment puis-je empêcher le tampon d'entrée / sortie * de gdb d'apparaître de manière agressive dans le cadre?


8

Lorsque vous utilisez gdb avec M-x gdb, le *input/output*tampon apparaît toujours de manière agressive dans n'importe quel cadre qui a le focus et ne l'affiche pas déjà. Je voudrais que le *input/output*tampon reste silencieusement en arrière-plan à moins que je ne le fasse manuellement.

Voici un exemple très simple avec emacs -Q

courir M-x gdb. donner un programme de bashet frapperReturn

dans la *gud-bash*fenêtre, entrezrun -c "while true; do echo hi && sleep 1; done"

Remarquez comment la *input/output of bash*fenêtre apparaît. Si vous supprimez ce tampon avec C-x 1depuis la *gud-bash*fenêtre, il revient dès que gdb produit plus de sortie standard. Voilà le comportement que je ne veux pas.

En particulier, exécutez maintenant M-x make-frame(à partir de la *gud-bash*fenêtre). Remarquez comment, dans le nouveau cadre, *input/output of bash*apparaît également! Il faut donc une fenêtre sur chaque trame emacs.

Comment puis-je réparer cela?

Edit: j'ai presque oublié d'ajouter - la version emacs de

GNU Emacs 24.5.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.30)

Réponses:


6

Dès qu'emacs 25 atterrira, il y aura une variable gdb-display-io-nopopuppour résoudre ce problème


Merci merci merci! Cela a été une irritation pour moi pendant des années! Cela a résolu mon problème.
Pablo Halpern

-1

diviser la fenêtre emacs en trois (cx 3) et affecter une fenêtre au tampon d' entrée / sortie (cx b, entrée / sortie )

Arrête la fenêtre contextuelle et la sortie du programme est affichée dans la fenêtre tampon " entrée / sortie "


Clarifiez ce que vous entendez par «écran» et par «attribuer». De plus, je ne suis pas sûr qu'il résout le problème que le code du débogueur vous oblige à avoir le tampon d' entrée / sortie affiché dans une fenêtre dans chaque image.
Stefan

fractionner les fenêtres emacs: (cx n), affecter un tampon à une fenêtre (cx b)
Paul Salber
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.