[review] Document and extend readline-bindable functions

Message ID gerrit.1573325825000.I2233779b7aefe372f19bd03c8f325733c3385e72@gnutoolchain-gerrit.osci.io
State New, archived
Headers

Commit Message

Simon Marchi (Code Review) Nov. 9, 2019, 6:57 p.m. UTC
  Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/603
......................................................................

Document and extend readline-bindable functions

This adds readline-bindable function names to a few gdb functions that
already had key bindings.  This lets users change the bindings.

This also removes the gdb-command function.  Due to how this function
is implemented, it doesn't make sense to allow binding it.

Finally, this updates the documentation to reflect these changes.

gdb/ChangeLog
2019-11-09  Tom Tromey  <tom@tromey.com>

	* tui/tui.c (tui_initialize_readline): Add new bindable readline
	functions.

gdb/doc/ChangeLog
2019-11-09  Tom Tromey  <tom@tromey.com>

	* gdb.texinfo (TUI Keys): Document readline function names.

Change-Id: I2233779b7aefe372f19bd03c8f325733c3385e72
---
M gdb/ChangeLog
M gdb/doc/ChangeLog
M gdb/doc/gdb.texinfo
M gdb/tui/tui.c
4 files changed, 27 insertions(+), 1 deletion(-)
  

Comments

Eli Zaretskii Nov. 9, 2019, 8:02 p.m. UTC | #1
> Date: Sat, 9 Nov 2019 13:57:06 -0500
> From: "Tom Tromey (Code Review)" <gerrit@gnutoolchain-gerrit.osci.io>
> 
> Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/603
> ......................................................................
> 
> Document and extend readline-bindable functions
> 
> This adds readline-bindable function names to a few gdb functions that
> already had key bindings.  This lets users change the bindings.
> 
> This also removes the gdb-command function.  Due to how this function
> is implemented, it doesn't make sense to allow binding it.
> 
> Finally, this updates the documentation to reflect these changes.
> 
> gdb/ChangeLog
> 2019-11-09  Tom Tromey  <tom@tromey.com>
> 
> 	* tui/tui.c (tui_initialize_readline): Add new bindable readline
> 	functions.
> 
> gdb/doc/ChangeLog
> 2019-11-09  Tom Tromey  <tom@tromey.com>
> 
> 	* gdb.texinfo (TUI Keys): Document readline function names.

OK for the documentation part, thanks.
  
Simon Marchi (Code Review) Nov. 11, 2019, 11:57 p.m. UTC | #2
Tom Tromey has posted comments on this change.

Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/603
......................................................................


Patch Set 1:

I'm going to check these two in.
  

Patch

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f5c8a76..dd90ebd 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@ 
+2019-11-09  Tom Tromey  <tom@tromey.com>
+
+	* tui/tui.c (tui_initialize_readline): Add new bindable readline
+	functions.
+
 2019-11-08  Tom Tromey  <tromey@adacore.com>
 
 	* top.c (read_command_file): Update.
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index 660d41d..c660a6b 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,5 +1,9 @@ 
 2019-11-09  Tom Tromey  <tom@tromey.com>
 
+	* gdb.texinfo (TUI Keys): Document readline function names.
+
+2019-11-09  Tom Tromey  <tom@tromey.com>
+
 	* gdb.texinfo (Editing): Document operate-and-get-next.
 
 2019-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 1af5674..a1856e8 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -27621,6 +27621,9 @@ 
 the TUI mode, control is given back to the curses windows.
 The screen is then refreshed.
 
+This key binding uses the bindable Readline function
+@code{tui-switch-mode}.
+
 @kindex C-x 1
 @item C-x 1
 Use a TUI layout with only one window.  The layout will
@@ -27629,6 +27632,9 @@ 
 
 Think of this key binding as the Emacs @kbd{C-x 1} binding.
 
+This key binding uses the bindable Readline function
+@code{tui-delete-other-windows}.
+
 @kindex C-x 2
 @item C-x 2
 Use a TUI layout with at least two windows.  When the current
@@ -27638,6 +27644,9 @@ 
 
 Think of it as the Emacs @kbd{C-x 2} binding.
 
+This key binding uses the bindable Readline function
+@code{tui-change-windows}.
+
 @kindex C-x o
 @item C-x o
 Change the active window.  The TUI associates several key bindings
@@ -27646,10 +27655,16 @@ 
 
 Think of it as the Emacs @kbd{C-x o} binding.
 
+This key binding uses the bindable Readline function
+@code{tui-other-window}.
+
 @kindex C-x s
 @item C-x s
 Switch in and out of the TUI SingleKey mode that binds single
 keys to @value{GDBN} commands (@pxref{TUI Single Key Mode}).
+
+This key binding uses the bindable Readline function
+@code{next-keymap}.
 @end table
 
 The following key bindings only work in the TUI mode:
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c
index 1568351..3f5ab41 100644
--- a/gdb/tui/tui.c
+++ b/gdb/tui/tui.c
@@ -330,8 +330,10 @@ 
   Keymap tui_ctlx_keymap;
 
   rl_add_defun ("tui-switch-mode", tui_rl_switch_mode, -1);
-  rl_add_defun ("gdb-command", tui_rl_command_key, -1);
   rl_add_defun ("next-keymap", tui_rl_next_keymap, -1);
+  rl_add_defun ("tui-delete-other-windows", tui_rl_delete_other_windows, -1);
+  rl_add_defun ("tui-change-windows", tui_rl_change_windows, -1);
+  rl_add_defun ("tui-other-window", tui_rl_other_window, -1);
 
   tui_keymap = rl_make_bare_keymap ();