Subject: [PATCH] * gdb-mi.el: allow disabling the gdb io buffer
From: StrawberryTea <[email-masked]>
To: [email-masked]
Date: Thu, 27 Jul 2023 20:33:39 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

This change allows the user to disable the `gdb-inferior-io' buffer.
This is useful for users that prefer a more classical gdb experience
where you just have the GDB window and the source window.
---
 lisp/progmodes/gdb-mi.el | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index a1091de43e9..0d6d7ab02c0 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -1098,9 +1098,10 @@ detailed description of this mode.
                      (if gdb-debuginfod-enable "on" "off"))
              'gdb-debuginfod-message)
 
-  (gdb-get-buffer-create 'gdb-inferior-io)
-  (gdb-clear-inferior-io)
-  (gdb-inferior-io--init-proc (get-process "gdb-inferior"))
+  (when gdb-display-io-buffer
+    (gdb-get-buffer-create 'gdb-inferior-io)
+    (gdb-clear-inferior-io)
+    (gdb-inferior-io--init-proc (get-process "gdb-inferior")))
 
   (when (eq system-type 'windows-nt)
     ;; Don't create a separate console window for the debuggee.
@@ -1828,6 +1829,13 @@ this trigger is subscribed to `gdb-buf-publisher' and called with
   :group 'gdb
   :version "25.1")
 
+(defcustom gdb-display-io-buffer t
+  "When non-nil, display the `gdb-inferior-io' buffer.  Otherwise,
+send program output to the GDB buffer."
+  :type 'boolean
+  :group 'gdb
+  :version "30.1")
+
 (defun gdb-inferior-filter (proc string)
   (unless (string-equal string "")
     (let (buf)
-- 
2.41.0