diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2015-08-24 10:02:38 +0200 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2015-08-24 10:02:38 +0200 |
commit | 350938181b1bfb5b8854a9e0ace387fa10afb73d (patch) | |
tree | 99bcd7ca41e47a4fdb65f7c4017aa51424ec14d4 | |
parent | f68896fdd396d5ee0c97430757411a37f5c597d3 (diff) | |
download | weechat-350938181b1bfb5b8854a9e0ace387fa10afb73d.zip |
irc: add command /cap (closes #8)
28 files changed, 673 insertions, 50 deletions
diff --git a/ChangeLog.asciidoc b/ChangeLog.asciidoc index 05fef5b8c..822bf0bd8 100644 --- a/ChangeLog.asciidoc +++ b/ChangeLog.asciidoc @@ -21,6 +21,7 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] * api: add function string_hex_dump() * api: add argument "length" in function utf8_is_valid() +* irc: add command /cap (issue #8) * irc: add hex dump of messages in raw buffer when debug is enabled for irc plugin (level 2 or more) diff --git a/doc/de/autogen/user/irc_commands.asciidoc b/doc/de/autogen/user/irc_commands.asciidoc index 002003a41..c8170d8d7 100644 --- a/doc/de/autogen/user/irc_commands.asciidoc +++ b/doc/de/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ channel: Channelname Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Channel angezeigt. ---- +[[command_irc_cap]] +[command]*`cap`* client capability negotiation:: + +---- +/cap ls + list + req|ack [<capability> [<capability>...]] + clear + end + + ls: list the capabilities supported by the server + list: list the capabilities currently enabled + req: request a capability + ack: acknowledge capabilities which require client-side acknowledgement +clear: clear the capabilities currently enabled + end: end the capability negotiation + +Without argument, "ls" and "list" are sent. + +Capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). + +Examples: + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* Mit IRC-Server(n) verbinden:: diff --git a/doc/de/autogen/user/irc_options.asciidoc b/doc/de/autogen/user/irc_options.asciidoc index 9b518acfc..82e62645e 100644 --- a/doc/de/autogen/user/irc_options.asciidoc +++ b/doc/de/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** Werte: 0 .. 1000000 (Standardwert: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** Beschreibung: `durch Kommata getrennte Liste von erweiterten Client Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen. Fähigkeiten die von WeeChat unterstützt werden: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names (Beispiel: "away-notify,multi-prefix")` +** Beschreibung: `comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")` ** Typ: Zeichenkette ** Werte: beliebige Zeichenkette (Standardwert: `""`) diff --git a/doc/en/autogen/user/irc_commands.asciidoc b/doc/en/autogen/user/irc_commands.asciidoc index 0554e74e7..dc988aa6f 100644 --- a/doc/en/autogen/user/irc_commands.asciidoc +++ b/doc/en/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ channel: channel name Without argument, this command display ban list for current channel. ---- +[[command_irc_cap]] +[command]*`cap`* client capability negotiation:: + +---- +/cap ls + list + req|ack [<capability> [<capability>...]] + clear + end + + ls: list the capabilities supported by the server + list: list the capabilities currently enabled + req: request a capability + ack: acknowledge capabilities which require client-side acknowledgement +clear: clear the capabilities currently enabled + end: end the capability negotiation + +Without argument, "ls" and "list" are sent. + +Capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). + +Examples: + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* connect to IRC server(s):: diff --git a/doc/en/autogen/user/irc_options.asciidoc b/doc/en/autogen/user/irc_options.asciidoc index a059ffd34..aa7c7f106 100644 --- a/doc/en/autogen/user/irc_options.asciidoc +++ b/doc/en/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** values: 0 .. 1000000 (default value: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** description: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names (example: "away-notify,multi-prefix")` +** description: `comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")` ** type: string ** values: any string (default value: `""`) diff --git a/doc/fr/autogen/user/irc_commands.asciidoc b/doc/fr/autogen/user/irc_commands.asciidoc index dc037e3d1..78fc52591 100644 --- a/doc/fr/autogen/user/irc_commands.asciidoc +++ b/doc/fr/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ pseudo : pseudo ou hôte Sans paramètre, cette commande affiche la liste des bannissements pour le canal courant. ---- +[[command_irc_cap]] +[command]*`cap`* négociation de capacité client:: + +---- +/cap ls + list + req|ack [<capacité> [<capacité>...]] + clear + end + + ls : lister les capacités supportées par le serveur + list : lister les capacités actuellement activées + req : demander une capacité + ack : accuser réception de capacités qui nécessitent un accusé de réception du client +clear : effacer les capacités actuellement activées + end : terminer la négociation de capacité + +Sans paramètre, "ls" et "list" sont envoyés. + +Les capacités supportées par WeeChat sont : account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'opion irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities). + +Exemples : + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* se connecter à un/plusieurs serveur(s) IRC:: diff --git a/doc/fr/autogen/user/irc_options.asciidoc b/doc/fr/autogen/user/irc_options.asciidoc index e759c23fa..76494924a 100644 --- a/doc/fr/autogen/user/irc_options.asciidoc +++ b/doc/fr/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** valeurs: 0 .. 1000000 (valeur par défaut: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** description: `liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles ; les capacités supportées par WeeChat sont : account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names (exemple : "away-notify,multi-prefix")` +** description: `liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) (exemple : "away-notify,multi-prefix")` ** type: chaîne ** valeurs: toute chaîne (valeur par défaut: `""`) diff --git a/doc/it/autogen/user/irc_commands.asciidoc b/doc/it/autogen/user/irc_commands.asciidoc index 5501844d1..230159926 100644 --- a/doc/it/autogen/user/irc_commands.asciidoc +++ b/doc/it/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ channel: channel name Without argument, this command display ban list for current channel. ---- +[[command_irc_cap]] +[command]*`cap`* client capability negotiation:: + +---- +/cap ls + list + req|ack [<capability> [<capability>...]] + clear + end + + ls: list the capabilities supported by the server + list: list the capabilities currently enabled + req: request a capability + ack: acknowledge capabilities which require client-side acknowledgement +clear: clear the capabilities currently enabled + end: end the capability negotiation + +Without argument, "ls" and "list" are sent. + +Capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). + +Examples: + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* connette ad uno o più server IRC:: diff --git a/doc/it/autogen/user/irc_options.asciidoc b/doc/it/autogen/user/irc_options.asciidoc index f3131db62..1a50a36e6 100644 --- a/doc/it/autogen/user/irc_options.asciidoc +++ b/doc/it/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** valori: 0 .. 1000000 (valore predefinito: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** descrizione: `comma-separated list of client capabilities to enable for server if they are available; capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names (example: "away-notify,multi-prefix")` +** descrizione: `comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")` ** tipo: stringa ** valori: qualsiasi stringa (valore predefinito: `""`) diff --git a/doc/ja/autogen/user/irc_commands.asciidoc b/doc/ja/autogen/user/irc_commands.asciidoc index a9c4e29ef..e73d63c42 100644 --- a/doc/ja/autogen/user/irc_commands.asciidoc +++ b/doc/ja/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ channel: チャンネル名 引数無しの場合は、現在のチャンネルのバンリストを表示。 ---- +[[command_irc_cap]] +[command]*`cap`* client capability negotiation:: + +---- +/cap ls + list + req|ack [<capability> [<capability>...]] + clear + end + + ls: list the capabilities supported by the server + list: list the capabilities currently enabled + req: request a capability + ack: acknowledge capabilities which require client-side acknowledgement +clear: clear the capabilities currently enabled + end: end the capability negotiation + +Without argument, "ls" and "list" are sent. + +Capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). + +Examples: + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* IRC サーバに接続:: diff --git a/doc/ja/autogen/user/irc_options.asciidoc b/doc/ja/autogen/user/irc_options.asciidoc index d3a1a5660..f03f6dff0 100644 --- a/doc/ja/autogen/user/irc_options.asciidoc +++ b/doc/ja/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** 値: 0 .. 1000000 (デフォルト値: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** 説明: `サーバで利用可能ならば有効化する "client capabilities" のコンマ区切りリスト; WeeChat で利用できる機能: account-notify、away-notify、extended-join、multi-prefix、server-time、userhost-in-names (例: "away-notify,multi-prefix")` +** 説明: `comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")` ** タイプ: 文字列 ** 値: 未制約文字列 (デフォルト値: `""`) diff --git a/doc/pl/autogen/user/irc_commands.asciidoc b/doc/pl/autogen/user/irc_commands.asciidoc index 7bfe8ef36..ed15805e2 100644 --- a/doc/pl/autogen/user/irc_commands.asciidoc +++ b/doc/pl/autogen/user/irc_commands.asciidoc @@ -84,6 +84,35 @@ kanał: nazwa kanału Bez podania argumentu komenda wyświetla listę banów na obecnym kanale. ---- +[[command_irc_cap]] +[command]*`cap`* client capability negotiation:: + +---- +/cap ls + list + req|ack [<capability> [<capability>...]] + clear + end + + ls: list the capabilities supported by the server + list: list the capabilities currently enabled + req: request a capability + ack: acknowledge capabilities which require client-side acknowledgement +clear: clear the capabilities currently enabled + end: end the capability negotiation + +Without argument, "ls" and "list" are sent. + +Capabilities supported by WeeChat are: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names. + +The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). + +Examples: + /cap + /cap req multi-prefix + /cap clear +---- + [[command_irc_connect]] [command]*`connect`* łączy się z serwerem(ami) IRC:: diff --git a/doc/pl/autogen/user/irc_options.asciidoc b/doc/pl/autogen/user/irc_options.asciidoc index 44b9188ef..c1bfa0928 100644 --- a/doc/pl/autogen/user/irc_options.asciidoc +++ b/doc/pl/autogen/user/irc_options.asciidoc @@ -508,7 +508,7 @@ ** wartości: 0 .. 1000000 (domyślna wartość: `25`) * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* -** opis: `oddzielona przecinkami lista opcji klienta do włączenia dla serwera, jeśli są dostępne; opcje wspierane przez WeeChat: account-notify, away-notify, extended-join, multi-prefix, server-time, userhost-in-names (przykład: "away-notify,multi-prefix")` +** opis: `comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")` ** typ: ciąg ** wartości: dowolny ciąg (domyślna wartość: `""`) @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 22:19+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-08-15 22:22+0200\n" "Last-Translator: Ondřej Súkup <mimi.vx@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5558,6 +5558,36 @@ msgstr "" " kanál: kanál pro zrušení zakázání\n" "přezdívka: uživatel nebo host, kterému zrušit zakázání" +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: schopnost klienta, vyžaduji: sasl" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "připojit se k IRC serveru/serverům" @@ -6828,8 +6858,7 @@ msgstr "příkaz spuštěný při startu WeeChat, před načtením pluginů" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" @@ -24,7 +24,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-08-15 19:32+0100\n" "Last-Translator: Nils Görs <weechatter@arcor.de>\n" "Language-Team: German <>\n" @@ -6521,6 +6521,36 @@ msgstr "" "Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Channel " "angezeigt." +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: Clientfähigkeit, Anfrage: %s" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "Mit IRC-Server(n) verbinden" @@ -7836,10 +7866,10 @@ msgid "password for server (note: content is evaluated, see /help eval)" msgstr "Passwort für Server (Hinweis: Inhalt wird evaluiert, siehe /help eval)" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) +#, fuzzy msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" "durch Kommata getrennte Liste von erweiterten Client Fähigkeiten (\"client " @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-07-26 09:41+0200\n" "Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5777,6 +5777,36 @@ msgstr "" "\n" "Sin argumentos, este comando muestra la lista de vetos del canal actual." +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: capabilidad del cliente, solicitando: %s" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "conectar a un servidor IRC" @@ -7058,8 +7088,7 @@ msgstr "comando ejecutado cuando WeeChat inicia, antes de cargar los plugins" #, fuzzy msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" "lista separada por comas de capabilidades del cliente (\"client capabilities" @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" -"PO-Revision-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" +"PO-Revision-Date: 2015-08-24 09:58+0200\n" "Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: fr\n" @@ -6377,6 +6377,56 @@ msgstr "" "Sans paramètre, cette commande affiche la liste des bannissements pour le " "canal courant." +msgid "client capability negotiation" +msgstr "négociation de capacité client" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "ls || list || req|ack [<capacité> [<capacité>...]] || clear || end" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" +" ls : lister les capacités supportées par le serveur\n" +" list : lister les capacités actuellement activées\n" +" req : demander une capacité\n" +" ack : accuser réception de capacités qui nécessitent un accusé de " +"réception du client\n" +"clear : effacer les capacités actuellement activées\n" +" end : terminer la négociation de capacité\n" +"\n" +"Sans paramètre, \"ls\" et \"list\" sont envoyés.\n" +"\n" +"Les capacités supportées par WeeChat sont : account-notify, away-notify, " +"extended-join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"Les capacités à activer automatiquement sur les serveurs peuvent être " +"définies dans l'opion irc.server_default.capabilities (ou par serveur dans " +"l'option irc.server.xxx.capabilities).\n" +"\n" +"Exemples :\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" + msgid "connect to IRC server(s)" msgstr "se connecter à un/plusieurs serveur(s) IRC" @@ -7672,14 +7722,12 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" "liste séparée par des virgules de capacités client (\"client capabilities\") " -"à activer sur le serveur si elles sont disponibles ; les capacités " -"supportées par WeeChat sont : account-notify, away-notify, extended-join, " -"multi-prefix, server-time, userhost-in-names (exemple : \"away-notify,multi-" +"à activer sur le serveur si elles sont disponibles (voir /help cap pour la " +"liste des capacités supportées par WeeChat) (exemple : \"away-notify,multi-" "prefix\")" msgid "" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-07-26 09:42+0200\n" "Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5073,6 +5073,36 @@ msgstr "" " név: felhasználó vagy gép melyen a parancsot végrehajtjuk" #, fuzzy +msgid "client capability negotiation" +msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + +#, fuzzy msgid "connect to IRC server(s)" msgstr "csatlakozás a szerver(ek)hez" @@ -6296,8 +6326,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-07-26 09:42+0200\n" "Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5926,6 +5926,36 @@ msgstr "" "\n" "Senza argomento, il comando mostra la lista dei ban per il canale corrente." +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: capacità del client, richiesta in corso: %s" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "connette ad uno o più server IRC" @@ -7212,8 +7242,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-08-22 09:00+0900\n" "Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n" "Language-Team: Japanese <https://github.com/l/weechat/tree/translation_ja>\n" @@ -6096,6 +6096,36 @@ msgstr "" "\n" "引数無しの場合は、現在のチャンネルのバンリストを表示。" +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: クライアントの機能、リクエスト中: %s" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "IRC サーバに接続" @@ -7361,10 +7391,10 @@ msgstr "" "サーバのパスワード (注意: 値は評価されます、/help eval を参照してください)" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) +#, fuzzy msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" "サーバで利用可能ならば有効化する \"client capabilities\" のコンマ区切りリス" @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-08-14 17:54+0200\n" "Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -6234,6 +6234,36 @@ msgstr "" "\n" "Bez podania argumentu komenda wyświetla listę banów na obecnym kanale." +#, fuzzy +msgid "client capability negotiation" +msgstr "%s%s: możliwości klienta, żądanie: %s" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "łączy się z serwerem(ami) IRC" @@ -7511,10 +7541,10 @@ msgid "password for server (note: content is evaluated, see /help eval)" msgstr "hasło dla serwera ( zawartość jest przetwarzana, zobacz /help eval)" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) +#, fuzzy msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" "oddzielona przecinkami lista opcji klienta do włączenia dla serwera, jeśli " diff --git a/po/pt_BR.po b/po/pt_BR.po index 0c18d9f65..c52bdab37 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: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-07-26 09:42+0200\n" "Last-Translator: Eduardo Elias <camponez@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5652,6 +5652,35 @@ msgid "" "Without argument, this command display ban list for current channel." msgstr "" +msgid "client capability negotiation" +msgstr "" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "" @@ -6679,8 +6708,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-07-26 09:42+0200\n" "Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -5114,6 +5114,36 @@ msgstr "" " ник: ник или хост для снятия бана" #, fuzzy +msgid "client capability negotiation" +msgstr "Не могу записать лог-файл \"%s\"\n" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + +#, fuzzy msgid "connect to IRC server(s)" msgstr "подключиться к серверу(-ам)" @@ -6325,8 +6355,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2015-03-10 21:33+0100\n" "Last-Translator: Hasan Kiran <sunder67@hotmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -4641,6 +4641,35 @@ msgid "" "Without argument, this command display ban list for current channel." msgstr "" +msgid "client capability negotiation" +msgstr "" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "İRC sunucu(lara) bağlan" @@ -5649,8 +5678,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" diff --git a/po/weechat.pot b/po/weechat.pot index 0f19ae954..9d9aaec5e 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: 2015-08-15 07:39+0200\n" +"POT-Creation-Date: 2015-08-24 09:58+0200\n" "PO-Revision-Date: 2014-08-16 10:27+0200\n" "Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -4632,6 +4632,35 @@ msgid "" "Without argument, this command display ban list for current channel." msgstr "" +msgid "client capability negotiation" +msgstr "" + +msgid "ls || list || req|ack [<capability> [<capability>...]] || clear || end" +msgstr "" + +msgid "" +" ls: list the capabilities supported by the server\n" +" list: list the capabilities currently enabled\n" +" req: request a capability\n" +" ack: acknowledge capabilities which require client-side acknowledgement\n" +"clear: clear the capabilities currently enabled\n" +" end: end the capability negotiation\n" +"\n" +"Without argument, \"ls\" and \"list\" are sent.\n" +"\n" +"Capabilities supported by WeeChat are: account-notify, away-notify, extended-" +"join, multi-prefix, server-time, userhost-in-names.\n" +"\n" +"The capabilities to automatically enable on servers can be set in option irc." +"server_default.capabilities (or by server in option irc.server.xxx." +"capabilities).\n" +"\n" +"Examples:\n" +" /cap\n" +" /cap req multi-prefix\n" +" /cap clear" +msgstr "" + msgid "connect to IRC server(s)" msgstr "" @@ -5581,8 +5610,7 @@ msgstr "" #. TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) msgid "" "comma-separated list of client capabilities to enable for server if they are " -"available; capabilities supported by WeeChat are: account-notify, away-" -"notify, extended-join, multi-prefix, server-time, userhost-in-names " +"available (see /help cap for a list of capabilities supported by WeeChat) " "(example: \"away-notify,multi-prefix\")" msgstr "" diff --git a/src/plugins/irc/irc-command.c b/src/plugins/irc/irc-command.c index 3edb5433a..a78970e6b 100644 --- a/src/plugins/irc/irc-command.c +++ b/src/plugins/irc/irc-command.c @@ -1072,6 +1072,48 @@ irc_command_ban (void *data, struct t_gui_buffer *buffer, int argc, } /* + * Callback for command "/cap": client capability negotiation. + * + * Docs on capability negotiation: + * https://tools.ietf.org/html/draft-mitchell-irc-capabilities-01 + * http://ircv3.net/specs/core/capability-negotiation-3.1.html + * http://ircv3.net/specs/core/capability-negotiation-3.2.html + */ + +int +irc_command_cap (void *data, struct t_gui_buffer *buffer, int argc, + char **argv, char **argv_eol) +{ + IRC_BUFFER_GET_SERVER(buffer); + IRC_COMMAND_CHECK_SERVER("cap", 1); + + /* make C compiler happy */ + (void) data; + + if (argc > 1) + { + irc_server_sendf (ptr_server, IRC_SERVER_SEND_OUTQ_PRIO_HIGH, NULL, + "CAP %s%s%s", + argv[1], + (argv_eol[2]) ? " :" : "", + (argv_eol[2]) ? argv_eol[2] : ""); + } + else + { + /* + * by default, show supported capabilities and capabilities currently + * enabled + */ + irc_server_sendf (ptr_server, IRC_SERVER_SEND_OUTQ_PRIO_HIGH, NULL, + "CAP LS"); + irc_server_sendf (ptr_server, IRC_SERVER_SEND_OUTQ_PRIO_HIGH, NULL, + "CAP LIST"); + } + + return WEECHAT_RC_OK; +} + +/* * Connects to one server. * * Returns: @@ -6092,6 +6134,40 @@ irc_command_init () "Without argument, this command display ban list for current channel."), "%(irc_channel_nicks_hosts)", &irc_command_ban, NULL); weechat_hook_command ( + "cap", + N_("client capability negotiation"), + N_("ls || list || req|ack [<capability> [<capability>...]]" + " || clear || end"), + N_(" ls: list the capabilities supported by the server\n" + " list: list the capabilities currently enabled\n" + " req: request a capability\n" + " ack: acknowledge capabilities which require client-side " + "acknowledgement\n" + "clear: clear the capabilities currently enabled\n" + " end: end the capability negotiation\n" + "\n" + "Without argument, \"ls\" and \"list\" are sent.\n" + "\n" + "Capabilities supported by WeeChat are: " + "account-notify, away-notify, extended-join, " + "multi-prefix, server-time, userhost-in-names.\n" + "\n" + "The capabilities to automatically enable on servers can be set " + "in option irc.server_default.capabilities (or by server in " + "option irc.server.xxx.capabilities).\n" + "\n" + "Examples:\n" + " /cap\n" + " /cap req multi-prefix\n" + " /cap clear"), + "ls" + " || list" + " || req " IRC_COMMAND_CAP_SUPPORTED_COMPLETION + " || ack " IRC_COMMAND_CAP_SUPPORTED_COMPLETION + " || clear" + " || end", + &irc_command_cap, NULL); + weechat_hook_command ( "connect", N_("connect to IRC server(s)"), N_("<server> [<server>...] [-<option>[=<value>]] [-no<option>] " diff --git a/src/plugins/irc/irc-command.h b/src/plugins/irc/irc-command.h index acedfa926..358bc6385 100644 --- a/src/plugins/irc/irc-command.h +++ b/src/plugins/irc/irc-command.h @@ -43,6 +43,12 @@ struct t_irc_channel; return WEECHAT_RC_OK; \ } +/* list of supported capabilities (for completion in command /cap) */ +#define IRC_COMMAND_CAP_SUPPORTED_COMPLETION \ + "account-notify|away-notify|extended-join|" \ + "multi-prefix|server-time|userhost-in-names" \ + "|%*" + extern void irc_command_away_server (struct t_irc_server *server, const char *arguments, int reset_unread_marker); diff --git a/src/plugins/irc/irc-config.c b/src/plugins/irc/irc-config.c index 6828834fe..fa879e4f8 100644 --- a/src/plugins/irc/irc-config.c +++ b/src/plugins/irc/irc-config.c @@ -1731,10 +1731,9 @@ irc_config_server_new_option (struct t_config_file *config_file, option_name, "string", /* TRANSLATORS: please keep words "client capabilities" between brackets if translation is different (see fr.po) */ N_("comma-separated list of client capabilities to enable for " - "server if they are available; capabilities supported by " - "WeeChat are: account-notify, away-notify, extended-join, " - "multi-prefix, server-time, userhost-in-names (example: " - "\"away-notify,multi-prefix\")"), + "server if they are available (see /help cap for a list of " + "capabilities supported by WeeChat) " + "(example: \"away-notify,multi-prefix\")"), NULL, 0, 0, default_value, value, null_value_allowed, |