summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--doc/de/autogen/user/irc_commands.txt22
-rw-r--r--doc/en/autogen/user/irc_commands.txt22
-rw-r--r--doc/fr/autogen/user/irc_commands.txt26
-rw-r--r--doc/it/autogen/user/irc_commands.txt22
-rw-r--r--doc/ja/autogen/user/irc_commands.txt22
-rw-r--r--po/cs.po56
-rw-r--r--po/de.po262
-rw-r--r--po/es.po55
-rw-r--r--po/fr.po74
-rw-r--r--po/hu.po52
-rw-r--r--po/it.po57
-rw-r--r--po/ja.po57
-rw-r--r--po/pl.po53
-rw-r--r--po/pt_BR.po57
-rw-r--r--po/ru.po51
-rw-r--r--po/tr.po49
-rw-r--r--po/weechat.pot43
-rw-r--r--src/plugins/irc/irc-command.c250
19 files changed, 925 insertions, 308 deletions
diff --git a/ChangeLog b/ChangeLog
index 209b19b20..5959f09c2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,7 @@
WeeChat ChangeLog
=================
Sébastien Helleu <flashcode@flashtux.org>
-v0.4.2-dev, 2013-07-15
+v0.4.2-dev, 2013-07-18
This document lists all changes for each version.
@@ -34,6 +34,7 @@ Version 0.4.2 (under dev!)
* core: fix line alignment when option weechat.look.buffer_time_format is set
to empty string
* aspell: add support of enchant library (patch #6858)
+* irc: add support of wildcards in commands (de)op/halfop/voice (task #9221)
* irc: add option irc.look.pv_tags
* irc: fix error message on /invite without arguments (bug #39272)
* irc: add support of special variables $nick/$channel/$server in commands
diff --git a/doc/de/autogen/user/irc_commands.txt b/doc/de/autogen/user/irc_commands.txt
index 3c30ab3d6..0955e854a 100644
--- a/doc/de/autogen/user/irc_commands.txt
+++ b/doc/de/autogen/user/irc_commands.txt
@@ -121,18 +121,29 @@ Beispiel:
[command]*`dehalfop`* halb-Operator-Privilegien einem oder mehreren Nick(s) entziehen::
........................................
/dehalfop <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel half-operator status from everybody on channel except yourself
........................................
[[command_irc_deop]]
[command]*`deop`* Operator-Privilegien einem oder mehreren Nicknamen entziehen::
........................................
/deop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel operator status from everybody on channel except yourself
........................................
[[command_irc_devoice]]
[command]*`devoice`* Voice-Privilegien einem oder mehreren Nicknamen entziehen::
........................................
/devoice <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove voice from everybody on channel
........................................
[[command_irc_die]]
@@ -158,6 +169,10 @@ reason: Begründung der Trennung
[command]*`halfop`* halb-Operator Status an Nick(s) vergeben::
........................................
/halfop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel half-operator status to everybody on channel
........................................
[[command_irc_ignore]]
@@ -422,6 +437,10 @@ Beispiele:
[command]*`op`* Channel-Operator Status an Nicknamen vergeben::
........................................
/op <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel operator status to everybody on channel
........................................
[[command_irc_oper]]
@@ -719,6 +738,9 @@ server: Servername
[command]*`voice`* Voice an Nick(s) vergeben::
........................................
/voice <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give voice to everybody on channel
........................................
[[command_irc_wallchops]]
diff --git a/doc/en/autogen/user/irc_commands.txt b/doc/en/autogen/user/irc_commands.txt
index ff5589da7..0c93b700c 100644
--- a/doc/en/autogen/user/irc_commands.txt
+++ b/doc/en/autogen/user/irc_commands.txt
@@ -121,18 +121,29 @@ Examples:
[command]*`dehalfop`* remove channel half-operator status from nick(s)::
........................................
/dehalfop <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel half-operator status from everybody on channel except yourself
........................................
[[command_irc_deop]]
[command]*`deop`* remove channel operator status from nick(s)::
........................................
/deop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel operator status from everybody on channel except yourself
........................................
[[command_irc_devoice]]
[command]*`devoice`* remove voice from nick(s)::
........................................
/devoice <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove voice from everybody on channel
........................................
[[command_irc_die]]
@@ -158,6 +169,10 @@ target: server name
[command]*`halfop`* give channel half-operator status to nick(s)::
........................................
/halfop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel half-operator status to everybody on channel
........................................
[[command_irc_ignore]]
@@ -422,6 +437,10 @@ Examples:
[command]*`op`* give channel operator status to nick(s)::
........................................
/op <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel operator status to everybody on channel
........................................
[[command_irc_oper]]
@@ -719,6 +738,9 @@ server: server name
[command]*`voice`* give voice to nick(s)::
........................................
/voice <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give voice to everybody on channel
........................................
[[command_irc_wallchops]]
diff --git a/doc/fr/autogen/user/irc_commands.txt b/doc/fr/autogen/user/irc_commands.txt
index 1a57792fb..2f7548c07 100644
--- a/doc/fr/autogen/user/irc_commands.txt
+++ b/doc/fr/autogen/user/irc_commands.txt
@@ -121,18 +121,29 @@ Exemples:
[command]*`dehalfop`* retirer le statut de demi-opérateur du canal à/aux pseudo(s)::
........................................
/dehalfop <pseudo> [<pseudo>...]
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: retirer le statut de demi-opérateur de tout le monde sur le canal excepté vous-même
........................................
[[command_irc_deop]]
[command]*`deop`* retirer le statut d'opérateur du canal à/aux pseudo(s)::
........................................
/deop <pseudo> [<pseudo>...]
+ * -yes
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: retirer le statut d'opérateur de tout le monde sur le canal excepté vous-même
........................................
[[command_irc_devoice]]
[command]*`devoice`* retirer la voix du/des pseudo(s)::
........................................
/devoice <pseudo> [<pseudo>...]
+ * -yes
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: retirer la voix de tout le monde sur le canal
........................................
[[command_irc_die]]
@@ -158,6 +169,10 @@ cible: nom du serveur
[command]*`halfop`* donner le statut de demi-opérateur à un/des pseudo(s)::
........................................
/halfop <pseudo> [<pseudo>...]
+ * -yes
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: donner le statut de demi-opérateur à tout le monde sur le canal
........................................
[[command_irc_ignore]]
@@ -419,9 +434,13 @@ Exemples:
........................................
[[command_irc_op]]
-[command]*`op`* donner le statut opérateur à un/des pseudo(s)::
+[command]*`op`* donner le statut d'opérateur à un/des pseudo(s)::
........................................
/op <pseudo> [<pseudo>...]
+ * -yes
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: donner le statut d'opérateur à tout le monde sur le canal
........................................
[[command_irc_oper]]
@@ -528,7 +547,7 @@ pseudo: pseudo
........................................
[[command_irc_samode]]
-[command]*`samode`* changer le mode du canal, sans avoir le statut opérateur::
+[command]*`samode`* changer le mode du canal, sans avoir le statut d'opérateur::
........................................
/samode <canal> <mode>
@@ -719,6 +738,9 @@ serveur: nom du serveur
[command]*`voice`* donner la voix à/aux pseudo(s)::
........................................
/voice <pseudo> [<pseudo>...]
+
+pseudo: pseudo ou masque (peut démarrer ou se terminer par "*" comme joker)
+ *: donner la voix à tout le monde sur le canal
........................................
[[command_irc_wallchops]]
diff --git a/doc/it/autogen/user/irc_commands.txt b/doc/it/autogen/user/irc_commands.txt
index 699bffbb5..4fb28f03e 100644
--- a/doc/it/autogen/user/irc_commands.txt
+++ b/doc/it/autogen/user/irc_commands.txt
@@ -121,18 +121,29 @@ Esempi:
[command]*`dehalfop`* revoca lo stato di half-op del canale da uno o più nick::
........................................
/dehalfop <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel half-operator status from everybody on channel except yourself
........................................
[[command_irc_deop]]
[command]*`deop`* revoca lo stato di operatore del canale da uno o più nick::
........................................
/deop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel operator status from everybody on channel except yourself
........................................
[[command_irc_devoice]]
[command]*`devoice`* revoca il voice da uno o più nick::
........................................
/devoice <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove voice from everybody on channel
........................................
[[command_irc_die]]
@@ -158,6 +169,10 @@ destinazione: nome server
[command]*`halfop`* concede lo stato di half-op del canale ad uno o più nick::
........................................
/halfop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel half-operator status to everybody on channel
........................................
[[command_irc_ignore]]
@@ -422,6 +437,10 @@ Esempi:
[command]*`op`* concede lo stato di operatore del canale ad uno o più nick::
........................................
/op <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel operator status to everybody on channel
........................................
[[command_irc_oper]]
@@ -719,6 +738,9 @@ server: nome server
[command]*`voice`* concede il voice ad uno o più utenti::
........................................
/voice <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give voice to everybody on channel
........................................
[[command_irc_wallchops]]
diff --git a/doc/ja/autogen/user/irc_commands.txt b/doc/ja/autogen/user/irc_commands.txt
index 7fbc34091..0ab401c81 100644
--- a/doc/ja/autogen/user/irc_commands.txt
+++ b/doc/ja/autogen/user/irc_commands.txt
@@ -121,18 +121,29 @@ file: ファイルネーム (ローカルホスト上の)
[command]*`dehalfop`* ニックネームから half-operator 権を剥奪::
........................................
/dehalfop <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel half-operator status from everybody on channel except yourself
........................................
[[command_irc_deop]]
[command]*`deop`* ニックネームからチャンネルオペレータ権を剥奪::
........................................
/deop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove channel operator status from everybody on channel except yourself
........................................
[[command_irc_devoice]]
[command]*`devoice`* ニックネームから発言権を剥奪::
........................................
/devoice <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: remove voice from everybody on channel
........................................
[[command_irc_die]]
@@ -158,6 +169,10 @@ target: サーバ名
[command]*`halfop`* 指定したニックネームに half-operator 権を付与::
........................................
/halfop <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel half-operator status to everybody on channel
........................................
[[command_irc_ignore]]
@@ -422,6 +437,10 @@ server: 内部サーバ名 (デフォルトでは現在のサーバ)
[command]*`op`* ニックネームにオペレータ権を付与::
........................................
/op <nick> [<nick>...]
+ * -yes
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give channel operator status to everybody on channel
........................................
[[command_irc_oper]]
@@ -719,6 +738,9 @@ server: サーバ名
[command]*`voice`* ニックネームに発言権を付与::
........................................
/voice <nick> [<nick>...]
+
+nick: nick or mask (can start or end with "*" as wildcard)
+ *: give voice to everybody on channel
........................................
[[command_irc_wallchops]]
diff --git a/po/cs.po b/po/cs.po
index 18c68f82b..6b004f8bc 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-06-10 09:13+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: cs\n"
@@ -4250,6 +4250,14 @@ msgstr "%s%s: nemohu přidělit nový kanál"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s se zpet na serveru"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sChyba: \"-yes\" argument je požadován pro reset kaláves (bezpečnostní "
+"opatření)"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: Budoucí zpráva o nepřítomnosit: %s"
@@ -4744,12 +4752,35 @@ msgstr "odebrat status polo-operátora kanálu z přezdívky (přezdívek)"
msgid "<nick> [<nick>...]"
msgstr "<přezdívka> [<přezdívka>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "odebrat status operátora kanálu z přezdívky (přezdívek)"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<přezdívka> [<přezdívka>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "odebrat hlas z přezdívky (přezdívek)"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"jméno aliasu (může začínat nebo končit \"*\" jako zástupný znak) (volitelné)"
+
msgid "shutdown the server"
msgstr "vypnout server"
@@ -4777,6 +4808,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "dát status polo-operátora kanálu přezdívce (přezdívkám)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignorovat přezdívky/hosty na serveru nebo kanálu"
@@ -5186,6 +5222,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "dát status operátora kanálu přezdívce (přezdívkám)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "dát práva operátora"
@@ -5577,6 +5618,13 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "dá hlas přezdívce/přezdívkám"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"jméno aliasu (může začínat nebo končit \"*\" jako zástupný znak) (volitelné)"
+
msgid "send a notice to channel ops"
msgstr "poslat notifikaci operátorům kanálu"
@@ -9527,7 +9575,3 @@ msgstr ""
msgid "Constants"
msgstr ""
-
-#, fuzzy
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s výchozí klávesy:\n"
diff --git a/po/de.po b/po/de.po
index ef0baa320..fec98a75d 100644
--- a/po/de.po
+++ b/po/de.po
@@ -22,8 +22,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 22:20+0100\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
"Language-Team: German <weechatter@arcor.de>\n"
"Language: de_DE\n"
@@ -4739,6 +4739,14 @@ msgstr "%s%s: Neuer Channel konnte nicht alloziert werden"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s hat sich wieder am Server angemeldet"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sFehler: Das Argument \"-yes\" ist, aus Sicherheitsgründen, zum "
+"zurücksetzen der Tastenbelegung notwendig"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: künftige Abwesenheit: %s"
@@ -5260,12 +5268,36 @@ msgstr "halb-Operator-Privilegien einem oder mehreren Nick(s) entziehen"
msgid "<nick> [<nick>...]"
msgstr "<nick> [<nick>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "Operator-Privilegien einem oder mehreren Nicknamen entziehen"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<nick> [<nick>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "Voice-Privilegien einem oder mehreren Nicknamen entziehen"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"Alias Name (darf mit einem \"*\" als Platzhalter beginnen oder enden) "
+"(optional)"
+
msgid "shutdown the server"
msgstr "Server herunterfahren"
@@ -5293,6 +5325,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "halb-Operator Status an Nick(s) vergeben"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "Ignoriert Nicks/Hosts von Channels oder Servern"
@@ -5710,6 +5747,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "Channel-Operator Status an Nicknamen vergeben"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "Operator Privilegien anfordern"
@@ -6109,6 +6151,14 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "Voice an Nick(s) vergeben"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"Alias Name (darf mit einem \"*\" als Platzhalter beginnen oder enden) "
+"(optional)"
+
msgid "send a notice to channel ops"
msgstr "Nachricht an Channel-Operator verschicken"
@@ -10422,211 +10472,3 @@ msgstr "Type"
msgid "Constants"
msgstr "Konstanten"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s Standardtastenbelegungen (Kontext: \"%s\"):\n"
-
-#~ msgid "proxy used for this server (optional)"
-#~ msgstr "Proxy, der für diesen Server verwendet wird (optional)"
-
-#~ msgid "leaf: id: %d, parent: %d, plugin: \"%s\", buffer: \"%s\""
-#~ msgstr "Blatt: id: %d, Stamm: %d, Erweiterung: \"%s\", Buffer: \"%s\""
-
-#~ msgid "node: id: %d, parent: %d, child1: %d, child2: %d, size: %d%% (%s)"
-#~ msgstr "Node: id: %d, Stamm: %d, Kind1: %d, Kind2: %d, Größe: %d%% (%s)"
-
-#~ msgid "horizontal split"
-#~ msgstr "horizontale Aufteilung"
-
-#~ msgid "vertical split"
-#~ msgstr "vertikale Aufteilung"
-
-#~ msgid "Saved layout for windows:"
-#~ msgstr "gespeicherte Layouts für Fenster:"
-
-#~ msgid "Layout saved for buffers (order of buffers)"
-#~ msgstr "Layout der Buffer gesichert (Reihenfolge der Buffer)"
-
-#~ msgid "Layout saved for windows (buffer displayed by each window)"
-#~ msgstr ""
-#~ "Layout der Fenster gesichert (Buffer werden durch jedes Fenster "
-#~ "dargestellt)"
-
-#~ msgid "Layout reset for buffers"
-#~ msgstr "Zurücksetzen des Bufferlayouts"
-
-#~ msgid "Layout reset for windows"
-#~ msgstr "Zurücksetzen des Fensterlayouts"
-
-#~ msgid "hide password displayed by nickserv"
-#~ msgstr "Passwörter verstecken die durch NickServ angezeigt werden"
-
-#~ msgid "%s%s: error: name is not required for protocol \"%s\""
-#~ msgstr "%s%s: Fehler: ein Name ist für das Protokoll \"%s\" nicht notwendig"
-
-#~ msgid "%s%s: not enough memory to create new speller"
-#~ msgstr "%s%s: Nicht genug Speicher um neue Rechtschreibung zu erstellen"
-
-#~ msgid "%s%s: cannot set socket option \"SO_REUSEADDR\""
-#~ msgstr "%s%s Fehler beim Erstellen der Socket-Option \"SO_REUSEADDR\""
-
-#~ msgid "%s%s: cannot set socket option \"IPV6_V6ONLY\" to value %d"
-#~ msgstr ""
-#~ "%s%s der Wert %d kann nicht für die Socket-Option, \"IPV6_V6ONLY\", "
-#~ "gesetzt werden"
-
-#~ msgid "%s%s: cannot set socket option \"SO_KEEPALIVE\""
-#~ msgstr "%s%s Fehler beim Erstellen der Socket-Option \"SO_KEEPALIVE\""
-
-#~ msgid "%s%s: cannot create socket for xfer"
-#~ msgstr "%s%s: Für den Transfer konnte kein Socket angelegt werden"
-
-#~ msgid "%s%s: not enough memory to parse file \"%s\""
-#~ msgstr "%s%s: Nicht genug Speicher um Datei \"%s\" zu analysieren"
-
-#~ msgid "%s%s: unable to run file \"%s\""
-#~ msgstr "%s%s: Kann Datei \"%s\" nicht ausführen"
-
-#~ msgid "%s%s: unknown error while loading file \"%s\""
-#~ msgstr "%s%s: unbekannter Fehler beim Laden der Datei \"%s\""
-
-#~ msgid "%s: error loading script \"%s\" (bad name, spaces are forbidden)"
-#~ msgstr ""
-#~ "%s: Fehler beim Laden des Skriptes \"%s\" (fehlerhafter Name: Leerzeichen "
-#~ "sind nicht erlaubt)"
-
-#~ msgid "%s%s: cannot create socket"
-#~ msgstr "%s%s: Socket konnte nicht angelegt werden"
-
-#~ msgid "background color for window separators (when split)"
-#~ msgstr ""
-#~ "Hintergrundfarbe der Fenster-Separatoren im Chatfenster (bei geteiltem "
-#~ "Bildschirm)"
-
-#~ msgid "No configuration option found"
-#~ msgstr "Konfigurationsoption nicht gefunden"
-
-#~ msgid "%s%d%s configuration option found"
-#~ msgid_plural "%s%d%s configuration options found"
-#~ msgstr[0] "%s%d%s Konfigurationsoption gefunden"
-#~ msgstr[1] "%s%d%s Konfigurationsoptionen gefunden"
-
-#~ msgid "%sError: configuration option \"%s\" not found"
-#~ msgstr "%sFehler: Konfigurationsoption \"%s\" nicht gefunden"
-
-#~ msgid "[<option> [<value>]]"
-#~ msgstr "[<option> [<value>]]"
-
-#~ msgid "automatically rejoin channels after kick"
-#~ msgstr "Channels automatisch betreten, falls man rausgeworfen wurde"
-
-#~ msgid "prefix for error messages"
-#~ msgstr "Präfix für Fehlermeldungen"
-
-#~ msgid "prefix for network messages"
-#~ msgstr "Präfix für Netzwerkmeldungen"
-
-#~ msgid "prefix for action messages"
-#~ msgstr "Präfix für Action-Nachrichten"
-
-#~ msgid "prefix for join messages"
-#~ msgstr "Präfix für Join-Nachrichten"
-
-#~ msgid "prefix for quit messages"
-#~ msgstr "Präfix für Quit-Nachrichten"
-
-#~ msgid ""
-#~ "condition(s) for displaying bar (for bars of type \"window\"): \"active\" "
-#~ "= window must be active, \"inactive\" = window must be inactive, "
-#~ "\"nicklist\" = buffer must have a nicklist"
-#~ msgstr ""
-#~ "Bedingung(en) um eine Bar anzuzeigen (gilt für Bars des Typs \"window\"): "
-#~ "\"active\" = window muss aktiv sein \"inactive\" = window muss inaktiv "
-#~ "sein, \"nicklist\" = Buffer muss über eine Nickliste verfügen"
-
-#~ msgid ""
-#~ "server: server name\n"
-#~ " nick: nick (may be a mask)"
-#~ msgstr ""
-#~ "server: Servername\n"
-#~ " nick: Nickname (oder eine Maske)"
-
-#~ msgid "use IPv6 protocol for server communication"
-#~ msgstr "Server über IPv6 ansprechen"
-
-#~ msgid "global decoding charset"
-#~ msgstr "globaler Zeichensatz zum dekodieren"
-
-#~ msgid "global encoding charset"
-#~ msgstr "globaler Zeichensatz zum kodieren"
-
-#~ msgid "alt+d=back to list"
-#~ msgstr "alt+d=zurück zur Auswahl"
-
-#~ msgid "%s: connecting to server %s/%d%s%s..."
-#~ msgstr "%s: Verbinden zum Server %s/%d%s%s..."
-
-#~ msgid "%s: disconnected from server"
-#~ msgstr "%s: Vom Server getrennt!"
-
-#~ msgid "display nick mode ((half)op/voice) before each nick"
-#~ msgstr ""
-#~ "vor dem Nicknamen wird der entsprechende Nickmode ((half)op/voice [@%+]) "
-#~ "angezeigt"
-
-#~ msgid "%s: script \"%s\" held"
-#~ msgstr "%s: Skript \"%s\" kann nicht überschrieben werden"
-
-#~ msgid ""
-#~ "%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because "
-#~ "WeeChat was not built with libgcrypt support"
-#~ msgstr ""
-#~ "%s%s Authentifizierung mittels SASL und DH-BLOWFISH Mechanismus nicht "
-#~ "möglich, da WeeChat nicht mit libgcrypt Unterstützung erstellt wurde"
-
-#~ msgid "smart completion for nicks (completes first with last speakers)"
-#~ msgstr ""
-#~ "intelligente Vervollständigung von Nicknamen (vervollständigt zuerst den "
-#~ "letzten Nick, mit dem gesprochen wurde)"
-
-#~ msgid "ended on: "
-#~ msgstr "geendet am: "
-
-#~ msgid "%s%-26s id: %d, protocol: %s, received: %s, sent: %s"
-#~ msgstr "%s%-26s Id: %d, Protokoll: %s, empfangen: %s, gesendet: %s"
-
-#~ msgid "%s: new client from %s%s%s on port %d (id: %d, relaying: %s%s%s)"
-#~ msgstr "%s: neuer Client von %s%s%s an Port %d (id: %d, Relaying: %s%s%s)"
-
-#~ msgid "text color"
-#~ msgstr "Textfarbe"
-
-#~ msgid "background color"
-#~ msgstr "Hintergrundfarbe"
-
-#~ msgid "text color of selected xfer line"
-#~ msgstr "Farbe der ausgewählten Transfer-Zeile"
-
-#~ msgid "display message when (un)marking as away"
-#~ msgstr "bei Abwesenheit und Rückkehr eine Nachricht anzeigen"
-
-#~ msgid "display channel modes in \"buffer_name\" bar item"
-#~ msgstr "zeigt die Channel-Modi mittels \"buffer_name\" in der Bar-Item an"
-
-#~ msgid "%sError: name can not start with \"#\""
-#~ msgstr "%sFehler: Name darf nicht mit \"#\"beginnen"
-
-#~ msgid "%s%s: name can not start with \"#\""
-#~ msgstr "%s%s: Name darf nicht mit \"#\" beginnen"
-
-#~ msgid "string inserted after nick completion"
-#~ msgstr "Nach Nick-Vervollständigung anzufügende Zeichenfolge"
-
-#~ msgid "display '+' if prefix is truncated"
-#~ msgstr "Anzeige eines '+' falls das Präfix abgeschnitten ist"
-
-#~ msgid "<nick> <channel>"
-#~ msgstr "<nick> <channel>"
-
-#~ msgid "mechanism for SASL authentication"
-#~ msgstr "Vorrichtung zur SASL Authentifizierung"
diff --git a/po/es.po b/po/es.po
index 4e17d0fce..b56bdc577 100644
--- a/po/es.po
+++ b/po/es.po
@@ -22,8 +22,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 15:57+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: es\n"
@@ -4451,6 +4451,14 @@ msgstr "%s%s: no se pudo crear un nuevo canal"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s ha regresado al servidor"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sError: por seguridad, se requiere el argumento \"-yes\" para restaurar los "
+"atajos"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: ausencia futura: %s"
@@ -4954,12 +4962,35 @@ msgstr "remueve el estado de semi-operador del canal de el/los apodo(s)"
msgid "<nick> [<nick>...]"
msgstr "<apodo> [<apodo>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "remueve el estado de operador del canal de el/los apodo(s)"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<apodo> [<apodo>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "remueve voz de el/los apodo(s)"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"nombre del alias (puede empezar o terminar con \"*\" como comodín) (opcional)"
+
msgid "shutdown the server"
msgstr "cerrar el servidor"
@@ -4987,6 +5018,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "dar el estado de semi-operador del canal a el/los apodo(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignorar apodos/hosts en servidores o canales"
@@ -5397,6 +5433,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "dar el estado de operador del canal a el/los apodo(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "obtener privilegios de operador"
@@ -5790,6 +5831,13 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "da voz a el/los apodo(s)"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"nombre del alias (puede empezar o terminar con \"*\" como comodín) (opcional)"
+
msgid "send a notice to channel ops"
msgstr "envía un aviso a los ops del canal"
@@ -9777,6 +9825,3 @@ msgstr "Tipo"
msgid "Constants"
msgstr "Constantes"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "teclas por defecto de %s (contexto: \"%s\"):\n"
diff --git a/po/fr.po b/po/fr.po
index 81e592034..c8ec1bc01 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-15 18:35+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: fr\n"
@@ -4618,6 +4618,14 @@ msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s est de retour sur le serveur"
#, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%s%s: le paramètre \"-yes\" est requis pour le pseudo \"*\" (raison de "
+"sécurité), voir /help %s"
+
+#, c-format
msgid "%s: future away: %s"
msgstr "%s: future absence: %s"
@@ -5125,12 +5133,43 @@ msgstr "retirer le statut de demi-opérateur du canal à/aux pseudo(s)"
msgid "<nick> [<nick>...]"
msgstr "<pseudo> [<pseudo>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: retirer le statut de demi-opérateur de tout le monde sur le canal "
+"excepté vous-même"
+
msgid "remove channel operator status from nick(s)"
msgstr "retirer le statut d'opérateur du canal à/aux pseudo(s)"
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<pseudo> [<pseudo>...] || * -yes"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: retirer le statut d'opérateur de tout le monde sur le canal excepté "
+"vous-même"
+
msgid "remove voice from nick(s)"
msgstr "retirer la voix du/des pseudo(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: retirer la voix de tout le monde sur le canal"
+
msgid "shutdown the server"
msgstr "arrêter le serveur"
@@ -5158,6 +5197,14 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "donner le statut de demi-opérateur à un/des pseudo(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: donner le statut de demi-opérateur à tout le monde sur le canal"
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignorer des pseudos/hôtes de serveurs ou canaux"
@@ -5569,7 +5616,15 @@ msgstr ""
" /notify add toto freenode -away"
msgid "give channel operator status to nick(s)"
-msgstr "donner le statut opérateur à un/des pseudo(s)"
+msgstr "donner le statut d'opérateur à un/des pseudo(s)"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: donner le statut d'opérateur à tout le monde sur le canal"
msgid "get operator privileges"
msgstr "obtenir le statut d'opérateur"
@@ -5708,7 +5763,7 @@ msgstr ""
" canal: canal"
msgid "change mode on channel, without having operator status"
-msgstr "changer le mode du canal, sans avoir le statut opérateur"
+msgstr "changer le mode du canal, sans avoir le statut d'opérateur"
msgid "<channel> <mode>"
msgstr "<canal> <mode>"
@@ -5963,6 +6018,14 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "donner la voix à/aux pseudo(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"pseudo: pseudo ou masque (peut démarrer ou se terminer par \"*\" comme "
+"joker)\n"
+" *: donner la voix à tout le monde sur le canal"
+
msgid "send a notice to channel ops"
msgstr "envoyer une notice aux opérateurs du canal"
@@ -10161,6 +10224,3 @@ msgstr "Type"
msgid "Constants"
msgstr "Constantes"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "Touches par défaut %s (contexte: \"%s\"):\n"
diff --git a/po/hu.po b/po/hu.po
index 5d9be36d6..2c4780228 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 15:57+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: hu\n"
@@ -3848,6 +3848,14 @@ msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s %s(%s%s%s)%s belépett a(z) %s%s szobába\n"
#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%s \"-yes\" paraméter megadása kötelező a billentyűparancsok "
+"visszaállításához (biztonsági okokból)\n"
+
+#, fuzzy, c-format
msgid "%s: future away: %s"
msgstr "CTCP %sVERSION%s válasz %s%s%s felhasználótól: %s\n"
@@ -4314,14 +4322,35 @@ msgstr "elveszi az operátori jogot a felhasználó(k)tól"
msgid "<nick> [<nick>...]"
msgstr "név [név...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
#, fuzzy
msgid "remove channel operator status from nick(s)"
msgstr "elveszi az operátori jogot a felhasználó(k)tól"
#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "név [név...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
+#, fuzzy
msgid "remove voice from nick(s)"
msgstr "elveszi a voice jogot a felhasználó(k)tól"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+
msgid "shutdown the server"
msgstr "szerver leállítása"
@@ -4352,6 +4381,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "operátori jogok biztosítása felhasználó(k)nak"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr ""
@@ -4699,6 +4733,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "operátori jogok biztosítása felhasználó(k)nak"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "operátori jogok megszerzése"
@@ -5130,6 +5169,11 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "voice jog biztosítása a felhasználó(k)nak"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+
#, fuzzy
msgid "send a notice to channel ops"
msgstr "üzenet küldése egy felhasználónak vagy szobának"
@@ -8984,7 +9028,3 @@ msgstr ""
msgid "Constants"
msgstr ""
-
-#, fuzzy
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s alapértelmezett billentyűk:\n"
diff --git a/po/it.po b/po/it.po
index aa1f09b28..497771305 100644
--- a/po/it.po
+++ b/po/it.po
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-06-14 19:39-0300\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: it\n"
@@ -4525,6 +4525,14 @@ msgstr "%s%s: impossibile allocare un nuovo canale"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s è tornato sul server"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sErrore: l'argomento \"-yes\" è richiesto per il reset dei tasti (motivi di "
+"sicurezza)"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: prossima assenza: %s"
@@ -5026,12 +5034,36 @@ msgstr "revoca lo stato di half-op del canale da uno o più nick"
msgid "<nick> [<nick>...]"
msgstr "<nick> [<nick>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "revoca lo stato di operatore del canale da uno o più nick"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<nick> [<nick>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "revoca il voice da uno o più nick"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"nome alias (può iniziare o terminare con \"*\" come carattere jolly) "
+"(opzionale)"
+
msgid "shutdown the server"
msgstr "arresta il server"
@@ -5059,6 +5091,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "concede lo stato di half-op del canale ad uno o più nick"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignora nick/host dai server o dai canali"
@@ -5468,6 +5505,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "concede lo stato di operatore del canale ad uno o più nick"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "ottiene i privilegi di operatore"
@@ -5860,6 +5902,14 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "concede il voice ad uno o più utenti"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"nome alias (può iniziare o terminare con \"*\" come carattere jolly) "
+"(opzionale)"
+
msgid "send a notice to channel ops"
msgstr "invia una notifica agli operatori del canale"
@@ -9868,6 +9918,3 @@ msgstr "Tipo"
msgid "Constants"
msgstr "Costanti"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s tasti predefiniti (contesto: \"%s\"):\n"
diff --git a/po/ja.po b/po/ja.po
index 1034defa0..777ab391a 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 16:02+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
"Language-Team: Japanese <https://github.com/l/WeeChat>\n"
"Language: ja\n"
@@ -4440,6 +4440,14 @@ msgstr "%s%s: 新しいチャンネルの割り当てに失敗"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s がサーバに戻りました"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sエラー: キーをリセットするには \"-yes\" 引数が必要です (セキュリティ上の理"
+"由で)"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: 離席予約: %s"
@@ -4933,12 +4941,36 @@ msgstr "ニックネームから half-operator 権を剥奪"
msgid "<nick> [<nick>...]"
msgstr "<nick> [<nick>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "ニックネームからチャンネルオペレータ権を剥奪"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<nick> [<nick>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "ニックネームから発言権を剥奪"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"別名の名前 (ワイルドカードとして \"*\" で始めるか終わるかできます) (オプショ"
+"ン)"
+
msgid "shutdown the server"
msgstr "サーバのシャットダウン"
@@ -4965,6 +4997,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "指定したニックネームに half-operator 権を付与"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "あるサーバかチャンネルで、指定したニックネーム/ホスト名を無視"
@@ -5371,6 +5408,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "ニックネームにオペレータ権を付与"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "オペレータ権を入手"
@@ -5759,6 +5801,14 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "ニックネームに発言権を付与"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"別名の名前 (ワイルドカードとして \"*\" で始めるか終わるかできます) (オプショ"
+"ン)"
+
msgid "send a notice to channel ops"
msgstr "チャンネルオペレータに notice を送信"
@@ -9824,6 +9874,3 @@ msgstr "タイプ"
msgid "Constants"
msgstr "定数"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s デフォルトキー (コンテキスト: \"%s\"):\n"
diff --git a/po/pl.po b/po/pl.po
index b8fbf8e7b..39c892173 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 15:37+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: pl\n"
@@ -4538,6 +4538,14 @@ msgstr "%s%s: nie można przydzielić nowego kanału"
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s%s %s(%s%s%s)%s jest z powrotem na serwerze"
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sBłąd: argument \"-yes\" wymagany do zresetowania ustawień klawiszy "
+"(względy bezpieczeństwa)"
+
#, c-format
msgid "%s: future away: %s"
msgstr "%s: przyszła nieobecność: %s"
@@ -5039,12 +5047,34 @@ msgstr "usuwa status halfopa kanału"
msgid "<nick> [<nick>...]"
msgstr "<nick> [<nick>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "usuwa status operatora kanału"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<nick> [<nick>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr "usuwa flagę voice"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr "nazwa aliasu (może się zaczynać lub kończyć \"*\") (opcjonalne)"
+
msgid "shutdown the server"
msgstr "wyłącza serwer"
@@ -5071,6 +5101,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "nadaje status halfopa nickowi(m)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignoruje nicki/hosty z serwera lub kanałów"
@@ -5481,6 +5516,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "nadaje uprawienia operatora kanału"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "uzyskaj uprawnienia operatora"
@@ -5872,6 +5912,12 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "daje głos (voice) nickowi(-m)"
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr "nazwa aliasu (może się zaczynać lub kończyć \"*\") (opcjonalne)"
+
msgid "send a notice to channel ops"
msgstr "wysyła powiadomienie do operatorów kanału"
@@ -9984,6 +10030,3 @@ msgstr "Typ"
msgid "Constants"
msgstr "Stałe"
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s domyślne skróty klawiszowe (kontekst: \"%s\"):\n"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index df63682a3..a1b53cb17 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-06-10 09:19+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:51+0200\n"
"Last-Translator: Sergio Durigan Junior <sergiosdj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: pt_BR\n"
@@ -4284,6 +4284,14 @@ msgstr ""
msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr ""
+#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%sErro: argumento \"-yes\" é requerido para as teclas de reset (por motivo "
+"de segurança)"
+
#, c-format
msgid "%s: future away: %s"
msgstr ""
@@ -4704,12 +4712,36 @@ msgstr "remover status de semi-operador do(s) apelido(s)"
msgid "<nick> [<nick>...]"
msgstr "<apelido> [<apelido>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr "remover status de operador de canal do(s) apelido(s)"
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<apelido> [<apelido>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr ""
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+"nome do atalho (pode começar ou terminar com \"*\" como um coringa) "
+"(opcional)"
+
msgid "shutdown the server"
msgstr "desligar o servidor"
@@ -4732,6 +4764,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "dar status de semi-operador de canal ao(s) apelido(s)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr "ignorar apelidos/hosts de servidores ou canais"
@@ -5020,6 +5057,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr ""
@@ -5326,6 +5368,14 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr ""
+#, fuzzy
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+"nome do atalho (pode começar ou terminar com \"*\" como um coringa) "
+"(opcional)"
+
msgid "send a notice to channel ops"
msgstr ""
@@ -9150,6 +9200,3 @@ msgstr ""
msgid "Constants"
msgstr ""
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "Teclas de atalho padrão do %s (contexto \"%s\"):\n"
diff --git a/po/ru.po b/po/ru.po
index d15959bde..9ed4c76d0 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-07-02 16:02+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:52+0200\n"
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: ru\n"
@@ -3881,6 +3881,13 @@ msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr "%s%s %s(%s%s%s)%s зашёл на канал %s%s\n"
#, fuzzy, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+"%s аргумент \"-yes\" необходим для сброса ключей (в целях безопасности)\n"
+
+#, fuzzy, c-format
msgid "%s: future away: %s"
msgstr "Планирование статуса на %s%s%s: %s\n"
@@ -4351,14 +4358,35 @@ msgstr "снимает статус оператора с ника(-ов)"
msgid "<nick> [<nick>...]"
msgstr "ник [ник ...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
#, fuzzy
msgid "remove channel operator status from nick(s)"
msgstr "снимает статус оператора с ника(-ов)"
#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "ник [ник ...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
+#, fuzzy
msgid "remove voice from nick(s)"
msgstr "снимает право голоса с ника(-ов)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+
msgid "shutdown the server"
msgstr "выключить сервер"
@@ -4388,6 +4416,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr "даёт статус оператора канала нику(-ам)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr ""
@@ -4733,6 +4766,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr "даёт статус оператора канала нику(-ам)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr "получить привилегии оператора"
@@ -5159,6 +5197,11 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr "даёт право голоса нику(-ам)"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+
#, fuzzy
msgid "send a notice to channel ops"
msgstr "отправить сообщение нику или на канал"
@@ -9004,7 +9047,3 @@ msgstr ""
msgid "Constants"
msgstr ""
-
-#, fuzzy
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s клавиши по умолчанию:\n"
diff --git a/po/tr.po b/po/tr.po
index 3c5be0ae7..99544ae86 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.2-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
-"PO-Revision-Date: 2013-06-28 13:51+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
+"PO-Revision-Date: 2013-07-18 19:52+0200\n"
"Last-Translator: Hasan Kiran <sunder67@hotmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: tr\n"
@@ -3437,6 +3437,12 @@ msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr ""
#, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+
+#, c-format
msgid "%s: future away: %s"
msgstr ""
@@ -3856,12 +3862,33 @@ msgstr ""
msgid "<nick> [<nick>...]"
msgstr "<rumuz> [<rumuz>...]"
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr ""
+#, fuzzy
+msgid "<nick> [<nick>...] || * -yes"
+msgstr "<rumuz> [<rumuz>...]"
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+
msgid "shutdown the server"
msgstr ""
@@ -3884,6 +3911,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr ""
@@ -4169,6 +4201,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr ""
@@ -4514,6 +4551,11 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+
msgid "send a notice to channel ops"
msgstr ""
@@ -8000,6 +8042,3 @@ msgstr "Tür"
msgid "Constants"
msgstr ""
-
-#~ msgid "%s default keys (context: \"%s\"):\n"
-#~ msgstr "%s default keys (context: \"%s\"):\n"
diff --git a/po/weechat.pot b/po/weechat.pot
index c5efdddb9..df073ba7f 100644
--- a/po/weechat.pot
+++ b/po/weechat.pot
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.4.1-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2013-07-15 18:33+0200\n"
+"POT-Creation-Date: 2013-07-18 19:50+0200\n"
"PO-Revision-Date: 2013-02-14 18:20+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -3447,6 +3447,12 @@ msgid "%s%s%s %s(%s%s%s)%s is back on server"
msgstr ""
#, c-format
+msgid ""
+"%s%s: \"-yes\" argument is required for nick \"*\" (security reason), see /"
+"help %s"
+msgstr ""
+
+#, c-format
msgid "%s: future away: %s"
msgstr ""
@@ -3866,12 +3872,32 @@ msgstr ""
msgid "<nick> [<nick>...]"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel half-operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove channel operator status from nick(s)"
msgstr ""
+msgid "<nick> [<nick>...] || * -yes"
+msgstr ""
+
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove channel operator status from everybody on channel except "
+"yourself"
+msgstr ""
+
msgid "remove voice from nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: remove voice from everybody on channel"
+msgstr ""
+
msgid "shutdown the server"
msgstr ""
@@ -3894,6 +3920,11 @@ msgstr ""
msgid "give channel half-operator status to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel half-operator status to everybody on channel"
+msgstr ""
+
msgid "ignore nicks/hosts from servers or channels"
msgstr ""
@@ -4175,6 +4206,11 @@ msgstr ""
msgid "give channel operator status to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give channel operator status to everybody on channel"
+msgstr ""
+
msgid "get operator privileges"
msgstr ""
@@ -4479,6 +4515,11 @@ msgstr ""
msgid "give voice to nick(s)"
msgstr ""
+msgid ""
+"nick: nick or mask (can start or end with \"*\" as wildcard)\n"
+" *: give voice to everybody on channel"
+msgstr ""
+
msgid "send a notice to channel ops"
msgstr ""
diff --git a/src/plugins/irc/irc-command.c b/src/plugins/irc/irc-command.c
index b9e7dd2e7..15d23b8bb 100644
--- a/src/plugins/irc/irc-command.c
+++ b/src/plugins/irc/irc-command.c
@@ -51,34 +51,190 @@
/*
* Sends mode change for many nicks on a channel.
+ *
+ * Argument "set" is "+" or "-", mode can be "o", "h", "v", or any other mode
+ * supported by server.
+ *
+ * Many messages can be sent if the number of nicks is greater than the server
+ * limit (number of modes allowed in a single message). In this case, the first
+ * message is sent with high priority, and subsequent messages are sent with low
+ * priority.
*/
void
-irc_command_mode_nicks (struct t_irc_server *server, const char *channel,
- const char *set, const char *mode, int argc, char **argv)
+irc_command_mode_nicks (struct t_irc_server *server,
+ struct t_irc_channel *channel,
+ const char *command,
+ const char *set, const char *mode,
+ int argc, char **argv)
{
- int i, length;
- char *command;
+ int i, arg_yes, max_modes, modes_added, msg_priority, prefix_found;
+ long number;
+ char *error, prefix, modes[128+1], nicks[1024];
+ const char *ptr_modes;
+ struct t_irc_nick *ptr_nick;
+ struct t_hashtable *nicks_sent;
- length = 0;
- for (i = 1; i < argc; i++)
- length += strlen (argv[i]) + 1;
- length += strlen (channel) + (argc * strlen (mode)) + 32;
- command = malloc (length);
- if (command)
+ if (argc < 2)
+ return;
+
+ arg_yes = 0;
+ if ((argc > 2) && (strcmp (argv[argc - 1], "-yes") == 0))
+ {
+ argc--;
+ arg_yes = 1;
+ }
+
+ if (!arg_yes)
{
- snprintf (command, length, "MODE %s %s", channel, set);
for (i = 1; i < argc; i++)
- strcat (command, mode);
+ {
+ if (strcmp (argv[i], "*") == 0)
+ {
+ weechat_printf (NULL,
+ _("%s%s: \"-yes\" argument is required for "
+ "nick \"*\" (security reason), see /help %s"),
+ weechat_prefix ("error"), IRC_PLUGIN_NAME,
+ command);
+ return;
+ }
+ }
+ }
+
+ /* default is 4 modes max (if server did not send the info) */
+ max_modes = 4;
+
+ /*
+ * look for the max modes supported in one command by the server
+ * (in isupport value, with the format: "MODES=4")
+ */
+ ptr_modes = irc_server_get_isupport_value (server, "MODES");
+ if (ptr_modes)
+ {
+ error = NULL;
+ number = strtol (ptr_modes, &error, 10);
+ if (error && !error[0])
+ {
+ max_modes = number;
+ if (max_modes < 1)
+ max_modes = 1;
+ if (max_modes > 128)
+ max_modes = 128;
+ max_modes = (number >= 1) ? number : 1;
+ }
+ }
+
+ /* get prefix for the mode (example: prefix == '@' for mode 'o') */
+ prefix = irc_server_get_prefix_char_for_mode (server, mode[0]);
+
+ /*
+ * first message has high priority and subsequent messages have low priority
+ * (so for example in case of "/op *" sent as multiple messages, the user
+ * can still send some messages which will have higher priority than the
+ * "MODE" messages we are sending now)
+ */
+ msg_priority = IRC_SERVER_SEND_OUTQ_PRIO_HIGH;
+
+ modes_added = 0;
+ modes[0] = '\0';
+ nicks[0] = '\0';
+
+ nicks_sent = weechat_hashtable_new (128,
+ WEECHAT_HASHTABLE_STRING,
+ WEECHAT_HASHTABLE_STRING,
+ NULL,
+ NULL);
+ if (!nicks_sent)
+ return;
+
+ for (ptr_nick = channel->nicks; ptr_nick; ptr_nick = ptr_nick->next_nick)
+ {
+ /* if nick was already sent, ignore it */
+ if (weechat_hashtable_has_key (nicks_sent, ptr_nick->name))
+ continue;
+
for (i = 1; i < argc; i++)
{
- strcat (command, " ");
- strcat (command, argv[i]);
+ if (weechat_string_match (ptr_nick->name, argv[i], 0))
+ {
+ /*
+ * self nick is excluded if both conditions are true:
+ * - set+mode is "-o" or "-h" (commands /deop, /dehalfop)
+ * - one wildcard is used in argument
+ * (for example: "/deop *" or "/deop fl*")
+ */
+ if (set[0] == '-'
+ && (mode[0] == 'o' || mode[0] == 'h')
+ && argv[i][0]
+ && ((argv[i][0] == '*')
+ || (argv[i][strlen (argv[i]) - 1] == '*'))
+ && (strcmp (server->nick, ptr_nick->name) == 0))
+ {
+ continue;
+ }
+
+ /*
+ * check if the nick mode is already OK, according to
+ * set/mode asked: if already OK, then the nick is ignored
+ */
+ if (prefix != ' ')
+ {
+ prefix_found = (strchr (ptr_nick->prefixes, prefix) != NULL);
+ if (((set[0] == '+') && prefix_found)
+ || ((set[0] == '-') && !prefix_found))
+ {
+ /*
+ * mode +X and nick has already +X or mode -X and nick
+ * does not have +X
+ */
+ continue;
+ }
+ }
+
+ /*
+ * if we reached the max number of modes allowed, send the MODE
+ * command now and flush the modes/nicks strings
+ */
+ if (modes_added == max_modes)
+ {
+ irc_server_sendf (server, msg_priority, NULL,
+ "MODE %s %s%s %s",
+ channel->name, set, modes, nicks);
+ modes[0] = '\0';
+ nicks[0] = '\0';
+ modes_added = 0;
+ /* subsequent messages will have low priority */
+ msg_priority = IRC_SERVER_SEND_OUTQ_PRIO_LOW;
+ }
+
+ /* add one mode letter (after +/-) and add the nick in nicks */
+ if (strlen (nicks) + 1 + strlen (ptr_nick->name) + 1 < sizeof (nicks))
+ {
+ strcat (modes, mode);
+ if (nicks[0])
+ strcat (nicks, " ");
+ strcat (nicks, ptr_nick->name);
+ modes_added++;
+ weechat_hashtable_set (nicks_sent, ptr_nick->name, NULL);
+ /*
+ * nick just added, ignore other arguments that would add
+ * the same nick
+ */
+ break;
+ }
+ }
}
- irc_server_sendf (server, IRC_SERVER_SEND_OUTQ_PRIO_HIGH, NULL,
- "%s", command);
- free (command);
}
+
+ /* send a final MODE command if some nicks are remaining */
+ if (modes[0] && nicks[0])
+ {
+ irc_server_sendf (server, msg_priority, NULL,
+ "MODE %s %s%s %s",
+ channel->name, set, modes, nicks);
+ }
+
+ weechat_hashtable_free (nicks_sent);
}
/*
@@ -1314,8 +1470,8 @@ irc_command_dehalfop (void *data, struct t_gui_buffer *buffer, int argc,
}
else
{
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "-", "h", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "dehalfop", "-", "h", argc, argv);
}
}
else
@@ -1355,8 +1511,8 @@ irc_command_deop (void *data, struct t_gui_buffer *buffer, int argc,
}
else
{
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "-", "o", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "deop", "-", "o", argc, argv);
}
}
else
@@ -1396,8 +1552,8 @@ irc_command_devoice (void *data, struct t_gui_buffer *buffer, int argc,
}
else
{
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "-", "v", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "devoice", "-", "v", argc, argv);
}
}
else
@@ -1618,8 +1774,8 @@ irc_command_halfop (void *data, struct t_gui_buffer *buffer, int argc,
}
else
{
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "+", "h", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "halfop", "+", "h", argc, argv);
}
}
else
@@ -3328,8 +3484,8 @@ irc_command_op (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
}
else
{
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "+", "o", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "op", "+", "o", argc, argv);
}
}
else
@@ -5281,8 +5437,8 @@ irc_command_voice (void *data, struct t_gui_buffer *buffer, int argc,
ptr_server->nick);
}
else
- irc_command_mode_nicks (ptr_server, ptr_channel->name,
- "+", "v", argc, argv);
+ irc_command_mode_nicks (ptr_server, ptr_channel,
+ "voice", "+", "v", argc, argv);
}
else
{
@@ -5689,18 +5845,26 @@ irc_command_init ()
N_("remove channel half-operator status from "
"nick(s)"),
N_("<nick> [<nick>...]"),
- "",
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: remove channel half-operator status from "
+ "everybody on channel except yourself"),
"%(nicks)", &irc_command_dehalfop, NULL);
weechat_hook_command ("deop",
N_("remove channel operator status from "
"nick(s)"),
- N_("<nick> [<nick>...]"),
- "",
+ N_("<nick> [<nick>...] || * -yes"),
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: remove channel operator status from "
+ "everybody on channel except yourself"),
"%(nicks)|%*", &irc_command_deop, NULL);
weechat_hook_command ("devoice",
N_("remove voice from nick(s)"),
- N_("<nick> [<nick>...]"),
- "",
+ N_("<nick> [<nick>...] || * -yes"),
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: remove voice from everybody on channel"),
"%(nicks)|%*", &irc_command_devoice, NULL);
weechat_hook_command ("die",
N_("shutdown the server"),
@@ -5720,8 +5884,11 @@ irc_command_init ()
weechat_hook_command ("halfop",
N_("give channel half-operator status to "
"nick(s)"),
- N_("<nick> [<nick>...]"),
- "",
+ N_("<nick> [<nick>...] || * -yes"),
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: give channel half-operator status to "
+ "everybody on channel"),
"%(nicks)", &irc_command_halfop, NULL);
weechat_hook_command ("ignore",
N_("ignore nicks/hosts from servers or channels"),
@@ -5962,8 +6129,11 @@ irc_command_init ()
&irc_command_notify, NULL);
weechat_hook_command ("op",
N_("give channel operator status to nick(s)"),
- N_("<nick> [<nick>...]"),
- "",
+ N_("<nick> [<nick>...] || * -yes"),
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: give channel operator status to everybody "
+ "on channel"),
"%(nicks)|%*", &irc_command_op, NULL);
weechat_hook_command ("oper",
N_("get operator privileges"),
@@ -6203,7 +6373,9 @@ irc_command_init ()
weechat_hook_command ("voice",
N_("give voice to nick(s)"),
N_("<nick> [<nick>...]"),
- "",
+ N_("nick: nick or mask (can start or end with \"*\" "
+ "as wildcard)\n"
+ " *: give voice to everybody on channel"),
"%(nicks)|%*", &irc_command_voice, NULL);
weechat_hook_command ("wallchops",
N_("send a notice to channel ops"),