diff --git a/ChangeLog.adoc b/ChangeLog.adoc index f83e75d52..09c7f86dd 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -20,6 +20,7 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] New features:: + * core: add option "recreate" in command /filter * core: add evaluation of conditions in evaluation of expressions with "eval_cond:" (issue #1582) * trigger: add variable "${tg_trigger_name}" in command trigger evaluated strings (issue #1580) diff --git a/doc/de/includes/autogen_user_commands.de.adoc b/doc/de/includes/autogen_user_commands.de.adoc index 21920e3a2..8a9fb750d 100644 --- a/doc/de/includes/autogen_user_commands.de.adoc +++ b/doc/de/includes/autogen_user_commands.de.adoc @@ -1410,60 +1410,62 @@ Beispiele (Bedingungen): enable|disable|toggle [|@] add|addreplace [,...] rename + recreate del |-all - list: alle Filter auflisten - enable: Filter wird aktiviert (Filter werden standardmäßig aktiviert) - disable: Filter deaktivieren - toggle: Filter umschalten - name: Name des Filters ("@" = aktiviert/deaktiviert alle Filter im aktuellen Buffer) - add: Filter hinzufügen -addreplace: erzeugt neuen Filter oder ersetzt einen schon existierenden Filter - rename: benennt einen Filter um - del: Filter entfernen - -all: entfernt alle Filter - buffer: durch Kommata getrennte Liste von Buffer in denen der Filter aktiv sein soll: - - ist der vollständige Name eines Buffer inklusive seiner Erweiterung (Beispiel: "irc.freenode.#weechat" oder "irc.server.freenode") - - "*" bedeutet, alle Buffer - - beginnt ein Name mit '!' wird für diesen Buffer kein Filter genutzt - - Platzhalter "*" kann verwendet werden - tags: durch Kommata getrennte Liste von Schlagwörtern. Zum Beispiel: "irc_join,irc_part,irc_quit" - - logisch "und": mittels "+" zwischen den Tags (zum Beispiel: "nick_toto+irc_action") - - Platzhalter "*" kann verwendet werden - - wird ein Tag mit '!' eingeleitet, dann muss dieser Tag NICHT in der Nachricht enthalten sein - regex: erweiterter regulärer POSIX Ausdruck, um in einer Zeile zu suchen - - das Präfix (z.B. Nick) wird mittels '\t' von der Nachricht getrennt. Sonderzeichen wie '|' müssen mit einer Escapesequenz : '\|' eingebunden werden) - - wird ein regulärer Ausdruck mit '!' eingeleitet dann wird das übereinstimmende Ergebnis umgekehrt (nutze '\!' um mit '!' zu beginnen) - - es werden zwei reguläre Ausdrücke erstellt: Der erste für den Präfix und der zweite für die eigentliche Nachricht - - reguläre Ausdrücke unterscheiden nicht zwischen Groß- und Kleinschreibung. Um zwischen Groß- und Kleinschreibung zu unterscheiden müssen diese mit "(?-i)" eingeleitet werden. + list: list all filters + enable: enable filters (filters are enabled by default) + disable: disable filters + toggle: toggle filters + name: filter name ("@" = enable/disable all filters in current buffer) + add: add a filter +addreplace: add or replace an existing filter + rename: rename a filter + recreate: set input with the command used to edit the filter + del: delete a filter + -all: delete all filters + buffer: comma separated list of buffers where filter is active: + - this is full name including plugin (example: "irc.freenode.#weechat" or "irc.server.freenode") + - "*" means all buffers + - a name starting with '!' is excluded + - wildcard "*" is allowed + tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit" + - logical "and": use "+" between tags (for example: "nick_toto+irc_action") + - wildcard "*" is allowed + - if tag starts with '!', then it is excluded and must NOT be in message + regex: POSIX extended regular expression to search in line + - use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|' + - if regex starts with '!', then matching result is reversed (use '\!' to start with '!') + - two regular expressions are created: one for prefix and one for message + - regex are case insensitive, they can start by "(?-i)" to become case sensitive -Mit der Tastenvoreinstellung alt+'=' kann die globale Filterfunktion (de-)aktiviert werden und alt+'-' (de-)aktiviert die Filterfunktion für den aktuellen Buffer. +The default key alt+'=' toggles filtering on/off globally and alt+'-' toggles filtering on/off in the current buffer. -Die am häufigsten gebrauchten Schlagwörter lauten: - no_filter, no_highlight, no_log, log0..log9 (log Level), +Tags most commonly used: + no_filter, no_highlight, no_log, log0..log9 (log level), notify_none, notify_message, notify_private, notify_highlight, - self_msg, nick_xxx (xxx ist der Nickname), prefix_nick_ccc (ccc ist die Farbe mit der der Nick dargestellt wird), - host_xxx (xxx ist der Username + Host in Nachricht), - irc_xxx (xxx ist durch einen IRC-Befehl/-Nummer zu ersetzen, siehe /server raw oder /debug tags) + self_msg, nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick), + host_xxx (xxx is username + host in message), + irc_xxx (xxx is command name or number, see /server raw or /debug tags), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. -Mittels "/debug tags" kann man sich die Schlagwörter jeder einzelnen Zeile darstellen lassen. +To see tags for lines in buffers: /debug tags -Beispiele: - aktiviert den intelligenten IRC Filter für alle Buffer: +Examples: + use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * - aktiviert den intelligenten IRC Filter für alle Buffer, außer Buffer die "#weechat" im Namen tragen: + use IRC smart filter on all buffers except those with "#weechat" in name: /filter add irc_smart *,!*#weechat* irc_smart_filter * - filtert alle IRC join/part/quit Nachrichten: + filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * - filtert Nicks wenn diese den Channel betreten oder durch den Befehl "/names" angezeigt werden: + filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * - filtert Nick "toto" im IRC Channel #weechat: + filter nick "toto" on IRC channel #weechat: /filter add toto irc.freenode.#weechat nick_toto * - filtert IRC join/action Nachrichten von Nick "toto": + filter IRC join/action messages from nick "toto": /filter add toto * nick_toto+irc_join,nick_toto+irc_action * - filtert Zeilen die "weechat sucks" im IRC Channel #weechat enthalten: + filter lines containing "weechat sucks" on IRC channel #weechat: /filter add sucks irc.freenode.#weechat * weechat sucks - filter Zeilen die exakt "WeeChat sucks" lauten und das in allen Buffern: + filter lines that are strictly equal to "WeeChat sucks" on all buffers: /filter add sucks2 * * (?-i)^WeeChat sucks$ ---- diff --git a/doc/en/includes/autogen_user_commands.en.adoc b/doc/en/includes/autogen_user_commands.en.adoc index 8e4a6f64e..05aac6a5e 100644 --- a/doc/en/includes/autogen_user_commands.en.adoc +++ b/doc/en/includes/autogen_user_commands.en.adoc @@ -1410,6 +1410,7 @@ Examples (conditions): enable|disable|toggle [|@] add|addreplace [,...] rename + recreate del |-all list: list all filters @@ -1420,6 +1421,7 @@ Examples (conditions): add: add a filter addreplace: add or replace an existing filter rename: rename a filter + recreate: set input with the command used to edit the filter del: delete a filter -all: delete all filters buffer: comma separated list of buffers where filter is active: diff --git a/doc/fr/includes/autogen_user_commands.fr.adoc b/doc/fr/includes/autogen_user_commands.fr.adoc index 61063850d..0eeedbaca 100644 --- a/doc/fr/includes/autogen_user_commands.fr.adoc +++ b/doc/fr/includes/autogen_user_commands.fr.adoc @@ -1410,6 +1410,7 @@ Exemples (conditions) : enable|disable|toggle [|@] add|addreplace [,...] <étiquettes> rename + recreate del |-all list : lister tous les filtres @@ -1420,6 +1421,7 @@ Exemples (conditions) : add : ajouter un filtre addreplace : ajouter ou remplacer un filtre existant rename : renommer un filtre + recreate : définir la ligne de commande utilisée pour modifier le filtre del : supprimer un filtre -all : supprimer tous les filtres tampon : liste des tampons, séparés par des virgules, où le filtre est actif : diff --git a/doc/it/includes/autogen_user_commands.it.adoc b/doc/it/includes/autogen_user_commands.it.adoc index a2a57797f..b8bc653fc 100644 --- a/doc/it/includes/autogen_user_commands.it.adoc +++ b/doc/it/includes/autogen_user_commands.it.adoc @@ -1410,6 +1410,7 @@ Examples (conditions): enable|disable|toggle [|@] add|addreplace [,...] rename + recreate del |-all list: list all filters @@ -1420,6 +1421,7 @@ Examples (conditions): add: add a filter addreplace: add or replace an existing filter rename: rename a filter + recreate: set input with the command used to edit the filter del: delete a filter -all: delete all filters buffer: comma separated list of buffers where filter is active: diff --git a/doc/ja/includes/autogen_user_commands.ja.adoc b/doc/ja/includes/autogen_user_commands.ja.adoc index 53609667a..83eddefab 100644 --- a/doc/ja/includes/autogen_user_commands.ja.adoc +++ b/doc/ja/includes/autogen_user_commands.ja.adoc @@ -1410,60 +1410,62 @@ Examples (conditions): enable|disable|toggle [|@] add|addreplace [,...] rename + recreate del |-all - list: 全てのフィルタをリストアップ - enable: フィルタを有効化 (フィルタはデフォルトで有効になっています) - disable: フィルタを無効化 - toggle: フィルタの有効無効を切り替え - name: フィルタの名前 ("@" = 現在のバッファに設定されている全てのフィルタを有効化/無効化) - add: フィルタを追加 -addreplace: 既存のフィルタに追加もしくは置換 - rename: フィルタをリネーム - del: フィルタを削除 - -all: 全てのフィルタを削除 - buffer: フィルタが有効化されているバッファのコンマ区切りリスト: - - これはプラグイン名を含む完全な名前です (例: "irc.freenode.#weechat" または "irc.server.freenode") - - "*" は全てのバッファを意味します - - 名前が '!' から始まるものは除外されます - - ワイルドカード "*" を使うことができます - tags: タグのコンマ区切りリスト、例えば "irc_join,irc_part,irc_quit" - - 論理積 "and": タグ同士を "+" でつなげてください (例: "nick_toto+irc_action") - - ワイルドカード "*" を使うことができます - - タグを '!' で始めると、そのタグが付けられたメッセージとそのタグを含むメッセージはフィルタされません - regex: 行単位検索の正規表現 - - '\t' を使うと、プレフィックスをメッセージから分離できます。'|' 等の特別な文字は '\|' のようにエスケープしなければいけません - - 正規表現の最初に '!' が含まれる場合は、マッチ結果が反転されます (最初の '!' にマッチさせたければ、'\!' を使ってください) - - 2 種類の正規表現があります: 一方はプレフィックス用、他方はメッセージ用 - - 正規表現は大文字小文字を区別しません、"(?-i)" から始まる場合は区別します + list: list all filters + enable: enable filters (filters are enabled by default) + disable: disable filters + toggle: toggle filters + name: filter name ("@" = enable/disable all filters in current buffer) + add: add a filter +addreplace: add or replace an existing filter + rename: rename a filter + recreate: set input with the command used to edit the filter + del: delete a filter + -all: delete all filters + buffer: comma separated list of buffers where filter is active: + - this is full name including plugin (example: "irc.freenode.#weechat" or "irc.server.freenode") + - "*" means all buffers + - a name starting with '!' is excluded + - wildcard "*" is allowed + tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit" + - logical "and": use "+" between tags (for example: "nick_toto+irc_action") + - wildcard "*" is allowed + - if tag starts with '!', then it is excluded and must NOT be in message + regex: POSIX extended regular expression to search in line + - use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|' + - if regex starts with '!', then matching result is reversed (use '\!' to start with '!') + - two regular expressions are created: one for prefix and one for message + - regex are case insensitive, they can start by "(?-i)" to become case sensitive -デフォルトではキー alt+'=' ですべてのバッファについてフィルタリングの on/off を切り替えられます。現在のバッファに限りフィルタリングを切り替えるには alt+'-' を使います。 +The default key alt+'=' toggles filtering on/off globally and alt+'-' toggles filtering on/off in the current buffer. -よく使われるタグ: - no_filter、no_highlight、no_log、log0..log9 (ログレベル)、 - notify_none、notify_message、notify_private、notify_highlight、 - self_msg、nick_xxx (xxx はメッセージのニックネーム部分)、prefix_nick_ccc (ccc はニックネームの色)、 - host_xxx (xxx はメッセージのユーザ名 + ホスト名部分)、 - irc_xxx (xxx はコマンド名または番号、/server raw または /debug tags で確認)、 - irc_numeric、irc_error、irc_action、irc_ctcp、irc_ctcp_reply、irc_smart_filter、away_info。 -バッファ内でタグを見るには: /debug tags +Tags most commonly used: + no_filter, no_highlight, no_log, log0..log9 (log level), + notify_none, notify_message, notify_private, notify_highlight, + self_msg, nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick), + host_xxx (xxx is username + host in message), + irc_xxx (xxx is command name or number, see /server raw or /debug tags), + irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. +To see tags for lines in buffers: /debug tags -例: - 全てのバッファで IRC スマートフィルタを使用: +Examples: + use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * - 名前に "#weechat" を含むバッファを除いた全てのバッファで IRC スマートフィルタを使用: + use IRC smart filter on all buffers except those with "#weechat" in name: /filter add irc_smart *,!*#weechat* irc_smart_filter * - 全ての IRC join/part/quit メッセージをフィルタ: + filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * - チャンネルに入った時や /names で表示されるニックネームをフィルタ: + filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * - IRC チャンネル #weechat で "toto" を含むニックネームをフィルタ: + filter nick "toto" on IRC channel #weechat: /filter add toto irc.freenode.#weechat nick_toto * - ニックネーム "toto" からの IRC の参加/アクションメッセージをフィルタ: + filter IRC join/action messages from nick "toto": /filter add toto * nick_toto+irc_join,nick_toto+irc_action * - IRC チャンネル #weechat で "weechat sucks" を含む行をフィルタ: + filter lines containing "weechat sucks" on IRC channel #weechat: /filter add sucks irc.freenode.#weechat * weechat sucks - すべてのバッファで "WeeChat sucks" と完全に一致する行をフィルタ: + filter lines that are strictly equal to "WeeChat sucks" on all buffers: /filter add sucks2 * * (?-i)^WeeChat sucks$ ---- diff --git a/doc/pl/includes/autogen_user_commands.pl.adoc b/doc/pl/includes/autogen_user_commands.pl.adoc index 95368366a..c696816db 100644 --- a/doc/pl/includes/autogen_user_commands.pl.adoc +++ b/doc/pl/includes/autogen_user_commands.pl.adoc @@ -1406,63 +1406,65 @@ Examples (conditions): ---- /filter list - enable|disable|toggle [|@] - add | addreplace [,...] - rename - del |-all + enable|disable|toggle [|@] + add|addreplace [,...] + rename + recreate + del |-all - list: wyświetla wszystkie filtry - enable: włącza filtry (filtry są domyślnie włączone) -disable: wyłącza filtry - toggle: przełącza filtry - nazwa: nazwa filtru ("@" = włącza/wyłącza wszystkie filtry w obecnym buforze) - add: dodaje filtr -addreplace: dodaje lub nadpisuje istniejący filtr - rename: zmienia nazwę filtru - del: usuwa filtr - -all: usuwa wszystkie filtry - bufor: oddzielona przecinkami lisa buforów, dla których filtr jest aktywny: - - jest to pełna nazwa zawierająca wtyczkę (przykład: "irc.freenode.#weechat" lub "irc.server.freenode") - - "*" oznacza wszystkie bufory - - nazwa zaczynająca się od '!' jest wykluczana - - dozwolony jest znak "*" - tagi: lista tagów oddzielona przecinkiem, np: "irc_join,irc_part,irc_quit" - - logiczne "i": użyj "+" pomiędzy tagami (na przykład: "nick_toto+irc_action") - - dozwolony jest znak "*" - - jeśli tag zaczyna się od '!', wtedy jest on wykluczony i NIE może znajdować się w wiadomości - regex: rozszerzone wyrażenie regularne POSIX do wyszukania w linii - - użyj '\t' do oddzielenia prefiksu od wiadomości, znaki specjalne jak '|' muszą zostać poprzedzone '\' np: '\|' - - jeśli wyrażenie zaczyna się od '!', wtedy pasujący wynik jest odwracany (użyj '\!', aby zacząć od '!') - - dwa wyrażenia są tworzone: jedno dla prefiksu, drugie dla wiadomości - - wielkość znaków nie ma znaczenia dla wyrażeń, jeśli zaczynają się od "(?-i)" wielkość znaków ma znaczenie + list: list all filters + enable: enable filters (filters are enabled by default) + disable: disable filters + toggle: toggle filters + name: filter name ("@" = enable/disable all filters in current buffer) + add: add a filter +addreplace: add or replace an existing filter + rename: rename a filter + recreate: set input with the command used to edit the filter + del: delete a filter + -all: delete all filters + buffer: comma separated list of buffers where filter is active: + - this is full name including plugin (example: "irc.freenode.#weechat" or "irc.server.freenode") + - "*" means all buffers + - a name starting with '!' is excluded + - wildcard "*" is allowed + tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit" + - logical "and": use "+" between tags (for example: "nick_toto+irc_action") + - wildcard "*" is allowed + - if tag starts with '!', then it is excluded and must NOT be in message + regex: POSIX extended regular expression to search in line + - use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|' + - if regex starts with '!', then matching result is reversed (use '\!' to start with '!') + - two regular expressions are created: one for prefix and one for message + - regex are case insensitive, they can start by "(?-i)" to become case sensitive -Domyślny skrót klawiszowy alt+'=' włącza/wyłącza filtrowanie globalnie i alt+'-' włącza/wyłącza filtrowanie w obecnym buforze. +The default key alt+'=' toggles filtering on/off globally and alt+'-' toggles filtering on/off in the current buffer. -Najczęściej używane tagi: - no_filter, no_highlight, no_log, log0..log9 (poziom logowania), +Tags most commonly used: + no_filter, no_highlight, no_log, log0..log9 (log level), notify_none, notify_message, notify_private, notify_highlight, - self_msg, nick_xxx (xxx to nick w wiadomości), prefix_nick_ccc (ccc to kolor nicka), - host_xxx (xxx to użytkownik + host w wiadomości), - irc_xxx (xxx to nazwa komendy, lub numer; zobacz /server raw lub /debug tags), + self_msg, nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick), + host_xxx (xxx is username + host in message), + irc_xxx (xxx is command name or number, see /server raw or /debug tags), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. -Aby zobaczyć listę tagów w liniach buforów wykonaj: /debug tags +To see tags for lines in buffers: /debug tags -Przykłady: - użyj inteligentnego filtru we wszystkich buforach IRC: +Examples: + use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * - użyj inteligentnego filtru we wszystkich buforach IRC poza tymi zawierającymi "#weechat" w nazwie: + use IRC smart filter on all buffers except those with "#weechat" in name: /filter add irc_smart *,!*#weechat* irc_smart_filter * - filtruj wszystkie wiadomości IRC o join/part/quit: + filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * - filtruj nicki wyświetlane przy wejściu na kanał albo za pomocą /names: + filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * - filtruj nick "toto" na kanale IRC #weechat: + filter nick "toto" on IRC channel #weechat: /filter add toto irc.freenode.#weechat nick_toto * - filtruj wejścia/akcje IRC od użytkownika "toto": + filter IRC join/action messages from nick "toto": /filter add toto * nick_toto+irc_join,nick_toto+irc_action * - filtruj linie zawierające frazę "weechat sucks" na kanale IRC #weechat: + filter lines containing "weechat sucks" on IRC channel #weechat: /filter add sucks irc.freenode.#weechat * weechat sucks - filtruj linie "WeeChat sucks" we wszystkich buforach: + filter lines that are strictly equal to "WeeChat sucks" on all buffers: /filter add sucks2 * * (?-i)^WeeChat sucks$ ---- diff --git a/po/cs.po b/po/cs.po index f26584aea..0fe20969e 100644 --- a/po/cs.po +++ b/po/cs.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Ondřej Súkup \n" "Language-Team: weechat-dev \n" @@ -513,6 +513,10 @@ msgstr "Filtr \"%s\" vypnut" msgid "%sYou must specify at least tags or regex for filter" msgstr "%sChyba: musíte specifikovat buď tag(y) nebo regulární výraz pro filtr" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtr \"%s\" přidán:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtr \"%s\" přidán:" @@ -1678,7 +1682,8 @@ msgstr "" #, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [] || add [," "...] || del |-all" @@ -1694,6 +1699,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/de.po b/po/de.po index 80d097c84..575bdc6e5 100644 --- a/po/de.po +++ b/po/de.po @@ -24,7 +24,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-12-17 11:04+0100\n" "Last-Translator: Nils Görs \n" "Language-Team: German \n" @@ -554,6 +554,10 @@ msgstr "" "%sFür Filter muss ein Schlagwort oder ein regulärer Ausdruck spezifiziert " "werden" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filter \"%s\" hinzugefügt:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filter \"%s\" hinzugefügt:" @@ -1949,13 +1953,16 @@ msgstr "" "Filterfunktion um Nachrichten in Buffern aus- oder einzublenden, dazu können " "Schlagwörter oder reguläre Ausdrücke verwendet werden" +#, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [|@] || add|addreplace [," "...] || rename || del |-all" +#, fuzzy msgid "" " list: list all filters\n" " enable: enable filters (filters are enabled by default)\n" @@ -1966,6 +1973,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/es.po b/po/es.po index 22521b0c1..143965793 100644 --- a/po/es.po +++ b/po/es.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Elián Hanisch \n" "Language-Team: weechat-dev \n" @@ -506,6 +506,10 @@ msgstr "" "%sError: Debes especificar al menos una etiqueta (o varias) o una expresión " "regular para el filtro" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtro \"%s\" añadido:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtro \"%s\" añadido:" @@ -1708,7 +1712,8 @@ msgstr "" #, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [] || add [," "...] || del |-all" @@ -1724,6 +1729,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/fr.po b/po/fr.po index dd449fe46..d82e9fb1f 100644 --- a/po/fr.po +++ b/po/fr.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" -"PO-Revision-Date: 2020-12-15 20:39+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" +"PO-Revision-Date: 2020-12-18 20:24+0100\n" "Last-Translator: Sébastien Helleu \n" "Language-Team: weechat-dev \n" "Language: fr\n" @@ -539,6 +539,10 @@ msgstr "" "%sVous devez spécifier au moins les étiquettes ou l'expression régulière " "pour le filtre" +#, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtre \"%s\" mis à jour :" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtre \"%s\" ajouté :" @@ -1920,11 +1924,12 @@ msgstr "" msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] <étiquettes> || rename || del " -"|-all" +"...] <étiquettes> || rename || recreate " +" || del |-all" msgid "" " list: list all filters\n" @@ -1936,6 +1941,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" @@ -2003,6 +2009,7 @@ msgstr "" " add : ajouter un filtre\n" "addreplace : ajouter ou remplacer un filtre existant\n" " rename : renommer un filtre\n" +" recreate : définir la ligne de commande utilisée pour modifier le filtre\n" " del : supprimer un filtre\n" " -all : supprimer tous les filtres\n" " tampon : liste des tampons, séparés par des virgules, où le filtre est " diff --git a/po/hu.po b/po/hu.po index 6175b3f29..a58002d6f 100644 --- a/po/hu.po +++ b/po/hu.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Andras Voroskoi \n" "Language-Team: weechat-dev \n" @@ -504,6 +504,10 @@ msgstr "a felhasználók le lettek tiltva" msgid "%sYou must specify at least tags or regex for filter" msgstr "" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "a felhasználók le lettek tiltva" + #, fuzzy, c-format msgid "Filter \"%s\" added:" msgstr "a felhasználók le lettek tiltva" @@ -1593,7 +1597,8 @@ msgstr "" msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" msgid "" @@ -1606,6 +1611,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/it.po b/po/it.po index 2a4750a90..6acc1fd3f 100644 --- a/po/it.po +++ b/po/it.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Esteban I. Ruiz Moreno \n" "Language-Team: weechat-dev \n" @@ -495,6 +495,10 @@ msgstr "Filtro \"%s\" disabilitato" msgid "%sYou must specify at least tags or regex for filter" msgstr "%sErrore: specificare almeno un tag o una regex per il filtro" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtro \"%s\" aggiunto:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtro \"%s\" aggiunto:" @@ -1749,7 +1753,8 @@ msgstr "" #, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [] || add [,...] " " ] || del |-all" @@ -1765,6 +1770,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/ja.po b/po/ja.po index 51307620d..4c8d18e53 100644 --- a/po/ja.po +++ b/po/ja.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: AYANOKOUZI, Ryuunosuke \n" "Language-Team: Japanese |@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [|@] || add|addreplace [," "...] || rename || del |-all" +#, fuzzy msgid "" " list: list all filters\n" " enable: enable filters (filters are enabled by default)\n" @@ -1856,6 +1863,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/pl.po b/po/pl.po index 71b3e4435..3687da05a 100644 --- a/po/pl.po +++ b/po/pl.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Krzysztof Korościk \n" "Language-Team: Polish \n" @@ -532,6 +532,10 @@ msgid "%sYou must specify at least tags or regex for filter" msgstr "" "%sBłąd: musisz podać przynajmniej tag(i) lub wyrażenie regularne dla filtru" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Dodano filtr \"%s\":" + #, c-format msgid "Filter \"%s\" added:" msgstr "Dodano filtr \"%s\":" @@ -1890,14 +1894,17 @@ msgstr "" "filtruje wiadomości w buforach, aby je ukryć/pokazać w zależności do tagów " "lub wyrażeń regularnych" +#, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [|@] || add | addreplace " "[,...] || rename || del " "|-all" +#, fuzzy msgid "" " list: list all filters\n" " enable: enable filters (filters are enabled by default)\n" @@ -1908,6 +1915,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/pt.po b/po/pt.po index 405e0a9ad..296094551 100644 --- a/po/pt.po +++ b/po/pt.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Vasco Almeida \n" "Language-Team: Portuguese <>\n" @@ -516,6 +516,10 @@ msgstr "Filtro \"%s\" desativado" msgid "%sYou must specify at least tags or regex for filter" msgstr "%sErro: deve especificar pelo menos tags ou regex no filtro" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtro \"%s\" adicionado:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtro \"%s\" adicionado:" @@ -1834,7 +1838,8 @@ msgstr "" #, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [|@] || add [," "...] || rename || del |-all" @@ -1850,6 +1855,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/pt_BR.po b/po/pt_BR.po index e31f1ca61..da69affc9 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-18 11:34+0200\n" "Last-Translator: Eduardo Elias \n" "Language-Team: weechat-dev \n" @@ -530,6 +530,10 @@ msgstr "" "%sErro: você precisa especificar pelo menos um marcador(es) ou expressão " "regular para o filtro" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtro \"%s\" adicionado:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtro \"%s\" adicionado:" @@ -1754,7 +1758,8 @@ msgstr "" #, fuzzy msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" "list || enable|disable|toggle [] || add [,...] " " || del |-all" @@ -1770,6 +1775,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/ru.po b/po/ru.po index 617f64150..bbe06f155 100644 --- a/po/ru.po +++ b/po/ru.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2020-04-28 16:40+0200\n" "Last-Translator: Aleksey V Zapparov AKA ixti \n" "Language-Team: weechat-dev \n" @@ -514,6 +514,10 @@ msgid "%sYou must specify at least tags or regex for filter" msgstr "" "%sОшибка: Вы должны указать как минимум метку(и) или шаблон для фильтра" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "команда users отключена" + #, fuzzy, c-format msgid "Filter \"%s\" added:" msgstr "команда users отключена" @@ -1615,7 +1619,8 @@ msgstr "" msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" msgid "" @@ -1628,6 +1633,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/tr.po b/po/tr.po index 7433f58df..36ad3d4e7 100644 --- a/po/tr.po +++ b/po/tr.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2019-11-03 08:38+0100\n" "Last-Translator: Hasan Kiran \n" "Language-Team: weechat-dev \n" @@ -462,6 +462,10 @@ msgstr "Filtre \"%s\" devre dışı" msgid "%sYou must specify at least tags or regex for filter" msgstr "" +#, fuzzy, c-format +msgid "Filter \"%s\" updated:" +msgstr "Filtre \"%s\" eklendi:" + #, c-format msgid "Filter \"%s\" added:" msgstr "Filtre \"%s\" eklendi:" @@ -1446,7 +1450,8 @@ msgstr "" msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" msgid "" @@ -1459,6 +1464,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/po/weechat.pot b/po/weechat.pot index 0d42b52c6..4ce35b5bc 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2020-12-15 20:37+0100\n" +"POT-Creation-Date: 2020-12-18 20:22+0100\n" "PO-Revision-Date: 2014-08-16 10:27+0200\n" "Last-Translator: Sébastien Helleu \n" "Language-Team: weechat-dev \n" @@ -460,6 +460,10 @@ msgstr "" msgid "%sYou must specify at least tags or regex for filter" msgstr "" +#, c-format +msgid "Filter \"%s\" updated:" +msgstr "" + #, c-format msgid "Filter \"%s\" added:" msgstr "" @@ -1448,7 +1452,8 @@ msgstr "" msgid "" "list || enable|disable|toggle [|@] || add|addreplace [," -"...] || rename || del |-all" +"...] || rename || recreate " +"|| del |-all" msgstr "" msgid "" @@ -1461,6 +1466,7 @@ msgid "" " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" +" recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter is active:\n" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index e6e3d699c..d567ea180 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -2200,6 +2200,8 @@ command_filter_display (struct t_gui_filter *filter) COMMAND_CALLBACK(filter) { struct t_gui_filter *ptr_filter; + char str_command[4096], str_pos[16]; + int update; /* make C compiler happy */ (void) pointer; @@ -2409,6 +2411,7 @@ COMMAND_CALLBACK(filter) return WEECHAT_RC_OK; } + update = 0; if (string_strcasecmp (argv[1], "addreplace") == 0) { ptr_filter = gui_filter_search_by_name (argv[2]); @@ -2418,6 +2421,7 @@ COMMAND_CALLBACK(filter) ptr_filter->enabled = 0; gui_filter_all_buffers (ptr_filter); gui_filter_free (ptr_filter); + update = 1; } } @@ -2427,15 +2431,45 @@ COMMAND_CALLBACK(filter) { gui_filter_all_buffers (ptr_filter); gui_chat_printf (NULL, ""); - gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER, - _("Filter \"%s\" added:"), - argv[2]); + gui_chat_printf_date_tags ( + NULL, 0, GUI_FILTER_TAG_NO_FILTER, + (update) ? _("Filter \"%s\" updated:") : _("Filter \"%s\" added:"), + argv[2]); command_filter_display (ptr_filter); } return WEECHAT_RC_OK; } + /* recreate a filter */ + if (string_strcasecmp (argv[1], "recreate") == 0) + { + COMMAND_MIN_ARGS(3, "recreate"); + ptr_filter = gui_filter_search_by_name (argv[2]); + if (ptr_filter) + { + snprintf (str_command, sizeof (str_command), + "/filter addreplace %s %s %s %s", + ptr_filter->name, + ptr_filter->buffer_name, + ptr_filter->tags, + ptr_filter->regex); + gui_buffer_set (buffer, "input", str_command); + snprintf (str_pos, sizeof (str_pos), + "%d", utf8_strlen (str_command)); + gui_buffer_set (buffer, "input_pos", str_pos); + } + else + { + gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER, + _("%sFilter \"%s\" not found"), + gui_chat_prefix[GUI_CHAT_PREFIX_ERROR], + argv[2]); + return WEECHAT_RC_OK; + } + return WEECHAT_RC_OK; + } + /* rename a filter */ if (string_strcasecmp (argv[1], "rename") == 0) { @@ -2465,7 +2499,6 @@ COMMAND_CALLBACK(filter) _("%sFilter \"%s\" not found"), gui_chat_prefix[GUI_CHAT_PREFIX_ERROR], argv[2]); - return WEECHAT_RC_OK; } return WEECHAT_RC_OK; } @@ -7534,6 +7567,7 @@ command_init () " || enable|disable|toggle [|@]" " || add|addreplace [,...] " " || rename " + " || recreate " " || del |-all"), N_(" list: list all filters\n" " enable: enable filters (filters are enabled by default)\n" @@ -7544,6 +7578,7 @@ command_init () " add: add a filter\n" "addreplace: add or replace an existing filter\n" " rename: rename a filter\n" + " recreate: set input with the command used to edit the filter\n" " del: delete a filter\n" " -all: delete all filters\n" " buffer: comma separated list of buffers where filter " @@ -7611,6 +7646,7 @@ command_init () " || toggle %(filters_names)|@" " || add|addreplace %(filters_names) %(buffers_plugins_names)|*" " || rename %(filters_names) %(filters_names)" + " || recreate %(filters_names)" " || del %(filters_names)|-all", &command_filter, NULL, NULL); hook_command (