diff options
author | Sebastien Helleu <flashcode@flashtux.org> | 2009-05-12 18:16:32 +0200 |
---|---|---|
committer | Sebastien Helleu <flashcode@flashtux.org> | 2009-05-12 18:16:32 +0200 |
commit | 2ab1626fa9b1844a8864134a1bc4c12574a201ea (patch) | |
tree | e8ffc3cd6b56c39a09874747c63181495eea271f /src/gui | |
parent | b860043646755773a2d6173d411f80e2c3b89182 (diff) | |
download | weechat-2ab1626fa9b1844a8864134a1bc4c12574a201ea.zip |
Add syntax "*N" for /buffer (where N is a buffer number): jump to buffer number or previous buffer
This will switch to buffer #N or previously displayed buffer if current buffer is #N
(it uses option weechat.look.jump_current_to_previous_buffer).
Default keys alt-1 to alt-0 are now /buffer *N
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/curses/gui-curses-keyboard.c | 20 | ||||
-rw-r--r-- | src/gui/gui-buffer.c | 14 |
2 files changed, 11 insertions, 23 deletions
diff --git a/src/gui/curses/gui-curses-keyboard.c b/src/gui/curses/gui-curses-keyboard.c index e0d187502..cd61c6992 100644 --- a/src/gui/curses/gui-curses-keyboard.c +++ b/src/gui/curses/gui-curses-keyboard.c @@ -164,16 +164,16 @@ gui_keyboard_default_bindings () gui_keyboard_default_bind (/* m-w,m-right */ "meta-wmeta-meta2-C", "/window right"); gui_keyboard_default_bind (/* m-z */ "meta-z", "/window zoom"); gui_keyboard_default_bind (/* m-= */ "meta-=", "/filter toggle"); - gui_keyboard_default_bind (/* m-0 */ "meta-0", "/buffer 10"); - gui_keyboard_default_bind (/* m-1 */ "meta-1", "/buffer 1"); - gui_keyboard_default_bind (/* m-2 */ "meta-2", "/buffer 2"); - gui_keyboard_default_bind (/* m-3 */ "meta-3", "/buffer 3"); - gui_keyboard_default_bind (/* m-4 */ "meta-4", "/buffer 4"); - gui_keyboard_default_bind (/* m-5 */ "meta-5", "/buffer 5"); - gui_keyboard_default_bind (/* m-6 */ "meta-6", "/buffer 6"); - gui_keyboard_default_bind (/* m-7 */ "meta-7", "/buffer 7"); - gui_keyboard_default_bind (/* m-8 */ "meta-8", "/buffer 8"); - gui_keyboard_default_bind (/* m-9 */ "meta-9", "/buffer 9"); + gui_keyboard_default_bind (/* m-0 */ "meta-0", "/buffer *10"); + gui_keyboard_default_bind (/* m-1 */ "meta-1", "/buffer *1"); + gui_keyboard_default_bind (/* m-2 */ "meta-2", "/buffer *2"); + gui_keyboard_default_bind (/* m-3 */ "meta-3", "/buffer *3"); + gui_keyboard_default_bind (/* m-4 */ "meta-4", "/buffer *4"); + gui_keyboard_default_bind (/* m-5 */ "meta-5", "/buffer *5"); + gui_keyboard_default_bind (/* m-6 */ "meta-6", "/buffer *6"); + gui_keyboard_default_bind (/* m-7 */ "meta-7", "/buffer *7"); + gui_keyboard_default_bind (/* m-8 */ "meta-8", "/buffer *8"); + gui_keyboard_default_bind (/* m-9 */ "meta-9", "/buffer *9"); /* bind meta-j + {01..99} to switch to buffers # > 10 */ for (i = 1; i < 100; i++) diff --git a/src/gui/gui-buffer.c b/src/gui/gui-buffer.c index f7ebce87d..3bbae7a91 100644 --- a/src/gui/gui-buffer.c +++ b/src/gui/gui-buffer.c @@ -1489,21 +1489,9 @@ gui_buffer_switch_by_number (struct t_gui_window *window, int number) struct t_gui_buffer *ptr_buffer; /* invalid buffer */ - if (number < 0) + if ((number < 0) || (number == window->buffer->number)) return; - /* buffer is currently displayed ? then jump to previous buffer */ - if (number == window->buffer->number) - { - if (CONFIG_BOOLEAN(config_look_jump_current_to_previous_buffer) - && gui_previous_buffer) - { - number = gui_previous_buffer->number; - } - else - return; - } - /* search for buffer in the list */ for (ptr_buffer = gui_buffers; ptr_buffer; ptr_buffer = ptr_buffer->next_buffer) { |