From c86d74cc7d442414a62752187aa10f49f0ac0de7 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 9 Nov 2019 11:54:39 -0700 Subject: [PATCH] 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-11 Tom Tromey * tui/tui.c (tui_initialize_readline): Add new bindable readline functions. gdb/doc/ChangeLog 2019-11-11 Tom Tromey * gdb.texinfo (TUI Keys): Document readline function names. Change-Id: I2233779b7aefe372f19bd03c8f325733c3385e72 --- gdb/ChangeLog | 5 +++++ gdb/doc/ChangeLog | 4 ++++ gdb/doc/gdb.texinfo | 15 +++++++++++++++ gdb/tui/tui.c | 4 +++- 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index edd3e9013b..e8104f3e7c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2019-11-11 Tom Tromey + + * tui/tui.c (tui_initialize_readline): Add new bindable readline + functions. + 2019-11-11 Christian Biesinger * nat/linux-osdata.c (user_from_uid): Use getpwuid_r. diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 3c77d4f8b7..0da4c9d839 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,7 @@ +2019-11-11 Tom Tromey + + * gdb.texinfo (TUI Keys): Document readline function names. + 2019-11-11 Tom Tromey * gdb.texinfo (Editing): Document operate-and-get-next. diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 05accca477..398167f9bb 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -27621,6 +27621,9 @@ its standard mode, writing on the terminal directly. When reentering 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 @@ is not active, it will switch to the TUI mode. 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 @@ previous layout and the new one. 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 @@ gives the focus to the next TUI window. 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 1568351784..3f5ab415de 100644 --- a/gdb/tui/tui.c +++ b/gdb/tui/tui.c @@ -330,8 +330,10 @@ tui_initialize_readline (void) 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 ();