From 2c6d525045736c4146146436745325df0bbd887e Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Tue, 8 Nov 2011 18:51:15 +0100 Subject: core: add option "jump_last_buffer_displayed" for command /input (key: alt+"/") (task #11553) --- ChangeLog | 4 +- doc/asciidoc.conf | 4 +- doc/de/autogen/user/weechat_commands.txt | 95 ++++++++++++++++---------------- doc/de/weechat_user.de.txt | 2 + doc/en/autogen/user/weechat_commands.txt | 1 + doc/en/weechat_user.en.txt | 1 + doc/fr/autogen/user/weechat_commands.txt | 1 + doc/fr/weechat_user.fr.txt | 1 + doc/it/autogen/user/weechat_commands.txt | 95 ++++++++++++++++---------------- doc/it/weechat_user.it.txt | 2 + po/cs.po | 4 +- po/de.po | 5 +- po/es.po | 5 +- po/fr.po | 8 ++- po/hu.po | 4 +- po/it.po | 5 +- po/pl.po | 5 +- po/pt_BR.po | 5 +- po/ru.po | 4 +- po/weechat.pot | 4 +- src/core/wee-command.c | 4 ++ src/gui/curses/gui-curses-key.c | 1 + src/gui/curses/gui-curses-window.c | 1 + src/gui/gui-buffer.c | 14 +++++ src/gui/gui-buffer.h | 1 + src/gui/gui-input.c | 21 +++++++ src/gui/gui-input.h | 1 + 27 files changed, 190 insertions(+), 108 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5dfb1c9cd..6448059dc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,12 +1,14 @@ WeeChat ChangeLog ================= Sébastien Helleu -v0.3.7-dev, 2011-11-07 +v0.3.7-dev, 2011-11-08 Version 0.3.7 (under dev!) -------------------------- +* core: add option "jump_last_buffer_displayed" for command /input + (key: alt+"/") (task #11553) * core: display error in command /buffer if arguments are wrong (bug #34180) * core: add developer's guide (task #5416) * core: add option weechat.history.max_buffer_lines_minutes: maximum number of diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf index 73b4bff24..72282c19b 100644 --- a/doc/asciidoc.conf +++ b/doc/asciidoc.conf @@ -6,7 +6,7 @@ @k\(S-\)=Shift+ @k\(-S-\)=Shift @k\(l\)=l (L) -@k\(([A-Za-z0-9_&\=])\)=\1 -@k\(([a-z0-9_&\=][^)]*)\)=\1 +@k\(([A-Za-z0-9/_&\=])\)=\1 +@k\(([a-z0-9/_&\=][^)]*)\)=\1 @k\(([^)]+)\)=\1 diff --git a/doc/de/autogen/user/weechat_commands.txt b/doc/de/autogen/user/weechat_commands.txt index 2da7b682e..51df63870 100644 --- a/doc/de/autogen/user/weechat_commands.txt +++ b/doc/de/autogen/user/weechat_commands.txt @@ -273,53 +273,54 @@ value: Anzahl der gewünschten Einträgen im Befehlsverlauf anzeigen ........................................ /input [] -Auflistung der Aktionen: - return: simuliert die "enter" Taste - complete_next: vervollständigt Wort mit nächster Komplettierung - complete_previous: vervollständigt Word mit vorheriger Komplettierung - search_text: sucht nach Text im Buffer - search_switch_case: schaltet Groß-/Kleinschreibung ein und aus - search_previous: sucht vorheriger Zeile - search_next: sucht nächste Zeile - search_stop: suche stoppen - delete_previous_char: entfernt vorheriges Zeichen - delete_next_char: entfernt nächstes Zeichen - delete_previous_word: entfernt vorheriges Wort - delete_next_word: entfernt nächstes Wort - delete_beginning_of_line: entfernt alle Zeichen ab Zeilenanfang bis zum Cursor - delete_end_of_line: entfernt alle Zeichen ab Cursor bis zum Ende der Zeile - delete_line: löscht die komplette Eingabezeile - clipboard_paste: fügt Zeichenkette aus der Zwischenablage ein - transpose_chars: Zeichen austauschen - undo: letzten Befehl in der Eingabezeile rückgängig machen - redo: letzten Befehl in der Eingabezeile wiederherstellen - move_beginning_of_line: springt an den Anfang der Eingabezeile - move_end_of_line: springt ans Ende der Eingabezeile - move_previous_char: setzt den Cursor eine Position nach links - move_next_char: setzt den Cursor eine Position nach rechts - move_previous_word: springt zum Anfang des vorherigen Wortes, in der Eingabezeile - move_next_word: springt zum Anfang des nächsten Wortes, in der Eingabezeile - history_previous: ruft vorherigen Befehl oder Nachricht aus dem Befehlsspeicher auf (im Such-Modus: rückwärts suchen) - history_next: ruft nächsten Befehl oder Nachricht aus dem Befehlsspeicher auf (im Such-Modus: vorwärts suchen) - history_global_previous: ruft vorherigen Befehl/Nachricht aus dem globalen Befehlsspeicher auf (für alle Buffer) - history_global_next: ruft nächsten Befehl/Nachricht aus dem globalen Befehlsspeicher auf (für alle Buffer) - jump_smart: wechselt zum nächsten Buffer mit Aktivität (nach Priorität: highlight, Nachricht, …) - jump_last_buffer: wechselt zum letzten Buffer - jump_previously_visited_buffer: springt zum letzten besuchten Buffer - jump_next_visited_buffer: springt zum nächsten besuchten Buffer - hotlist_clear: löscht Hotliste (Aktivitätsanzeige für die Buffer) - grab_key: fängt eine Taste (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden) - grab_key_command: zeigt den Tastencode (inklusive des eingebundenen Befehls) einer Tastenkombination an und fügt ihn in die Befehlszeile ein (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden) - grab_mouse: fängt den Code einer Maus Aktivität - grab_mouse_area: fängt den Code einer Maus Aktivität mit Bereich - scroll_unread: springe zur ersten ungelesenen Zeile im Buffer - set_unread: setzt die ungelesen Markierung für alle Buffer - set_unread_current_buffer: setzt die ungelesen Markierung für den aktuellen Buffer - switch_active_buffer: springt zum nächsten zusammengefügten Buffer - switch_active_buffer_previous: springt zum vorherigen zusammengefügten Buffer - insert: fügt einen Text in die Eingabezeile ein - -Dieser Befehl wird durch Tastenbelegungen oder Erweiterungen genutzt. +list of actions: + return: simulate key "enter" + complete_next: complete word with next completion + complete_previous: complete word with previous completion + search_text: search text in buffer + search_switch_case: switch exact case for search + search_previous: search previous line + search_next: search next line + search_stop: stop search + delete_previous_char: delete previous char + delete_next_char: delete next char + delete_previous_word: delete previous word + delete_next_word: delete next word + delete_beginning_of_line: delete from beginning of line until cursor + delete_end_of_line: delete from cursor until end of line + delete_line: delete entire line + clipboard_paste: paste from clipboard + transpose_chars: transpose two chars + undo: undo last command line action + redo: redo last command line action + move_beginning_of_line: move cursor to beginning of line + move_end_of_line: move cursor to end of line + move_previous_char: move cursor to previous char + move_next_char: move cursor to next char + move_previous_word: move cursor to previous word + move_next_word: move cursor to next word + history_previous: recall previous command in current buffer history + history_next: recall next command in current buffer history + history_global_previous: recall previous command in global history + history_global_next: recall next command in global history + jump_smart: jump to next buffer with activity + jump_last_buffer: jump to last buffer + jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer) + jump_previously_visited_buffer: jump to previously visited buffer + jump_next_visited_buffer: jump to next visited buffer + hotlist_clear: clear hotlist + grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds) + grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds) + grab_mouse: grab mouse event code + grab_mouse_area: grab mouse event code with area + scroll_unread: scroll to unread marker + set_unread: set unread marker for all buffers + set_unread_current_buffer: set unread marker for current buffer + switch_active_buffer: switch to next merged buffer + switch_active_buffer_previous: switch to previous merged buffer + insert: insert text in command line + +This command is used by key bindings or plugins. ........................................ [[command_weechat_key]] diff --git a/doc/de/weechat_user.de.txt b/doc/de/weechat_user.de.txt index 53dc7b76a..924ce33de 100644 --- a/doc/de/weechat_user.de.txt +++ b/doc/de/weechat_user.de.txt @@ -528,6 +528,8 @@ Tastenbefehle für Buffer / Fenster | @k(A-)@k(z) | Zoom für aktuelles Fenster (nochmals @k(A-)@k(z): stellt die vorherigen Einstellungen wieder her) | /window zoom | @k(A-)@k(<) | springt zum letzten besuchten Buffer | /input jump_previously_visited_buffer | @k(A-)@k(>) | springt zum nächsten besuchten Buffer | /input jump_next_visited_buffer +// TRANSLATION MISSING +| @k(A-)@k(/) | Switch to last buffer displayed (before last jump to a buffer) | /input jump_last_buffer_displayed | @k(A-)@k(=) | schaltet Filterfunktion an/aus | /filter toggle |======================================== diff --git a/doc/en/autogen/user/weechat_commands.txt b/doc/en/autogen/user/weechat_commands.txt index 053a7499f..7d5b99b6b 100644 --- a/doc/en/autogen/user/weechat_commands.txt +++ b/doc/en/autogen/user/weechat_commands.txt @@ -305,6 +305,7 @@ list of actions: history_global_next: recall next command in global history jump_smart: jump to next buffer with activity jump_last_buffer: jump to last buffer + jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer) jump_previously_visited_buffer: jump to previously visited buffer jump_next_visited_buffer: jump to next visited buffer hotlist_clear: clear hotlist diff --git a/doc/en/weechat_user.en.txt b/doc/en/weechat_user.en.txt index 793418353..51d8696a2 100644 --- a/doc/en/weechat_user.en.txt +++ b/doc/en/weechat_user.en.txt @@ -529,6 +529,7 @@ Keys for buffers / windows | @k(A-)@k(z) | Zoom on current window (@k(A-)@k(z) again: restore initial windows state, before zoom) | /window zoom | @k(A-)@k(<) | Switch to previous buffer in list of visited buffers | /input jump_previously_visited_buffer | @k(A-)@k(>) | Switch to next buffer in list of visited buffers | /input jump_next_visited_buffer +| @k(A-)@k(/) | Switch to last buffer displayed (before last jump to a buffer) | /input jump_last_buffer_displayed | @k(A-)@k(=) | Toggle filters on/off | /filter toggle |======================================== diff --git a/doc/fr/autogen/user/weechat_commands.txt b/doc/fr/autogen/user/weechat_commands.txt index 0f13ad8f9..490d7fac8 100644 --- a/doc/fr/autogen/user/weechat_commands.txt +++ b/doc/fr/autogen/user/weechat_commands.txt @@ -305,6 +305,7 @@ list des actions: history_global_next: rappeler la commande suivante dans l'historique global jump_smart: sauter au prochain tampon avec de l'activité jump_last_buffer: sauter au dernier tampon + jump_last_buffer_displayed: sauter au dernier tampon affiché (avant le dernier saut vers un tampon) jump_previously_visited_buffer: sauter au tampon visité précédemment jump_next_visited_buffer: sauter au tampon visité après hotlist_clear: effacer la hotlist diff --git a/doc/fr/weechat_user.fr.txt b/doc/fr/weechat_user.fr.txt index 5d2b371ea..2016b48a5 100644 --- a/doc/fr/weechat_user.fr.txt +++ b/doc/fr/weechat_user.fr.txt @@ -538,6 +538,7 @@ Touches pour les tampons / fenêtres | @k(A-)@k(z) | Zoom sur la fenêtre courante (@k(A-)@k(z) de nouveau : restaurer l'état initial des fenêtres, avant le zoom) | /window zoom | @k(A-)@k(<) | Sauter au tampon précédent dans la liste des tampons visités | /input jump_previously_visited_buffer | @k(A-)@k(>) | Sauter au tampon suivant dans la liste des tampons visités | /input jump_next_visited_buffer +| @k(A-)@k(/) | Sauter au dernier tampon affiché (avant le dernier saut vers un tampon) | /input jump_last_buffer_displayed | @k(A-)@k(=) | Activer/désactiver les filtres | /filter toggle |======================================== diff --git a/doc/it/autogen/user/weechat_commands.txt b/doc/it/autogen/user/weechat_commands.txt index 6ca0c9197..9b222ce54 100644 --- a/doc/it/autogen/user/weechat_commands.txt +++ b/doc/it/autogen/user/weechat_commands.txt @@ -273,53 +273,54 @@ valore: numero delle voci nella cronologia da mostrare ........................................ /input [] -elenco di azioni: - return: simula il tasto "invio" - complete_next: completa la parola con il completamento successivo - complete_previous: completa la parola con il completamento precedente - search_text: cerca testo nel buffer - search_switch_case: passa alla ricerca esatta - search_previous: cerca la riga precedente - search_next: cerca la riga successiva - search_stop: ferma la ricerca - delete_previous_char: elimina carattere precedente - delete_next_char: elimina carattere successivo - delete_previous_word: elimina parola precedente - delete_next_word: elimina parola successiva - delete_beginning_of_line: elimina da inizio riga fino al cursore - delete_end_of_line: elimina dal cursore fino a fine riga - delete_line: elimina intera riga - clipboard_paste: incolla dagli appunti - transpose_chars: inverti l'ordine di due caratteri - undo: annulla l'ultima azione nella riga di comando - redo: rifai l'ultima azione nella riga di comando - move_beginning_of_line: sposta il cursore ad inizio riga - move_end_of_line: sposta il cursore a fine riga - move_previous_char: sposta cursore al carattere precedente - move_next_char: sposta cursore al carattere successivo - move_previous_word: sposta cursore alla parola precedente - move_next_word: sposta cursore alla parola successiva - history_previous: richiama il comando precedente nella cronologia del buffer corrente - history_next: richiama il comando successivo nella cronologia del buffer corrente - history_global_previous: richiama il comando precedente nella cronologia globale - history_global_next: richiama il comando successivo nella cronologia globale - jump_smart: passa al buffer successivo con attività - jump_last_buffer: passa all'ultimo buffer - jump_previously_visited_buffer: passa al precedente buffer visualizzato - jump_next_visited_buffer: passa al successivo buffer visualizzato - hotlist_clear: elimina hotlist - grab_key: ottiene un tasto - grab_key_command: ottiene un tasto con il suo comando associato - grab_mouse: cattura il codice dell'evento del mouse - grab_mouse_area: cattura il codice dell'evento del mouse con l'area - scroll_unread: scorri fino al segnalibro non letto - set_unread: imposta il segnalibro non letto per tutti i buffer - set_unread_current_buffer: imposta il segnalibro non letto per il buffer corrente - switch_active_buffer: passa al successivo buffer incollato - switch_active_buffer_previous: passa al precedente buffer incollato - insert: inserisci testo nella riga di comando - -Questo comando viene usato dalla combinazioni tasti o dai plugin. +list of actions: + return: simulate key "enter" + complete_next: complete word with next completion + complete_previous: complete word with previous completion + search_text: search text in buffer + search_switch_case: switch exact case for search + search_previous: search previous line + search_next: search next line + search_stop: stop search + delete_previous_char: delete previous char + delete_next_char: delete next char + delete_previous_word: delete previous word + delete_next_word: delete next word + delete_beginning_of_line: delete from beginning of line until cursor + delete_end_of_line: delete from cursor until end of line + delete_line: delete entire line + clipboard_paste: paste from clipboard + transpose_chars: transpose two chars + undo: undo last command line action + redo: redo last command line action + move_beginning_of_line: move cursor to beginning of line + move_end_of_line: move cursor to end of line + move_previous_char: move cursor to previous char + move_next_char: move cursor to next char + move_previous_word: move cursor to previous word + move_next_word: move cursor to next word + history_previous: recall previous command in current buffer history + history_next: recall next command in current buffer history + history_global_previous: recall previous command in global history + history_global_next: recall next command in global history + jump_smart: jump to next buffer with activity + jump_last_buffer: jump to last buffer + jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer) + jump_previously_visited_buffer: jump to previously visited buffer + jump_next_visited_buffer: jump to next visited buffer + hotlist_clear: clear hotlist + grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds) + grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds) + grab_mouse: grab mouse event code + grab_mouse_area: grab mouse event code with area + scroll_unread: scroll to unread marker + set_unread: set unread marker for all buffers + set_unread_current_buffer: set unread marker for current buffer + switch_active_buffer: switch to next merged buffer + switch_active_buffer_previous: switch to previous merged buffer + insert: insert text in command line + +This command is used by key bindings or plugins. ........................................ [[command_weechat_key]] diff --git a/doc/it/weechat_user.it.txt b/doc/it/weechat_user.it.txt index 12b002cf1..03cd88598 100644 --- a/doc/it/weechat_user.it.txt +++ b/doc/it/weechat_user.it.txt @@ -537,6 +537,8 @@ Tasti per buffer / finestre | @k(A-)@k(z) | Ingrandimento sulla finestra attiva (@k(A-)@k(z) di nuovo: ripristina lo stato iniziale della finestra, prima dell'ingrandimento) | /window zoom | @k(A-)@k(<) | Passa al buffer precedente nella lista dei buffer visitati | /input jump_previously_visited_buffer | @k(A-)@k(>) | Passa al buffer successivo nella lista dei buffer visitati | /input jump_next_visited_buffer +// TRANSLATION MISSING +| @k(A-)@k(/) | Switch to last buffer displayed (before last jump to a buffer) | /input jump_last_buffer_displayed | @k(A-)@k(=) | Attiva/disattiva filtri | /filter toggle |======================================== diff --git a/po/cs.po b/po/cs.po index 44d3ffe4a..88f996e45 100644 --- a/po/cs.po +++ b/po/cs.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:57+0100\n" "Last-Translator: Jiri Golembiovsky \n" "Language-Team: weechat-dev \n" @@ -1360,6 +1360,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/de.po b/po/de.po index cb6fa4689..681dba56c 100644 --- a/po/de.po +++ b/po/de.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:57+0100\n" "Last-Translator: Nils Görs\n" "Language-Team: weechat-dev \n" @@ -1376,6 +1376,7 @@ msgstr "Funktionen für die Befehlszeile" msgid " []" msgstr " []" +#, fuzzy msgid "" "list of actions:\n" " return: simulate key \"enter\"\n" @@ -1409,6 +1410,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/es.po b/po/es.po index b94045851..50904637c 100644 --- a/po/es.po +++ b/po/es.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:57+0100\n" "Last-Translator: Elián Hanisch \n" "Language-Team: weechat-dev \n" @@ -1351,6 +1351,7 @@ msgstr "funciones para la línea de comandos" msgid " []" msgstr " []" +#, fuzzy msgid "" "list of actions:\n" " return: simulate key \"enter\"\n" @@ -1384,6 +1385,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/fr.po b/po/fr.po index f3c9fbe52..823ecca66 100644 --- a/po/fr.po +++ b/po/fr.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" -"PO-Revision-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" +"PO-Revision-Date: 2011-11-08 17:15+0100\n" "Last-Translator: Sebastien Helleu \n" "Language-Team: weechat-dev \n" "Language: French\n" @@ -1381,6 +1381,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" @@ -1435,6 +1437,8 @@ msgstr "" "global\n" " jump_smart: sauter au prochain tampon avec de l'activité\n" " jump_last_buffer: sauter au dernier tampon\n" +" jump_last_buffer_displayed: sauter au dernier tampon affiché (avant le " +"dernier saut vers un tampon)\n" " jump_previously_visited_buffer: sauter au tampon visité précédemment\n" " jump_next_visited_buffer: sauter au tampon visité après\n" " hotlist_clear: effacer la hotlist\n" diff --git a/po/hu.po b/po/hu.po index 483ac9df7..e1ddc4838 100644 --- a/po/hu.po +++ b/po/hu.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-10-22 12:21+0200\n" "Last-Translator: Andras Voroskoi \n" "Language-Team: weechat-dev \n" @@ -1238,6 +1238,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/it.po b/po/it.po index f10a6ab3a..107bc1cc4 100644 --- a/po/it.po +++ b/po/it.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:57+0100\n" "Last-Translator: Marco Paolone \n" "Language-Team: weechat-dev \n" @@ -1344,6 +1344,7 @@ msgstr "funzioni per la riga di comando" msgid " []" msgstr " []" +#, fuzzy msgid "" "list of actions:\n" " return: simulate key \"enter\"\n" @@ -1377,6 +1378,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/pl.po b/po/pl.po index c62d840c0..f417d40ed 100644 --- a/po/pl.po +++ b/po/pl.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:57+0100\n" "Last-Translator: Krzysztof Korościk \n" "Language-Team: weechat-dev \n" @@ -1357,6 +1357,7 @@ msgstr "funkcje linii komend" msgid " []" msgstr " []" +#, fuzzy msgid "" "list of actions:\n" " return: simulate key \"enter\"\n" @@ -1390,6 +1391,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/pt_BR.po b/po/pt_BR.po index be9f0a26d..18546275b 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-11-03 16:58+0100\n" "Last-Translator: Ivan Sichmann Freitas \n" "Language-Team: weechat-dev \n" @@ -1396,6 +1396,7 @@ msgid " []" msgstr " []" # TODO +#, fuzzy msgid "" "list of actions:\n" " return: simulate key \"enter\"\n" @@ -1429,6 +1430,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/ru.po b/po/ru.po index edf12296a..453f0bc43 100644 --- a/po/ru.po +++ b/po/ru.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.7-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: 2011-10-22 12:21+0200\n" "Last-Translator: Pavel Shevchuk \n" "Language-Team: weechat-dev \n" @@ -1246,6 +1246,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/po/weechat.pot b/po/weechat.pot index ce541c1c6..8254af587 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-11-05 16:04+0100\n" +"POT-Creation-Date: 2011-11-08 17:56+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1092,6 +1092,8 @@ msgid "" " history_global_next: recall next command in global history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" +" jump_last_buffer_displayed: jump to last buffer displayed (before last " +"jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" " hotlist_clear: clear hotlist\n" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index 8888a5584..f19b4aa66 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -2345,6 +2345,8 @@ COMMAND_CALLBACK(input) gui_input_jump_smart (buffer); else if (string_strcasecmp (argv[1], "jump_last_buffer") == 0) gui_input_jump_last_buffer (buffer); + else if (string_strcasecmp (argv[1], "jump_last_buffer_displayed") == 0) + gui_input_jump_last_buffer_displayed (buffer); else if (string_strcasecmp (argv[1], "jump_previously_visited_buffer") == 0) gui_input_jump_previously_visited_buffer (buffer); else if (string_strcasecmp (argv[1], "jump_next_visited_buffer") == 0) @@ -5699,6 +5701,8 @@ command_init () "history\n" " jump_smart: jump to next buffer with activity\n" " jump_last_buffer: jump to last buffer\n" + " jump_last_buffer_displayed: jump to last buffer " + "displayed (before last jump to a buffer)\n" " jump_previously_visited_buffer: jump to previously " "visited buffer\n" " jump_next_visited_buffer: jump to next visited buffer\n" diff --git a/src/gui/curses/gui-curses-key.c b/src/gui/curses/gui-curses-key.c index 4f28b124c..cf463b92b 100644 --- a/src/gui/curses/gui-curses-key.c +++ b/src/gui/curses/gui-curses-key.c @@ -204,6 +204,7 @@ gui_key_default_bindings (int context) BIND(/* m-9 */ "meta-9", "/buffer *9"); BIND(/* m-< */ "meta-<", "/input jump_previously_visited_buffer"); BIND(/* m-> */ "meta->", "/input jump_next_visited_buffer"); + BIND(/* m-/ */ "meta-/", "/input jump_last_buffer_displayed"); BIND(/* m-m */ "meta-m", "/mute mouse toggle"); /* bind meta-j + {01..99} to switch to buffers # > 10 */ diff --git a/src/gui/curses/gui-curses-window.c b/src/gui/curses/gui-curses-window.c index 3301e4c1d..c4cc07bcc 100644 --- a/src/gui/curses/gui-curses-window.c +++ b/src/gui/curses/gui-curses-window.c @@ -1051,6 +1051,7 @@ gui_window_switch_to_buffer (struct t_gui_window *window, if (window->buffer->number != buffer->number) { + gui_buffer_last_displayed = window->buffer; gui_window_scroll_switch (window, buffer); if (!gui_buffers_visited_frozen) { diff --git a/src/gui/gui-buffer.c b/src/gui/gui-buffer.c index ea7f9dde3..508090730 100644 --- a/src/gui/gui-buffer.c +++ b/src/gui/gui-buffer.c @@ -70,6 +70,7 @@ struct t_gui_buffer_visited *last_gui_buffer_visited = NULL; int gui_buffers_visited_index = -1; /* index of pointer in list */ int gui_buffers_visited_count = 0; /* number of visited buffers*/ int gui_buffers_visited_frozen = 0; /* 1 to forbid list updates */ +struct t_gui_buffer *gui_buffer_last_displayed = NULL; /* last b. displayed */ char *gui_buffer_notify_string[GUI_BUFFER_NUM_NOTIFY] = { "none", "highlight", "message", "all" }; @@ -2221,6 +2222,9 @@ gui_buffer_close (struct t_gui_buffer *buffer) ptr_window->buffer = gui_buffers; } + if (gui_buffer_last_displayed == buffer) + gui_buffer_last_displayed = NULL; + hook_signal_send ("buffer_closed", WEECHAT_HOOK_SIGNAL_POINTER, buffer); @@ -3386,6 +3390,16 @@ gui_buffer_print_log () char *tags; int num; + log_printf (""); + log_printf ("gui_buffers . . . . . . . . . : 0x%lx", gui_buffers); + log_printf ("last_gui_buffer . . . . . . . : 0x%lx", last_gui_buffer); + log_printf ("gui_buffers_visited . . . . . : 0x%lx", gui_buffers_visited); + log_printf ("last_gui_buffer_visited . . . : 0x%lx", last_gui_buffer_visited); + log_printf ("gui_buffers_visited_index . . : %d", gui_buffers_visited_index); + log_printf ("gui_buffers_visited_count . . : %d", gui_buffers_visited_count); + log_printf ("gui_buffers_visited_frozen. . : %d", gui_buffers_visited_frozen); + log_printf ("gui_buffer_last_displayed . . : 0x%lx", gui_buffer_last_displayed); + for (ptr_buffer = gui_buffers; ptr_buffer; ptr_buffer = ptr_buffer->next_buffer) { diff --git a/src/gui/gui-buffer.h b/src/gui/gui-buffer.h index 628877ac6..2736a6e8c 100644 --- a/src/gui/gui-buffer.h +++ b/src/gui/gui-buffer.h @@ -194,6 +194,7 @@ extern struct t_gui_buffer_visited *last_gui_buffer_visited; extern int gui_buffers_visited_index; extern int gui_buffers_visited_count; extern int gui_buffers_visited_frozen; +extern struct t_gui_buffer *gui_buffer_last_displayed; extern char *gui_buffer_notify_string[]; extern char *gui_buffer_properties_get_integer[]; extern char *gui_buffer_properties_get_string[]; diff --git a/src/gui/gui-input.c b/src/gui/gui-input.c index 20fa7146d..8f73e038e 100644 --- a/src/gui/gui-input.c +++ b/src/gui/gui-input.c @@ -1292,6 +1292,27 @@ gui_input_jump_last_buffer (struct t_gui_buffer *buffer) } } +/* + * gui_input_jump_last_buffer_displayed: jump to last buffer displayed (before + * last jump to a buffer) + * (default key: meta-/) + */ + +void +gui_input_jump_last_buffer_displayed (struct t_gui_buffer *buffer) +{ + struct t_gui_window *window; + + window = gui_window_search_with_buffer (buffer); + if (window + && (window->buffer->text_search == GUI_TEXT_SEARCH_DISABLED)) + { + if (gui_buffer_last_displayed) + gui_buffer_switch_by_number (window, + gui_buffer_last_displayed->number); + } +} + /* * gui_input_jump_previously_visited_buffer: jump to previously visited buffer * (buffer displayed before current one) diff --git a/src/gui/gui-input.h b/src/gui/gui-input.h index 565dcb73e..f41d4a5f5 100644 --- a/src/gui/gui-input.h +++ b/src/gui/gui-input.h @@ -67,6 +67,7 @@ extern void gui_input_history_global_previous (struct t_gui_buffer *buffer); extern void gui_input_history_global_next (struct t_gui_buffer *buffer); extern void gui_input_jump_smart (struct t_gui_buffer *buffer); extern void gui_input_jump_last_buffer (struct t_gui_buffer *buffer); +extern void gui_input_jump_last_buffer_displayed (struct t_gui_buffer *buffer); extern void gui_input_jump_previously_visited_buffer (struct t_gui_buffer *buffer); extern void gui_input_jump_next_visited_buffer (struct t_gui_buffer *buffer); extern void gui_input_hotlist_clear (struct t_gui_buffer *buffer); -- cgit v1.2.3