diff --git a/ChangeLog.adoc b/ChangeLog.adoc index cd5ac802e..031678690 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -29,6 +29,7 @@ New features:: * core: add support of modifiers in evaluation of expressions with "modifier:name,data,string" * api: add modifier "color_encode_ansi" (issue #528) * api: add modifier "eval_path_home" + * irc: add filters on raw buffer (issue #1000) * irc: add option irc.look.display_pv_warning_address to display a warning in private buffer if the remote nick address has changed (issue #892) * irc: add server option "ssl_password" (issue #115, issue #1416) * irc: add "user" in output of irc_message_parse (issue #136) diff --git a/doc/de/autogen/plugin_api/completions.adoc b/doc/de/autogen/plugin_api/completions.adoc index 8d6d7411c..83aa5090b 100644 --- a/doc/de/autogen/plugin_api/completions.adoc +++ b/doc/de/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | Private auf allen IRC Servern +| irc | irc_raw_filters | filters for irc raw buffer + | irc | irc_server | aktueller IRC-Server | irc | irc_server_channels | Channels des derzeitigen IRC-Server diff --git a/doc/de/autogen/user/irc_commands.adoc b/doc/de/autogen/user/irc_commands.adoc index 58c7daeec..5043382f0 100644 --- a/doc/de/autogen/user/irc_commands.adoc +++ b/doc/de/autogen/user/irc_commands.adoc @@ -726,31 +726,42 @@ reason: Grund der Abmeldung reorder [...] open |-all [...] del|keep - deloutq|jump|raw + deloutq|jump + raw [] - list: listet Server auf (ohne Angabe von Argumente wird diese Liste standardmäßig ausgegeben) -listfull: listet alle Server auf, mit detaillierten Informationen zu jedem einzelnen Server - add: erstellt einen neuen Server - name: Servername, dient der internen Nutzung und zur Darstellung; dieser Name wird genutzt um sich mit dem Server zu verbinden (/connect name) und um die entsprechenden Optionen anzupassen: irc.server.name.xxx -hostname: Name oder IP-Adresse des Servers. Optional kann zusätzlich der Port festgelegt werden (Standard-Port: 6667). Mehrere Adressen können durch Kommata getrennt werden - -temp: erstellt temporären Server (wird nicht gespeichert) - option: legt die Optionen für den Server fest (die Boolean-Optionen können weggelassen werden) -nooption: stellt die Boolean Einstellung auf 'off' (Beispiel: -nossl) - copy: erstellt eine Kopie des Servers - rename: benennt den Server um - reorder: Anordnung der Server ändern - open: öffnet den Serverbuffer, ohne eine Verbindung herzustellen - keep: übernimmt den Server in die Konfigurationsdatei (nur sinnvoll bei temporär angelegten Servern) - del: entfernt einen Server - deloutq: löscht bei allen Servern alle ausgehende Nachrichten, die in der Warteschlange stehen (dies betrifft alle Nachrichten die WeeChat gerade sendet) - jump: springt zum Server-Buffer - raw: öffnet Buffer mit Roh-IRC-Daten + list: list servers (without argument, this list is displayed) +listfull: list servers with detailed info for each server + add: add a new server + name: server name, for internal and display use; this name is used to connect to the server (/connect name) and to set server options: irc.server.name.xxx +hostname: name or IP address of server, with optional port (default: 6667), many addresses can be separated by a comma + -temp: add a temporary server (not saved) + option: set option for server (for boolean option, value can be omitted) +nooption: set boolean option to 'off' (for example: -nossl) + copy: duplicate a server + rename: rename a server + reorder: reorder list of servers + open: open the server buffer without connecting + keep: keep server in config file (for temporary servers only) + del: delete a server + deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending) + jump: jump to server buffer + raw: open buffer with raw IRC data + filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are: + * show all messages (no filter) + xxx show only messages containing "xxx" + s:xxx show only messages for server "xxx" + f:xxx show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected) + m:xxx show only IRC command "xxx" + c:xxx show only options matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected -Beispiele: +Examples: /server listfull /server add freenode chat.freenode.net /server add freenode chat.freenode.net/6697 -ssl -autoconnect /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 + /server raw + /server raw s:freenode + /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo /server copy freenode freenode-test /server rename freenode-test freenode2 /server reorder freenode2 freenode diff --git a/doc/en/autogen/plugin_api/completions.adoc b/doc/en/autogen/plugin_api/completions.adoc index dc92e9306..907452e73 100644 --- a/doc/en/autogen/plugin_api/completions.adoc +++ b/doc/en/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | privates on all IRC servers +| irc | irc_raw_filters | filters for irc raw buffer + | irc | irc_server | current IRC server | irc | irc_server_channels | channels on current IRC server diff --git a/doc/en/autogen/user/irc_commands.adoc b/doc/en/autogen/user/irc_commands.adoc index 4ec7c542e..5fdb6c7ec 100644 --- a/doc/en/autogen/user/irc_commands.adoc +++ b/doc/en/autogen/user/irc_commands.adoc @@ -726,7 +726,8 @@ reason: reason reorder [...] open |-all [...] del|keep - deloutq|jump|raw + deloutq|jump + raw [] list: list servers (without argument, this list is displayed) listfull: list servers with detailed info for each server @@ -745,12 +746,22 @@ nooption: set boolean option to 'off' (for example: -nossl) deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending) jump: jump to server buffer raw: open buffer with raw IRC data + filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are: + * show all messages (no filter) + xxx show only messages containing "xxx" + s:xxx show only messages for server "xxx" + f:xxx show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected) + m:xxx show only IRC command "xxx" + c:xxx show only options matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected Examples: /server listfull /server add freenode chat.freenode.net /server add freenode chat.freenode.net/6697 -ssl -autoconnect /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 + /server raw + /server raw s:freenode + /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo /server copy freenode freenode-test /server rename freenode-test freenode2 /server reorder freenode2 freenode diff --git a/doc/fr/autogen/plugin_api/completions.adoc b/doc/fr/autogen/plugin_api/completions.adoc index b9a94c552..6eaaa7568 100644 --- a/doc/fr/autogen/plugin_api/completions.adoc +++ b/doc/fr/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | privés sur tous les serveurs IRC +| irc | irc_raw_filters | filtres pour le tampon de données brutes irc + | irc | irc_server | serveur IRC courant | irc | irc_server_channels | canaux sur le serveur IRC courant diff --git a/doc/fr/autogen/user/irc_commands.adoc b/doc/fr/autogen/user/irc_commands.adoc index bbf301bf0..2fd6fb60f 100644 --- a/doc/fr/autogen/user/irc_commands.adoc +++ b/doc/fr/autogen/user/irc_commands.adoc @@ -726,7 +726,8 @@ raison : raison reorder [...] open |-all [...] del|keep - deloutq|jump|raw + deloutq|jump + raw [] list : afficher les serveurs (sans paramètre, cette liste est affichée) listfull : afficher les serveurs avec de l'info détaillée pour chaque @@ -744,7 +745,14 @@ nom_machine : nom ou adresse IP du serveur avec port en option (défaut : 6667 del : supprimer un serveur deloutq : supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer) jump : sauter au tampon du serveur - raw : ouvre le tampon avec les données brutes IRC + raw : ouvrir le tampon avec les données brutes IRC + filtre : définir un nouveau filtre pour voir seulement les messages correspondants (ce filtre peut aussi être utilisé en entrée du tampon des données brutes) ; les formats autorisés sont : + * afficher tous les messages (pas de filtre) + xxx afficher seulement les messages contenant "xxx" + s:xxx afficher seulement les messages pour le serveur "xxx" + f:xxx afficher seulement les messages avec un drapeau : recv (message reçu), sent (message envoyé), modified (message modifié par un modificateur), redirected (message redirigé) + m:xxx afficher seulement les messages pour la commande IRC "xxx" + c:xxx afficher seulement les messages qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : sortie de la fonction irc_message_parse (comme nick, command, channel, text, etc., voir la fonction info_get_hashtable dans la référence API extension pour la liste de toutes les variables), date (format : "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected Exemples : /server listfull @@ -756,6 +764,9 @@ Exemples : /server reorder freenode2 freenode /server del freenode /server deloutq + /server raw + /server raw s:freenode + /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo ---- [[command_irc_service]] diff --git a/doc/it/autogen/plugin_api/completions.adoc b/doc/it/autogen/plugin_api/completions.adoc index 08818d4d4..46784bec2 100644 --- a/doc/it/autogen/plugin_api/completions.adoc +++ b/doc/it/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | privati su tutti i server IRC +| irc | irc_raw_filters | filters for irc raw buffer + | irc | irc_server | server IRC corrente | irc | irc_server_channels | canali sul server IRC corrente diff --git a/doc/it/autogen/user/irc_commands.adoc b/doc/it/autogen/user/irc_commands.adoc index 02509a169..66b2857bb 100644 --- a/doc/it/autogen/user/irc_commands.adoc +++ b/doc/it/autogen/user/irc_commands.adoc @@ -726,7 +726,8 @@ motivo: motivo reorder [...] open |-all [...] del|keep - deloutq|jump|raw + deloutq|jump + raw [] list: list servers (without argument, this list is displayed) listfull: list servers with detailed info for each server @@ -745,12 +746,22 @@ nooption: set boolean option to 'off' (for example: -nossl) deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending) jump: jump to server buffer raw: open buffer with raw IRC data + filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are: + * show all messages (no filter) + xxx show only messages containing "xxx" + s:xxx show only messages for server "xxx" + f:xxx show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected) + m:xxx show only IRC command "xxx" + c:xxx show only options matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected Examples: /server listfull /server add freenode chat.freenode.net /server add freenode chat.freenode.net/6697 -ssl -autoconnect /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 + /server raw + /server raw s:freenode + /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo /server copy freenode freenode-test /server rename freenode-test freenode2 /server reorder freenode2 freenode diff --git a/doc/ja/autogen/plugin_api/completions.adoc b/doc/ja/autogen/plugin_api/completions.adoc index 3496d0f40..f265afb53 100644 --- a/doc/ja/autogen/plugin_api/completions.adoc +++ b/doc/ja/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | 全ての IRC サーバにあるプライベートチャンネル +| irc | irc_raw_filters | filters for irc raw buffer + | irc | irc_server | 現在の IRC サーバ | irc | irc_server_channels | 現在の IRC サーバにあるチャンネル名 diff --git a/doc/ja/autogen/user/irc_commands.adoc b/doc/ja/autogen/user/irc_commands.adoc index e21ac43a7..20c1deda6 100644 --- a/doc/ja/autogen/user/irc_commands.adoc +++ b/doc/ja/autogen/user/irc_commands.adoc @@ -726,31 +726,42 @@ reason: 理由 reorder [...] open |-all [...] del|keep - deloutq|jump|raw + deloutq|jump + raw [] - list: サーバをリストアップ (引数無しでは、リストが表示されます) -listfull: 詳細情報を含めてサーバをリストアップ - add: 新しいサーバを追加 - name: サーバ名、内部的な利用と表示に利用; このサーバ名はサーバへの接続時 (/connect name) とサーバオプション (irc.server.name.xxx) の設定に使われます -hostname: サーバのホスト名か IP アドレス、ポート番号は任意 (デフォルト: 6667)、複数のアドレスはコンマで区切ってください - -temp: 一時的なサーバを追加 (保存されない) - option: サーバのオプションを設定 (ブールオプションでは値が無視されます) -nooption: ブールオプションを 'off' に設定 (例: -nossl) - copy: サーバを複製 - rename: サーバをリネーム - reorder: サーバリストにおける順番を入れ替えます - open: 接続せずにサーババッファを開く - keep: 設定ファイルにサーバを保存 (一時的なサーバ用) - del: サーバを削除 - deloutq: 全てのサーバにメッセージの削除を要求 (WeeChat が送信している全てのメッセージ) - jump: サーババッファに移動 - raw: 生 IRC データを表示するバッファを開く + list: list servers (without argument, this list is displayed) +listfull: list servers with detailed info for each server + add: add a new server + name: server name, for internal and display use; this name is used to connect to the server (/connect name) and to set server options: irc.server.name.xxx +hostname: name or IP address of server, with optional port (default: 6667), many addresses can be separated by a comma + -temp: add a temporary server (not saved) + option: set option for server (for boolean option, value can be omitted) +nooption: set boolean option to 'off' (for example: -nossl) + copy: duplicate a server + rename: rename a server + reorder: reorder list of servers + open: open the server buffer without connecting + keep: keep server in config file (for temporary servers only) + del: delete a server + deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending) + jump: jump to server buffer + raw: open buffer with raw IRC data + filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are: + * show all messages (no filter) + xxx show only messages containing "xxx" + s:xxx show only messages for server "xxx" + f:xxx show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected) + m:xxx show only IRC command "xxx" + c:xxx show only options matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected -例: +Examples: /server listfull /server add freenode chat.freenode.net /server add freenode chat.freenode.net/6697 -ssl -autoconnect /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 + /server raw + /server raw s:freenode + /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo /server copy freenode freenode-test /server rename freenode-test freenode2 /server reorder freenode2 freenode diff --git a/doc/pl/autogen/plugin_api/completions.adoc b/doc/pl/autogen/plugin_api/completions.adoc index 844580a92..b733b4876 100644 --- a/doc/pl/autogen/plugin_api/completions.adoc +++ b/doc/pl/autogen/plugin_api/completions.adoc @@ -38,6 +38,8 @@ | irc | irc_privates | rozmowy prywatne na wszystkich serwerach IRC +| irc | irc_raw_filters | filters for irc raw buffer + | irc | irc_server | obecny serwer IRC | irc | irc_server_channels | kanały na obecnym serwerze IRC diff --git a/doc/pl/autogen/user/irc_commands.adoc b/doc/pl/autogen/user/irc_commands.adoc index c99fc74f1..629be9914 100644 --- a/doc/pl/autogen/user/irc_commands.adoc +++ b/doc/pl/autogen/user/irc_commands.adoc @@ -720,36 +720,48 @@ powód: powód * `+server+`: wyświetla, dodaje lub usuwa serwery IRC ---- -/server list|listfull [] - add [/] [-temp] [-[=]] [-no]|| copy|rename - reorder [...] - open |-all [...] - del|keep - deloutq|jump|raw +/server list|listfull [] + add [/] [-temp] [-