diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | doc/de/autogen/user/weechat_commands.txt | 70 | ||||
-rw-r--r-- | doc/en/autogen/user/weechat_commands.txt | 40 | ||||
-rw-r--r-- | doc/fr/autogen/user/weechat_commands.txt | 40 | ||||
-rw-r--r-- | doc/it/autogen/user/weechat_commands.txt | 86 | ||||
-rw-r--r-- | po/cs.po | 58 | ||||
-rw-r--r-- | po/de.po | 68 | ||||
-rw-r--r-- | po/es.po | 59 | ||||
-rw-r--r-- | po/fr.po | 121 | ||||
-rw-r--r-- | po/hu.po | 62 | ||||
-rw-r--r-- | po/it.po | 64 | ||||
-rw-r--r-- | po/pl.po | 59 | ||||
-rw-r--r-- | po/pt_BR.po | 57 | ||||
-rw-r--r-- | po/ru.po | 62 | ||||
-rw-r--r-- | po/weechat.pot | 62 | ||||
-rw-r--r-- | src/core/wee-command.c | 51 | ||||
-rw-r--r-- | src/core/wee-config.c | 4 | ||||
-rw-r--r-- | src/gui/gui-filter.c | 105 | ||||
-rw-r--r-- | src/gui/gui-filter.h | 12 | ||||
-rw-r--r-- | src/gui/gui-line.c | 17 |
20 files changed, 607 insertions, 494 deletions
@@ -1,12 +1,14 @@ WeeChat ChangeLog ================= Sébastien Helleu <flashcode@flashtux.org> -v0.3.5-dev, 2011-03-07 +v0.3.5-dev, 2011-03-09 Version 0.3.5 (under dev!) -------------------------- +* core: allow list of buffers in command /filter (exclusion with prefix "!") + (task #10880) * core: reload file with certificate authorities when option weechat.network.gnutls_ca_file is changed * core: rebuild bar content when items are changed in an hidden bar diff --git a/doc/de/autogen/user/weechat_commands.txt b/doc/de/autogen/user/weechat_commands.txt index fe3323a0f..925a16f96 100644 --- a/doc/de/autogen/user/weechat_commands.txt +++ b/doc/de/autogen/user/weechat_commands.txt @@ -163,47 +163,53 @@ windows: zeigt die Fensterstruktur an ........................................ /filter list enable|disable|toggle [<name>] - add <name> <plugin.buffer> <tags> <regex> + add <name> <buffer>[,<buffer>...] <tags> <regex> del <name>|-all - list: alle Filter auflisten - enable: Filter aktivieren (Filter werden standardmässig aktiviert) - disable: Filter deaktivieren - toggle: Filter de-/aktivieren - name: Name des Filters - add: Filter hinzufügen - del: Filter entfernen - -all: entfernt alle Filter -plugin.buffer: Erweiterungen und Buffer in denen die Filterfunktion aktiviert ist ("*" für alle Buffer) - tags: durch Kommata getrennte Liste mit Tags. Zum Beispiel: "irc_join,irc_part,irc_quit" - regex: regulärer Ausdruck um in einer Zeile zu suchen - - das Präfix 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) - Hinweis: Es werden zwei reguläre Ausdrücke erstellt. Der erste für den Präfix und der zweite für die Nachricht - -Die Tastenvoreinstellung alt+'=' schaltet die Filterfunktion an/aus. - -Die am häufigsten gebrauchten Tags lauten: - no_filter, no_highlight, no_log, log0..log9 (log Level), + list: list all filters + enable: enable filters (filters are enabled by default) +disable: disable filters + toggle: toggle filters + name: filter name + add: add a 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") + - "*" means all buffers + - a name starting with '!' is excluded + - name can start or end with '*' to match many buffers + tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit" + regex: 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 + +The default key alt+'=' toggles filtering on/off. + +Tags most commonly used: + no_filter, no_highlight, no_log, log0..log9 (log level), notify_message, notify_private, notify_highlight, - nick_xxx (xxx ist durch den Nicknamen zu ersetzen), - irc_xxx (xxx ist durch einen IRC Befehl oder die IRC Nummer zu ersetzen, siehe /server raw) + nick_xxx (xxx is nick in message), + irc_xxx (xxx is command name or number, see /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. -Beispiele: - aktiviert einen einfachen IRC Filter für join/part/quit Nachrichten: +Examples: + use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * - filtert alle IRC join/part/quit Nachrichten: + use IRC smart filter on all buffers except those with "#weechat" in name: + /filter add irc_smart *,!*#weechat* irc_smart_filter * + 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 * toto\t - nur der Nick "tutu" wird im IRC Channel #test angezeigt: - /filter add tutu irc.freenode.#test * !tutu\t - filtert Zeilen die das Wort "spam" enthalten: + keep only nick "titi" on IRC channel #test: + /filter add titi irc.freenode.#test * !titi\t + filter lines containing word "spam": /filter add filterspam * * spam - 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 ........................................ @@ -421,7 +427,7 @@ Wird keine Datei angegeben dann werden alle Konfigurationen (WeeChat und Erweite ........................................ /set [<option> [<value>]] -option: Name der zu ändernden Option (darf mit einem Joker "*" beginnen oder enden um mehrere Optionen anzuzeigen) +option: Name der zu ändernden Option (darf mit einem Joker '*' beginnen oder enden um mehrere Optionen anzuzeigen) value: neuer Wert, den die Option erhalten soll Abhängig von der ausgewählten Option, kann die Variable folgenden Inhalt haben: diff --git a/doc/en/autogen/user/weechat_commands.txt b/doc/en/autogen/user/weechat_commands.txt index 3baa49ef3..d329ec8b5 100644 --- a/doc/en/autogen/user/weechat_commands.txt +++ b/doc/en/autogen/user/weechat_commands.txt @@ -163,23 +163,27 @@ windows: display windows tree ........................................ /filter list enable|disable|toggle [<name>] - add <name> <plugin.buffer> <tags> <regex> + add <name> <buffer>[,<buffer>...] <tags> <regex> del <name>|-all - list: list all filters - enable: enable filters (filters are enabled by default) - disable: disable filters - toggle: toggle filters - name: filter name - add: add a filter - del: delete a filter - -all: delete all filters -plugin.buffer: plugin and buffer where filter is active ("*" for all buffers) - tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit" - regex: 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 '!') - note: two regex are created: one for prefix and one for message + list: list all filters + enable: enable filters (filters are enabled by default) +disable: disable filters + toggle: toggle filters + name: filter name + add: add a 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") + - "*" means all buffers + - a name starting with '!' is excluded + - name can start or end with '*' to match many buffers + tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit" + regex: 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 The default key alt+'=' toggles filtering on/off. @@ -191,8 +195,10 @@ Tags most commonly used: irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. Examples: - use IRC smart filter for join/part/quit messages: + use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * + use IRC smart filter on all buffers except those with "#weechat" in name: + /filter add irc_smart *,!*#weechat* irc_smart_filter * filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * filter nicks displayed when joining channels or with /names: @@ -421,7 +427,7 @@ Without argument, all files (WeeChat and plugins) are saved. ........................................ /set [<option> [<value>]] -option: name of an option (can start or end with "*" to list many options) +option: name of an option (can start or end with '*' to list many options) value: new value for option New value can be, according to variable type: diff --git a/doc/fr/autogen/user/weechat_commands.txt b/doc/fr/autogen/user/weechat_commands.txt index d382fab64..e2896ac10 100644 --- a/doc/fr/autogen/user/weechat_commands.txt +++ b/doc/fr/autogen/user/weechat_commands.txt @@ -163,23 +163,27 @@ extension: nom de l'extension ("core" pour le coeur de WeeChat) ........................................ /filter list enable|disable|toggle [<nom>] - add <nom> <extension.tampon> <tags> <regex> + add <nom> <tampon>[,<tampon>...] <tags> <regex> del <nom>|-all - list: lister tous les filtres - enable: activer les filtres (par défaut les filtres sont activés) - disable: désactiver les filtres - toggle: activer/désactiver les filtres - nom: nom de filtre - add: ajouter un filtre - del: supprimer un filtre - -all: supprimer tous les filtres -extension.tampon: extension et tampon où le filtre est actif ("*" pour tous les tampons) - tags: liste de tags, séparés par des virgules, par exemple: "irc_join,irc_part,irc_quit" - regex: expression régulière à rechercher dans la ligne - - utiliser '\t' pour séparer le préfixe du message, les caractères spéciaux comme '|' doivent être échappés: '\|' - - si l'expression régulière commence par '!' alors le résultat est inversé (utiliser '\!' pour démarrer par '!') - note: deux regex sont créées: une pour le préfixe et une pour le message + list: lister tous les filtres + enable: activer les filtres (par défaut les filtres sont activés) +disable: désactiver les filtres + toggle: activer/désactiver les filtres + nom: nom de filtre + add: ajouter un 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 : + - il s'agit du nom complet incluant l'extension (exemple: "irc.freenode.#weechat") + - "*" signifie tous les tampons + - un nom commençant par '!' est exclu + - le nom peut commencer ou se terminer par '*' pour plusieurs tampons + tags: liste de tags, séparés par des virgules, par exemple: "irc_join,irc_part,irc_quit" + regex: expression régulière à rechercher dans la ligne + - utiliser '\t' pour séparer le préfixe du message, les caractères spéciaux comme '|' doivent être échappés: '\|' + - si l'expression régulière commence par '!' alors le résultat est inversé (utiliser '\!' pour démarrer par '!') + - deux expressions régulières sont créées: une pour le préfixe et une pour le message La touche par défaut alt+'=' active/désactive le filtrage. @@ -191,8 +195,10 @@ Les tags les plus couramment utilisés: irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. Exemples: - utiliser le filtre intelligent IRC pour les messages join/part/quit: + utiliser le filtre intelligent IRC sur tous les tampons: /filter add irc_smart * irc_smart_filter * + utiliser le filtre intelligent IRC sur tous les tampons sauf ceux avec "#weechat" dans le nom: + /filter add irc_smart *,!*#weechat* irc_smart_filter * filtrer tous les messages IRC join/part/quit: /filter add joinquit * irc_join,irc_part,irc_quit * filtrer les pseudos afficher en rejoignant les canaux ou avec /names: @@ -421,7 +427,7 @@ Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés. ........................................ /set [<option> [<valeur>]] -option: nom d'une option (peut démarrer ou se terminer par "*" pour lister plusieurs options) +option: nom d'une option (peut démarrer ou se terminer par '*' pour lister plusieurs options) valeur: nouvelle valeur pour l'option La nouvelle valeur peut être, selon le type de l'option: diff --git a/doc/it/autogen/user/weechat_commands.txt b/doc/it/autogen/user/weechat_commands.txt index 5fca63682..a10e7ab27 100644 --- a/doc/it/autogen/user/weechat_commands.txt +++ b/doc/it/autogen/user/weechat_commands.txt @@ -162,49 +162,55 @@ windows: mostra l'albero delle finestre [command]*`filter`* filtra messaggi nei buffer, per nascondere/mostrare in base a tag o regexp:: ........................................ /filter list - enable|disable|toggle [<nome>] - add <nome> <plugin.buffer> <tag> <regex>] - del <nome>|-all - - list: elenca tutti i filtri - enable: abilita filtri (i filtri sono abilitati di default) - disable: disabilita filtri - toggle: abilita/disabilita filtri - nome: nome del filtro - add: aggiunge un filtro - del: elimina un filtro - -all: elimina tutti i filtri -plugin.buffer: plugin e buffer in cui il filtro è attivo ("*" per tutti i buffer) - tag: elenco di tag separati da virgole, per esempio: "irc_join,irc_part,irc_quit" - regex: espressione regolare da cercare nella riga - - utilizzare ' ' per separare il prefisso dal messaggio, caratteri speciali come "|" devono essere preceduti dal carattere escape: '\|') - - se l'espressione regolare inizia con '!', il risultato corrispondente viene invertito (usare '\!' per iniziare con '!') - - nota: vengono create due espressioni regolari: una per il prefisso e l'altra per il messaggio - -Il tasto predefinito alt+'=' abilita/disabilita il filtro. - -Tag utilizzati di frequente: - no_filter, no_highlight, no_log, log0..log9 (livello di log), + enable|disable|toggle [<name>] + add <name> <buffer>[,<buffer>...] <tags> <regex> + del <name>|-all + + list: list all filters + enable: enable filters (filters are enabled by default) +disable: disable filters + toggle: toggle filters + name: filter name + add: add a 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") + - "*" means all buffers + - a name starting with '!' is excluded + - name can start or end with '*' to match many buffers + tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit" + regex: 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 + +The default key alt+'=' toggles filtering on/off. + +Tags most commonly used: + no_filter, no_highlight, no_log, log0..log9 (log level), notify_message, notify_private, notify_highlight, - nick_xxx (xxx è il nick nel messaggio), - irc_xxx (xxx è il nome comando o il numero, consultare /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. + nick_xxx (xxx is nick in message), + irc_xxx (xxx is command name or number, see /server raw), + irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. -Esempi: - usa il filtro intelligente IRC per i messaggi di entrata/uscita/abbandono: - /filter add irc_smart * irc_smart_filter * - filtra tutti i messaggi entrata/uscita/abbandono di IRC: - /filter add joinquit * irc_join,irc_part,irc_quit * - filtra i nick visualizzati all'ingresso in un canale o con /names: +Examples: + use IRC smart filter on all buffers: + /filter add irc_smart * irc_smart_filter * + use IRC smart filter on all buffers except those with "#weechat" in name: + /filter add irc_smart *,!*#weechat* irc_smart_filter * + filter all IRC join/part/quit messages: + /filter add joinquit * irc_join,irc_part,irc_quit * + filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * - filtra il nick "tizio" sul canale IRC #weechat - /filter add tizio irc.freenode.#esempio * tizio\t - filtra solo il nick "caio" sul canale IRC #test: - /filter add caio irc.freenode.#test * !caio\t - filtra le righe contententi la parola "spam": + filter nick "toto" on IRC channel #weechat: + /filter add toto irc.freenode.#weechat * toto\t + keep only nick "titi" on IRC channel #test: + /filter add titi irc.freenode.#test * !titi\t + filter lines containing word "spam": /filter add filterspam * * spam - filtra le righe contententi "weechat fa schifo" sul canale IRC #weechat: - /filter add schifo irc.freenode.#weechat * weechat fa schifo + filter lines containing "weechat sucks" on IRC channel #weechat: + /filter add sucks irc.freenode.#weechat * weechat sucks ........................................ [command]*`help`* visualizza l'aiuto su comandi e opzioni:: @@ -421,7 +427,7 @@ Senza argomento, vengono salvati tutti i file (WeeChat e plugin). ........................................ /set [<opzione> [<valore>]] -opzione: nome di un'opzione (può iniziare o terminare con "*" per visualizzare più opzioni) +opzione: nome di un'opzione (può iniziare o terminare con '*' per visualizzare più opzioni) valore: nuovo valore per l'opzione Il nuovo valore può essere, a seconda del tipo di variabile: @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:29+0100\n" "Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -237,8 +237,8 @@ msgstr "Hrubý obsah bufferů byl zapsán do logovacího souboru" msgid "Debug disabled for \"%s\"" msgstr "Ladění vypnuto pro \"%s\"" -#, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +#, fuzzy, c-format +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr "" " %s[%s%s%s]%s buffer: %s%s%s%s%s / značky: %s / regulární výraz: %s %s" @@ -1083,32 +1083,36 @@ msgstr "" #, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "[list] | [enable|disable|toggle [name]] | [add jméno plugin.buffer tags " "regex] | [del name|-all]" #, fuzzy msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1122,8 +1126,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1547,8 +1554,7 @@ msgstr "[možnost [hodnota]]" #, fuzzy msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -22,8 +22,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 14:41+0100\n" -"PO-Revision-Date: 2011-03-07 18:54+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" +"PO-Revision-Date: 2011-03-09 09:29+0100\n" "Last-Translator: Nils G.\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: \n" @@ -248,8 +248,8 @@ msgstr "" msgid "Debug disabled for \"%s\"" msgstr "Debug deaktiviert für \"%s\"" -#, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +#, fuzzy, c-format +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " %s[%s%s%s]%s Buffer: %s%s%s%s%s / tags: %s / Reg-ex: %s %s" msgid "(disabled)" @@ -1119,32 +1119,38 @@ msgstr "" "Filterfunktion um Nachrichten in Buffern zu aus- oder einzublenden, dazu " "können Tags oder regulären Ausdrücken verwendet werden" +#, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " "<regex> || del <name>|-all" -msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +#, fuzzy +msgid "" +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1158,8 +1164,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1653,8 +1662,7 @@ msgid "[<option> [<value>]]" msgstr "[<option> [<value>]]" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -1672,8 +1680,8 @@ msgid "" " add a word to highlight:\n" " /set weechat.look.highlight \"word\"" msgstr "" -"option: Name der zu ändernden Option (darf mit einem Joker \"*\" beginnen " -"oder enden um mehrere Optionen anzuzeigen)\n" +"option: Name der zu ändernden Option (darf mit einem Joker '*' beginnen oder " +"enden um mehrere Optionen anzuzeigen)\n" " value: neuer Wert, den die Option erhalten soll\n" "\n" "Abhängig von der ausgewählten Option, kann die Variable folgenden Inhalt " @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:29+0100\n" "Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -239,8 +239,8 @@ msgstr "" msgid "Debug disabled for \"%s\"" msgstr "Depurado de \"%s\" desactivado" -#, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +#, fuzzy, c-format +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " %s[%s%s%s]%s buffer: %s%s%s%s%s / etiquetas: %s / expresión: %s %s" msgid "(disabled)" @@ -1106,31 +1106,36 @@ msgstr "" #, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "[list] | [enable|disable|toggle [nombre]] | [add nombre plugin.buffer " "etiquetas regex] | [del nombre|-all]" +#, fuzzy msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1144,8 +1149,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1576,8 +1584,7 @@ msgstr "[opción [valor]]" #, fuzzy msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" -"PO-Revision-Date: 2011-03-07 11:40+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" +"PO-Revision-Date: 2011-03-09 10:07+0100\n" "Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: French\n" @@ -240,8 +240,8 @@ msgid "Debug disabled for \"%s\"" msgstr "Debug désactivé pour \"%s\"" #, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" -msgstr " %s[%s%s%s]%s tampon: %s%s%s%s%s / tags: %s / regex: %s %s" +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" +msgstr " %s[%s%s%s]%s tampon: %s%s%s / tags: %s / regex: %s %s" msgid "(disabled)" msgstr "(désactivé)" @@ -1106,31 +1106,35 @@ msgstr "" "tags ou expressions régulières" msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" -msgstr "" -"list || enable|disable|toggle [<nom>] || add <nom> <extension.tampon> <tags> " -"<regex> || del <nom>|-all" - -msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" +msgstr "" +"list || enable|disable|toggle [<nom>] || add <nom> <tampon>[,<tampon>...] " +"<tags> <regex> || del <nom>|-all" + +msgid "" +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1144,8 +1148,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1159,25 +1166,31 @@ msgid "" " filter lines containing \"weechat sucks\" on IRC channel #weechat:\n" " /filter add sucks irc.freenode.#weechat * weechat sucks" msgstr "" -" list: lister tous les filtres\n" -" enable: activer les filtres (par défaut les filtres sont activés)\n" -" disable: désactiver les filtres\n" -" toggle: activer/désactiver les filtres\n" -" nom: nom de filtre\n" -" add: ajouter un filtre\n" -" del: supprimer un filtre\n" -" -all: supprimer tous les filtres\n" -"extension.tampon: extension et tampon où le filtre est actif (\"*\" pour " -"tous les tampons)\n" -" tags: liste de tags, séparés par des virgules, par exemple: " -"\"irc_join,irc_part,irc_quit\"\n" -" regex: expression régulière à rechercher dans la ligne\n" -" - utiliser '\\t' pour séparer le préfixe du message, les " -"caractères spéciaux comme '|' doivent être échappés: '\\|'\n" -" - si l'expression régulière commence par '!' alors le " -"résultat est inversé (utiliser '\\!' pour démarrer par '!')\n" -" note: deux regex sont créées: une pour le préfixe et une " -"pour le message\n" +" list: lister tous les filtres\n" +" enable: activer les filtres (par défaut les filtres sont activés)\n" +"disable: désactiver les filtres\n" +" toggle: activer/désactiver les filtres\n" +" nom: nom de filtre\n" +" add: ajouter un 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 " +"actif :\n" +" - il s'agit du nom complet incluant l'extension (exemple: \"irc." +"freenode.#weechat\")\n" +" - \"*\" signifie tous les tampons\n" +" - un nom commençant par '!' est exclu\n" +" - le nom peut commencer ou se terminer par '*' pour plusieurs " +"tampons\n" +" tags: liste de tags, séparés par des virgules, par exemple: \"irc_join," +"irc_part,irc_quit\"\n" +" regex: expression régulière à rechercher dans la ligne\n" +" - utiliser '\\t' pour séparer le préfixe du message, les caractères " +"spéciaux comme '|' doivent être échappés: '\\|'\n" +" - si l'expression régulière commence par '!' alors le résultat est " +"inversé (utiliser '\\!' pour démarrer par '!')\n" +" - deux expressions régulières sont créées: une pour le préfixe et " +"une pour le message\n" "\n" "La touche par défaut alt+'=' active/désactive le filtrage.\n" "\n" @@ -1190,8 +1203,11 @@ msgstr "" "irc_smart_filter, away_info.\n" "\n" "Exemples:\n" -" utiliser le filtre intelligent IRC pour les messages join/part/quit:\n" +" utiliser le filtre intelligent IRC sur tous les tampons:\n" " /filter add irc_smart * irc_smart_filter *\n" +" utiliser le filtre intelligent IRC sur tous les tampons sauf ceux avec " +"\"#weechat\" dans le nom:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filtrer tous les messages IRC join/part/quit:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filtrer les pseudos afficher en rejoignant les canaux ou avec /names:\n" @@ -1614,8 +1630,7 @@ msgid "[<option> [<value>]]" msgstr "[<option> [<valeur>]]" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -1633,7 +1648,7 @@ msgid "" " add a word to highlight:\n" " /set weechat.look.highlight \"word\"" msgstr "" -"option: nom d'une option (peut démarrer ou se terminer par \"*\" pour lister " +"option: nom d'une option (peut démarrer ou se terminer par '*' pour lister " "plusieurs options)\n" "valeur: nouvelle valeur pour l'option\n" "\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:29+0100\n" "Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -242,7 +242,7 @@ msgid "Debug disabled for \"%s\"" msgstr "" #, fuzzy, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " (nincs üzenetkezelő)\n" #, fuzzy @@ -1049,29 +1049,33 @@ msgid "" msgstr "" msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" -msgstr "" - -msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" +msgstr "" + +msgid "" +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1085,8 +1089,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1388,8 +1395,7 @@ msgid "[<option> [<value>]]" msgstr "[opció [ = érték]]" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" -"PO-Revision-Date: 2011-02-22 19:26+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" +"PO-Revision-Date: 2011-03-09 09:29+0100\n" "Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: Italian\n" @@ -237,8 +237,8 @@ msgstr "Il contenuto raw dei buffer è stato salvato sul file di log" msgid "Debug disabled for \"%s\"" msgstr "Debug disabilitato per \"%s\"" -#, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +#, fuzzy, c-format +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " %s[%s%s%s]%s buffer: %s%s%s%s%s / tag: %s /regex: %s %s" msgid "(disabled)" @@ -1090,32 +1090,38 @@ msgid "" msgstr "" "filtra messaggi nei buffer, per nascondere/mostrare in base a tag o regexp" +#, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "list || enable|disable|toggle [<nome>] || add <nome> <plugin.buffer> <tag> " "<regex>] || del <nome>|-all" +#, fuzzy msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1129,8 +1135,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1557,8 +1566,7 @@ msgid "[<option> [<value>]]" msgstr "[<opzione> [<valore>]]" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -1576,7 +1584,7 @@ msgid "" " add a word to highlight:\n" " /set weechat.look.highlight \"word\"" msgstr "" -"opzione: nome di un'opzione (può iniziare o terminare con \"*\" per " +"opzione: nome di un'opzione (può iniziare o terminare con '*' per " "visualizzare più opzioni)\n" " valore: nuovo valore per l'opzione\n" "\n" @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:29+0100\n" "Last-Translator: Krzysztof Koroscik <soltys@szluug.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -240,8 +240,8 @@ msgstr "Surowa zawartość bufora została zapisana do pliku z logiem" msgid "Debug disabled for \"%s\"" msgstr "Debugowanie wyłączone dla\"%s\"" -#, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +#, fuzzy, c-format +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " %s[%s%s%s]%s bufor: %s%s%s%s%s / tagi: %s / wyrażenie: %s %s" msgid "(disabled)" @@ -1112,31 +1112,36 @@ msgstr "" #, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "[list] | [enable|disable|toggle [nazwa]] | [add nazwa wtyczka.bufor tagi " "regex] | [del nazwa|-all]" +#, fuzzy msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1150,8 +1155,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1582,8 +1590,7 @@ msgstr "[opcja [wartość]]" #, fuzzy msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" diff --git a/po/pt_BR.po b/po/pt_BR.po index 5d46d0ea0..cec0f224b 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:30+0100\n" "Last-Translator: Ivan Sichmann Freitas <ivansichfreitas@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -240,7 +240,7 @@ msgid "Debug disabled for \"%s\"" msgstr "Debug desabilitado para \"%s\"" #, fuzzy, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" msgid "(disabled)" @@ -1096,31 +1096,36 @@ msgstr "" #, fuzzy msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" msgstr "" "[list] | [enable|disable|toggle [name]] | [add name plugin.buffer marcadores " "regex] | [del name|-all]" +#, fuzzy msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1134,8 +1139,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1565,8 +1573,7 @@ msgstr "[opção [valor]]" #, fuzzy msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.5-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2011-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: 2011-02-07 17:30+0100\n" "Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -245,7 +245,7 @@ msgid "Debug disabled for \"%s\"" msgstr "" #, fuzzy, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr " (нет обработчика сообщений)\n" #, fuzzy @@ -1057,29 +1057,33 @@ msgid "" msgstr "" msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" -msgstr "" - -msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" +msgstr "" + +msgid "" +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -1093,8 +1097,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1397,8 +1404,7 @@ msgid "[<option> [<value>]]" msgstr "[параметр [ = значение]]" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" diff --git a/po/weechat.pot b/po/weechat.pot index 3b13f9995..492cce17a 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-03-07 12:20+0100\n" +"POT-Creation-Date: 2011-03-09 10:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -204,7 +204,7 @@ msgid "Debug disabled for \"%s\"" msgstr "" #, c-format -msgid " %s[%s%s%s]%s buffer: %s%s%s%s%s / tags: %s / regex: %s %s" +msgid " %s[%s%s%s]%s buffer: %s%s%s / tags: %s / regex: %s %s" msgstr "" msgid "(disabled)" @@ -907,29 +907,33 @@ msgid "" msgstr "" msgid "" -"list || enable|disable|toggle [<name>] || add <name> <plugin.buffer> <tags> " -"<regex> || del <name>|-all" -msgstr "" - -msgid "" -" list: list all filters\n" -" enable: enable filters (filters are enabled by default)\n" -" disable: disable filters\n" -" toggle: toggle filters\n" -" name: filter name\n" -" add: add a filter\n" -" del: delete a filter\n" -" -all: delete all filters\n" -"plugin.buffer: plugin and buffer where filter is active (\"*\" for all " -"buffers)\n" -" tags: comma separated list of tags, for example: \"irc_join," -"irc_part,irc_quit\"\n" -" regex: regular expression to search in line\n" -" - use '\\t' to separate prefix from message, special chars " -"like '|' must be escaped: '\\|'\n" -" - if regex starts with '!', then matching result is reversed " -"(use '\\!' to start with '!')\n" -" note: two regex are created: one for prefix and one for " +"list || enable|disable|toggle [<name>] || add <name> <buffer>[,<buffer>...] " +"<tags> <regex> || del <name>|-all" +msgstr "" + +msgid "" +" list: list all filters\n" +" enable: enable filters (filters are enabled by default)\n" +"disable: disable filters\n" +" toggle: toggle filters\n" +" name: filter name\n" +" add: add a filter\n" +" del: delete a filter\n" +" -all: delete all filters\n" +" buffer: comma separated list of buffers where filter is active:\n" +" - this is full name including plugin (example: \"irc.freenode." +"#weechat\")\n" +" - \"*\" means all buffers\n" +" - a name starting with '!' is excluded\n" +" - name can start or end with '*' to match many buffers\n" +" tags: comma separated list of tags, for example: \"irc_join,irc_part," +"irc_quit\"\n" +" regex: regular expression to search in line\n" +" - use '\\t' to separate prefix from message, special chars like '|' " +"must be escaped: '\\|'\n" +" - if regex starts with '!', then matching result is reversed (use " +"'\\!' to start with '!')\n" +" - two regular expressions are created: one for prefix and one for " "message\n" "\n" "The default key alt+'=' toggles filtering on/off.\n" @@ -943,8 +947,11 @@ msgid "" "irc_smart_filter, away_info.\n" "\n" "Examples:\n" -" use IRC smart filter for join/part/quit messages:\n" +" use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" +" use IRC smart filter on all buffers except those with \"#weechat\" in " +"name:\n" +" /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -1210,8 +1217,7 @@ msgid "[<option> [<value>]]" msgstr "" msgid "" -"option: name of an option (can start or end with \"*\" to list many " -"options)\n" +"option: name of an option (can start or end with '*' to list many options)\n" " value: new value for option\n" "\n" "New value can be, according to variable type:\n" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index 16aae65ea..a8121a3b3 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -1183,7 +1183,7 @@ void command_filter_display (struct t_gui_filter *filter) { gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER, - _(" %s[%s%s%s]%s buffer: %s%s%s%s%s " + _(" %s[%s%s%s]%s buffer: %s%s%s " "/ tags: %s / regex: %s %s"), GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), GUI_COLOR(GUI_COLOR_CHAT), @@ -1191,8 +1191,6 @@ command_filter_display (struct t_gui_filter *filter) GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), GUI_COLOR(GUI_COLOR_CHAT), GUI_COLOR(GUI_COLOR_CHAT_BUFFER), - (filter->plugin_name) ? filter->plugin_name : "", - (filter->plugin_name) ? "." : "", filter->buffer_name, GUI_COLOR(GUI_COLOR_CHAT), filter->tags, @@ -4773,28 +4771,34 @@ command_init () "to tags or regex"), N_("list" " || enable|disable|toggle [<name>]" - " || add <name> <plugin.buffer> <tags> <regex>" + " || add <name> <buffer>[,<buffer>...] <tags> <regex>" " || del <name>|-all"), - N_(" list: list all filters\n" - " enable: enable filters (filters are enabled by " + N_(" list: list all filters\n" + " enable: enable filters (filters are enabled by " "default)\n" - " disable: disable filters\n" - " toggle: toggle filters\n" - " name: filter name\n" - " add: add a filter\n" - " del: delete a filter\n" - " -all: delete all filters\n" - "plugin.buffer: plugin and buffer where filter is active " - "(\"*\" for all buffers)\n" - " tags: comma separated list of tags, for " + "disable: disable filters\n" + " toggle: toggle filters\n" + " name: filter name\n" + " add: add a filter\n" + " del: delete a filter\n" + " -all: delete all filters\n" + " buffer: comma separated list of buffers where filter " + "is active:\n" + " - this is full name including plugin (example: " + "\"irc.freenode.#weechat\")\n" + " - \"*\" means all buffers\n" + " - a name starting with '!' is excluded\n" + " - name can start or end with '*' to " + "match many buffers\n" + " tags: comma separated list of tags, for " "example: \"irc_join,irc_part,irc_quit\"\n" - " regex: regular expression to search in line\n" - " - use '\\t' to separate prefix from message, special " + " regex: regular expression to search in line\n" + " - use '\\t' to separate prefix from message, special " "chars like '|' must be escaped: '\\|'\n" - " - if regex starts with '!', then matching " + " - if regex starts with '!', then matching " "result is reversed (use '\\!' to start with '!')\n" - " note: two regex are created: one for prefix " - "and one for message\n\n" + " - two regular expressions are created: one for " + "prefix and one for message\n\n" "The default key alt+'=' toggles filtering on/off.\n\n" "Tags most commonly used:\n" " no_filter, no_highlight, no_log, log0..log9 (log level),\n" @@ -4804,8 +4808,11 @@ command_init () " irc_numeric, irc_error, irc_action, irc_ctcp, " "irc_ctcp_reply, irc_smart_filter, away_info.\n\n" "Examples:\n" - " use IRC smart filter for join/part/quit messages:\n" + " use IRC smart filter on all buffers:\n" " /filter add irc_smart * irc_smart_filter *\n" + " use IRC smart filter on all buffers except those with " + "\"#weechat\" in name:\n" + " /filter add irc_smart *,!*#weechat* irc_smart_filter *\n" " filter all IRC join/part/quit messages:\n" " /filter add joinquit * irc_join,irc_part,irc_quit *\n" " filter nicks displayed when joining channels or with /names:\n" @@ -5082,7 +5089,7 @@ command_init () hook_command (NULL, "set", N_("set config options"), N_("[<option> [<value>]]"), - N_("option: name of an option (can start or end with \"*\" " + N_("option: name of an option (can start or end with '*' " "to list many options)\n" " value: new value for option\n\n" "New value can be, according to variable type:\n" diff --git a/src/core/wee-config.c b/src/core/wee-config.c index 3cc9f3731..46a42d20f 100644 --- a/src/core/wee-config.c +++ b/src/core/wee-config.c @@ -1305,10 +1305,8 @@ config_weechat_filter_write_cb (void *data, struct t_config_file *config_file, { if (!config_file_write_line (config_file, ptr_filter->name, - "%s;%s%s%s;%s;%s", + "%s;%s;%s;%s", (ptr_filter->enabled) ? "on" : "off", - (ptr_filter->plugin_name) ? ptr_filter->plugin_name : "", - (ptr_filter->plugin_name) ? "." : "", ptr_filter->buffer_name, ptr_filter->tags, ptr_filter->regex)) diff --git a/src/gui/gui-filter.c b/src/gui/gui-filter.c index 9510afe45..6fee8c640 100644 --- a/src/gui/gui-filter.c +++ b/src/gui/gui-filter.c @@ -68,15 +68,42 @@ gui_filter_line_has_tag_no_filter (struct t_gui_line *line) } /* + * gui_filter_match_buffer: return 1 if filters matches full name of buffer + */ + +int +gui_filter_match_buffer (struct t_gui_filter *filter, const char *full_name) +{ + int i, match; + char *ptr_name; + + match = 0; + for (i = 0; i < filter->num_buffers; i++) + { + ptr_name = filter->buffers[i]; + if (ptr_name[0] == '!') + ptr_name++; + if (string_match (full_name, ptr_name, 0)) + { + if (filter->buffers[i][0] == '!') + return 0; + else + match = 1; + } + } + + return match; +} + +/* * gui_filter_check_line: return 1 if a line should be displayed, or * 0 if line is hidden (tag or regex found) */ int -gui_filter_check_line (struct t_gui_buffer *buffer, struct t_gui_line *line) +gui_filter_check_line (struct t_gui_line *line, const char *buffer_full_name) { struct t_gui_filter *ptr_filter; - const char *buffer_plugin_name; int rc; /* line is always displayed if filters are disabled */ @@ -85,19 +112,14 @@ gui_filter_check_line (struct t_gui_buffer *buffer, struct t_gui_line *line) if (gui_filter_line_has_tag_no_filter (line)) return 1; - - buffer_plugin_name = (!buffer->plugin && buffer->plugin_name_for_upgrade) ? - buffer->plugin_name_for_upgrade : plugin_get_name (buffer->plugin); for (ptr_filter = gui_filters; ptr_filter; ptr_filter = ptr_filter->next_filter) { if (ptr_filter->enabled) { - /* check plugin and buffer names */ - if ((!ptr_filter->plugin_name - || (string_strcasecmp (buffer_plugin_name, ptr_filter->plugin_name) == 0)) - && string_match (buffer->name, ptr_filter->buffer_name, 0)) + /* check buffer */ + if (gui_filter_match_buffer (ptr_filter, buffer_full_name)) { if ((strcmp (ptr_filter->tags, "*") == 0) || (gui_line_match_tags (line, @@ -136,15 +158,21 @@ gui_filter_buffer (struct t_gui_buffer *buffer) { struct t_gui_line *ptr_line; int line_displayed, lines_hidden; + char buffer_full_name[512]; lines_hidden = 0; buffer->lines->prefix_max_length = CONFIG_INTEGER(config_look_prefix_align_min); + snprintf (buffer_full_name, sizeof (buffer_full_name), "%s.%s", + (!buffer->plugin && buffer->plugin_name_for_upgrade) ? + buffer->plugin_name_for_upgrade : plugin_get_name (buffer->plugin), + buffer->name); + for (ptr_line = buffer->lines->first_line; ptr_line; ptr_line = ptr_line->next_line) { - line_displayed = gui_filter_check_line (buffer, ptr_line); + line_displayed = gui_filter_check_line (ptr_line, buffer_full_name); if (line_displayed && (ptr_line->data->prefix_length > buffer->lines->prefix_max_length)) @@ -247,28 +275,6 @@ gui_filter_disable (struct t_gui_filter *filter) } /* - * gui_filter_search: search a filter - */ - -struct t_gui_filter * -gui_filter_search (const char *buffer_name, const char *tags, const char *regex) -{ - struct t_gui_filter *ptr_filter; - - for (ptr_filter = gui_filters; ptr_filter; - ptr_filter = ptr_filter->next_filter) - { - if ((strcmp (ptr_filter->buffer_name, buffer_name) == 0) - && (strcmp (ptr_filter->tags, tags) == 0) - && (strcmp (ptr_filter->regex, regex) == 0)) - return ptr_filter; - } - - /* filter not found */ - return NULL; -} - -/* * gui_filter_search_by_name: search a filter by name */ @@ -298,7 +304,7 @@ gui_filter_new (int enabled, const char *name, const char *buffer_name, { struct t_gui_filter *new_filter; regex_t *regex1, *regex2; - char *pos_tab, *pos_point, *regex_prefix; + char *pos_tab, *regex_prefix; const char *ptr_start_regex, *pos_regex_message; if (!name || !buffer_name || !tags || !regex) @@ -372,22 +378,10 @@ gui_filter_new (int enabled, const char *name, const char *buffer_name, /* init filter */ new_filter->enabled = enabled; new_filter->name = strdup (name); - new_filter->plugin_name = NULL; - if (buffer_name) - { - pos_point = strchr (buffer_name, '.'); - if (pos_point) - { - new_filter->plugin_name = string_strndup (buffer_name, pos_point - buffer_name); - new_filter->buffer_name = strdup (pos_point + 1); - } - else - new_filter->buffer_name = strdup (buffer_name); - } - else - { - new_filter->buffer_name = strdup ("*"); - } + new_filter->buffer_name = strdup ((buffer_name) ? buffer_name : "*"); + new_filter->buffers = string_split (new_filter->buffer_name, + ",", 0, 0, + &new_filter->num_buffers); if (tags) { new_filter->tags = (tags) ? strdup (tags) : NULL; @@ -454,10 +448,10 @@ gui_filter_free (struct t_gui_filter *filter) /* free data */ if (filter->name) free (filter->name); - if (filter->plugin_name) - free (filter->plugin_name); if (filter->buffer_name) free (filter->buffer_name); + if (filter->buffers) + string_free_split (filter->buffers); if (filter->tags) free (filter->tags); if (filter->tags_array) @@ -529,8 +523,6 @@ gui_filter_add_to_infolist (struct t_infolist *infolist, return 0; if (!infolist_new_var_string (ptr_item, "name", filter->name)) return 0; - if (!infolist_new_var_string (ptr_item, "plugin_name", filter->plugin_name)) - return 0; if (!infolist_new_var_string (ptr_item, "buffer_name", filter->buffer_name)) return 0; if (!infolist_new_var_string (ptr_item, "tags", filter->tags)) @@ -558,6 +550,7 @@ void gui_filter_print_log () { struct t_gui_filter *ptr_filter; + int i; log_printf (""); log_printf ("gui_filters_enabled = %d", gui_filters_enabled); @@ -569,8 +562,12 @@ gui_filter_print_log () log_printf ("[filter (addr:0x%lx)]", ptr_filter); log_printf (" enabled. . . . . . . . : %d", ptr_filter->enabled); log_printf (" name . . . . . . . . . : '%s'", ptr_filter->name); - log_printf (" plugin_name. . . . . . : '%s'", ptr_filter->plugin_name); log_printf (" buffer_name. . . . . . : '%s'", ptr_filter->buffer_name); + log_printf (" num_buffers. . . . . . : %d", ptr_filter->num_buffers); + for (i = 0; i < ptr_filter->num_buffers; i++) + { + log_printf (" buffers[%03d] . . . . . : '%s'", i, ptr_filter->buffers[i]); + } log_printf (" tags . . . . . . . . . : '%s'", ptr_filter->tags); log_printf (" regex. . . . . . . . . : '%s'", ptr_filter->regex); log_printf (" regex_prefix . . . . . : 0x%lx", ptr_filter->regex_prefix); diff --git a/src/gui/gui-filter.h b/src/gui/gui-filter.h index fed7c288a..668b8a506 100644 --- a/src/gui/gui-filter.h +++ b/src/gui/gui-filter.h @@ -32,8 +32,9 @@ struct t_gui_filter { int enabled; /* 1 if filter enabled, otherwise 0 */ char *name; /* filter name */ - char *plugin_name; /* plugin name */ - char *buffer_name; /* name of buffer */ + char *buffer_name; /* name of buffer(s) */ + int num_buffers; /* number of buffers in list */ + char **buffers; /* list of buffer names */ char *tags; /* tags */ int tags_count; /* number of tags */ char **tags_array; /* array of tags */ @@ -52,15 +53,12 @@ extern int gui_filters_enabled; /* filter functions */ -extern int gui_filter_check_line (struct t_gui_buffer *buffer, - struct t_gui_line *line); +extern int gui_filter_check_line (struct t_gui_line *line, + const char *buffer_full_name); extern void gui_filter_global_enable (); extern void gui_filter_global_disable (); extern void gui_filter_enable (struct t_gui_filter *filter); extern void gui_filter_disable (struct t_gui_filter *filter); -extern struct t_gui_filter *gui_filter_search (const char *buffer_name, - const char *tags, - const char *regex); extern struct t_gui_filter *gui_filter_search_by_name (const char *name); extern struct t_gui_filter *gui_filter_new (int enabled, const char *name, diff --git a/src/gui/gui-line.c b/src/gui/gui-line.c index cbdd7ef0a..747f39e92 100644 --- a/src/gui/gui-line.c +++ b/src/gui/gui-line.c @@ -754,7 +754,7 @@ gui_line_add (struct t_gui_buffer *buffer, time_t date, struct t_gui_line *new_line; struct t_gui_line_data *new_line_data; struct t_gui_window *ptr_win; - char *message_for_signal; + char *message_for_signal, buffer_full_name[512]; const char *nick; int notify_level, *max_notify_level; @@ -819,7 +819,12 @@ gui_line_add (struct t_gui_buffer *buffer, time_t date, gui_line_add_to_list (buffer->own_lines, new_line); /* check if line is filtered or not */ - new_line->data->displayed = gui_filter_check_line (buffer, new_line); + snprintf (buffer_full_name, sizeof (buffer_full_name), "%s.%s", + (!buffer->plugin && buffer->plugin_name_for_upgrade) ? + buffer->plugin_name_for_upgrade : plugin_get_name (buffer->plugin), + buffer->name); + new_line->data->displayed = gui_filter_check_line (new_line, + buffer_full_name); if (new_line->data->displayed) { if (new_line->data->highlight) @@ -900,6 +905,7 @@ gui_line_add_y (struct t_gui_buffer *buffer, int y, const char *message) { struct t_gui_line *ptr_line, *new_line; struct t_gui_line_data *new_line_data; + char buffer_full_name[512]; /* search if line exists for "y" */ for (ptr_line = buffer->own_lines->first_line; ptr_line; @@ -975,7 +981,12 @@ gui_line_add_y (struct t_gui_buffer *buffer, int y, const char *message) ptr_line->data->message = (message) ? strdup (message) : strdup (""); /* check if line is filtered or not */ - ptr_line->data->displayed = gui_filter_check_line (buffer, ptr_line); + snprintf (buffer_full_name, sizeof (buffer_full_name), "%s.%s", + (!buffer->plugin && buffer->plugin_name_for_upgrade) ? + buffer->plugin_name_for_upgrade : plugin_get_name (buffer->plugin), + buffer->name); + ptr_line->data->displayed = gui_filter_check_line (ptr_line, + buffer_full_name); if (!ptr_line->data->displayed) { if (!buffer->own_lines->lines_hidden) |