summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--po/cs.po343
-rw-r--r--po/es.po343
-rw-r--r--po/fr.po347
-rw-r--r--po/weechat.pot343
-rw-r--r--src/common/command.c480
-rw-r--r--src/common/command.h48
-rw-r--r--src/common/fifo.c24
-rw-r--r--src/gui/gui-action.c3
-rw-r--r--src/gui/gui-common.c46
-rw-r--r--src/gui/gui-keyboard.c4
-rw-r--r--src/gui/gui.h2
-rw-r--r--src/irc/irc-display.c48
-rw-r--r--src/irc/irc-recv.c8
-rw-r--r--src/irc/irc-send.c505
-rw-r--r--src/irc/irc.h122
-rw-r--r--src/plugins/plugins-interface.c27
-rw-r--r--src/plugins/plugins.c9
-rw-r--r--src/plugins/plugins.h4
-rw-r--r--weechat/ChangeLog4
-rw-r--r--weechat/po/cs.po343
-rw-r--r--weechat/po/es.po343
-rw-r--r--weechat/po/fr.po347
-rw-r--r--weechat/po/weechat.pot343
-rw-r--r--weechat/src/common/command.c480
-rw-r--r--weechat/src/common/command.h48
-rw-r--r--weechat/src/common/fifo.c24
-rw-r--r--weechat/src/gui/gui-action.c3
-rw-r--r--weechat/src/gui/gui-common.c46
-rw-r--r--weechat/src/gui/gui-keyboard.c4
-rw-r--r--weechat/src/gui/gui.h2
-rw-r--r--weechat/src/irc/irc-display.c48
-rw-r--r--weechat/src/irc/irc-recv.c8
-rw-r--r--weechat/src/irc/irc-send.c505
-rw-r--r--weechat/src/irc/irc.h122
-rw-r--r--weechat/src/plugins/plugins-interface.c27
-rw-r--r--weechat/src/plugins/plugins.c9
-rw-r--r--weechat/src/plugins/plugins.h4
38 files changed, 3144 insertions, 2276 deletions
diff --git a/ChangeLog b/ChangeLog
index 90a31b736..f2e19adcc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,12 @@
WeeChat - Wee Enhanced Environment for Chat
===========================================
-ChangeLog - 2006-01-21
+ChangeLog - 2006-01-22
Version 0.1.8 (under dev!):
+ * fixed bug with buffer detection in plugins/scripts commands
+ * fixed bug with /history command
* added option "irc_show_away_once", to show away message only once in pv
Version 0.1.7 (2006-01-14):
diff --git a/po/cs.po b/po/cs.po
index c9507d6a9..a43b2c05d 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: 2006-01-14 14:01+0100\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -1349,38 +1349,38 @@ msgstr "nemůžu změnit mód přo ostatní uživatele"
msgid "whois (secure connection)"
msgstr "whois (zabezpečená část)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServer: %s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "připojen"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "nepřipojen"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "na"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "off"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (dočasný server, nebude uložen)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "sekund"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(skrytý)"
@@ -1393,57 +1393,57 @@ msgstr "neznámý"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: používám lokální jméno hosta \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s nemohu najít přezdívku pro poslání zprávy\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr "%s \"%s\" příkaz může být spuštěn pouze v bufferu kanálu\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s špatný počet parametrů pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s špatné parametry pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr "%s \"%s\" příkaz nemůže být spuštěn v bufferu serveru\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s \"%s\" příkaz může být spuštěn pouze v bufferu kanálu nebo soukromého "
"rozhovoru\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s nemohu vytvořít nové soukromý buffer\"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, kompilováno na %s %s\n"
@@ -1759,11 +1759,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s byl %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s nečinný: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "dní"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "den"
@@ -2125,7 +2125,7 @@ msgstr "%s nedostatek paměti pro vytvoření ignorování\n"
msgid "Removing ignore:"
msgstr "Odebírám ignorování:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2134,14 +2134,14 @@ msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro IRC příkaz \"%s\" (nedostatek "
"paměti)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro \"%s\" příkaz (již existuje)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2149,25 +2149,25 @@ msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro \"%s\" příkaz (nedostatek "
"paměti)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s nemůžu načist plugin \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s symbol \"plugin_name\" nebyl v pluginu \"%s\" nalezen, načtení selhalo\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
msgstr ""
"%s nemohu načíst plugin \"%s\": plugin se stejným jménem již existuje\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2175,7 +2175,7 @@ msgstr ""
"%s symbol \"plugin_description\" nebyl v pluginu \"%s\" nalezen, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2183,7 +2183,7 @@ msgstr ""
"%s symbol \"plugin_version\" nebyl v pluginu \"%s\" nalezen, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2192,32 +2192,32 @@ msgstr ""
"%s funkce \"weechat_plugin_init\" nebyla v pluginu \"%s\" nalezena, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Inicializuji plugin \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s nemohu načíst plugin \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr "%s nemohu načíst plugin \"%s\" (nedostatek paměti)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Plugin \"%s\" (%s) načten.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Plugin \"%s\" odebrán.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s plugin \"%s\" nenalezen\n"
@@ -2253,6 +2253,16 @@ msgstr ""
"tento soubor při aktualizaci nastavení.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, fuzzy, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr "%s kanál \"%s\" nebyl nalezen příkazem \"%s\"\n"
+
+#: src/plugins/plugins-interface.c:309
+#, fuzzy, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s server \"%s\" nenalezen pro příkaz \"%s\"\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2500,7 +2510,7 @@ msgstr "obnov obrazovku"
msgid "grab a key"
msgstr "zachytit klávesu"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s nemohu napojit kalávesu \"%s\"\n"
@@ -2977,300 +2987,309 @@ msgstr "%s příkaz \"%s\" potřebuje připojení na server!\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s neznámý příkaz \"%s\" (zadejte /help pro nápovědu)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Tohe není okno kanálu!\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s chybí argumenty pro příkaz \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s alias nemůže žačínat \"/\"!\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" vytvořen\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr "Selhalo vytvoření aliasu \"%s\" => \"%s\" (nedostatek paměti)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Seznam pro aliasy:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Žádné aliasy nejsou definovány.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServer: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%snepřipojen\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%sKanál: %s%s %s(server: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sSoukromý s: %s%s %s(server: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sneznámý\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Otevřené buffery:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s nekorektní číslo bufferu\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s nemohu zavřít jediný buffer\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr "%s nemohu zavřít buffer serveru dokud jsou otevřeny kanály\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Level upozornění: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s nekorektní level upozornění (musí být mezi %d a %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr "%s nekorektní buffer pro upozornění (musí být kanál nebo soukromý)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nový level upozornění %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: nikdy)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: zvýraznění)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: zvýraznění + zprávy)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: zvýrazění + zprávy + připojení/odpojení (vše))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Znaková sada pro server %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Znaková sada pro kanál %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Znaková sada pro soukromé %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (zděděno: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s neznámá volba pro příkaz \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s již vytvořený server \"%s\"!\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s zrovna připojuji k serveru \"%s\"!\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s server nenalezen\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s nepřipojen k serveru \"%s\"!\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "Automatické znovupřipojené je zrušeno\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "%s vnitřní příkazy:\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "IRC příkazy:\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Příkazy pluginu:\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "Není dostupná žádná nápověda, \"%s\" je neznámý příkaz\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%sna %s%s%s/%s%s%s:%s ignoruji %s%s%s od %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Seznam ignorování:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Žádné ignorování není definováno.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nové ignorování:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nová klávesová zkratka: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Klávesové zkratky:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Klávesa \"%s\" odpojena\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s nemohu odpojit klávesu \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Vnitřní klávesové funkce:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Výchozí klávesové zkratky obnoveny\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s \"-yes\" argument je požadován pro reset kaláves (bezpečnostní opatření)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Načtené pluginy:\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " obsluhovače zpráv:\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (není obsluhovač zprávy)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " obsluhovače příkazu:\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (není obsluhovač příkazu)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (není plugin)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
msgstr ""
"Příkaz \"plugin\" není dostupný, WeeChat byl přeložen bez podpory pluginů.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr ""
+
+#: src/common/command.c:2343
+#, fuzzy, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s nemohu uložit sezení do souboru\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "žádný server.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Server '%s' nenalezen.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s chybí jméno serveru pro příkaz \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr "%s příliž mnoho argumentů pro příkaz \"%s\", ignoruji argumety\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s server \"%s\" nenalezen pro příkaz \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3279,173 +3298,173 @@ msgstr ""
"%s nemůžete odebrat server \"%s\", protože jste k němu připojent. Skuste "
"nejprve /dissconnect %s.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "Server %s%s%s byl odebrán\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s chybí parametry pro příkaz \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s server \"%s\" již existuje, nemohu jej vytvořít!\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s chybí heslo pro parametr \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s chybí přezdívka/přezdívky pro parametr \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s chybí příkaz pro parametr \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Server %s%s%s vytvořen\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s nemohu vytvořit server\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(neznámý)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(heslo schováno) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s server \"%s\" nenalezen\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s volba nastavení \"%s\" nenalezena\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s nekorektní hodnota pro volbu \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr "%s volba \"%s\" nemůže být změněna dokud WeeChat běží\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Nebyla nalezena žádná volba nastavení s \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Nebyla nalezena žádná volba nastavení\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDetail:\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . typ boolean (hodnota: 'on' nebo 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . výchozí hodnota: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . typ celočíselný (hodnoty: mezi %d a %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . výchozí hodnota: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . typ řetězec (hodnoty: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "prázdný"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . typ barva (Curses nebo Gtk barva, viz WeeChat dokumentace)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . typ řetězec (jakýkoliv řetězec)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . popis: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "volba/volby nastavení nalezeny s \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "volba/volby nastavení nalezeny\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias nebo příkaz \"%s\" nenalezen\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" odebrán\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "ignorování bylo odebráno.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "ignorování bylo odebrán\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s žádné ignorování nenaleyeno\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr "%s nemůžu aktualizovat: existují nevyřešená spojení na server\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3454,35 +3473,35 @@ msgstr ""
"%s nemohu aktualiyovat: je aktuvní jedno nebo více připojení na SSL server "
"(mělo by být opraveno v budoucnosti)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Aktualizuji WeeChat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s nemohu uložit sezení do souboru\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s exec selhal (program: \"%s\"), ukončuji WeeChat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Čas běhu WeeChat: %d %s %02d:%02d:%02d, spuštěn %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr "Čas běhu WeeChat: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, spuštěn %s%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Otevřené okna:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3505,27 +3524,27 @@ msgstr "%s nemohu otevřít FIFO rouru (%s) pro čtení\n"
msgid "FIFO pipe is open\n"
msgstr "FIFO roura je otevřena\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s nekorektní text přijat na FIFO rouře\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s server \"%s\" nenalezen (data FIFO roury)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s kanál \"%s\" nenalezen (data FIFO roury)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s chyba při čtení FIFO roury, zavírám ji\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "FIFO roura zavřena\n"
diff --git a/po/es.po b/po/es.po
index e6b55bbc4..563b87370 100644
--- a/po/es.po
+++ b/po/es.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: 2006-01-14 14:01+0100\n"
"Last-Translator: Roberto Gonzlez Cardenete <robert.glez@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -1361,38 +1361,38 @@ msgstr "no es posible cambiar el modo para el resto de usuarios"
msgid "whois (secure connection)"
msgstr "quin es (conexin segura)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServidor:%s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "conectado"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "no conectado"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "activo"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "inactivo"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (servidor temporal, no ser guardado)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "segundos"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(oculto)"
@@ -1405,57 +1405,57 @@ msgstr "desconocido"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: utilizacin del nombre de mquina local \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s no ha sido posible encontrar el usuario al que enviar el mensaje\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
"%s el comando \"%s\" slo puede ser ejecutado en una ventana de canal\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s nmero de argumentos incorrecto para el comando \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s argumentos incorrectos para el comando \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr "%s el comando \"%s\" no puede ejecutarse en una ventana de servidor\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s el comando \"%s\" slo puede ser ejecutado en una ventana de canal\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s no es posible crear una nueva ventana privada \"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, compilado en %s %s\n"
@@ -1771,11 +1771,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s estaba %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s inactividad: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "das"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "da"
@@ -2143,7 +2143,7 @@ msgstr "%s no hay suficiente memoria para crear el ignore\n"
msgid "Removing ignore:"
msgstr "Eliminando el ignore:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2152,7 +2152,7 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando IRC \"%s"
"\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
@@ -2160,7 +2160,7 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando \"%s"
"\" (ya existe)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2168,19 +2168,19 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando \"%s"
"\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s no ha sido posible cargar el plugin \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s smbolo \"plugin_name\" no encontrado en el plugin \"%s\", fall al "
"cargar\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
@@ -2188,7 +2188,7 @@ msgstr ""
"%s no ha sido posible cargar el plugin \"%s\": un plugin con el mismo nombre "
"ya existe\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2196,7 +2196,7 @@ msgstr ""
"%s smbolo \"plugin_description\" no encontrado en el plugin \"%s\", fall "
"al cargar\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2204,7 +2204,7 @@ msgstr ""
"%s smbolo \"plugin_version\" no encontrado en el plugin \"%s\", fall al "
"cargar\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2213,33 +2213,33 @@ msgstr ""
"%s funcin \"weechat_plugin_init\" no encontrada en el plugin \"%s\", fall "
"al cargar\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Inicializando plugin \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s no ha sido posible inicializar el plugin \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr ""
"%s no ha sido posible cargar el plugin \"%s\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Plugin \"%s\" (%s) cargado.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Plugin \"%s\" descargado.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s plugin \"%s\" no encontrado\n"
@@ -2275,6 +2275,16 @@ msgstr ""
"archivo cuando se actualizan las opciones.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, fuzzy, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr "%s canal \"%s\" no encontrado para el comando \"%s\"\n"
+
+#: src/plugins/plugins-interface.c:309
+#, fuzzy, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s servidor \"%s\" no encontrado para el comando \"%s\"\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2522,7 +2532,7 @@ msgstr "recargar la pantalla"
msgid "grab a key"
msgstr "capturar una clave"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s No ha sido posible atar la clave \"%s\"\n"
@@ -3008,273 +3018,273 @@ msgstr "%s el comando \"%s\" requiere una conexin a servidor!\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s comando \"%s\" desconocido (escriba /help para la ayuda)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Esta ventana no es un canal!\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s faltan argumentos para el comando \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s el alias no puede empezar con \"/\"\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" creado\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr ""
"No ha sido posible crear el alias \"%s\" => \"%s\" (no hay suficiente "
"memoria)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Lista de alias:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Ningn alias definido.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServidor: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%sno conectado\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%s Canal: %s%s %s(servidor: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sPrivado con: %s%s %s(servidor: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sdesconocido\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Bfers abiertos:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s nmero de bfer incorrecto\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s no es posible cerrar el nico bfer\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
"%s no se puede cerrar el bfer de servidor mientras haya canales abiertos\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Niveles de notificacin: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s nivel de notificacin incorrecto (debe estar entre %d y %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr "%s bfer incorrecto para notificar (debe ser canal o privado)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nuevo nivel de notificacin para %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: nunca)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: resaltados)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: resaltados + mensajes)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: resaltados + mensajes + join/part (todos))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Juegos de caracteres para el servidor %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Juegos de caracteres para el canal %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Juegos de caracteres para el privado %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (heredado: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s opcin desconocida para el comando \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s ya conectado al servidor \"%s\"!\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s actualmente conectando al servidor \"%s\"!\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s servidor no encontrado\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s no conectado al servidor \"%s\"!\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "La reconexin automtica est anulada\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "Comandos internos %s :\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "Comandos IRC :\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Comandos de plugin:\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "No hay ayuda disponible, el comando \"%s\" es desconocido\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%sen %s%s%s/%s%s%s:%s ignorando %s%s%s de %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Lista de ignores:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Sin ignores definidos.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nuevo ignore:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nueva anclaje de clave: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Anclajes de clave:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Clave \"%s\" desatada\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s No ha sido posible desatar la clave \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Funciones de clave internas:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Anclajes de clave por defecto restaurados\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s \"-yes\" se requiere argumento para resetear las claves (por razones de "
"seguridad)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Plugins cargados:\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " manejadores de mensaje:\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (sin manejador de mensaje)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " manejadores de comando:\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (sin manejador de comando)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (sin plugins)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
@@ -3282,32 +3292,41 @@ msgstr ""
"El comando \"plugin\" no est disponible, Weechat fue compilado sin soporte "
"para plugins.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr ""
+
+#: src/common/command.c:2343
+#, fuzzy, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s no ha sido posible guardar la sesin en el archivo\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "Ningn servidor.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Servidor '%s' no encontrado.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s falta el nombre de servidor para el comando \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr ""
"%s demasiados argumentos para el comando \"%s\", ignorando parmetros\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s servidor \"%s\" no encontrado para el comando \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3316,175 +3335,175 @@ msgstr ""
"%s usted no puede eliminar el servidor \"%s\" ya que est usted conectado a "
"l. Pruebe /disconnect %s antes.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "El servidor %s%s%s ha sido borrado\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s faltan parmetros para el comando \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s el servidor \"%s\" ya existe, no se puede crear!\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s falta contrasea para el comando \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s falta(n) usuario(s) para el parmetro \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s falta comando para el parmetro \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Servidor %s%s%s creado\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s no es posible crear el servidor\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(desconocido)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(contrasea oculta) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s servidor \"%s\" no encontrado\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s opcin de configuracin \"%s\" no encontrada\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s valor incorrecto para la opcin \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr ""
"%s la opcin \"%s\" no puede ser modificada mientras WeeChat est en "
"ejecucin\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Ninguna opcin de configuracin encontrada con \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Ninguna opcin de configuracin encontrada\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDetalle:\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . tipo booleano (valores: 'on' u 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . valor por defecto: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . tipo entero (valores: entre %d y %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . valor por defecto: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . tipo cadena (valores: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "vaco"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . tipo color (color Curses o Gtk, ver la documentacin de WeeChat)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . tipo cadena (cualquier cadena)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . descripcin: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "opcin/opciones de configuracin encontrada(s) con \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "opcin/opciones de configuracin encontrada(s)\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias o comando \"%s\" no encontrado\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" eliminado\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "los ignores fueron eliminados.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "el ignore fue eliminado.\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s no se encontraron ignores\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr "%s no se puede actualizar: conexin pendiente a un servidor al menos\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3493,37 +3512,37 @@ msgstr ""
"%s no se puede actualizar: conexin activa a un servidor SSL por lo menos "
"(debera ser corregido en una futura versin)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Actualizando Weechat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s no ha sido posible guardar la sesin en el archivo\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s exec ha fallado (programa: \"%s\"), saliendo de Weechat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Tiempo de uso de WeeChat: %d %s %02d:%02d:%02d, empez en %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr ""
"Tiempo de uso de WeeChat: %s%d %s%s %s%02d%s: %s%02d%s:%s%02d%s, empez en %s"
"%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Ventanas abiertas:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3547,27 +3566,27 @@ msgstr "%s no ha sido posible abrir la tubera FIFO (%s) para leer\n"
msgid "FIFO pipe is open\n"
msgstr "La tubera FIFO est abierta\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s texto invlido recibido en la tubera FIFO\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s servidor \"%s\" no encontrado (datos de la tubera FIFO)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s canal \"%s\" no encontrado (datos de la tubera FIFO)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s error al leer la tubera FIFO, cerrndola\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "La tubera FIFO est cerrada\n"
diff --git a/po/fr.po b/po/fr.po
index c72c95d1b..192d27eb7 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
-"PO-Revision-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
+"PO-Revision-Date: 2006-01-22 22:14+0100\n"
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -1356,38 +1356,38 @@ msgstr "impossible de changer le mode pour les autres utilisateurs"
msgid "whois (secure connection)"
msgstr "qui est (connexion scurise)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServeur: %s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "connect"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "non connect"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "activ"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "dsactiv"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (serveur temporaire, ne sera pas sauv)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "secondes"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(cach)"
@@ -1400,59 +1400,59 @@ msgstr "inconnu"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: utilisation du nom de machine local \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s impossible de trouver le pseudo pour envoyer le message\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
"%s la commande \"%s\" peut seulement tre excute dans un tampon canal\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s nombre de paramtres erron pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s paramtres invalides pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr ""
"%s la commande \"%s\" ne peut pas tre excute dans un tampon serveur\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s la commande \"%s\" peut seulement tre excute dans une tampon canal ou "
"priv\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s pseudo \"%s\" non trouv pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s impossible de crer le tampon priv \"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, compil le %s %s\n"
@@ -1768,11 +1768,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s tait %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s inactivit: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "jours"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "jour"
@@ -2140,7 +2140,7 @@ msgstr "%s pas assez de mmoire pour crer un ignore\n"
msgid "Removing ignore:"
msgstr "Suppression du ignore:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2149,7 +2149,7 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande IRC \"%s"
"\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
@@ -2157,7 +2157,7 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande \"%s"
"\" (existe dj)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2165,19 +2165,19 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande \"%s"
"\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s impossible de charger l'extension \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s le symbole \"plugin_name\" est introuvable dans l'extension \"%s\", chec "
"de chargement\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
@@ -2185,7 +2185,7 @@ msgstr ""
"%s impossible de charger l'extension \"%s\": une extension avec le mme nom "
"existe dj\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2193,7 +2193,7 @@ msgstr ""
"%s le symbole \"plugin_description\" est introuvable dans l'extension \"%s"
"\", chec de chargement\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2201,7 +2201,7 @@ msgstr ""
"%s le symbole \"plugin_version\" est introuvable dans l'extension \"%s\", "
"chec de chargement\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2210,32 +2210,32 @@ msgstr ""
"%s la fonction \"weechat_plugin_init\" est introuvable dans l'extension \"%s"
"\", chec de chargement\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Initialisation de l'extension \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s impossible d'initialiser l'extension \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr "%s impossible de charger l'extension \"%s\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Extension \"%s\" (%s) charge.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Extension \"%s\" dcharge.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s extension \"%s\" non trouve\n"
@@ -2271,6 +2271,18 @@ msgstr ""
"des options sont modifies.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr ""
+"%s serveur/canal (%s/%s) non trouv pour l'excution de commande de "
+"l'extension\n"
+
+#: src/plugins/plugins-interface.c:309
+#, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s serveur non trouv pour l'excution de commande de l'extension\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2518,7 +2530,7 @@ msgstr "rafrachir l'cran"
msgid "grab a key"
msgstr "capturer une touche"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s impossible de crer la touche \"%s\"\n"
@@ -3007,273 +3019,273 @@ msgstr "%s la commande \"%s\" ncessite une connexion au serveur !\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s commande \"%s\" inconnue (tapez /help pour l'aide)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Cette fentre n'est pas un canal !\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s paramtres manquants pour la commande \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s l'alias ne peut pas commencer par \"/\"\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" cr\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr "Impossible de crer l'alias \"%s\" => \"%s\" (pas assez de mmoire)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Liste des alias:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Aucun alias dfini.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServeur: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%snon connect\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%sCanal: %s%s %s(serveur: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sPriv avec: %s%s %s(serveur: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sinconnu\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Tampons ouverts:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s numro de tampon incorrect\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s impossible de fermer le tampon unique\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
"%s impossible de fermer le tampon du serveur tant que des canaux sont "
"ouverts\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Niveaux de notification: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s niveau de notification incorrect (doit tre entre %d et %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr ""
"%s tampon incorrect pour la notification (doit tre un canal ou un priv)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nouveau niveau de notification pour %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: jamais)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: highlights)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: highlights + messages)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: highlights + messages + join/part (tous))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Jeux de caractres pour le serveur %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Jeux de caractres pour le canal %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Jeux de caractres pour le priv %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (hrit: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s option inconnue pour la commande \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s dj connect au serveur \"%s\" !\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s une connexion vers le serveur \"%s\" est en cours !\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s serveur non trouv\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s non connect au serveur \"%s\" !\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "La reconnexion automatique est annule\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "Commandes internes %s :\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "Commandes IRC :\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Commandes d'extension :\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "Pas d'aide disponible, la commande \"%s\" est inconnue\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%ssur %s%s%s/%s%s%s:%s ignore %s%s%s de %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Liste des ignore:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Aucun ignore dfini.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nouveau ignore:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nouvelle touche: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Associations de touches:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Touche \"%s\" supprime\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s impossible de supprimer la touche \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Fonctions internes pour les touches:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Touches par dfaut restaures\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s le paramtre \"-yes\" est requis pour la rinitialisation des touches "
"(raison de scurit)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Extensions charges :\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " fonctions de message :\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (aucunne fonction de message)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " commandes :\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (aucune commande)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (aucune extension)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
@@ -3281,31 +3293,40 @@ msgstr ""
"La commande \"plugin\" n'est pas disponible, WeeChat a t compil sans le "
"support des extensions.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr "Fichier de configuration sauv\n"
+
+#: src/common/command.c:2343
+#, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s impossible de sauver le fichier de configuration\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "Pas de serveur.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Serveur '%s' non trouv.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s il manque le nom du serveur pour la commande \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr "%s trop de paramtres pour la commande \"%s\", paramtres ignors\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s le serveur \"%s\" n'existe pas pour la commande \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3314,175 +3335,175 @@ msgstr ""
"%s vous ne pouvez pas supprimer le server \"%s\" car vous tes connect "
"dessus. Essayez /disconnect %s avant.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "Le serveur %s%s%s a t supprim\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s paramtres manquants pour la commande \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s le serveur \"%s\" existe dj, impossible de le crer !\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s mot de passe manquant pour le paramtre \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s pseudo(s) manquant(s) pour le paramtre \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s commande manquante pour le paramtre \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Serveur %s%s%s cr\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s impossible de crer le serveur\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(inconnu)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(mot de passe cach) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s serveur \"%s\" non trouv\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s option de configuration \"%s\" non trouve\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s valeur incorrecte pour l'option \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr "%s l'option \"%s\" ne peut pas tre change lorsque WeeChat tourne\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Aucune option de configuration trouve avec \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Aucune option de configuration trouve\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDtail :\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . type boolen (valeurs: 'on' ou 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . valeur par dfaut: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . type entier (valeurs: entre %d et %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . valeur par dfaut: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . type chane (valeurs: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "vide"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . type couleur (couleur Curses ou Gtk, voir la doc WeeChat)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . type chane (toute chane)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . description: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "option(s) de configuration trouve(s) avec \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "option(s) de configuration trouve(s)\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias ou commande \"%s\" non trouv\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" supprim\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "ignore ont t supprims.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "ignore a t supprim.\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s aucun ignore trouv\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr ""
"%s impossible de mettre jour: une connexion au moins un serveur est en "
"cours\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3491,35 +3512,35 @@ msgstr ""
"%s impossible de mettre jour: une connexion au moins un serveur SSL est "
"active (devrait tre corrig dans une future version)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Mise jour de WeeChat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s impossible de sauver la session dans le fichier\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s l'excution a chou (programme: \"%s\"), sortie de WeeChat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Uptime WeeChat: %d %s %02d:%02d:%02d, dmarr le %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr "Uptime WeeChat: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, dmarr le %s%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Fentres ouvertes:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3542,27 +3563,27 @@ msgstr "%s impossible d'ouvrir le tube FIFO (%s) en lecture\n"
msgid "FIFO pipe is open\n"
msgstr "Le tube FIFO est ouvert\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s texte invalide reu sur le tube FIFO\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s serveur \"%s\" non trouv (donnes du tube FIFO)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s canal \"%s\" non trouv (donnes du tube FIFO)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s erreur en lecture du tube FIFO, fermeture\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "Le tube FIFO est ferm\n"
diff --git a/po/weechat.pot b/po/weechat.pot
index 0e8eb0aa0..a2129dbc2 100644
--- a/po/weechat.pot
+++ b/po/weechat.pot
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1244,38 +1244,38 @@ msgstr ""
msgid "whois (secure connection)"
msgstr ""
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr ""
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr ""
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr ""
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr ""
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr ""
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr ""
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr ""
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr ""
@@ -1288,55 +1288,55 @@ msgstr ""
msgid "%s: using local hostname \"%s\"\n"
msgstr ""
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr ""
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr ""
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr ""
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr ""
@@ -1652,11 +1652,11 @@ msgstr ""
msgid "%s[%s%s%s]%s idle: "
msgstr ""
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr ""
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr ""
@@ -2001,86 +2001,86 @@ msgstr ""
msgid "Removing ignore:"
msgstr ""
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
"memory)\n"
msgstr ""
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
msgstr ""
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
msgstr ""
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr ""
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
msgstr ""
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
"load\n"
msgstr ""
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr ""
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr ""
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr ""
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr ""
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr ""
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr ""
@@ -2111,6 +2111,16 @@ msgid ""
"#\n"
msgstr ""
+#: src/plugins/plugins-interface.c:295
+#, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr ""
+
+#: src/plugins/plugins-interface.c:309
+#, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr ""
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2358,7 +2368,7 @@ msgstr ""
msgid "grab a key"
msgstr ""
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr ""
@@ -2745,506 +2755,515 @@ msgstr ""
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr ""
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr ""
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr ""
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr ""
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr ""
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr ""
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr ""
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr ""
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr ""
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr ""
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr ""
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr ""
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr ""
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr ""
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr ""
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr ""
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr ""
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr ""
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr ""
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr ""
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr ""
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr ""
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr ""
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr ""
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr ""
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr ""
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr ""
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr ""
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr ""
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr ""
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr ""
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr ""
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr ""
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr ""
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr ""
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr ""
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr ""
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr ""
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr ""
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr ""
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr ""
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr ""
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr ""
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr ""
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr ""
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr ""
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr ""
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr ""
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr ""
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr ""
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
msgstr ""
-#: src/common/command.c:2332
-msgid "No server.\n"
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
msgstr ""
#: src/common/command.c:2343
#, c-format
+msgid "%s failed to save configuration file\n"
+msgstr ""
+
+#: src/common/command.c:2382
+msgid "No server.\n"
+msgstr ""
+
+#: src/common/command.c:2393
+#, c-format
msgid "Server '%s' not found.\n"
msgstr ""
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr ""
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
"disconnect %s before.\n"
msgstr ""
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr ""
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr ""
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr ""
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr ""
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr ""
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr ""
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr ""
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr ""
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr ""
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr ""
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr ""
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr ""
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr ""
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr ""
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr ""
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr ""
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr ""
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr ""
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr ""
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr ""
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr ""
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr ""
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr ""
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr ""
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr ""
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr ""
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr ""
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
"fixed in a future version)\n"
msgstr ""
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr ""
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr ""
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr ""
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr ""
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr ""
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr ""
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3265,27 +3284,27 @@ msgstr ""
msgid "FIFO pipe is open\n"
msgstr ""
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr ""
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr ""
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr ""
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr ""
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr ""
diff --git a/src/common/command.c b/src/common/command.c
index 0f2cea7a8..c32de5a00 100644
--- a/src/common/command.c
+++ b/src/common/command.c
@@ -522,15 +522,15 @@ free_exploded_string (char **exploded_string)
*/
int
-exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
+exec_weechat_command (t_irc_server *server, t_irc_channel *channel, char *string)
{
int i, argc, return_code, length1, length2;
char *command, *pos, *ptr_args, *ptr_args_color, **argv, *alias_command;
t_weechat_alias *ptr_alias;
-
+
if ((!string) || (!string[0]) || (string[0] != '/'))
return 0;
-
+
command = strdup (string);
/* look for end of command */
@@ -611,10 +611,10 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
{
if (weechat_commands[i].cmd_function_args)
return_code = (int) (weechat_commands[i].cmd_function_args)
- (window, argc, argv);
+ (server, channel, argc, argv);
else
return_code = (int) (weechat_commands[i].cmd_function_1arg)
- (window, ptr_args);
+ (server, channel, ptr_args);
if (return_code < 0)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -680,10 +680,10 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
}
if (irc_commands[i].cmd_function_args)
return_code = (int) (irc_commands[i].cmd_function_args)
- (server, argc, argv);
+ (server, channel, argc, argv);
else
return_code = (int) (irc_commands[i].cmd_function_1arg)
- (server, ptr_args);
+ (server, channel, ptr_args);
if (return_code < 0)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -715,12 +715,12 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
alias_command[length1] = ' ';
strcpy (alias_command + length1 + 1, ptr_args);
}
- (void) exec_weechat_command (window, server, alias_command);
+ (void) exec_weechat_command (server, channel, alias_command);
if (alias_command)
free (alias_command);
}
else
- (void) exec_weechat_command (window, server,
+ (void) exec_weechat_command (server, channel,
ptr_alias->alias_command);
free_exploded_string (argv);
@@ -749,9 +749,9 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
*/
void
-user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
+user_command (t_irc_server *server, t_irc_channel *channel, char *command)
{
- t_gui_window *ptr_window;
+ t_gui_buffer *buffer;
t_irc_nick *ptr_nick;
int plugin_args_length;
char *command_with_colors, *command_encoded, *command_with_colors2;
@@ -760,25 +760,13 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
if ((!command) || (!command[0]) || (command[0] == '\r') || (command[0] == '\n'))
return;
- if (!buffer)
- {
- buffer = gui_current_window->buffer;
- ptr_window = gui_current_window;
- }
- else
- {
- ptr_window = gui_buffer_find_window (buffer);
- if (!ptr_window)
- ptr_window = gui_current_window;
- }
+ irc_find_context (server, channel, NULL, &buffer);
if ((command[0] == '/') && (command[1] != '/'))
{
/* WeeChat internal command (or IRC command) */
- command_encoded = channel_iconv_encode (SERVER(buffer),
- CHANNEL(buffer),
- command);
- (void) exec_weechat_command (ptr_window, server,
+ command_encoded = channel_iconv_encode (server, channel, command);
+ (void) exec_weechat_command (server, channel,
(command_encoded) ? command_encoded : command);
if (command_encoded)
free (command_encoded);
@@ -793,8 +781,7 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
command_with_colors = (cfg_irc_colors_send) ?
(char *)gui_color_encode ((unsigned char *)command) : NULL;
- command_encoded = channel_iconv_encode (SERVER(buffer),
- CHANNEL(buffer),
+ command_encoded = channel_iconv_encode (server, channel,
(command_with_colors) ? command_with_colors : command);
if (CHANNEL(buffer)->dcc_chat)
dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
@@ -831,9 +818,9 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
ptr_nick = nick_search (CHANNEL(buffer), server->nick);
if (ptr_nick)
{
- irc_display_nick (CHANNEL(buffer)->buffer, ptr_nick, NULL,
+ irc_display_nick (buffer, ptr_nick, NULL,
MSG_TYPE_NICK, 1, 1, 0);
- gui_printf (CHANNEL(buffer)->buffer,
+ gui_printf (buffer,
"%s\n",
(command_with_colors2) ?
command_with_colors2 : command);
@@ -899,13 +886,15 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
*/
int
-weechat_cmd_alias (t_gui_window *window, char *arguments)
+weechat_cmd_alias (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos;
t_weechat_alias *ptr_alias;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (arguments && arguments[0])
{
@@ -1031,15 +1020,19 @@ weechat_cmd_buffer_display_info (t_gui_buffer *buffer)
*/
int
-weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
+weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
- t_gui_buffer *ptr_buffer;
+ t_gui_window *window;
+ t_gui_buffer *buffer, *ptr_buffer;
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
long number;
char *error;
int target_buffer;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
/* list opened buffers */
@@ -1077,13 +1070,13 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
if ((error) && (error[0] == '\0'))
{
if (argv[1][0] == '+')
- gui_buffer_move_to_number (window,
- window->buffer->number + ((int) number));
+ gui_buffer_move_to_number (buffer,
+ buffer->number + ((int) number));
else if (argv[1][0] == '-')
- gui_buffer_move_to_number (window,
- window->buffer->number - ((int) number));
+ gui_buffer_move_to_number (buffer,
+ buffer->number - ((int) number));
else
- gui_buffer_move_to_number (window, (int) number);
+ gui_buffer_move_to_number (buffer, (int) number);
}
else
{
@@ -1098,10 +1091,10 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
{
/* close buffer (server or channel/private) */
- if ((!window->buffer->next_buffer)
- && (window->buffer == gui_buffers)
- && ((!window->buffer->all_servers)
- || (!SERVER(window->buffer))))
+ if ((!buffer->next_buffer)
+ && (buffer == gui_buffers)
+ && ((!buffer->all_servers)
+ || (!SERVER(buffer))))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -1109,9 +1102,9 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
- if (SERVER(window->buffer)->channels)
+ if (SERVER(buffer)->channels)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -1120,43 +1113,45 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- server_disconnect (SERVER(window->buffer), 0);
- ptr_server = SERVER(window->buffer);
- if (!window->buffer->all_servers)
+ server_disconnect (SERVER(buffer), 0);
+ ptr_server = SERVER(buffer);
+ if (!buffer->all_servers)
{
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
ptr_server->buffer = NULL;
}
else
{
ptr_server->buffer = NULL;
- window->buffer->server = NULL;
+ buffer->server = NULL;
gui_window_switch_server (window);
}
}
else
{
- if (SERVER(window->buffer))
+ if (SERVER(buffer))
{
- if (SERVER(window->buffer)->is_connected
- && CHANNEL(window->buffer)
- && CHANNEL(window->buffer)->nicks)
- irc_cmd_send_part (SERVER(window->buffer), NULL);
+ if (SERVER(buffer)->is_connected
+ && CHANNEL(buffer)
+ && CHANNEL(buffer)->nicks)
+ irc_cmd_send_part (SERVER(buffer),
+ CHANNEL(buffer),
+ NULL);
else
{
- ptr_channel = channel_search (SERVER(window->buffer),
- CHANNEL(window->buffer)->name);
+ ptr_channel = channel_search (SERVER(buffer),
+ CHANNEL(buffer)->name);
if (ptr_channel)
- channel_free (SERVER(window->buffer),
+ channel_free (SERVER(buffer),
ptr_channel);
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
}
}
else
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
}
- gui_draw_buffer_status (window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
}
else if (ascii_strcasecmp (argv[0], "notify") == 0)
{
@@ -1197,8 +1192,8 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR, NOTIFY_LEVEL_MIN, NOTIFY_LEVEL_MAX);
return -1;
}
- if ((!BUFFER_IS_CHANNEL(window->buffer))
- && (!BUFFER_IS_PRIVATE(window->buffer)))
+ if ((!BUFFER_IS_CHANNEL(buffer))
+ && (!BUFFER_IS_PRIVATE(buffer)))
{
/* invalid buffer type (only ok on channel or private) */
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -1206,14 +1201,14 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- window->buffer->notify_level = number;
- channel_set_notify_level (SERVER(window->buffer),
- CHANNEL(window->buffer),
+ buffer->notify_level = number;
+ channel_set_notify_level (SERVER(buffer),
+ CHANNEL(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New notify level for %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
number,
@@ -1258,7 +1253,7 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
number = strtol (argv[0] + 1, &error, 10);
if ((error) && (error[0] == '\0'))
{
- target_buffer = window->buffer->number - (int) number;
+ target_buffer = buffer->number - (int) number;
if (target_buffer < 1)
target_buffer = (last_gui_buffer) ?
last_gui_buffer->number + target_buffer : 1;
@@ -1273,7 +1268,7 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
number = strtol (argv[0] + 1, &error, 10);
if ((error) && (error[0] == '\0'))
{
- target_buffer = window->buffer->number + (int) number;
+ target_buffer = buffer->number + (int) number;
if (last_gui_buffer && target_buffer > last_gui_buffer->number)
target_buffer -= last_gui_buffer->number;
gui_buffer_switch_by_number (window,
@@ -1313,48 +1308,48 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
}
/*
- * weechat_cmd_charset_display: display charsets for current server or channel
+ * weechat_cmd_charset_display: display charsets for a server or channel
*/
void
-weechat_cmd_charset_display (t_gui_window *window)
+weechat_cmd_charset_display (t_gui_buffer *buffer)
{
char *server_item = "server", *ptr_item;
char *value, *string, *herited;
int length;
- if (BUFFER_IS_SERVER(window->buffer) ||
- BUFFER_IS_CHANNEL(window->buffer) ||
- BUFFER_IS_PRIVATE(window->buffer))
+ if (BUFFER_IS_SERVER(buffer) ||
+ BUFFER_IS_CHANNEL(buffer) ||
+ BUFFER_IS_PRIVATE(buffer))
{
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
gui_printf_nolog (NULL, _("Charsets for server %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
- SERVER(window->buffer)->name,
+ SERVER(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
ptr_item = server_item;
}
- else if (BUFFER_IS_CHANNEL(window->buffer))
+ else if (BUFFER_IS_CHANNEL(buffer))
{
gui_printf_nolog (NULL, _("Charsets for channel %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
- ptr_item = CHANNEL(window->buffer)->name;
+ ptr_item = CHANNEL(buffer)->name;
}
else
{
gui_printf_nolog (NULL, _("Charsets for private %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
- ptr_item = CHANNEL(window->buffer)->name;
+ ptr_item = CHANNEL(buffer)->name;
}
/* decode ISO */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_decode_iso),
+ config_option_list_get_value (&(SERVER(buffer)->charset_decode_iso),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1364,8 +1359,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_decode_iso (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_decode_iso (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "decode_iso: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1384,7 +1379,7 @@ weechat_cmd_charset_display (t_gui_window *window)
/* decode UTF */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_decode_utf),
+ config_option_list_get_value (&(SERVER(buffer)->charset_decode_utf),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1394,8 +1389,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_decode_utf (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_decode_utf (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "decode_utf: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1414,7 +1409,7 @@ weechat_cmd_charset_display (t_gui_window *window)
/* encode */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_encode),
+ config_option_list_get_value (&(SERVER(buffer)->charset_encode),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1424,8 +1419,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_encode (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_encode (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "encode: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1449,24 +1444,24 @@ weechat_cmd_charset_display (t_gui_window *window)
*/
void
-weechat_cmd_charset_set (t_gui_window *window, char **string, char *charset)
+weechat_cmd_charset_set (t_gui_buffer *buffer, char **string, char *charset)
{
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
if (charset)
config_option_list_set (string, "server", charset);
else
config_option_list_remove (string, "server");
- weechat_cmd_charset_display (window);
+ weechat_cmd_charset_display (buffer);
}
- else if (BUFFER_IS_CHANNEL(window->buffer) ||
- BUFFER_IS_PRIVATE(window->buffer))
+ else if (BUFFER_IS_CHANNEL(buffer) ||
+ BUFFER_IS_PRIVATE(buffer))
{
if (charset)
- config_option_list_set (string, CHANNEL(window->buffer)->name, charset);
+ config_option_list_set (string, CHANNEL(buffer)->name, charset);
else
- config_option_list_remove (string, CHANNEL(window->buffer)->name);
- weechat_cmd_charset_display (window);
+ config_option_list_remove (string, CHANNEL(buffer)->name);
+ weechat_cmd_charset_display (buffer);
}
}
@@ -1475,23 +1470,28 @@ weechat_cmd_charset_set (t_gui_window *window, char **string, char *charset)
*/
int
-weechat_cmd_charset (t_gui_window *window, int argc, char **argv)
+weechat_cmd_charset (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 0)
- weechat_cmd_charset_display (window);
+ weechat_cmd_charset_display (buffer);
else
{
if (ascii_strcasecmp (argv[0], "decode_iso") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_decode_iso),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_decode_iso),
(argc > 1) ? argv[1] : NULL);
else if (ascii_strcasecmp (argv[0], "decode_utf") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_decode_utf),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_decode_utf),
(argc > 1) ? argv[1] : NULL);
else if (ascii_strcasecmp (argv[0], "encode") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_encode),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_encode),
(argc > 1) ? argv[1] : NULL);
else
{
@@ -1510,8 +1510,13 @@ weechat_cmd_charset (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
+weechat_cmd_clear (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 1)
{
if (ascii_strcasecmp (argv[0], "-all") == 0)
@@ -1526,7 +1531,7 @@ weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
}
}
else
- gui_buffer_clear (window->buffer);
+ gui_buffer_clear (buffer);
return 0;
}
@@ -1535,14 +1540,19 @@ weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_connect (t_gui_window *window, int argc, char **argv)
+weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, &window, &buffer);
+
if (argc == 1)
ptr_server = server_search (argv[0]);
else
- ptr_server = SERVER(window->buffer);
+ ptr_server = server;
if (ptr_server)
{
@@ -1626,10 +1636,12 @@ weechat_cmd_debug_display_windows (t_gui_window_tree *tree, int indent)
*/
int
-weechat_cmd_debug (t_gui_window *window, int argc, char **argv)
+weechat_cmd_debug (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (argc != 1)
{
@@ -1667,14 +1679,18 @@ weechat_cmd_debug (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
+weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 1)
ptr_server = server_search (argv[0]);
else
- ptr_server = SERVER(window->buffer);
+ ptr_server = server;
if (ptr_server)
{
@@ -1694,7 +1710,7 @@ weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
_("Auto-reconnection is cancelled\n"));
}
server_disconnect (ptr_server, 0);
- gui_draw_buffer_status (window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
}
else
{
@@ -1710,7 +1726,8 @@ weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_help (t_gui_window *window, int argc, char **argv)
+weechat_cmd_help (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
int i;
#ifdef PLUGINS
@@ -1719,7 +1736,8 @@ weechat_cmd_help (t_gui_window *window, int argc, char **argv)
#endif
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
switch (argc)
{
@@ -1877,42 +1895,45 @@ weechat_cmd_help (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_history (t_gui_window *window, int argc, char **argv)
+weechat_cmd_history (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_history *ptr_history;
int n;
int n_total;
int n_user;
+ irc_find_context (server, channel, NULL, &buffer);
+
n_user = cfg_history_display_default;
if (argc == 1)
{
if (ascii_strcasecmp (argv[0], "clear") == 0)
{
- history_buffer_free (window->buffer);
+ history_buffer_free (buffer);
return 0;
}
else
n_user = atoi (argv[0]);
}
-
- if (window->buffer->history != NULL)
+
+ if (buffer->history)
{
n_total = 1;
- for (ptr_history = window->buffer->history;
+ for (ptr_history = buffer->history;
ptr_history->next_history;
ptr_history = ptr_history->next_history)
{
n_total++;
}
- for (n = 0; ptr_history; ptr_history = ptr_history->prev_history)
+ for (n = 0; ptr_history; ptr_history = ptr_history->prev_history, n++)
{
if ((n_user > 0) && ((n_total - n_user) > n))
continue;
- irc_display_prefix (NULL, window->buffer, PREFIX_INFO);
- gui_printf_nolog (window->buffer, "%s\n", ptr_history->text);
- n++;
+ irc_display_prefix (NULL, buffer, PREFIX_INFO);
+ gui_printf_nolog (buffer, "%s\n", ptr_history->text);
}
}
@@ -1952,11 +1973,15 @@ weechat_cmd_ignore_display (char *text, t_irc_ignore *ptr_ignore)
*/
int
-weechat_cmd_ignore (t_gui_window *window, int argc, char **argv)
+weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_irc_ignore *ptr_ignore;
int i;
+ irc_find_context (server, channel, NULL, &buffer);
+
ptr_ignore = NULL;
switch (argc)
{
@@ -1988,18 +2013,18 @@ weechat_cmd_ignore (t_gui_window *window, int argc, char **argv)
break;
case 1:
ptr_ignore = ignore_add (argv[0], "*", "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 2:
ptr_ignore = ignore_add (argv[0], argv[1], "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 3:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2],
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 4:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2], argv[3]);
@@ -2047,14 +2072,16 @@ weechat_cmd_key_display (t_gui_key *key, int new_key)
*/
int
-weechat_cmd_key (t_gui_window *window, char *arguments)
+weechat_cmd_key (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos;
int i;
t_gui_key *ptr_key;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (arguments)
{
@@ -2162,7 +2189,8 @@ weechat_cmd_key (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
+weechat_cmd_plugin (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
#ifdef PLUGINS
t_weechat_plugin *ptr_plugin;
@@ -2170,7 +2198,8 @@ weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
int handler_found;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
switch (argc)
{
@@ -2293,12 +2322,28 @@ weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_save (t_gui_window *window, int argc, char **argv)
+weechat_cmd_save (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ int rc;
+
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
- return (config_write ((argc == 1) ? argv[0] : NULL));
+ rc = config_write ((argc == 1) ? argv[0] : NULL);
+ if (rc == 0)
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_INFO);
+ gui_printf_nolog (NULL, _("Configuration file saved\n"));
+ }
+ else
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf_nolog (NULL, _("%s failed to save configuration file\n"),
+ WEECHAT_ERROR);
+ }
+ return rc;
}
/*
@@ -2306,13 +2351,18 @@ weechat_cmd_save (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_server (t_gui_window *window, int argc, char **argv)
+weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
int i;
- t_irc_server server, *ptr_server, *server_found, *new_server;
+ t_irc_server server_tmp, *ptr_server, *server_found, *new_server;
t_gui_buffer *ptr_buffer;
char *server_name;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || (argc == 1))
{
/* list all servers */
@@ -2365,16 +2415,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
}
/* look for server by name */
- server_found = NULL;
- for (ptr_server = irc_servers; ptr_server;
- ptr_server = ptr_server->next_server)
- {
- if (strcmp (ptr_server->name, argv[1]) == 0)
- {
- server_found = ptr_server;
- break;
- }
- }
+ server_found = server_search (argv[1]);
if (!server_found)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -2414,13 +2455,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
if (server_name)
free (server_name);
- gui_redraw_buffer (window->buffer);
+ gui_redraw_buffer (buffer);
return 0;
}
/* init server struct */
- server_init (&server);
+ server_init (&server_tmp);
if (argc < 3)
{
@@ -2428,7 +2469,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing parameters for \"%s\" command\n"),
WEECHAT_ERROR, "server");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
@@ -2438,13 +2479,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s server \"%s\" already exists, can't create it!\n"),
WEECHAT_ERROR, argv[0]);
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.name = strdup (argv[0]);
- server.address = strdup (argv[1]);
- server.port = atoi (argv[2]);
+ server_tmp.name = strdup (argv[0]);
+ server_tmp.address = strdup (argv[1]);
+ server_tmp.port = atoi (argv[2]);
/* parse arguments */
for (i = 3; i < argc; i++)
@@ -2452,13 +2493,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
if (argv[i][0] == '-')
{
if (ascii_strcasecmp (argv[i], "-auto") == 0)
- server.autoconnect = 1;
+ server_tmp.autoconnect = 1;
if (ascii_strcasecmp (argv[i], "-noauto") == 0)
- server.autoconnect = 0;
+ server_tmp.autoconnect = 0;
if (ascii_strcasecmp (argv[i], "-ipv6") == 0)
- server.ipv6 = 1;
+ server_tmp.ipv6 = 1;
if (ascii_strcasecmp (argv[i], "-ssl") == 0)
- server.ssl = 1;
+ server_tmp.ssl = 1;
if (ascii_strcasecmp (argv[i], "-pwd") == 0)
{
if (i == (argc - 1))
@@ -2467,10 +2508,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-pwd");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.password = strdup (argv[++i]);
+ server_tmp.password = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-nicks") == 0)
{
@@ -2480,12 +2521,12 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing nick(s) for \"%s\" parameter\n"),
WEECHAT_ERROR, "-nicks");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.nick1 = strdup (argv[++i]);
- server.nick2 = strdup (argv[++i]);
- server.nick3 = strdup (argv[++i]);
+ server_tmp.nick1 = strdup (argv[++i]);
+ server_tmp.nick2 = strdup (argv[++i]);
+ server_tmp.nick3 = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-username") == 0)
{
@@ -2495,10 +2536,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-username");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.username = strdup (argv[++i]);
+ server_tmp.username = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-realname") == 0)
{
@@ -2508,10 +2549,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-realname");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.realname = strdup (argv[++i]);
+ server_tmp.realname = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-command") == 0)
{
@@ -2521,10 +2562,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing command for \"%s\" parameter\n"),
WEECHAT_ERROR, "-command");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.command = strdup (argv[++i]);
+ server_tmp.command = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-autojoin") == 0)
{
@@ -2534,30 +2575,31 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-autojoin");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.autojoin = strdup (argv[++i]);
+ server_tmp.autojoin = strdup (argv[++i]);
}
}
}
/* create new server */
- new_server = server_new (server.name, server.autoconnect,
- server.autoreconnect,
- server.autoreconnect_delay,
- 0, server.address, server.port, server.ipv6,
- server.ssl, server.password,
- server.nick1, server.nick2, server.nick3,
- server.username, server.realname,
- server.command, 1, server.autojoin, 1, NULL,
+ new_server = server_new (server_tmp.name, server_tmp.autoconnect,
+ server_tmp.autoreconnect,
+ server_tmp.autoreconnect_delay,
+ 0, server_tmp.address, server_tmp.port,
+ server_tmp.ipv6, server_tmp.ssl,
+ server_tmp.password, server_tmp.nick1,
+ server_tmp.nick2, server_tmp.nick3,
+ server_tmp.username, server_tmp.realname,
+ server_tmp.command, 1, server_tmp.autojoin, 1, NULL,
NULL, NULL, NULL);
if (new_server)
{
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("Server %s%s%s created\n"),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
- server.name,
+ server_tmp.name,
GUI_COLOR(COLOR_WIN_CHAT));
}
else
@@ -2566,7 +2608,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s unable to create server\n"),
WEECHAT_ERROR);
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
@@ -2576,7 +2618,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
server_connect (new_server);
}
- server_destroy (&server);
+ server_destroy (&server_tmp);
}
return 0;
}
@@ -2669,7 +2711,8 @@ weechat_cmd_set_display_option (t_config_option *option, char *prefix, void *val
*/
int
-weechat_cmd_set (t_gui_window *window, char *arguments)
+weechat_cmd_set (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *option, *value, *pos;
int i, j, section_displayed;
@@ -2680,7 +2723,8 @@ weechat_cmd_set (t_gui_window *window, char *arguments)
int last_section, last_option, number_found;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
option = NULL;
value = NULL;
@@ -2988,13 +3032,15 @@ weechat_cmd_set (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_unalias (t_gui_window *window, char *arguments)
+weechat_cmd_unalias (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_weelist *ptr_weelist;
t_weechat_alias *ptr_alias;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
ptr_weelist = weelist_search (index_commands, arguments);
if (!ptr_weelist)
@@ -3020,17 +3066,21 @@ weechat_cmd_unalias (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
+weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
char *error;
int number, ret;
+ irc_find_context (server, channel, NULL, &buffer);
+
ret = 0;
switch (argc)
{
case 0:
/* List all ignore */
- weechat_cmd_ignore (window, argc, argv);
+ weechat_cmd_ignore (server, channel, argc, argv);
return 0;
break;
case 1:
@@ -3040,18 +3090,18 @@ weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
ret = ignore_search_free_by_number (number);
else
ret = ignore_search_free (argv[0], "*", "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 2:
ret = ignore_search_free (argv[0], argv[1], "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 3:
ret = ignore_search_free (argv[0], argv[1], argv[2],
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 4:
ret = ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
@@ -3086,7 +3136,8 @@ weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
+weechat_cmd_upgrade (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
t_irc_server *ptr_server;
int filename_length;
@@ -3094,7 +3145,8 @@ weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
char *exec_args[5] = { NULL, "-a", "--session", NULL, NULL };
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
(void) argc;
(void) argv;
@@ -3182,12 +3234,16 @@ weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
+weechat_cmd_uptime (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
time_t running_time;
int day, hour, min, sec;
char string[256];
+ irc_find_context (server, channel, NULL, &buffer);
+
running_time = time (NULL) - weechat_start_time;
day = running_time / (60 * 60 * 24);
hour = (running_time % (60 * 60 * 24)) / (60 * 60);
@@ -3195,8 +3251,8 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
sec = ((running_time % (60 * 60 * 24)) % (60 * 60)) % 60;
if ((argc == 1) && (strcmp (argv[0], "-o") == 0)
- && ((BUFFER_IS_CHANNEL(window->buffer))
- || (BUFFER_IS_PRIVATE(window->buffer))))
+ && ((BUFFER_IS_CHANNEL(buffer))
+ || (BUFFER_IS_PRIVATE(buffer))))
{
snprintf (string, sizeof (string),
_("WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"),
@@ -3207,12 +3263,12 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
sec,
ctime (&weechat_start_time));
string[strlen (string) - 1] = '\0';
- user_command (window->buffer, SERVER(window->buffer), string);
+ user_command (server, channel, string);
}
else
{
- irc_display_prefix (NULL, window->buffer, PREFIX_INFO);
- gui_printf_nolog (window->buffer,
+ irc_display_prefix (NULL, buffer, PREFIX_INFO);
+ gui_printf_nolog (buffer,
_("WeeChat uptime: %s%d %s%s "
"%s%02d%s:%s%02d%s:%s%02d%s, "
"started on %s%s"),
@@ -3241,13 +3297,17 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_window (t_gui_window *window, int argc, char **argv)
+weechat_cmd_window (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
- t_gui_window *ptr_win;
+ t_gui_window *window, *ptr_win;
+ t_gui_buffer *buffer;
int i;
char *error;
long number;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
/* list opened windows */
diff --git a/src/common/command.h b/src/common/command.h
index 884b9f2fe..bdbc420d5 100644
--- a/src/common/command.h
+++ b/src/common/command.h
@@ -38,9 +38,9 @@ struct t_weechat_command
char *completion_template; /* template for completion */
/* NULL=no completion, ""=default (nick) */
int min_arg, max_arg; /* min & max number of arguments */
- int (*cmd_function_args)(t_gui_window *, int, char **);
+ int (*cmd_function_args)(t_irc_server *, t_irc_channel *, int, char **);
/* function called when user enters cmd */
- int (*cmd_function_1arg)(t_gui_window *, char *);
+ int (*cmd_function_1arg)(t_irc_server *, t_irc_channel *, char *);
/* function called when user enters cmd */
};
@@ -66,28 +66,28 @@ extern t_weechat_alias *alias_new (char *, char *);
extern void alias_free_all ();
extern char **explode_string (char *, char *, int, int *);
extern void free_exploded_string (char **);
-extern int exec_weechat_command (t_gui_window *, t_irc_server *, char *);
-extern void user_command (t_gui_buffer *, t_irc_server *, char *);
-extern int weechat_cmd_alias (t_gui_window *, char *);
-extern int weechat_cmd_buffer (t_gui_window *, int, char **);
-extern int weechat_cmd_charset (t_gui_window *, int, char **);
-extern int weechat_cmd_clear (t_gui_window *, int, char **);
-extern int weechat_cmd_connect (t_gui_window *, int, char **);
-extern int weechat_cmd_debug (t_gui_window *, int, char **);
-extern int weechat_cmd_disconnect (t_gui_window *, int, char **);
-extern int weechat_cmd_help (t_gui_window *, int, char **);
-extern int weechat_cmd_history (t_gui_window *, int, char **);
+extern int exec_weechat_command (t_irc_server *, t_irc_channel *, char *);
+extern void user_command (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_alias (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_buffer (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_charset (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_clear (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_connect (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_debug (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_disconnect (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_help (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_history (t_irc_server *, t_irc_channel *, int, char **);
extern void weechat_cmd_ignore_display (char *, t_irc_ignore *);
-extern int weechat_cmd_ignore (t_gui_window *, int, char **);
-extern int weechat_cmd_key (t_gui_window *, char *);
-extern int weechat_cmd_plugin (t_gui_window *, int, char **);
-extern int weechat_cmd_save (t_gui_window *, int, char **);
-extern int weechat_cmd_server (t_gui_window *, int, char **);
-extern int weechat_cmd_set (t_gui_window *, char *);
-extern int weechat_cmd_unalias (t_gui_window *, char *);
-extern int weechat_cmd_unignore (t_gui_window *, int, char **);
-extern int weechat_cmd_upgrade (t_gui_window *, int, char **);
-extern int weechat_cmd_uptime (t_gui_window *, int, char **);
-extern int weechat_cmd_window (t_gui_window *, int, char **);
+extern int weechat_cmd_ignore (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_key (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_plugin (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_save (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_server (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_set (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_unalias (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_unignore (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_upgrade (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_uptime (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_window (t_irc_server *, t_irc_channel *, int, char **);
#endif /* command.h */
diff --git a/src/common/fifo.c b/src/common/fifo.c
index a89854a97..3a69d9c57 100644
--- a/src/common/fifo.c
+++ b/src/common/fifo.c
@@ -101,20 +101,26 @@ fifo_exec (char *text)
char *pos_msg, *pos;
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
- t_gui_buffer *ptr_buffer;
pos = NULL;
ptr_server = NULL;
ptr_channel = NULL;
- ptr_buffer = NULL;
/* look for server/channel at beginning of text */
/* text may be: "server,channel *text" or "server *text" or "*text" */
if (text[0] == '*')
{
pos_msg = text + 1;
- ptr_buffer = (gui_current_window->buffer->has_input) ? gui_current_window->buffer : gui_buffers;
- ptr_server = SERVER(ptr_buffer);
+ if (gui_current_window->buffer->has_input)
+ {
+ ptr_server = SERVER(gui_current_window->buffer);
+ ptr_channel = CHANNEL(gui_current_window->buffer);
+ }
+ else
+ {
+ ptr_server = SERVER(gui_buffers);
+ ptr_channel = NULL;
+ }
}
else
{
@@ -163,15 +169,7 @@ fifo_exec (char *text)
}
}
- if (!ptr_buffer)
- {
- if (ptr_channel)
- ptr_buffer = ptr_channel->buffer;
- else
- ptr_buffer = gui_buffers;
- }
-
- user_command (ptr_buffer, ptr_server, pos_msg);
+ user_command (ptr_server, ptr_channel, pos_msg);
}
/*
diff --git a/src/gui/gui-action.c b/src/gui/gui-action.c
index 702b070c4..bb208a667 100644
--- a/src/gui/gui-action.c
+++ b/src/gui/gui-action.c
@@ -108,7 +108,8 @@ gui_action_return (t_gui_window *window)
window->buffer->completion.position = -1;
window->buffer->ptr_history = NULL;
gui_draw_buffer_input (window->buffer, 0);
- user_command (window->buffer, SERVER(window->buffer), command);
+ user_command (SERVER(window->buffer), CHANNEL(window->buffer),
+ command);
free (command);
}
}
diff --git a/src/gui/gui-common.c b/src/gui/gui-common.c
index d2e53639e..2b396fadb 100644
--- a/src/gui/gui-common.c
+++ b/src/gui/gui-common.c
@@ -1538,7 +1538,7 @@ gui_buffer_switch_by_number (t_gui_window *window, int number)
*/
void
-gui_buffer_move_to_number (t_gui_window *window, int number)
+gui_buffer_move_to_number (t_gui_buffer *buffer, int number)
{
t_gui_buffer *ptr_buffer;
int i;
@@ -1548,34 +1548,34 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
return;
/* buffer number is already ok ? */
- if (number == window->buffer->number)
+ if (number == buffer->number)
return;
if (number < 1)
number = 1;
/* remove buffer from list */
- if (window->buffer == gui_buffers)
+ if (buffer == gui_buffers)
{
- gui_buffers = window->buffer->next_buffer;
+ gui_buffers = buffer->next_buffer;
gui_buffers->prev_buffer = NULL;
}
- if (window->buffer == last_gui_buffer)
+ if (buffer == last_gui_buffer)
{
- last_gui_buffer = window->buffer->prev_buffer;
+ last_gui_buffer = buffer->prev_buffer;
last_gui_buffer->next_buffer = NULL;
}
- if (window->buffer->prev_buffer)
- (window->buffer->prev_buffer)->next_buffer = window->buffer->next_buffer;
- if (window->buffer->next_buffer)
- (window->buffer->next_buffer)->prev_buffer = window->buffer->prev_buffer;
+ if (buffer->prev_buffer)
+ (buffer->prev_buffer)->next_buffer = buffer->next_buffer;
+ if (buffer->next_buffer)
+ (buffer->next_buffer)->prev_buffer = buffer->prev_buffer;
if (number == 1)
{
- gui_buffers->prev_buffer = window->buffer;
- window->buffer->prev_buffer = NULL;
- window->buffer->next_buffer = gui_buffers;
- gui_buffers = window->buffer;
+ gui_buffers->prev_buffer = buffer;
+ buffer->prev_buffer = NULL;
+ buffer->next_buffer = gui_buffers;
+ gui_buffers = buffer;
}
else
{
@@ -1595,19 +1595,19 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
if (ptr_buffer)
{
/* insert before buffer found */
- window->buffer->prev_buffer = ptr_buffer->prev_buffer;
- window->buffer->next_buffer = ptr_buffer;
+ buffer->prev_buffer = ptr_buffer->prev_buffer;
+ buffer->next_buffer = ptr_buffer;
if (ptr_buffer->prev_buffer)
- (ptr_buffer->prev_buffer)->next_buffer = window->buffer;
- ptr_buffer->prev_buffer = window->buffer;
+ (ptr_buffer->prev_buffer)->next_buffer = buffer;
+ ptr_buffer->prev_buffer = buffer;
}
else
{
/* number not found (too big)? => add to end */
- window->buffer->prev_buffer = last_gui_buffer;
- window->buffer->next_buffer = NULL;
- last_gui_buffer->next_buffer = window->buffer;
- last_gui_buffer = window->buffer;
+ buffer->prev_buffer = last_gui_buffer;
+ buffer->next_buffer = NULL;
+ last_gui_buffer->next_buffer = buffer;
+ last_gui_buffer = buffer;
}
}
@@ -1619,7 +1619,7 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
ptr_buffer->number = i++;
}
- gui_redraw_buffer (window->buffer);
+ gui_redraw_buffer (buffer);
}
/*
diff --git a/src/gui/gui-keyboard.c b/src/gui/gui-keyboard.c
index c5ad7482f..0e8522a5d 100644
--- a/src/gui/gui-keyboard.c
+++ b/src/gui/gui-keyboard.c
@@ -517,8 +517,8 @@ gui_key_pressed (char *key_str)
/* exact combo found => execute function or command */
gui_key_buffer[0] = '\0';
if (ptr_key->command)
- user_command (gui_current_window->buffer,
- SERVER(gui_current_window->buffer),
+ user_command (SERVER(gui_current_window->buffer),
+ CHANNEL(gui_current_window->buffer),
ptr_key->command);
else
(void)(ptr_key->function)(gui_current_window);
diff --git a/src/gui/gui.h b/src/gui/gui.h
index 32ee5281c..eb89671db 100644
--- a/src/gui/gui.h
+++ b/src/gui/gui.h
@@ -428,7 +428,7 @@ extern void gui_window_switch_next (t_gui_window *);
extern void gui_window_switch_by_buffer (t_gui_window *, int);
extern void gui_buffer_switch_dcc (t_gui_window *);
extern t_gui_buffer *gui_buffer_switch_by_number (t_gui_window *, int);
-extern void gui_buffer_move_to_number (t_gui_window *, int);
+extern void gui_buffer_move_to_number (t_gui_buffer *, int);
extern void gui_window_print_log (t_gui_window *);
extern void gui_buffer_print_log (t_gui_buffer *);
diff --git a/src/irc/irc-display.c b/src/irc/irc-display.c
index 4c628a944..8fd191416 100644
--- a/src/irc/irc-display.c
+++ b/src/irc/irc-display.c
@@ -36,6 +36,54 @@
/*
+ * irc_find_context: find window/buffer for a server/channel
+ */
+
+void
+irc_find_context (t_irc_server *server, t_irc_channel *channel,
+ t_gui_window **window, t_gui_buffer **buffer)
+{
+ t_gui_window *ptr_win;
+
+ if (!buffer)
+ return;
+
+ /* first find buffer */
+ *buffer = NULL;
+ if (channel && channel->buffer)
+ *buffer = channel->buffer;
+ else
+ {
+ if (server && server->buffer)
+ *buffer = server->buffer;
+ else
+ *buffer = gui_current_window->buffer;
+ }
+
+ /* then find first window displaying this buffer */
+ if (window)
+ {
+ *window = NULL;
+ if (gui_current_window->buffer == *buffer)
+ *window = gui_current_window;
+ else
+ {
+ for (ptr_win = gui_windows; ptr_win;
+ ptr_win = ptr_win->next_window)
+ {
+ if (ptr_win->buffer == *buffer)
+ {
+ *window = ptr_win;
+ break;
+ }
+ }
+ if (!*window)
+ *window = gui_current_window;
+ }
+ }
+}
+
+/*
* irc_display_prefix: display a prefix for action/info/error msg
* prefix must be 3 chars length
*/
diff --git a/src/irc/irc-recv.c b/src/irc/irc-recv.c
index f7d52b2cc..de24e19da 100644
--- a/src/irc/irc-recv.c
+++ b/src/irc/irc-recv.c
@@ -509,7 +509,7 @@ irc_cmd_recv_kick (t_irc_server *server, char *host, char *nick, char *arguments
gui_draw_buffer_nick (ptr_channel->buffer, 1);
gui_draw_buffer_status (ptr_channel->buffer, 1);
if (server->autorejoin)
- irc_cmd_send_join (server, ptr_channel->name);
+ irc_cmd_send_join (server, NULL, ptr_channel->name);
}
{
/* someone was kicked from channel (but not me) => remove only this nick */
@@ -2449,7 +2449,7 @@ irc_cmd_recv_004 (t_irc_server *server, char *host, char *nick, char *arguments)
/* execute command once connected */
if (server->command && server->command[0])
{
- user_command(NULL, server, server->command);
+ user_command (server, NULL, server->command);
if (server->command_delay > 0)
sleep (server->command_delay);
}
@@ -2476,7 +2476,7 @@ irc_cmd_recv_004 (t_irc_server *server, char *host, char *nick, char *arguments)
{
/* auto-join when connecting to server for first time */
if (server->autojoin && server->autojoin[0])
- return irc_cmd_send_join (server, server->autojoin);
+ return irc_cmd_send_join (server, NULL, server->autojoin);
}
return 0;
@@ -4444,7 +4444,7 @@ irc_cmd_recv_366 (t_irc_server *server, char *host, char *nick, char *arguments)
_("normal"),
GUI_COLOR(COLOR_WIN_CHAT_DARK));
}
- irc_cmd_send_mode (server, ptr_channel->name);
+ irc_cmd_send_mode (server, NULL, ptr_channel->name);
if (cfg_irc_away_check > 0)
channel_check_away (server, ptr_channel);
}
diff --git a/src/irc/irc-send.c b/src/irc/irc-send.c
index 77d24de08..38c21920f 100644
--- a/src/irc/irc-send.c
+++ b/src/irc/irc-send.c
@@ -75,8 +75,12 @@ irc_login (t_irc_server *server)
*/
int
-irc_cmd_send_admin (t_irc_server *server, char *arguments)
+irc_cmd_send_admin (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "ADMIN %s\r\n", arguments);
else
@@ -89,7 +93,8 @@ irc_cmd_send_admin (t_irc_server *server, char *arguments)
*/
int
-irc_send_me (t_irc_server *server, t_irc_channel *channel, char *arguments)
+irc_send_me (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *string;
@@ -110,17 +115,37 @@ irc_send_me (t_irc_server *server, t_irc_channel *channel, char *arguments)
}
/*
+ * irc_send_me_all_channels: send a ctcp action to all channels of a server
+ */
+
+int
+irc_send_me_all_channels (t_irc_server *server, char *arguments)
+{
+ t_irc_channel *ptr_channel;
+
+ for (ptr_channel = server->channels; ptr_channel;
+ ptr_channel = ptr_channel->next_channel)
+ {
+ if (ptr_channel->type == CHANNEL_TYPE_CHANNEL)
+ irc_send_me (server, ptr_channel, arguments);
+ }
+ return 0;
+}
+
+/*
* irc_cmd_send_ame: send a ctcp action to all channels of all connected servers
*/
int
-irc_cmd_send_ame (t_irc_server *server, char *arguments)
+irc_cmd_send_ame (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
/* make gcc happy */
(void) server;
+ (void) channel;
gui_add_hotlist = 0;
for (ptr_server = irc_servers; ptr_server;
@@ -145,7 +170,8 @@ irc_cmd_send_ame (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_amsg (t_irc_server *server, char *arguments)
+irc_cmd_send_amsg (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
@@ -154,6 +180,7 @@ irc_cmd_send_amsg (t_irc_server *server, char *arguments)
/* make gcc happy */
(void) server;
+ (void) channel;
if (arguments)
{
@@ -275,11 +302,18 @@ irc_send_away (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_away (t_irc_server *server, char *arguments)
+irc_cmd_send_away (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, NULL, &buffer);
+
+ /* make gcc happy */
+ (void) channel;
+
gui_add_hotlist = 0;
if (arguments && (strncmp (arguments, "-all", 4) == 0))
{
@@ -299,7 +333,7 @@ irc_cmd_send_away (t_irc_server *server, char *arguments)
else
irc_send_away (server, arguments);
- gui_draw_buffer_status (gui_current_window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
gui_add_hotlist = 1;
return 0;
}
@@ -309,10 +343,14 @@ irc_cmd_send_away (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ban (t_irc_server *server, char *arguments)
+irc_cmd_send_ban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos, *pos2;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
pos_channel = NULL;
@@ -340,7 +378,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
/* channel not given, use default buffer */
if (!pos_channel)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -348,7 +386,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "ban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
}
/* loop on users */
@@ -368,7 +406,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -376,7 +414,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "ban");
return -1;
}
- server_sendf (server, "MODE %s +b\r\n", CHANNEL(gui_current_window->buffer)->name);
+ server_sendf (server, "MODE %s +b\r\n", CHANNEL(buffer)->name);
}
return 0;
@@ -387,12 +425,16 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ctcp (t_irc_server *server, char *arguments)
+irc_cmd_send_ctcp (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos_type, *pos_args, *pos;
struct timeval tv;
struct timezone tz;
+ /* make gcc happy */
+ (void) channel;
+
pos_type = strchr (arguments, ' ');
if (pos_type)
{
@@ -463,10 +505,14 @@ irc_cmd_send_ctcp (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_dcc (t_irc_server *server, char *arguments)
+irc_cmd_send_dcc (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_nick, *pos_file;
+ irc_find_context (server, channel, NULL, &buffer);
+
/* DCC SEND file */
if (strncasecmp (arguments, "send", 4) == 0)
{
@@ -516,11 +562,10 @@ irc_cmd_send_dcc (t_irc_server *server, char *arguments)
}
else if (ascii_strcasecmp (arguments, "close") == 0)
{
- if (BUFFER_IS_PRIVATE(gui_current_window->buffer) &&
- CHANNEL(gui_current_window->buffer)->dcc_chat)
+ if (BUFFER_IS_PRIVATE(buffer) &&
+ CHANNEL(buffer)->dcc_chat)
{
- dcc_close ((t_irc_dcc *)(CHANNEL(gui_current_window->buffer)->dcc_chat),
- DCC_ABORTED);
+ dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
}
}
@@ -541,21 +586,25 @@ irc_cmd_send_dcc (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_dehalfop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_dehalfop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -574,21 +623,25 @@ irc_cmd_send_dehalfop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_deop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_deop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -607,21 +660,25 @@ irc_cmd_send_deop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_devoice (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_devoice (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -641,9 +698,11 @@ irc_cmd_send_devoice (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_die (t_irc_server *server, char *arguments)
+irc_cmd_send_die (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "DIE\r\n");
@@ -655,21 +714,25 @@ irc_cmd_send_die (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_halfop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_halfop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s +h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -689,8 +752,12 @@ irc_cmd_send_halfop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_info (t_irc_server *server, char *arguments)
+irc_cmd_send_info (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "INFO %s\r\n", arguments);
else
@@ -703,13 +770,18 @@ irc_cmd_send_info (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_invite (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 2)
server_sendf (server, "INVITE %s %s\r\n", argv[0], argv[1]);
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -718,7 +790,7 @@ irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
return -1;
}
server_sendf (server, "INVITE %s %s\r\n",
- argv[0], CHANNEL(gui_current_window->buffer)->name);
+ argv[0], CHANNEL(buffer)->name);
}
return 0;
}
@@ -728,8 +800,12 @@ irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_ison (t_irc_server *server, char *arguments)
+irc_cmd_send_ison (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "ISON %s\r\n", arguments);
return 0;
}
@@ -739,8 +815,12 @@ irc_cmd_send_ison (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_join (t_irc_server *server, char *arguments)
+irc_cmd_send_join (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (string_is_channel (arguments))
server_sendf (server, "JOIN %s\r\n", arguments);
else
@@ -753,10 +833,14 @@ irc_cmd_send_join (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kick (t_irc_server *server, char *arguments)
+irc_cmd_send_kick (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos_nick, *pos_comment;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (string_is_channel (arguments))
{
pos_channel = arguments;
@@ -776,7 +860,7 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -784,7 +868,7 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "kick");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
pos_nick = arguments;
}
@@ -810,10 +894,14 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kickban (t_irc_server *server, char *arguments)
+irc_cmd_send_kickban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos_nick, *pos_comment;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (string_is_channel (arguments))
{
pos_channel = arguments;
@@ -833,7 +921,7 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -841,7 +929,7 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "kickban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
pos_nick = arguments;
}
@@ -868,8 +956,12 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kill (t_irc_server *server, char *arguments)
+irc_cmd_send_kill (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "KILL %s\r\n", arguments);
return 0;
}
@@ -880,8 +972,12 @@ irc_cmd_send_kill (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_links (t_irc_server *server, char *arguments)
+irc_cmd_send_links (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LINKS %s\r\n", arguments);
else
@@ -894,8 +990,12 @@ irc_cmd_send_links (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_list (t_irc_server *server, char *arguments)
+irc_cmd_send_list (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LIST %s\r\n", arguments);
else
@@ -908,8 +1008,12 @@ irc_cmd_send_list (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_lusers (t_irc_server *server, char *arguments)
+irc_cmd_send_lusers (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LUSERS %s\r\n", arguments);
else
@@ -918,31 +1022,18 @@ irc_cmd_send_lusers (t_irc_server *server, char *arguments)
}
/*
- * irc_send_me_all_channels: send a ctcp action to all channels of a server
- */
-
-int
-irc_send_me_all_channels (t_irc_server *server, char *arguments)
-{
- t_irc_channel *ptr_channel;
-
- for (ptr_channel = server->channels; ptr_channel;
- ptr_channel = ptr_channel->next_channel)
- {
- if (ptr_channel->type == CHANNEL_TYPE_CHANNEL)
- irc_send_me (server, ptr_channel, arguments);
- }
- return 0;
-}
-
-/*
* irc_cmd_send_me: send a ctcp action to the current channel
*/
int
-irc_cmd_send_me (t_irc_server *server, char *arguments)
+irc_cmd_send_me (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -950,7 +1041,7 @@ irc_cmd_send_me (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "me");
return -1;
}
- irc_send_me (server, CHANNEL(gui_current_window->buffer), arguments);
+ irc_send_me (server, CHANNEL(buffer), arguments);
return 0;
}
@@ -959,8 +1050,12 @@ irc_cmd_send_me (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_mode (t_irc_server *server, char *arguments)
+irc_cmd_send_mode (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "MODE %s\r\n", arguments);
return 0;
}
@@ -970,8 +1065,12 @@ irc_cmd_send_mode (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_motd (t_irc_server *server, char *arguments)
+irc_cmd_send_motd (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "MOTD %s\r\n", arguments);
else
@@ -984,14 +1083,19 @@ irc_cmd_send_motd (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_msg (t_irc_server *server, char *arguments)
+irc_cmd_send_msg (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
char *pos, *pos_comma;
char *msg_pwd_hidden, *pos_pwd;
t_irc_channel *ptr_channel;
t_irc_nick *ptr_nick;
char *string;
+ irc_find_context (server, channel, &window, &buffer);
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1010,8 +1114,8 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
if (strcmp (arguments, "*") == 0)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer) &&
- !BUFFER_IS_PRIVATE(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer) &&
+ !BUFFER_IS_PRIVATE(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1019,16 +1123,16 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "msg *");
return -1;
}
- ptr_channel = CHANNEL(gui_current_window->buffer);
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ ptr_channel = CHANNEL(buffer);
+ if (BUFFER_IS_CHANNEL(buffer))
ptr_nick = nick_search (ptr_channel, server->nick);
else
ptr_nick = NULL;
- irc_display_nick (gui_current_window->buffer, ptr_nick,
+ irc_display_nick (buffer, ptr_nick,
(ptr_nick) ? NULL : server->nick,
MSG_TYPE_NICK, 1, 1, 0);
string = (char *)gui_color_decode ((unsigned char *)pos, 1);
- gui_printf_type (gui_current_window->buffer, MSG_TYPE_MSG, "%s\n",
+ gui_printf_type (buffer, MSG_TYPE_MSG, "%s\n",
(string) ? string : "");
if (string)
free (string);
@@ -1114,7 +1218,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
WEECHAT_ERROR, arguments);
return -1;
}
- gui_buffer_new (gui_current_window, server, ptr_channel, 0, 1);
+ gui_buffer_new (window, server, ptr_channel, 0, 1);
gui_draw_buffer_title (ptr_channel->buffer, 1);
}
@@ -1153,13 +1257,18 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_names (t_irc_server *server, char *arguments)
+irc_cmd_send_names (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
server_sendf (server, "NAMES %s\r\n", arguments);
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1169,7 +1278,7 @@ irc_cmd_send_names (t_irc_server *server, char *arguments)
}
else
server_sendf (server, "NAMES %s\r\n",
- CHANNEL(gui_current_window->buffer)->name);
+ CHANNEL(buffer)->name);
}
return 0;
}
@@ -1204,10 +1313,14 @@ irc_cmd_send_nick_server (t_irc_server *server, char *nickname)
*/
int
-irc_cmd_send_nick (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_nick (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
t_irc_server *ptr_server;
+ /* make gcc happy */
+ (void) channel;
+
if (!server)
return 0;
@@ -1238,10 +1351,14 @@ irc_cmd_send_nick (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_notice (t_irc_server *server, char *arguments)
+irc_cmd_send_notice (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos, *string;
+ /* make gcc happy */
+ (void) channel;
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1278,15 +1395,19 @@ irc_cmd_send_notice (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_op (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_op (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
else
@@ -1305,8 +1426,12 @@ irc_cmd_send_op (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_oper (t_irc_server *server, char *arguments)
+irc_cmd_send_oper (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "OPER %s\r\n", arguments);
return 0;
}
@@ -1316,11 +1441,15 @@ irc_cmd_send_oper (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_part (t_irc_server *server, char *arguments)
+irc_cmd_send_part (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
- char *channel_name, *pos_args, *ptr_arg, *pos, buffer[4096];
+ t_gui_buffer *buffer;
+ char *channel_name, *pos_args, *ptr_arg, *pos, buf[4096];
t_irc_channel *ptr_channel;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
if (string_is_channel (arguments))
@@ -1337,7 +1466,7 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
}
else
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1345,13 +1474,13 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "part");
return -1;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
pos_args = arguments;
}
}
else
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1359,16 +1488,16 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "part");
return -1;
}
- if (BUFFER_IS_PRIVATE(gui_current_window->buffer))
+ if (BUFFER_IS_PRIVATE(buffer))
{
- ptr_channel = CHANNEL(gui_current_window->buffer);
+ ptr_channel = CHANNEL(buffer);
gui_buffer_free (ptr_channel->buffer, 1);
channel_free (server, ptr_channel);
- gui_draw_buffer_status (gui_current_window->buffer, 1);
- gui_draw_buffer_input (gui_current_window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
+ gui_draw_buffer_input (buffer, 1);
return 0;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
pos_args = NULL;
}
@@ -1382,15 +1511,15 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
if (pos)
{
pos[0] = '\0';
- snprintf (buffer, sizeof (buffer), "%s%s%s",
+ snprintf (buf, sizeof (buf), "%s%s%s",
ptr_arg, PACKAGE_VERSION, pos + 2);
pos[0] = '%';
}
else
- snprintf (buffer, sizeof (buffer), "%s",
+ snprintf (buf, sizeof (buf), "%s",
ptr_arg);
server_sendf (server, "PART %s :%s\r\n",
- channel_name, buffer);
+ channel_name, buf);
}
else
server_sendf (server, "PART %s\r\n", channel_name);
@@ -1403,8 +1532,12 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ping (t_irc_server *server, char *arguments)
+irc_cmd_send_ping (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "PING %s\r\n", arguments);
return 0;
}
@@ -1414,8 +1547,12 @@ irc_cmd_send_ping (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_pong (t_irc_server *server, char *arguments)
+irc_cmd_send_pong (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "PONG %s\r\n", arguments);
return 0;
}
@@ -1425,12 +1562,17 @@ irc_cmd_send_pong (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_query (t_irc_server *server, char *arguments)
+irc_cmd_send_query (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
char *pos, *string;
t_irc_channel *ptr_channel;
t_gui_buffer *ptr_buffer;
+ irc_find_context (server, channel, &window, &buffer);
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1455,7 +1597,7 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
WEECHAT_ERROR, arguments);
return -1;
}
- gui_buffer_new (gui_current_window, server, ptr_channel, 0, 1);
+ gui_buffer_new (window, server, ptr_channel, 0, 1);
gui_draw_buffer_title (ptr_channel->buffer, 1);
}
else
@@ -1464,7 +1606,7 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
{
if (ptr_buffer->channel == ptr_channel)
{
- gui_switch_to_buffer (gui_current_window, ptr_buffer);
+ gui_switch_to_buffer (window, ptr_buffer);
gui_redraw_buffer (ptr_buffer);
break;
}
@@ -1497,13 +1639,15 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_quit (t_irc_server *server, char *arguments)
+irc_cmd_send_quit (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
char *ptr_arg, *pos, buffer[4096];
/* make gcc happy */
(void) server;
+ (void) channel;
ptr_arg = (arguments) ? arguments :
(cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0]) ?
@@ -1541,8 +1685,12 @@ irc_cmd_send_quit (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_quote (t_irc_server *server, char *arguments)
+irc_cmd_send_quote (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "%s\r\n", arguments);
return 0;
}
@@ -1552,9 +1700,11 @@ irc_cmd_send_quote (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_rehash (t_irc_server *server, char *arguments)
+irc_cmd_send_rehash (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "REHASH\r\n");
@@ -1566,9 +1716,11 @@ irc_cmd_send_rehash (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_restart (t_irc_server *server, char *arguments)
+irc_cmd_send_restart (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "RESTART\r\n");
@@ -1580,8 +1732,12 @@ irc_cmd_send_restart (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_service (t_irc_server *server, char *arguments)
+irc_cmd_send_service (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SERVICE %s\r\n", arguments);
return 0;
}
@@ -1591,8 +1747,12 @@ irc_cmd_send_service (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_servlist (t_irc_server *server, char *arguments)
+irc_cmd_send_servlist (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "SERVLIST %s\r\n", arguments);
else
@@ -1605,8 +1765,12 @@ irc_cmd_send_servlist (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_squery (t_irc_server *server, char *arguments)
+irc_cmd_send_squery (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SQUERY %s\r\n", arguments);
return 0;
}
@@ -1616,8 +1780,12 @@ irc_cmd_send_squery (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_squit (t_irc_server *server, char *arguments)
+irc_cmd_send_squit (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SQUIT %s\r\n", arguments);
return 0;
}
@@ -1627,8 +1795,12 @@ irc_cmd_send_squit (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_stats (t_irc_server *server, char *arguments)
+irc_cmd_send_stats (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "STATS %s\r\n", arguments);
else
@@ -1642,8 +1814,12 @@ irc_cmd_send_stats (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_summon (t_irc_server *server, char *arguments)
+irc_cmd_send_summon (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SUMMON %s\r\n", arguments);
return 0;
}
@@ -1653,8 +1829,12 @@ irc_cmd_send_summon (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_time (t_irc_server *server, char *arguments)
+irc_cmd_send_time (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "TIME %s\r\n", arguments);
else
@@ -1667,10 +1847,14 @@ irc_cmd_send_time (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_topic (t_irc_server *server, char *arguments)
+irc_cmd_send_topic (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *channel_name, *new_topic, *pos;
+ irc_find_context (server, channel, NULL, &buffer);
+
channel_name = NULL;
new_topic = NULL;
@@ -1696,7 +1880,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
/* look for current channel if not specified */
if (!channel_name)
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1704,7 +1888,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "topic");
return -1;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
}
if (new_topic)
@@ -1716,6 +1900,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
}
else
server_sendf (server, "TOPIC %s\r\n", channel_name);
+
return 0;
}
@@ -1724,8 +1909,12 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_trace (t_irc_server *server, char *arguments)
+irc_cmd_send_trace (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "TRACE %s\r\n", arguments);
else
@@ -1738,10 +1927,14 @@ irc_cmd_send_trace (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_unban (t_irc_server *server, char *arguments)
+irc_cmd_send_unban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos, *pos2;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
pos_channel = NULL;
@@ -1769,7 +1962,7 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
/* channel not given, use default buffer */
if (!pos_channel)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1777,7 +1970,7 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "unban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
}
/* loop on users */
@@ -1803,7 +1996,6 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "unban");
return -1;
}
-
return 0;
}
@@ -1812,8 +2004,12 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_userhost (t_irc_server *server, char *arguments)
+irc_cmd_send_userhost (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "USERHOST %s\r\n", arguments);
return 0;
}
@@ -1823,8 +2019,12 @@ irc_cmd_send_userhost (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_users (t_irc_server *server, char *arguments)
+irc_cmd_send_users (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "USERS %s\r\n", arguments);
else
@@ -1837,12 +2037,17 @@ irc_cmd_send_users (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_version (t_irc_server *server, char *arguments)
+irc_cmd_send_version (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer) &&
- nick_search (CHANNEL(gui_current_window->buffer), arguments))
+ if (BUFFER_IS_CHANNEL(buffer) &&
+ nick_search (CHANNEL(buffer), arguments))
server_sendf (server, "PRIVMSG %s :\01VERSION\01\r\n",
arguments);
else
@@ -1865,21 +2070,25 @@ irc_cmd_send_version (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_voice (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_voice (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s +v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -1900,8 +2109,12 @@ irc_cmd_send_voice (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_wallops (t_irc_server *server, char *arguments)
+irc_cmd_send_wallops (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WALLOPS %s\r\n", arguments);
return 0;
}
@@ -1911,8 +2124,12 @@ irc_cmd_send_wallops (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_who (t_irc_server *server, char *arguments)
+irc_cmd_send_who (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "WHO %s\r\n", arguments);
else
@@ -1925,8 +2142,12 @@ irc_cmd_send_who (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_whois (t_irc_server *server, char *arguments)
+irc_cmd_send_whois (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WHOIS %s\r\n", arguments);
return 0;
}
@@ -1936,8 +2157,12 @@ irc_cmd_send_whois (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_whowas (t_irc_server *server, char *arguments)
+irc_cmd_send_whowas (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WHOWAS %s\r\n", arguments);
return 0;
}
diff --git a/src/irc/irc.h b/src/irc/irc.h
index d0997221c..7c544ca19 100644
--- a/src/irc/irc.h
+++ b/src/irc/irc.h
@@ -190,9 +190,9 @@ struct t_irc_command
/* NULL=no completion, ""=default (nick) */
int min_arg, max_arg; /* min & max number of arguments */
int need_connection; /* = 1 if cmd needs server connection */
- int (*cmd_function_args)(t_irc_server *, int, char **);
+ int (*cmd_function_args)(t_irc_server *, t_irc_channel *, int, char **);
/* function called when user enters cmd */
- int (*cmd_function_1arg)(t_irc_server *, char *);
+ int (*cmd_function_1arg)(t_irc_server *, t_irc_channel *, char *);
/* function called when user enters cmd */
int (*recv_function)(t_irc_server *, char *, char *, char *);
/* function called when cmd is received */
@@ -395,6 +395,8 @@ extern void dcc_print_log (t_irc_dcc *);
/* IRC display (irc-diplay.c) */
+extern void irc_find_context (t_irc_server *, t_irc_channel *,
+ t_gui_window **, t_gui_buffer **);
extern void irc_display_prefix (t_irc_server *, t_gui_buffer *, char *);
extern void irc_display_nick (t_gui_buffer *, t_irc_nick *, char *, int,
int, int, int);
@@ -406,65 +408,63 @@ extern void irc_display_server (t_irc_server *ptr_server);
/* IRC commands issued by user (irc-send.c) */
extern void irc_login (t_irc_server *);
-extern int irc_cmd_send_admin (t_irc_server *, char *);
-extern int irc_cmd_send_ame (t_irc_server *, char *);
-extern int irc_cmd_send_amsg (t_irc_server *, char *);
-extern int irc_cmd_send_away (t_irc_server *, char *);
-extern int irc_cmd_send_ban (t_irc_server *, char *);
-extern int irc_cmd_send_ctcp (t_irc_server *, char *);
-extern int irc_cmd_send_dcc (t_irc_server *, char *);
-extern int irc_cmd_send_dehalfop (t_irc_server *, int, char **);
-extern int irc_cmd_send_deop (t_irc_server *, int, char **);
-extern int irc_cmd_send_devoice (t_irc_server *, int, char **);
-extern int irc_cmd_send_die (t_irc_server *, char *);
-extern int irc_cmd_send_halfop (t_irc_server *, int, char **);
-extern int irc_cmd_send_info (t_irc_server *, char *);
-extern int irc_cmd_send_invite (t_irc_server *, int, char **);
-extern int irc_cmd_send_ison (t_irc_server *, char *);
-extern int irc_cmd_send_join (t_irc_server *, char *);
-extern int irc_cmd_send_kick (t_irc_server *, char *);
-extern int irc_cmd_send_kickban (t_irc_server *, char *);
-extern int irc_cmd_send_kill (t_irc_server *, char *);
-extern int irc_cmd_send_links (t_irc_server *, char *);
-extern int irc_cmd_send_list (t_irc_server *, char *);
-extern int irc_cmd_send_lusers (t_irc_server *, char *);
-extern int irc_send_me (t_irc_server *, t_irc_channel *, char *);
-extern int irc_send_me_all_channels (t_irc_server *, char *);
-extern int irc_cmd_send_me (t_irc_server *, char *);
-extern int irc_cmd_send_mode (t_irc_server *, char *);
-extern int irc_cmd_send_motd (t_irc_server *, char *);
-extern int irc_cmd_send_msg (t_irc_server *, char *);
-extern int irc_cmd_send_names (t_irc_server *, char *);
-extern int irc_cmd_send_nick (t_irc_server *, int, char **);
-extern int irc_cmd_send_notice (t_irc_server *, char *);
-extern int irc_cmd_send_op (t_irc_server *, int, char **);
-extern int irc_cmd_send_oper (t_irc_server *, char *);
-extern int irc_cmd_send_part (t_irc_server *, char *);
-extern int irc_cmd_send_ping (t_irc_server *, char *);
-extern int irc_cmd_send_pong (t_irc_server *, char *);
-extern int irc_cmd_send_query (t_irc_server *, char *);
-extern int irc_cmd_send_quit (t_irc_server *, char *);
-extern int irc_cmd_send_quote (t_irc_server *, char *);
-extern int irc_cmd_send_rehash (t_irc_server *, char *);
-extern int irc_cmd_send_restart (t_irc_server *, char *);
-extern int irc_cmd_send_service (t_irc_server *, char *);
-extern int irc_cmd_send_servlist (t_irc_server *, char *);
-extern int irc_cmd_send_squery (t_irc_server *, char *);
-extern int irc_cmd_send_squit (t_irc_server *, char *);
-extern int irc_cmd_send_stats (t_irc_server *, char *);
-extern int irc_cmd_send_summon (t_irc_server *, char *);
-extern int irc_cmd_send_time (t_irc_server *, char *);
-extern int irc_cmd_send_topic (t_irc_server *, char *);
-extern int irc_cmd_send_trace (t_irc_server *, char *);
-extern int irc_cmd_send_unban (t_irc_server *, char *);
-extern int irc_cmd_send_userhost (t_irc_server *, char *);
-extern int irc_cmd_send_users (t_irc_server *, char *);
-extern int irc_cmd_send_version (t_irc_server *, char *);
-extern int irc_cmd_send_voice (t_irc_server *, int, char **);
-extern int irc_cmd_send_wallops (t_irc_server *, char *);
-extern int irc_cmd_send_who (t_irc_server *, char *);
-extern int irc_cmd_send_whois (t_irc_server *, char *);
-extern int irc_cmd_send_whowas (t_irc_server *, char *);
+extern int irc_cmd_send_admin (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ame (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_amsg (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_away (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ctcp (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_dcc (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_deop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_devoice (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_die (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_halfop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_info (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_invite (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_ison (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_join (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kick (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kickban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kill (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_links (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_list (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_lusers (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_me (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_mode (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_motd (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_msg (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_names (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_nick (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_notice (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_op (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_oper (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_part (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ping (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_pong (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_query (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_quit (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_quote (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_rehash (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_restart (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_service (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_servlist (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_squery (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_squit (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_stats (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_summon (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_time (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_topic (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_trace (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_unban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_userhost (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_users (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_version (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_voice (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_wallops (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_who (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_whois (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_whowas (t_irc_server *, t_irc_channel *, char *);
/* IRC commands executed when received from server (irc-recv.c) */
diff --git a/src/plugins/plugins-interface.c b/src/plugins/plugins-interface.c
index 3b02532ec..7c6216b8f 100644
--- a/src/plugins/plugins-interface.c
+++ b/src/plugins/plugins-interface.c
@@ -288,13 +288,28 @@ weechat_plugin_exec_command (t_weechat_plugin *plugin,
if (!plugin || !command)
return;
- plugin_find_server_channel (server, channel, &ptr_server, &ptr_channel);
- if (ptr_server && ptr_channel)
- user_command (ptr_channel->buffer, ptr_server, command);
- else if (ptr_server && (ptr_server->buffer))
- user_command (ptr_server->buffer, ptr_server, command);
+ if (plugin_find_server_channel (server, channel, &ptr_server, &ptr_channel) < 0)
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf (NULL,
+ _("%s server/channel (%s/%s) not found for plugin "
+ "exec command\n"),
+ WEECHAT_ERROR,
+ (server) ? server : "", (channel) ? channel : "");
+ }
else
- user_command (gui_buffers, NULL, command);
+ {
+ if (ptr_server && ptr_channel)
+ user_command (ptr_server, ptr_channel, command);
+ else if (ptr_server && (ptr_server->buffer))
+ user_command (ptr_server, NULL, command);
+ else
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf (NULL, _("%s server not found for plugin exec command\n"),
+ WEECHAT_ERROR);
+ }
+ }
}
/*
diff --git a/src/plugins/plugins.c b/src/plugins/plugins.c
index 80b87922f..904eb06f8 100644
--- a/src/plugins/plugins.c
+++ b/src/plugins/plugins.c
@@ -51,7 +51,7 @@ t_weechat_plugin *last_weechat_plugin = NULL;
* plugin_find_server_channel: find server/channel for command execution
*/
-void
+int
plugin_find_server_channel (char *server, char *channel,
t_irc_server **ptr_server,
t_irc_channel **ptr_channel)
@@ -70,7 +70,11 @@ plugin_find_server_channel (char *server, char *channel,
else
{
if (server && server[0])
+ {
(*ptr_server) = server_search (server);
+ if (!(*ptr_server))
+ return -1;
+ }
else
{
(*ptr_server) = SERVER(gui_current_window->buffer);
@@ -82,8 +86,11 @@ plugin_find_server_channel (char *server, char *channel,
{
if ((*ptr_server))
(*ptr_channel) = channel_search ((*ptr_server), channel);
+ if (!(*ptr_channel))
+ return -1;
}
}
+ return 0;
}
/*
diff --git a/src/plugins/plugins.h b/src/plugins/plugins.h
index 60eb2e132..78d1ae95a 100644
--- a/src/plugins/plugins.h
+++ b/src/plugins/plugins.h
@@ -31,8 +31,8 @@ typedef void (t_weechat_end_func) (t_weechat_plugin *);
extern t_weechat_plugin *weechat_plugins;
extern t_weechat_plugin *last_weechat_plugin;
-extern void plugin_find_server_channel (char *, char *,
- t_irc_server **, t_irc_channel **);
+extern int plugin_find_server_channel (char *, char *,
+ t_irc_server **, t_irc_channel **);
extern void plugin_exec_on_files (t_weechat_plugin *, char *,
int (*)(t_weechat_plugin *, char *));
extern t_weechat_plugin *plugin_search (char *);
diff --git a/weechat/ChangeLog b/weechat/ChangeLog
index 90a31b736..f2e19adcc 100644
--- a/weechat/ChangeLog
+++ b/weechat/ChangeLog
@@ -1,10 +1,12 @@
WeeChat - Wee Enhanced Environment for Chat
===========================================
-ChangeLog - 2006-01-21
+ChangeLog - 2006-01-22
Version 0.1.8 (under dev!):
+ * fixed bug with buffer detection in plugins/scripts commands
+ * fixed bug with /history command
* added option "irc_show_away_once", to show away message only once in pv
Version 0.1.7 (2006-01-14):
diff --git a/weechat/po/cs.po b/weechat/po/cs.po
index c9507d6a9..a43b2c05d 100644
--- a/weechat/po/cs.po
+++ b/weechat/po/cs.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: 2006-01-14 14:01+0100\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -1349,38 +1349,38 @@ msgstr "nemůžu změnit mód přo ostatní uživatele"
msgid "whois (secure connection)"
msgstr "whois (zabezpečená část)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServer: %s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "připojen"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "nepřipojen"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "na"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "off"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (dočasný server, nebude uložen)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "sekund"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(skrytý)"
@@ -1393,57 +1393,57 @@ msgstr "neznámý"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: používám lokální jméno hosta \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s nemohu najít přezdívku pro poslání zprávy\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr "%s \"%s\" příkaz může být spuštěn pouze v bufferu kanálu\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s špatný počet parametrů pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s špatné parametry pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr "%s \"%s\" příkaz nemůže být spuštěn v bufferu serveru\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s \"%s\" příkaz může být spuštěn pouze v bufferu kanálu nebo soukromého "
"rozhovoru\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s nemohu vytvořít nové soukromý buffer\"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, kompilováno na %s %s\n"
@@ -1759,11 +1759,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s byl %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s nečinný: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "dní"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "den"
@@ -2125,7 +2125,7 @@ msgstr "%s nedostatek paměti pro vytvoření ignorování\n"
msgid "Removing ignore:"
msgstr "Odebírám ignorování:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2134,14 +2134,14 @@ msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro IRC příkaz \"%s\" (nedostatek "
"paměti)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro \"%s\" příkaz (již existuje)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2149,25 +2149,25 @@ msgstr ""
"%s plugin %s: nemůžu přidat obsluhovač pro \"%s\" příkaz (nedostatek "
"paměti)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s nemůžu načist plugin \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s symbol \"plugin_name\" nebyl v pluginu \"%s\" nalezen, načtení selhalo\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
msgstr ""
"%s nemohu načíst plugin \"%s\": plugin se stejným jménem již existuje\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2175,7 +2175,7 @@ msgstr ""
"%s symbol \"plugin_description\" nebyl v pluginu \"%s\" nalezen, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2183,7 +2183,7 @@ msgstr ""
"%s symbol \"plugin_version\" nebyl v pluginu \"%s\" nalezen, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2192,32 +2192,32 @@ msgstr ""
"%s funkce \"weechat_plugin_init\" nebyla v pluginu \"%s\" nalezena, načtení "
"selhalo\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Inicializuji plugin \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s nemohu načíst plugin \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr "%s nemohu načíst plugin \"%s\" (nedostatek paměti)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Plugin \"%s\" (%s) načten.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Plugin \"%s\" odebrán.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s plugin \"%s\" nenalezen\n"
@@ -2253,6 +2253,16 @@ msgstr ""
"tento soubor při aktualizaci nastavení.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, fuzzy, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr "%s kanál \"%s\" nebyl nalezen příkazem \"%s\"\n"
+
+#: src/plugins/plugins-interface.c:309
+#, fuzzy, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s server \"%s\" nenalezen pro příkaz \"%s\"\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2500,7 +2510,7 @@ msgstr "obnov obrazovku"
msgid "grab a key"
msgstr "zachytit klávesu"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s nemohu napojit kalávesu \"%s\"\n"
@@ -2977,300 +2987,309 @@ msgstr "%s příkaz \"%s\" potřebuje připojení na server!\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s neznámý příkaz \"%s\" (zadejte /help pro nápovědu)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Tohe není okno kanálu!\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s chybí argumenty pro příkaz \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s alias nemůže žačínat \"/\"!\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" vytvořen\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr "Selhalo vytvoření aliasu \"%s\" => \"%s\" (nedostatek paměti)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Seznam pro aliasy:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Žádné aliasy nejsou definovány.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServer: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%snepřipojen\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%sKanál: %s%s %s(server: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sSoukromý s: %s%s %s(server: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sneznámý\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Otevřené buffery:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s nekorektní číslo bufferu\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s nemohu zavřít jediný buffer\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr "%s nemohu zavřít buffer serveru dokud jsou otevřeny kanály\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Level upozornění: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s nekorektní level upozornění (musí být mezi %d a %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr "%s nekorektní buffer pro upozornění (musí být kanál nebo soukromý)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nový level upozornění %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: nikdy)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: zvýraznění)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: zvýraznění + zprávy)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: zvýrazění + zprávy + připojení/odpojení (vše))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Znaková sada pro server %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Znaková sada pro kanál %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Znaková sada pro soukromé %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (zděděno: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s neznámá volba pro příkaz \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s již vytvořený server \"%s\"!\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s zrovna připojuji k serveru \"%s\"!\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s server nenalezen\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s nepřipojen k serveru \"%s\"!\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "Automatické znovupřipojené je zrušeno\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "%s vnitřní příkazy:\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "IRC příkazy:\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Příkazy pluginu:\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "Není dostupná žádná nápověda, \"%s\" je neznámý příkaz\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%sna %s%s%s/%s%s%s:%s ignoruji %s%s%s od %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Seznam ignorování:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Žádné ignorování není definováno.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nové ignorování:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nová klávesová zkratka: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Klávesové zkratky:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Klávesa \"%s\" odpojena\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s nemohu odpojit klávesu \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Vnitřní klávesové funkce:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Výchozí klávesové zkratky obnoveny\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s \"-yes\" argument je požadován pro reset kaláves (bezpečnostní opatření)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Načtené pluginy:\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " obsluhovače zpráv:\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (není obsluhovač zprávy)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " obsluhovače příkazu:\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (není obsluhovač příkazu)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (není plugin)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
msgstr ""
"Příkaz \"plugin\" není dostupný, WeeChat byl přeložen bez podpory pluginů.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr ""
+
+#: src/common/command.c:2343
+#, fuzzy, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s nemohu uložit sezení do souboru\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "žádný server.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Server '%s' nenalezen.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s chybí jméno serveru pro příkaz \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr "%s příliž mnoho argumentů pro příkaz \"%s\", ignoruji argumety\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s server \"%s\" nenalezen pro příkaz \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3279,173 +3298,173 @@ msgstr ""
"%s nemůžete odebrat server \"%s\", protože jste k němu připojent. Skuste "
"nejprve /dissconnect %s.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "Server %s%s%s byl odebrán\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s chybí parametry pro příkaz \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s server \"%s\" již existuje, nemohu jej vytvořít!\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s chybí heslo pro parametr \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s chybí přezdívka/přezdívky pro parametr \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s chybí příkaz pro parametr \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Server %s%s%s vytvořen\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s nemohu vytvořit server\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(neznámý)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(heslo schováno) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s server \"%s\" nenalezen\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s volba nastavení \"%s\" nenalezena\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s nekorektní hodnota pro volbu \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr "%s volba \"%s\" nemůže být změněna dokud WeeChat běží\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Nebyla nalezena žádná volba nastavení s \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Nebyla nalezena žádná volba nastavení\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDetail:\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . typ boolean (hodnota: 'on' nebo 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . výchozí hodnota: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . typ celočíselný (hodnoty: mezi %d a %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . výchozí hodnota: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . typ řetězec (hodnoty: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "prázdný"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . typ barva (Curses nebo Gtk barva, viz WeeChat dokumentace)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . typ řetězec (jakýkoliv řetězec)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . popis: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "volba/volby nastavení nalezeny s \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "volba/volby nastavení nalezeny\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias nebo příkaz \"%s\" nenalezen\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" odebrán\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "ignorování bylo odebráno.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "ignorování bylo odebrán\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s žádné ignorování nenaleyeno\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr "%s nemůžu aktualizovat: existují nevyřešená spojení na server\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3454,35 +3473,35 @@ msgstr ""
"%s nemohu aktualiyovat: je aktuvní jedno nebo více připojení na SSL server "
"(mělo by být opraveno v budoucnosti)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Aktualizuji WeeChat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s nemohu uložit sezení do souboru\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s exec selhal (program: \"%s\"), ukončuji WeeChat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Čas běhu WeeChat: %d %s %02d:%02d:%02d, spuštěn %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr "Čas běhu WeeChat: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, spuštěn %s%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Otevřené okna:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3505,27 +3524,27 @@ msgstr "%s nemohu otevřít FIFO rouru (%s) pro čtení\n"
msgid "FIFO pipe is open\n"
msgstr "FIFO roura je otevřena\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s nekorektní text přijat na FIFO rouře\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s server \"%s\" nenalezen (data FIFO roury)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s kanál \"%s\" nenalezen (data FIFO roury)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s chyba při čtení FIFO roury, zavírám ji\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "FIFO roura zavřena\n"
diff --git a/weechat/po/es.po b/weechat/po/es.po
index e6b55bbc4..563b87370 100644
--- a/weechat/po/es.po
+++ b/weechat/po/es.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: 2006-01-14 14:01+0100\n"
"Last-Translator: Roberto Gonzlez Cardenete <robert.glez@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -1361,38 +1361,38 @@ msgstr "no es posible cambiar el modo para el resto de usuarios"
msgid "whois (secure connection)"
msgstr "quin es (conexin segura)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServidor:%s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "conectado"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "no conectado"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "activo"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "inactivo"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (servidor temporal, no ser guardado)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "segundos"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(oculto)"
@@ -1405,57 +1405,57 @@ msgstr "desconocido"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: utilizacin del nombre de mquina local \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s no ha sido posible encontrar el usuario al que enviar el mensaje\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
"%s el comando \"%s\" slo puede ser ejecutado en una ventana de canal\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s nmero de argumentos incorrecto para el comando \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s argumentos incorrectos para el comando \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr "%s el comando \"%s\" no puede ejecutarse en una ventana de servidor\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s el comando \"%s\" slo puede ser ejecutado en una ventana de canal\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s no es posible crear una nueva ventana privada \"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, compilado en %s %s\n"
@@ -1771,11 +1771,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s estaba %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s inactividad: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "das"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "da"
@@ -2143,7 +2143,7 @@ msgstr "%s no hay suficiente memoria para crear el ignore\n"
msgid "Removing ignore:"
msgstr "Eliminando el ignore:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2152,7 +2152,7 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando IRC \"%s"
"\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
@@ -2160,7 +2160,7 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando \"%s"
"\" (ya existe)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2168,19 +2168,19 @@ msgstr ""
"%s plugin %s: no ha sido posible aadir un manejador para el comando \"%s"
"\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s no ha sido posible cargar el plugin \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s smbolo \"plugin_name\" no encontrado en el plugin \"%s\", fall al "
"cargar\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
@@ -2188,7 +2188,7 @@ msgstr ""
"%s no ha sido posible cargar el plugin \"%s\": un plugin con el mismo nombre "
"ya existe\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2196,7 +2196,7 @@ msgstr ""
"%s smbolo \"plugin_description\" no encontrado en el plugin \"%s\", fall "
"al cargar\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2204,7 +2204,7 @@ msgstr ""
"%s smbolo \"plugin_version\" no encontrado en el plugin \"%s\", fall al "
"cargar\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2213,33 +2213,33 @@ msgstr ""
"%s funcin \"weechat_plugin_init\" no encontrada en el plugin \"%s\", fall "
"al cargar\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Inicializando plugin \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s no ha sido posible inicializar el plugin \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr ""
"%s no ha sido posible cargar el plugin \"%s\" (no hay suficiente memoria)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Plugin \"%s\" (%s) cargado.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Plugin \"%s\" descargado.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s plugin \"%s\" no encontrado\n"
@@ -2275,6 +2275,16 @@ msgstr ""
"archivo cuando se actualizan las opciones.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, fuzzy, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr "%s canal \"%s\" no encontrado para el comando \"%s\"\n"
+
+#: src/plugins/plugins-interface.c:309
+#, fuzzy, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s servidor \"%s\" no encontrado para el comando \"%s\"\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2522,7 +2532,7 @@ msgstr "recargar la pantalla"
msgid "grab a key"
msgstr "capturar una clave"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s No ha sido posible atar la clave \"%s\"\n"
@@ -3008,273 +3018,273 @@ msgstr "%s el comando \"%s\" requiere una conexin a servidor!\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s comando \"%s\" desconocido (escriba /help para la ayuda)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Esta ventana no es un canal!\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s faltan argumentos para el comando \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s el alias no puede empezar con \"/\"\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" creado\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr ""
"No ha sido posible crear el alias \"%s\" => \"%s\" (no hay suficiente "
"memoria)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Lista de alias:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Ningn alias definido.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServidor: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%sno conectado\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%s Canal: %s%s %s(servidor: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sPrivado con: %s%s %s(servidor: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sdesconocido\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Bfers abiertos:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s nmero de bfer incorrecto\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s no es posible cerrar el nico bfer\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
"%s no se puede cerrar el bfer de servidor mientras haya canales abiertos\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Niveles de notificacin: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s nivel de notificacin incorrecto (debe estar entre %d y %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr "%s bfer incorrecto para notificar (debe ser canal o privado)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nuevo nivel de notificacin para %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: nunca)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: resaltados)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: resaltados + mensajes)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: resaltados + mensajes + join/part (todos))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Juegos de caracteres para el servidor %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Juegos de caracteres para el canal %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Juegos de caracteres para el privado %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (heredado: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s opcin desconocida para el comando \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s ya conectado al servidor \"%s\"!\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s actualmente conectando al servidor \"%s\"!\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s servidor no encontrado\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s no conectado al servidor \"%s\"!\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "La reconexin automtica est anulada\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "Comandos internos %s :\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "Comandos IRC :\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Comandos de plugin:\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "No hay ayuda disponible, el comando \"%s\" es desconocido\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%sen %s%s%s/%s%s%s:%s ignorando %s%s%s de %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Lista de ignores:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Sin ignores definidos.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nuevo ignore:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nueva anclaje de clave: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Anclajes de clave:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Clave \"%s\" desatada\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s No ha sido posible desatar la clave \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Funciones de clave internas:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Anclajes de clave por defecto restaurados\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s \"-yes\" se requiere argumento para resetear las claves (por razones de "
"seguridad)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Plugins cargados:\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " manejadores de mensaje:\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (sin manejador de mensaje)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " manejadores de comando:\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (sin manejador de comando)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (sin plugins)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
@@ -3282,32 +3292,41 @@ msgstr ""
"El comando \"plugin\" no est disponible, Weechat fue compilado sin soporte "
"para plugins.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr ""
+
+#: src/common/command.c:2343
+#, fuzzy, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s no ha sido posible guardar la sesin en el archivo\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "Ningn servidor.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Servidor '%s' no encontrado.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s falta el nombre de servidor para el comando \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr ""
"%s demasiados argumentos para el comando \"%s\", ignorando parmetros\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s servidor \"%s\" no encontrado para el comando \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3316,175 +3335,175 @@ msgstr ""
"%s usted no puede eliminar el servidor \"%s\" ya que est usted conectado a "
"l. Pruebe /disconnect %s antes.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "El servidor %s%s%s ha sido borrado\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s faltan parmetros para el comando \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s el servidor \"%s\" ya existe, no se puede crear!\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s falta contrasea para el comando \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s falta(n) usuario(s) para el parmetro \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s falta comando para el parmetro \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Servidor %s%s%s creado\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s no es posible crear el servidor\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(desconocido)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(contrasea oculta) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s servidor \"%s\" no encontrado\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s opcin de configuracin \"%s\" no encontrada\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s valor incorrecto para la opcin \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr ""
"%s la opcin \"%s\" no puede ser modificada mientras WeeChat est en "
"ejecucin\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Ninguna opcin de configuracin encontrada con \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Ninguna opcin de configuracin encontrada\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDetalle:\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . tipo booleano (valores: 'on' u 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . valor por defecto: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . tipo entero (valores: entre %d y %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . valor por defecto: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . tipo cadena (valores: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "vaco"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . tipo color (color Curses o Gtk, ver la documentacin de WeeChat)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . tipo cadena (cualquier cadena)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . descripcin: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "opcin/opciones de configuracin encontrada(s) con \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "opcin/opciones de configuracin encontrada(s)\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias o comando \"%s\" no encontrado\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" eliminado\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "los ignores fueron eliminados.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "el ignore fue eliminado.\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s no se encontraron ignores\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr "%s no se puede actualizar: conexin pendiente a un servidor al menos\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3493,37 +3512,37 @@ msgstr ""
"%s no se puede actualizar: conexin activa a un servidor SSL por lo menos "
"(debera ser corregido en una futura versin)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Actualizando Weechat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s no ha sido posible guardar la sesin en el archivo\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s exec ha fallado (programa: \"%s\"), saliendo de Weechat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Tiempo de uso de WeeChat: %d %s %02d:%02d:%02d, empez en %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr ""
"Tiempo de uso de WeeChat: %s%d %s%s %s%02d%s: %s%02d%s:%s%02d%s, empez en %s"
"%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Ventanas abiertas:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3547,27 +3566,27 @@ msgstr "%s no ha sido posible abrir la tubera FIFO (%s) para leer\n"
msgid "FIFO pipe is open\n"
msgstr "La tubera FIFO est abierta\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s texto invlido recibido en la tubera FIFO\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s servidor \"%s\" no encontrado (datos de la tubera FIFO)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s canal \"%s\" no encontrado (datos de la tubera FIFO)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s error al leer la tubera FIFO, cerrndola\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "La tubera FIFO est cerrada\n"
diff --git a/weechat/po/fr.po b/weechat/po/fr.po
index c72c95d1b..192d27eb7 100644
--- a/weechat/po/fr.po
+++ b/weechat/po/fr.po
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.1.8-cvs\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
-"PO-Revision-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
+"PO-Revision-Date: 2006-01-22 22:14+0100\n"
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -1356,38 +1356,38 @@ msgstr "impossible de changer le mode pour les autres utilisateurs"
msgid "whois (secure connection)"
msgstr "qui est (connexion scurise)"
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr "%sServeur: %s%s %s[%s%s%s]\n"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr "connect"
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr "non connect"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr "activ"
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr "dsactiv"
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr " (serveur temporaire, ne sera pas sauv)"
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr "secondes"
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr "(cach)"
@@ -1400,59 +1400,59 @@ msgstr "inconnu"
msgid "%s: using local hostname \"%s\"\n"
msgstr "%s: utilisation du nom de machine local \"%s\"\n"
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr "%s impossible de trouver le pseudo pour envoyer le message\n"
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
"%s la commande \"%s\" peut seulement tre excute dans un tampon canal\n"
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr "%s nombre de paramtres erron pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr "%s paramtres invalides pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr ""
"%s la commande \"%s\" ne peut pas tre excute dans un tampon serveur\n"
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
"%s la commande \"%s\" peut seulement tre excute dans une tampon canal ou "
"priv\n"
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr "%s pseudo \"%s\" non trouv pour la commande \"%s\"\n"
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr "%s impossible de crer le tampon priv \"%s\"\n"
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr "%s, compil le %s %s\n"
@@ -1768,11 +1768,11 @@ msgstr "%s%s %s(%s%s@%s%s)%s tait %s\n"
msgid "%s[%s%s%s]%s idle: "
msgstr "%s[%s%s%s]%s inactivit: "
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr "jours"
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr "jour"
@@ -2140,7 +2140,7 @@ msgstr "%s pas assez de mmoire pour crer un ignore\n"
msgid "Removing ignore:"
msgstr "Suppression du ignore:"
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
@@ -2149,7 +2149,7 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande IRC \"%s"
"\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
@@ -2157,7 +2157,7 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande \"%s"
"\" (existe dj)\n"
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
@@ -2165,19 +2165,19 @@ msgstr ""
"%s extension %s: impossible d'ajouter la fonction pour la commande \"%s"
"\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr "%s impossible de charger l'extension \"%s\": %s\n"
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
"%s le symbole \"plugin_name\" est introuvable dans l'extension \"%s\", chec "
"de chargement\n"
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
@@ -2185,7 +2185,7 @@ msgstr ""
"%s impossible de charger l'extension \"%s\": une extension avec le mme nom "
"existe dj\n"
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
@@ -2193,7 +2193,7 @@ msgstr ""
"%s le symbole \"plugin_description\" est introuvable dans l'extension \"%s"
"\", chec de chargement\n"
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
@@ -2201,7 +2201,7 @@ msgstr ""
"%s le symbole \"plugin_version\" est introuvable dans l'extension \"%s\", "
"chec de chargement\n"
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
@@ -2210,32 +2210,32 @@ msgstr ""
"%s la fonction \"weechat_plugin_init\" est introuvable dans l'extension \"%s"
"\", chec de chargement\n"
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr "Initialisation de l'extension \"%s\" %s\n"
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr "%s impossible d'initialiser l'extension \"%s\"\n"
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr "%s impossible de charger l'extension \"%s\" (mmoire insuffisante)\n"
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr "Extension \"%s\" (%s) charge.\n"
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr "Extension \"%s\" dcharge.\n"
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr "%s extension \"%s\" non trouve\n"
@@ -2271,6 +2271,18 @@ msgstr ""
"des options sont modifies.\n"
"#\n"
+#: src/plugins/plugins-interface.c:295
+#, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr ""
+"%s serveur/canal (%s/%s) non trouv pour l'excution de commande de "
+"l'extension\n"
+
+#: src/plugins/plugins-interface.c:309
+#, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr "%s serveur non trouv pour l'excution de commande de l'extension\n"
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2518,7 +2530,7 @@ msgstr "rafrachir l'cran"
msgid "grab a key"
msgstr "capturer une touche"
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr "%s impossible de crer la touche \"%s\"\n"
@@ -3007,273 +3019,273 @@ msgstr "%s la commande \"%s\" ncessite une connexion au serveur !\n"
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr "%s commande \"%s\" inconnue (tapez /help pour l'aide)\n"
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr "Cette fentre n'est pas un canal !\n"
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr "%s paramtres manquants pour la commande \"%s\"\n"
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr "%s l'alias ne peut pas commencer par \"/\"\n"
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr "Alias \"%s\" => \"%s\" cr\n"
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr "Impossible de crer l'alias \"%s\" => \"%s\" (pas assez de mmoire)\n"
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr "Liste des alias:\n"
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr "Aucun alias dfini.\n"
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr "%sServeur: %s%s\n"
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr "%snon connect\n"
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr "%sCanal: %s%s %s(serveur: %s%s%s)\n"
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr "%sPriv avec: %s%s %s(serveur: %s%s%s)\n"
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr "%sinconnu\n"
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr "Tampons ouverts:\n"
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr "%s numro de tampon incorrect\n"
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr "%s impossible de fermer le tampon unique\n"
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
"%s impossible de fermer le tampon du serveur tant que des canaux sont "
"ouverts\n"
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr "Niveaux de notification: "
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr "%s niveau de notification incorrect (doit tre entre %d et %d)\n"
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr ""
"%s tampon incorrect pour la notification (doit tre un canal ou un priv)\n"
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr "Nouveau niveau de notification pour %s%s%s: %s%d %s"
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr "(hotlist: jamais)\n"
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr "(hotlist: highlights)\n"
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr "(hotlist: highlights + messages)\n"
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr "(hotlist: highlights + messages + join/part (tous))\n"
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr "Jeux de caractres pour le serveur %s%s%s: "
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr "Jeux de caractres pour le canal %s%s%s: "
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr "Jeux de caractres pour le priv %s%s%s: "
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr " (hrit: \"%s%s%s\")"
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr "%s option inconnue pour la commande \"%s\"\n"
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr "%s dj connect au serveur \"%s\" !\n"
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr "%s une connexion vers le serveur \"%s\" est en cours !\n"
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr "%s serveur non trouv\n"
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr "%s non connect au serveur \"%s\" !\n"
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr "La reconnexion automatique est annule\n"
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr "Commandes internes %s :\n"
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr "Commandes IRC :\n"
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr "Commandes d'extension :\n"
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr "Pas d'aide disponible, la commande \"%s\" est inconnue\n"
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr "%ssur %s%s%s/%s%s%s:%s ignore %s%s%s de %s%s\n"
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr "Liste des ignore:\n"
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr "Aucun ignore dfini.\n"
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr "Nouveau ignore:"
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr "Nouvelle touche: %s"
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr "Associations de touches:\n"
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr "Touche \"%s\" supprime\n"
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr "%s impossible de supprimer la touche \"%s\"\n"
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr "Fonctions internes pour les touches:\n"
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr "Touches par dfaut restaures\n"
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
"%s le paramtre \"-yes\" est requis pour la rinitialisation des touches "
"(raison de scurit)\n"
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr "Extensions charges :\n"
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr " fonctions de message :\n"
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr " IRC(%s)\n"
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr " (aucunne fonction de message)\n"
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr " commandes :\n"
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr " (aucune commande)\n"
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr " (aucune extension)\n"
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
@@ -3281,31 +3293,40 @@ msgstr ""
"La commande \"plugin\" n'est pas disponible, WeeChat a t compil sans le "
"support des extensions.\n"
-#: src/common/command.c:2332
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
+msgstr "Fichier de configuration sauv\n"
+
+#: src/common/command.c:2343
+#, c-format
+msgid "%s failed to save configuration file\n"
+msgstr "%s impossible de sauver le fichier de configuration\n"
+
+#: src/common/command.c:2382
msgid "No server.\n"
msgstr "Pas de serveur.\n"
-#: src/common/command.c:2343
+#: src/common/command.c:2393
#, c-format
msgid "Server '%s' not found.\n"
msgstr "Serveur '%s' non trouv.\n"
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr "%s il manque le nom du serveur pour la commande \"%s\"\n"
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr "%s trop de paramtres pour la commande \"%s\", paramtres ignors\n"
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr "%s le serveur \"%s\" n'existe pas pour la commande \"%s\"\n"
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
@@ -3314,175 +3335,175 @@ msgstr ""
"%s vous ne pouvez pas supprimer le server \"%s\" car vous tes connect "
"dessus. Essayez /disconnect %s avant.\n"
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr "Le serveur %s%s%s a t supprim\n"
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr "%s paramtres manquants pour la commande \"%s\"\n"
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr "%s le serveur \"%s\" existe dj, impossible de le crer !\n"
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr "%s mot de passe manquant pour le paramtre \"%s\"\n"
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr "%s pseudo(s) manquant(s) pour le paramtre \"%s\"\n"
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr "%s commande manquante pour le paramtre \"%s\"\n"
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr "Serveur %s%s%s cr\n"
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr "%s impossible de crer le serveur\n"
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr "(inconnu)"
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr "%s(mot de passe cach) "
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr "%s serveur \"%s\" non trouv\n"
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr "%s option de configuration \"%s\" non trouve\n"
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr "%s valeur incorrecte pour l'option \"%s\"\n"
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr "%s l'option \"%s\" ne peut pas tre change lorsque WeeChat tourne\n"
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr "Aucune option de configuration trouve avec \"%s\"\n"
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr "Aucune option de configuration trouve\n"
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr "%sDtail :\n"
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr " . type boolen (valeurs: 'on' ou 'off')\n"
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr " . valeur par dfaut: '%s'\n"
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr " . type entier (valeurs: entre %d et %d)\n"
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr " . valeur par dfaut: %d\n"
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr " . type chane (valeurs: "
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr "vide"
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr " . type couleur (couleur Curses ou Gtk, voir la doc WeeChat)\n"
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr " . type chane (toute chane)\n"
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr " . description: %s\n"
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr "option(s) de configuration trouve(s) avec \"%s\"\n"
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr "option(s) de configuration trouve(s)\n"
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr "%s alias ou commande \"%s\" non trouv\n"
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr "Alias \"%s\" supprim\n"
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr "ignore ont t supprims.\n"
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr "ignore a t supprim.\n"
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr "%s aucun ignore trouv\n"
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr ""
"%s impossible de mettre jour: une connexion au moins un serveur est en "
"cours\n"
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
@@ -3491,35 +3512,35 @@ msgstr ""
"%s impossible de mettre jour: une connexion au moins un serveur SSL est "
"active (devrait tre corrig dans une future version)\n"
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr "Mise jour de WeeChat...\n"
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr "%s impossible de sauver la session dans le fichier\n"
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr "%s l'excution a chou (programme: \"%s\"), sortie de WeeChat\n"
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr "Uptime WeeChat: %d %s %02d:%02d:%02d, dmarr le %s"
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr "Uptime WeeChat: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, dmarr le %s%s"
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr "Fentres ouvertes:\n"
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3542,27 +3563,27 @@ msgstr "%s impossible d'ouvrir le tube FIFO (%s) en lecture\n"
msgid "FIFO pipe is open\n"
msgstr "Le tube FIFO est ouvert\n"
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr "%s texte invalide reu sur le tube FIFO\n"
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr "%s serveur \"%s\" non trouv (donnes du tube FIFO)\n"
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr "%s canal \"%s\" non trouv (donnes du tube FIFO)\n"
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr "%s erreur en lecture du tube FIFO, fermeture\n"
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr "Le tube FIFO est ferm\n"
diff --git a/weechat/po/weechat.pot b/weechat/po/weechat.pot
index 0e8eb0aa0..a2129dbc2 100644
--- a/weechat/po/weechat.pot
+++ b/weechat/po/weechat.pot
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
-"POT-Creation-Date: 2006-01-21 22:22+0100\n"
+"POT-Creation-Date: 2006-01-22 22:14+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1244,38 +1244,38 @@ msgstr ""
msgid "whois (secure connection)"
msgstr ""
-#: src/irc/irc-display.c:205
+#: src/irc/irc-display.c:253
#, c-format
msgid "%sServer: %s%s %s[%s%s%s]\n"
msgstr ""
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "connected"
msgstr ""
-#: src/irc/irc-display.c:212
+#: src/irc/irc-display.c:260
msgid "not connected"
msgstr ""
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "on"
msgstr ""
-#: src/irc/irc-display.c:216 src/irc/irc-display.c:220
-#: src/irc/irc-display.c:229 src/irc/irc-display.c:231
+#: src/irc/irc-display.c:264 src/irc/irc-display.c:268
+#: src/irc/irc-display.c:277 src/irc/irc-display.c:279
msgid "off"
msgstr ""
-#: src/irc/irc-display.c:218
+#: src/irc/irc-display.c:266
msgid " (temporary server, will not be saved)"
msgstr ""
-#: src/irc/irc-display.c:223 src/irc/irc-display.c:252 src/irc/irc-recv.c:3191
+#: src/irc/irc-display.c:271 src/irc/irc-display.c:300 src/irc/irc-recv.c:3191
msgid "seconds"
msgstr ""
-#: src/irc/irc-display.c:234
+#: src/irc/irc-display.c:282
msgid "(hidden)"
msgstr ""
@@ -1288,55 +1288,55 @@ msgstr ""
msgid "%s: using local hostname \"%s\"\n"
msgstr ""
-#: src/irc/irc-send.c:187 src/common/command.c:845
+#: src/irc/irc-send.c:214 src/common/command.c:832
#, c-format
msgid "%s cannot find nick for sending message\n"
msgstr ""
-#: src/irc/irc-send.c:347 src/irc/irc-send.c:375 src/irc/irc-send.c:566
-#: src/irc/irc-send.c:599 src/irc/irc-send.c:632 src/irc/irc-send.c:680
-#: src/irc/irc-send.c:716 src/irc/irc-send.c:783 src/irc/irc-send.c:840
-#: src/irc/irc-send.c:1166 src/irc/irc-send.c:1296 src/irc/irc-send.c:1776
-#: src/irc/irc-send.c:1890
+#: src/irc/irc-send.c:385 src/irc/irc-send.c:413 src/irc/irc-send.c:615
+#: src/irc/irc-send.c:652 src/irc/irc-send.c:689 src/irc/irc-send.c:743
+#: src/irc/irc-send.c:788 src/irc/irc-send.c:867 src/irc/irc-send.c:928
+#: src/irc/irc-send.c:1275 src/irc/irc-send.c:1417 src/irc/irc-send.c:1969
+#: src/irc/irc-send.c:2099
#, c-format
msgid "%s \"%s\" command can only be executed in a channel buffer\n"
msgstr ""
-#: src/irc/irc-send.c:478 src/irc/irc-send.c:490 src/irc/irc-send.c:508
-#: src/irc/irc-send.c:1144 src/irc/irc-send.c:1269 src/irc/irc-send.c:1802
-#: src/common/command.c:1638 src/common/command.c:2136
-#: src/common/command.c:2275
+#: src/irc/irc-send.c:524 src/irc/irc-send.c:536 src/irc/irc-send.c:554
+#: src/irc/irc-send.c:1248 src/irc/irc-send.c:1386 src/irc/irc-send.c:1995
+#: src/common/command.c:1650 src/common/command.c:2163
+#: src/common/command.c:2304
#, c-format
msgid "%s wrong argument count for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:531 src/irc/irc-send.c:768 src/irc/irc-send.c:825
+#: src/irc/irc-send.c:576 src/irc/irc-send.c:852 src/irc/irc-send.c:913
#, c-format
msgid "%s wrong arguments for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:949 src/irc/irc-send.c:1344 src/irc/irc-send.c:1358
-#: src/irc/irc-send.c:1703
+#: src/irc/irc-send.c:1040 src/irc/irc-send.c:1473 src/irc/irc-send.c:1487
+#: src/irc/irc-send.c:1887
#, c-format
msgid "%s \"%s\" command can not be executed on a server buffer\n"
msgstr ""
-#: src/irc/irc-send.c:1018
+#: src/irc/irc-send.c:1122
#, c-format
msgid "%s \"%s\" command can only be executed in a channel or private buffer\n"
msgstr ""
-#: src/irc/irc-send.c:1060 src/irc/irc-recv.c:501
+#: src/irc/irc-send.c:1164 src/irc/irc-recv.c:501
#, c-format
msgid "%s nick \"%s\" not found for \"%s\" command\n"
msgstr ""
-#: src/irc/irc-send.c:1113 src/irc/irc-send.c:1454
+#: src/irc/irc-send.c:1217 src/irc/irc-send.c:1596
#, c-format
msgid "%s cannot create new private buffer \"%s\"\n"
msgstr ""
-#: src/irc/irc-send.c:1855
+#: src/irc/irc-send.c:2060
#, c-format
msgid "%s, compiled on %s %s\n"
msgstr ""
@@ -1652,11 +1652,11 @@ msgstr ""
msgid "%s[%s%s%s]%s idle: "
msgstr ""
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "days"
msgstr ""
-#: src/irc/irc-recv.c:3175 src/common/command.c:3204 src/common/command.c:3222
+#: src/irc/irc-recv.c:3175 src/common/command.c:3260 src/common/command.c:3278
msgid "day"
msgstr ""
@@ -2001,86 +2001,86 @@ msgstr ""
msgid "Removing ignore:"
msgstr ""
-#: src/plugins/plugins.c:213
+#: src/plugins/plugins.c:220
#, c-format
msgid ""
"%s plugin %s: unable to add handler for IRC command \"%s\" (not enough "
"memory)\n"
msgstr ""
-#: src/plugins/plugins.c:250
+#: src/plugins/plugins.c:257
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (already exists)\n"
msgstr ""
-#: src/plugins/plugins.c:288
+#: src/plugins/plugins.c:295
#, c-format
msgid ""
"%s plugin %s: unable to add handler for \"%s\" command (not enough memory)\n"
msgstr ""
-#: src/plugins/plugins.c:535
+#: src/plugins/plugins.c:542
#, c-format
msgid "%s unable to load plugin \"%s\": %s\n"
msgstr ""
-#: src/plugins/plugins.c:546
+#: src/plugins/plugins.c:553
#, c-format
msgid "%s symbol \"plugin_name\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:557
+#: src/plugins/plugins.c:564
#, c-format
msgid ""
"%s unable to load plugin \"%s\": a plugin with same name already exists\n"
msgstr ""
-#: src/plugins/plugins.c:569
+#: src/plugins/plugins.c:576
#, c-format
msgid ""
"%s symbol \"plugin_description\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:580
+#: src/plugins/plugins.c:587
#, c-format
msgid ""
"%s symbol \"plugin_version\" not found in plugin \"%s\", failed to load\n"
msgstr ""
-#: src/plugins/plugins.c:591
+#: src/plugins/plugins.c:598
#, c-format
msgid ""
"%s function \"weechat_plugin_init\" not found in plugin \"%s\", failed to "
"load\n"
msgstr ""
-#: src/plugins/plugins.c:645
+#: src/plugins/plugins.c:652
#, c-format
msgid "Initializing plugin \"%s\" %s\n"
msgstr ""
-#: src/plugins/plugins.c:653
+#: src/plugins/plugins.c:660
#, c-format
msgid "%s unable to initialize plugin \"%s\"\n"
msgstr ""
-#: src/plugins/plugins.c:664
+#: src/plugins/plugins.c:671
#, c-format
msgid "%s unable to load plugin \"%s\" (not enough memory)\n"
msgstr ""
-#: src/plugins/plugins.c:672
+#: src/plugins/plugins.c:679
#, c-format
msgid "Plugin \"%s\" (%s) loaded.\n"
msgstr ""
-#: src/plugins/plugins.c:838
+#: src/plugins/plugins.c:845
#, c-format
msgid "Plugin \"%s\" unloaded.\n"
msgstr ""
-#: src/plugins/plugins.c:844
+#: src/plugins/plugins.c:851
#, c-format
msgid "%s plugin \"%s\" not found\n"
msgstr ""
@@ -2111,6 +2111,16 @@ msgid ""
"#\n"
msgstr ""
+#: src/plugins/plugins-interface.c:295
+#, c-format
+msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
+msgstr ""
+
+#: src/plugins/plugins-interface.c:309
+#, c-format
+msgid "%s server not found for plugin exec command\n"
+msgstr ""
+
#: src/gui/curses/gui-input.c:338
#, c-format
msgid "Day changed to %s\n"
@@ -2358,7 +2368,7 @@ msgstr ""
msgid "grab a key"
msgstr ""
-#: src/gui/gui-keyboard.c:434 src/common/command.c:2151
+#: src/gui/gui-keyboard.c:434 src/common/command.c:2178
#, c-format
msgid "%s unable to bind key \"%s\"\n"
msgstr ""
@@ -2745,506 +2755,515 @@ msgstr ""
msgid "%s unknown command \"%s\" (type /help for help)\n"
msgstr ""
-#: src/common/command.c:892
+#: src/common/command.c:879
msgid "This window is not a channel!\n"
msgstr ""
-#: src/common/command.c:923 src/common/command.c:954 src/common/command.c:1069
+#: src/common/command.c:912 src/common/command.c:943 src/common/command.c:1062
#, c-format
msgid "%s missing arguments for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:930
+#: src/common/command.c:919
#, c-format
msgid "%s alias can not start with \"/\"\n"
msgstr ""
-#: src/common/command.c:939
+#: src/common/command.c:928
#, c-format
msgid "Alias \"%s\" => \"%s\" created\n"
msgstr ""
-#: src/common/command.c:945
+#: src/common/command.c:934
#, c-format
msgid "Failed to create alias \"%s\" => \"%s\" (not enough memory)\n"
msgstr ""
-#: src/common/command.c:965
+#: src/common/command.c:954
msgid "List of aliases:\n"
msgstr ""
-#: src/common/command.c:979
+#: src/common/command.c:968
msgid "No alias defined.\n"
msgstr ""
-#: src/common/command.c:998
+#: src/common/command.c:987
#, c-format
msgid "%sServer: %s%s\n"
msgstr ""
-#: src/common/command.c:1003
+#: src/common/command.c:992
#, c-format
msgid "%snot connected\n"
msgstr ""
-#: src/common/command.c:1007
+#: src/common/command.c:996
#, c-format
msgid "%sChannel: %s%s %s(server: %s%s%s)\n"
msgstr ""
-#: src/common/command.c:1016
+#: src/common/command.c:1005
#, c-format
msgid "%sPrivate with: %s%s %s(server: %s%s%s)\n"
msgstr ""
-#: src/common/command.c:1025
+#: src/common/command.c:1014
#, c-format
msgid "%sunknown\n"
msgstr ""
-#: src/common/command.c:1048
+#: src/common/command.c:1041
msgid "Opened buffers:\n"
msgstr ""
-#: src/common/command.c:1092
+#: src/common/command.c:1085
#, c-format
msgid "%s incorrect buffer number\n"
msgstr ""
-#: src/common/command.c:1108
+#: src/common/command.c:1101
#, c-format
msgid "%s can not close the single buffer\n"
msgstr ""
-#: src/common/command.c:1118
+#: src/common/command.c:1111
#, c-format
msgid "%s can not close server buffer while channels are opened\n"
msgstr ""
-#: src/common/command.c:1167
+#: src/common/command.c:1162
msgid "Notify levels: "
msgstr ""
-#: src/common/command.c:1196 src/common/command.c:1244
+#: src/common/command.c:1191 src/common/command.c:1239
#, c-format
msgid "%s incorrect notify level (must be between %d and %d)\n"
msgstr ""
-#: src/common/command.c:1205
+#: src/common/command.c:1200
#, c-format
msgid "%s incorrect buffer for notify (must be channel or private)\n"
msgstr ""
-#: src/common/command.c:1214
+#: src/common/command.c:1209
#, c-format
msgid "New notify level for %s%s%s: %s%d %s"
msgstr ""
-#: src/common/command.c:1224
+#: src/common/command.c:1219
msgid "(hotlist: never)\n"
msgstr ""
-#: src/common/command.c:1227
+#: src/common/command.c:1222
msgid "(hotlist: highlights)\n"
msgstr ""
-#: src/common/command.c:1230
+#: src/common/command.c:1225
msgid "(hotlist: highlights + messages)\n"
msgstr ""
-#: src/common/command.c:1233
+#: src/common/command.c:1228
msgid "(hotlist: highlights + messages + join/part (all))\n"
msgstr ""
-#: src/common/command.c:1332
+#: src/common/command.c:1327
#, c-format
msgid "Charsets for server %s%s%s: "
msgstr ""
-#: src/common/command.c:1340
+#: src/common/command.c:1335
#, c-format
msgid "Charsets for channel %s%s%s: "
msgstr ""
-#: src/common/command.c:1348
+#: src/common/command.c:1343
#, c-format
msgid "Charsets for private %s%s%s: "
msgstr ""
-#: src/common/command.c:1376 src/common/command.c:1406
-#: src/common/command.c:1436
+#: src/common/command.c:1371 src/common/command.c:1401
+#: src/common/command.c:1431
#, c-format
msgid " (inherited: \"%s%s%s\")"
msgstr ""
-#: src/common/command.c:1500 src/common/command.c:1523
-#: src/common/command.c:1657 src/common/command.c:2268
-#: src/common/command.c:3332 src/common/command.c:3375
+#: src/common/command.c:1500 src/common/command.c:1528
+#: src/common/command.c:1669 src/common/command.c:2297
+#: src/common/command.c:3392 src/common/command.c:3435
#, c-format
msgid "%s unknown option for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:1553
+#: src/common/command.c:1563
#, c-format
msgid "%s already connected to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1561
+#: src/common/command.c:1571
#, c-format
msgid "%s currently connecting to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1579 src/common/command.c:1702
+#: src/common/command.c:1589 src/common/command.c:1718
#, c-format
msgid "%s server not found\n"
msgstr ""
-#: src/common/command.c:1686
+#: src/common/command.c:1702
#, c-format
msgid "%s not connected to server \"%s\"!\n"
msgstr ""
-#: src/common/command.c:1694
+#: src/common/command.c:1710
msgid "Auto-reconnection is cancelled\n"
msgstr ""
-#: src/common/command.c:1728 src/common/weechat.c:402
+#: src/common/command.c:1746 src/common/weechat.c:402
#, c-format
msgid "%s internal commands:\n"
msgstr ""
-#: src/common/command.c:1738 src/common/weechat.c:422
+#: src/common/command.c:1756 src/common/weechat.c:422
#, c-format
msgid "IRC commands:\n"
msgstr ""
-#: src/common/command.c:1752
+#: src/common/command.c:1770
msgid "Plugin commands:\n"
msgstr ""
-#: src/common/command.c:1868
+#: src/common/command.c:1886
#, c-format
msgid "No help available, \"%s\" is an unknown command\n"
msgstr ""
-#: src/common/command.c:1934
+#: src/common/command.c:1955
#, c-format
msgid "%son %s%s%s/%s%s%s:%s ignoring %s%s%s from %s%s\n"
msgstr ""
-#: src/common/command.c:1968
+#: src/common/command.c:1993
msgid "List of ignore:\n"
msgstr ""
-#: src/common/command.c:1985
+#: src/common/command.c:2010
msgid "No ignore defined.\n"
msgstr ""
-#: src/common/command.c:2011
+#: src/common/command.c:2036
msgid "New ignore:"
msgstr ""
-#: src/common/command.c:2031
+#: src/common/command.c:2056
#, c-format
msgid "New key binding: %s"
msgstr ""
-#: src/common/command.c:2068
+#: src/common/command.c:2095
msgid "Key bindings:\n"
msgstr ""
-#: src/common/command.c:2082
+#: src/common/command.c:2109
#, c-format
msgid "Key \"%s\" unbinded\n"
msgstr ""
-#: src/common/command.c:2088
+#: src/common/command.c:2115
#, c-format
msgid "%s unable to unbind key \"%s\"\n"
msgstr ""
-#: src/common/command.c:2096 src/common/weechat.c:454
+#: src/common/command.c:2123 src/common/weechat.c:454
#, c-format
msgid "Internal key functions:\n"
msgstr ""
-#: src/common/command.c:2116
+#: src/common/command.c:2143
msgid "Default key bindings restored\n"
msgstr ""
-#: src/common/command.c:2122
+#: src/common/command.c:2149
#, c-format
msgid "%s \"-yes\" argument is required for keys reset (securuty reason)\n"
msgstr ""
-#: src/common/command.c:2181
+#: src/common/command.c:2210
msgid "Plugins loaded:\n"
msgstr ""
-#: src/common/command.c:2197
+#: src/common/command.c:2226
msgid " message handlers:\n"
msgstr ""
-#: src/common/command.c:2206
+#: src/common/command.c:2235
#, c-format
msgid " IRC(%s)\n"
msgstr ""
-#: src/common/command.c:2213
+#: src/common/command.c:2242
msgid " (no message handler)\n"
msgstr ""
-#: src/common/command.c:2218
+#: src/common/command.c:2247
msgid " command handlers:\n"
msgstr ""
-#: src/common/command.c:2239
+#: src/common/command.c:2268
msgid " (no command handler)\n"
msgstr ""
-#: src/common/command.c:2245
+#: src/common/command.c:2274
msgid " (no plugin)\n"
msgstr ""
-#: src/common/command.c:2281
+#: src/common/command.c:2310
msgid ""
"Command \"plugin\" is not available, WeeChat was built without plugins "
"support.\n"
msgstr ""
-#: src/common/command.c:2332
-msgid "No server.\n"
+#: src/common/command.c:2338
+msgid "Configuration file saved\n"
msgstr ""
#: src/common/command.c:2343
#, c-format
+msgid "%s failed to save configuration file\n"
+msgstr ""
+
+#: src/common/command.c:2382
+msgid "No server.\n"
+msgstr ""
+
+#: src/common/command.c:2393
+#, c-format
msgid "Server '%s' not found.\n"
msgstr ""
-#: src/common/command.c:2355
+#: src/common/command.c:2405
#, c-format
msgid "%s missing servername for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2363
+#: src/common/command.c:2413
#, c-format
msgid "%s too much arguments for \"%s\" command, ignoring arguments\n"
msgstr ""
-#: src/common/command.c:2382
+#: src/common/command.c:2423
#, c-format
msgid "%s server \"%s\" not found for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2390
+#: src/common/command.c:2431
#, c-format
msgid ""
"%s you can not delete server \"%s\" because you are connected to. Try /"
"disconnect %s before.\n"
msgstr ""
-#: src/common/command.c:2410
+#: src/common/command.c:2451
#, c-format
msgid "Server %s%s%s has been deleted\n"
msgstr ""
-#: src/common/command.c:2429
+#: src/common/command.c:2470
#, c-format
msgid "%s missing parameters for \"%s\" command\n"
msgstr ""
-#: src/common/command.c:2439
+#: src/common/command.c:2480
#, c-format
msgid "%s server \"%s\" already exists, can't create it!\n"
msgstr ""
-#: src/common/command.c:2468 src/common/command.c:2496
-#: src/common/command.c:2509 src/common/command.c:2535
+#: src/common/command.c:2509 src/common/command.c:2537
+#: src/common/command.c:2550 src/common/command.c:2576
#, c-format
msgid "%s missing password for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2481
+#: src/common/command.c:2522
#, c-format
msgid "%s missing nick(s) for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2522
+#: src/common/command.c:2563
#, c-format
msgid "%s missing command for \"%s\" parameter\n"
msgstr ""
-#: src/common/command.c:2558
+#: src/common/command.c:2600
#, c-format
msgid "Server %s%s%s created\n"
msgstr ""
-#: src/common/command.c:2567
+#: src/common/command.c:2609
#, c-format
msgid "%s unable to create server\n"
msgstr ""
-#: src/common/command.c:2626
+#: src/common/command.c:2668
msgid "(unknown)"
msgstr ""
-#: src/common/command.c:2649
+#: src/common/command.c:2691
#, c-format
msgid "%s(password hidden) "
msgstr ""
-#: src/common/command.c:2745
+#: src/common/command.c:2789
#, c-format
msgid "%s server \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:2778 src/common/command.c:2826
+#: src/common/command.c:2822 src/common/command.c:2870
#, c-format
msgid "%s config option \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:2783 src/common/command.c:2818
+#: src/common/command.c:2827 src/common/command.c:2862
#, c-format
msgid "%s incorrect value for option \"%s\"\n"
msgstr ""
-#: src/common/command.c:2799
+#: src/common/command.c:2843
#, c-format
msgid "%s option \"%s\" can not be changed while WeeChat is running\n"
msgstr ""
-#: src/common/command.c:2909
+#: src/common/command.c:2953
#, c-format
msgid "No config option found with \"%s\"\n"
msgstr ""
-#: src/common/command.c:2912
+#: src/common/command.c:2956
msgid "No config option found\n"
msgstr ""
-#: src/common/command.c:2919
+#: src/common/command.c:2963
#, c-format
msgid "%sDetail:\n"
msgstr ""
-#: src/common/command.c:2924
+#: src/common/command.c:2968
msgid " . type boolean (values: 'on' or 'off')\n"
msgstr ""
-#: src/common/command.c:2925 src/common/command.c:2948
-#: src/common/command.c:2954 src/common/command.c:2960
+#: src/common/command.c:2969 src/common/command.c:2992
+#: src/common/command.c:2998 src/common/command.c:3004
#: src/common/weechat.c:338 src/common/weechat.c:363 src/common/weechat.c:370
#: src/common/weechat.c:377
#, c-format
msgid " . default value: '%s'\n"
msgstr ""
-#: src/common/command.c:2930
+#: src/common/command.c:2974
#, c-format
msgid " . type integer (values: between %d and %d)\n"
msgstr ""
-#: src/common/command.c:2933 src/common/weechat.c:347
+#: src/common/command.c:2977 src/common/weechat.c:347
#, c-format
msgid " . default value: %d\n"
msgstr ""
-#: src/common/command.c:2937
+#: src/common/command.c:2981
msgid " . type string (values: "
msgstr ""
-#: src/common/command.c:2950 src/common/command.c:2956
-#: src/common/command.c:2962 src/common/weechat.c:365 src/common/weechat.c:372
+#: src/common/command.c:2994 src/common/command.c:3000
+#: src/common/command.c:3006 src/common/weechat.c:365 src/common/weechat.c:372
#: src/common/weechat.c:379
msgid "empty"
msgstr ""
-#: src/common/command.c:2953
+#: src/common/command.c:2997
msgid " . type color (Curses or Gtk color, look at WeeChat doc)\n"
msgstr ""
-#: src/common/command.c:2959
+#: src/common/command.c:3003
msgid " . type string (any string)\n"
msgstr ""
-#: src/common/command.c:2965 src/common/weechat.c:382
+#: src/common/command.c:3009 src/common/weechat.c:382
#, c-format
msgid " . description: %s\n"
msgstr ""
-#: src/common/command.c:2976
+#: src/common/command.c:3020
#, c-format
msgid "config option(s) found with \"%s\"\n"
msgstr ""
-#: src/common/command.c:2979
+#: src/common/command.c:3023
msgid "config option(s) found\n"
msgstr ""
-#: src/common/command.c:3003
+#: src/common/command.c:3049
#, c-format
msgid "%s alias or command \"%s\" not found\n"
msgstr ""
-#: src/common/command.c:3013
+#: src/common/command.c:3059
#, c-format
msgid "Alias \"%s\" removed\n"
msgstr ""
-#: src/common/command.c:3069
+#: src/common/command.c:3119
msgid "ignore were removed.\n"
msgstr ""
-#: src/common/command.c:3071
+#: src/common/command.c:3121
msgid "ignore was removed.\n"
msgstr ""
-#: src/common/command.c:3076
+#: src/common/command.c:3126
#, c-format
msgid "%s no ignore found\n"
msgstr ""
-#: src/common/command.c:3108
+#: src/common/command.c:3160
#, c-format
msgid "%s can't upgrade: connection to at least one server is pending\n"
msgstr ""
-#: src/common/command.c:3118
+#: src/common/command.c:3170
#, c-format
msgid ""
"%s can't upgrade: connection to at least one SSL server is active (should be "
"fixed in a future version)\n"
msgstr ""
-#: src/common/command.c:3134
+#: src/common/command.c:3186
msgid "Upgrading WeeChat...\n"
msgstr ""
-#: src/common/command.c:3141
+#: src/common/command.c:3193
#, c-format
msgid "%s unable to save session in file\n"
msgstr ""
-#: src/common/command.c:3166
+#: src/common/command.c:3218
#, c-format
msgid "%s exec failed (program: \"%s\"), exiting WeeChat\n"
msgstr ""
-#: src/common/command.c:3202
+#: src/common/command.c:3258
#, c-format
msgid "WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"
msgstr ""
-#: src/common/command.c:3216
+#: src/common/command.c:3272
#, c-format
msgid "WeeChat uptime: %s%d %s%s %s%02d%s:%s%02d%s:%s%02d%s, started on %s%s"
msgstr ""
-#: src/common/command.c:3256
+#: src/common/command.c:3316
msgid "Opened windows:\n"
msgstr ""
-#: src/common/command.c:3343
+#: src/common/command.c:3403
#, c-format
msgid ""
"%s can not merge windows, there's no other window with same size near "
@@ -3265,27 +3284,27 @@ msgstr ""
msgid "FIFO pipe is open\n"
msgstr ""
-#: src/common/fifo.c:125
+#: src/common/fifo.c:131
#, c-format
msgid "%s invalid text received on FIFO pipe\n"
msgstr ""
-#: src/common/fifo.c:147
+#: src/common/fifo.c:153
#, c-format
msgid "%s server \"%s\" not found (FIFO pipe data)\n"
msgstr ""
-#: src/common/fifo.c:158
+#: src/common/fifo.c:164
#, c-format
msgid "%s channel \"%s\" not found (FIFO pipe data)\n"
msgstr ""
-#: src/common/fifo.c:248 src/common/fifo.c:250
+#: src/common/fifo.c:246 src/common/fifo.c:248
#, c-format
msgid "%s error reading FIFO pipe, closing it\n"
msgstr ""
-#: src/common/fifo.c:292
+#: src/common/fifo.c:290
msgid "FIFO pipe is closed\n"
msgstr ""
diff --git a/weechat/src/common/command.c b/weechat/src/common/command.c
index 0f2cea7a8..c32de5a00 100644
--- a/weechat/src/common/command.c
+++ b/weechat/src/common/command.c
@@ -522,15 +522,15 @@ free_exploded_string (char **exploded_string)
*/
int
-exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
+exec_weechat_command (t_irc_server *server, t_irc_channel *channel, char *string)
{
int i, argc, return_code, length1, length2;
char *command, *pos, *ptr_args, *ptr_args_color, **argv, *alias_command;
t_weechat_alias *ptr_alias;
-
+
if ((!string) || (!string[0]) || (string[0] != '/'))
return 0;
-
+
command = strdup (string);
/* look for end of command */
@@ -611,10 +611,10 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
{
if (weechat_commands[i].cmd_function_args)
return_code = (int) (weechat_commands[i].cmd_function_args)
- (window, argc, argv);
+ (server, channel, argc, argv);
else
return_code = (int) (weechat_commands[i].cmd_function_1arg)
- (window, ptr_args);
+ (server, channel, ptr_args);
if (return_code < 0)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -680,10 +680,10 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
}
if (irc_commands[i].cmd_function_args)
return_code = (int) (irc_commands[i].cmd_function_args)
- (server, argc, argv);
+ (server, channel, argc, argv);
else
return_code = (int) (irc_commands[i].cmd_function_1arg)
- (server, ptr_args);
+ (server, channel, ptr_args);
if (return_code < 0)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -715,12 +715,12 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
alias_command[length1] = ' ';
strcpy (alias_command + length1 + 1, ptr_args);
}
- (void) exec_weechat_command (window, server, alias_command);
+ (void) exec_weechat_command (server, channel, alias_command);
if (alias_command)
free (alias_command);
}
else
- (void) exec_weechat_command (window, server,
+ (void) exec_weechat_command (server, channel,
ptr_alias->alias_command);
free_exploded_string (argv);
@@ -749,9 +749,9 @@ exec_weechat_command (t_gui_window *window, t_irc_server *server, char *string)
*/
void
-user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
+user_command (t_irc_server *server, t_irc_channel *channel, char *command)
{
- t_gui_window *ptr_window;
+ t_gui_buffer *buffer;
t_irc_nick *ptr_nick;
int plugin_args_length;
char *command_with_colors, *command_encoded, *command_with_colors2;
@@ -760,25 +760,13 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
if ((!command) || (!command[0]) || (command[0] == '\r') || (command[0] == '\n'))
return;
- if (!buffer)
- {
- buffer = gui_current_window->buffer;
- ptr_window = gui_current_window;
- }
- else
- {
- ptr_window = gui_buffer_find_window (buffer);
- if (!ptr_window)
- ptr_window = gui_current_window;
- }
+ irc_find_context (server, channel, NULL, &buffer);
if ((command[0] == '/') && (command[1] != '/'))
{
/* WeeChat internal command (or IRC command) */
- command_encoded = channel_iconv_encode (SERVER(buffer),
- CHANNEL(buffer),
- command);
- (void) exec_weechat_command (ptr_window, server,
+ command_encoded = channel_iconv_encode (server, channel, command);
+ (void) exec_weechat_command (server, channel,
(command_encoded) ? command_encoded : command);
if (command_encoded)
free (command_encoded);
@@ -793,8 +781,7 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
command_with_colors = (cfg_irc_colors_send) ?
(char *)gui_color_encode ((unsigned char *)command) : NULL;
- command_encoded = channel_iconv_encode (SERVER(buffer),
- CHANNEL(buffer),
+ command_encoded = channel_iconv_encode (server, channel,
(command_with_colors) ? command_with_colors : command);
if (CHANNEL(buffer)->dcc_chat)
dcc_chat_sendf ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat),
@@ -831,9 +818,9 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
ptr_nick = nick_search (CHANNEL(buffer), server->nick);
if (ptr_nick)
{
- irc_display_nick (CHANNEL(buffer)->buffer, ptr_nick, NULL,
+ irc_display_nick (buffer, ptr_nick, NULL,
MSG_TYPE_NICK, 1, 1, 0);
- gui_printf (CHANNEL(buffer)->buffer,
+ gui_printf (buffer,
"%s\n",
(command_with_colors2) ?
command_with_colors2 : command);
@@ -899,13 +886,15 @@ user_command (t_gui_buffer *buffer, t_irc_server *server, char *command)
*/
int
-weechat_cmd_alias (t_gui_window *window, char *arguments)
+weechat_cmd_alias (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos;
t_weechat_alias *ptr_alias;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (arguments && arguments[0])
{
@@ -1031,15 +1020,19 @@ weechat_cmd_buffer_display_info (t_gui_buffer *buffer)
*/
int
-weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
+weechat_cmd_buffer (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
- t_gui_buffer *ptr_buffer;
+ t_gui_window *window;
+ t_gui_buffer *buffer, *ptr_buffer;
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
long number;
char *error;
int target_buffer;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
/* list opened buffers */
@@ -1077,13 +1070,13 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
if ((error) && (error[0] == '\0'))
{
if (argv[1][0] == '+')
- gui_buffer_move_to_number (window,
- window->buffer->number + ((int) number));
+ gui_buffer_move_to_number (buffer,
+ buffer->number + ((int) number));
else if (argv[1][0] == '-')
- gui_buffer_move_to_number (window,
- window->buffer->number - ((int) number));
+ gui_buffer_move_to_number (buffer,
+ buffer->number - ((int) number));
else
- gui_buffer_move_to_number (window, (int) number);
+ gui_buffer_move_to_number (buffer, (int) number);
}
else
{
@@ -1098,10 +1091,10 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
{
/* close buffer (server or channel/private) */
- if ((!window->buffer->next_buffer)
- && (window->buffer == gui_buffers)
- && ((!window->buffer->all_servers)
- || (!SERVER(window->buffer))))
+ if ((!buffer->next_buffer)
+ && (buffer == gui_buffers)
+ && ((!buffer->all_servers)
+ || (!SERVER(buffer))))
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -1109,9 +1102,9 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
- if (SERVER(window->buffer)->channels)
+ if (SERVER(buffer)->channels)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
gui_printf (NULL,
@@ -1120,43 +1113,45 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- server_disconnect (SERVER(window->buffer), 0);
- ptr_server = SERVER(window->buffer);
- if (!window->buffer->all_servers)
+ server_disconnect (SERVER(buffer), 0);
+ ptr_server = SERVER(buffer);
+ if (!buffer->all_servers)
{
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
ptr_server->buffer = NULL;
}
else
{
ptr_server->buffer = NULL;
- window->buffer->server = NULL;
+ buffer->server = NULL;
gui_window_switch_server (window);
}
}
else
{
- if (SERVER(window->buffer))
+ if (SERVER(buffer))
{
- if (SERVER(window->buffer)->is_connected
- && CHANNEL(window->buffer)
- && CHANNEL(window->buffer)->nicks)
- irc_cmd_send_part (SERVER(window->buffer), NULL);
+ if (SERVER(buffer)->is_connected
+ && CHANNEL(buffer)
+ && CHANNEL(buffer)->nicks)
+ irc_cmd_send_part (SERVER(buffer),
+ CHANNEL(buffer),
+ NULL);
else
{
- ptr_channel = channel_search (SERVER(window->buffer),
- CHANNEL(window->buffer)->name);
+ ptr_channel = channel_search (SERVER(buffer),
+ CHANNEL(buffer)->name);
if (ptr_channel)
- channel_free (SERVER(window->buffer),
+ channel_free (SERVER(buffer),
ptr_channel);
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
}
}
else
- gui_buffer_free (window->buffer, 1);
+ gui_buffer_free (buffer, 1);
}
- gui_draw_buffer_status (window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
}
else if (ascii_strcasecmp (argv[0], "notify") == 0)
{
@@ -1197,8 +1192,8 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR, NOTIFY_LEVEL_MIN, NOTIFY_LEVEL_MAX);
return -1;
}
- if ((!BUFFER_IS_CHANNEL(window->buffer))
- && (!BUFFER_IS_PRIVATE(window->buffer)))
+ if ((!BUFFER_IS_CHANNEL(buffer))
+ && (!BUFFER_IS_PRIVATE(buffer)))
{
/* invalid buffer type (only ok on channel or private) */
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -1206,14 +1201,14 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
WEECHAT_ERROR);
return -1;
}
- window->buffer->notify_level = number;
- channel_set_notify_level (SERVER(window->buffer),
- CHANNEL(window->buffer),
+ buffer->notify_level = number;
+ channel_set_notify_level (SERVER(buffer),
+ CHANNEL(buffer),
number);
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("New notify level for %s%s%s: %s%d %s"),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
number,
@@ -1258,7 +1253,7 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
number = strtol (argv[0] + 1, &error, 10);
if ((error) && (error[0] == '\0'))
{
- target_buffer = window->buffer->number - (int) number;
+ target_buffer = buffer->number - (int) number;
if (target_buffer < 1)
target_buffer = (last_gui_buffer) ?
last_gui_buffer->number + target_buffer : 1;
@@ -1273,7 +1268,7 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
number = strtol (argv[0] + 1, &error, 10);
if ((error) && (error[0] == '\0'))
{
- target_buffer = window->buffer->number + (int) number;
+ target_buffer = buffer->number + (int) number;
if (last_gui_buffer && target_buffer > last_gui_buffer->number)
target_buffer -= last_gui_buffer->number;
gui_buffer_switch_by_number (window,
@@ -1313,48 +1308,48 @@ weechat_cmd_buffer (t_gui_window *window, int argc, char **argv)
}
/*
- * weechat_cmd_charset_display: display charsets for current server or channel
+ * weechat_cmd_charset_display: display charsets for a server or channel
*/
void
-weechat_cmd_charset_display (t_gui_window *window)
+weechat_cmd_charset_display (t_gui_buffer *buffer)
{
char *server_item = "server", *ptr_item;
char *value, *string, *herited;
int length;
- if (BUFFER_IS_SERVER(window->buffer) ||
- BUFFER_IS_CHANNEL(window->buffer) ||
- BUFFER_IS_PRIVATE(window->buffer))
+ if (BUFFER_IS_SERVER(buffer) ||
+ BUFFER_IS_CHANNEL(buffer) ||
+ BUFFER_IS_PRIVATE(buffer))
{
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
gui_printf_nolog (NULL, _("Charsets for server %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
- SERVER(window->buffer)->name,
+ SERVER(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
ptr_item = server_item;
}
- else if (BUFFER_IS_CHANNEL(window->buffer))
+ else if (BUFFER_IS_CHANNEL(buffer))
{
gui_printf_nolog (NULL, _("Charsets for channel %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
- ptr_item = CHANNEL(window->buffer)->name;
+ ptr_item = CHANNEL(buffer)->name;
}
else
{
gui_printf_nolog (NULL, _("Charsets for private %s%s%s: "),
GUI_COLOR(COLOR_WIN_CHAT_CHANNEL),
- CHANNEL(window->buffer)->name,
+ CHANNEL(buffer)->name,
GUI_COLOR(COLOR_WIN_CHAT));
- ptr_item = CHANNEL(window->buffer)->name;
+ ptr_item = CHANNEL(buffer)->name;
}
/* decode ISO */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_decode_iso),
+ config_option_list_get_value (&(SERVER(buffer)->charset_decode_iso),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1364,8 +1359,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_decode_iso (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_decode_iso (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "decode_iso: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1384,7 +1379,7 @@ weechat_cmd_charset_display (t_gui_window *window)
/* decode UTF */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_decode_utf),
+ config_option_list_get_value (&(SERVER(buffer)->charset_decode_utf),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1394,8 +1389,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_decode_utf (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_decode_utf (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "decode_utf: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1414,7 +1409,7 @@ weechat_cmd_charset_display (t_gui_window *window)
/* encode */
herited = NULL;
- config_option_list_get_value (&(SERVER(window->buffer)->charset_encode),
+ config_option_list_get_value (&(SERVER(buffer)->charset_encode),
ptr_item, &value, &length);
if (value && (length > 0))
{
@@ -1424,8 +1419,8 @@ weechat_cmd_charset_display (t_gui_window *window)
else
{
string = strdup ("");
- herited = channel_get_charset_encode (SERVER(window->buffer),
- CHANNEL(window->buffer));
+ herited = channel_get_charset_encode (SERVER(buffer),
+ CHANNEL(buffer));
}
gui_printf (NULL, "encode: \"%s%s%s\"",
GUI_COLOR(COLOR_WIN_CHAT_HOST),
@@ -1449,24 +1444,24 @@ weechat_cmd_charset_display (t_gui_window *window)
*/
void
-weechat_cmd_charset_set (t_gui_window *window, char **string, char *charset)
+weechat_cmd_charset_set (t_gui_buffer *buffer, char **string, char *charset)
{
- if (BUFFER_IS_SERVER(window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
if (charset)
config_option_list_set (string, "server", charset);
else
config_option_list_remove (string, "server");
- weechat_cmd_charset_display (window);
+ weechat_cmd_charset_display (buffer);
}
- else if (BUFFER_IS_CHANNEL(window->buffer) ||
- BUFFER_IS_PRIVATE(window->buffer))
+ else if (BUFFER_IS_CHANNEL(buffer) ||
+ BUFFER_IS_PRIVATE(buffer))
{
if (charset)
- config_option_list_set (string, CHANNEL(window->buffer)->name, charset);
+ config_option_list_set (string, CHANNEL(buffer)->name, charset);
else
- config_option_list_remove (string, CHANNEL(window->buffer)->name);
- weechat_cmd_charset_display (window);
+ config_option_list_remove (string, CHANNEL(buffer)->name);
+ weechat_cmd_charset_display (buffer);
}
}
@@ -1475,23 +1470,28 @@ weechat_cmd_charset_set (t_gui_window *window, char **string, char *charset)
*/
int
-weechat_cmd_charset (t_gui_window *window, int argc, char **argv)
+weechat_cmd_charset (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 0)
- weechat_cmd_charset_display (window);
+ weechat_cmd_charset_display (buffer);
else
{
if (ascii_strcasecmp (argv[0], "decode_iso") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_decode_iso),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_decode_iso),
(argc > 1) ? argv[1] : NULL);
else if (ascii_strcasecmp (argv[0], "decode_utf") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_decode_utf),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_decode_utf),
(argc > 1) ? argv[1] : NULL);
else if (ascii_strcasecmp (argv[0], "encode") == 0)
- weechat_cmd_charset_set (window,
- &(SERVER(window->buffer)->charset_encode),
+ weechat_cmd_charset_set (buffer,
+ &(SERVER(buffer)->charset_encode),
(argc > 1) ? argv[1] : NULL);
else
{
@@ -1510,8 +1510,13 @@ weechat_cmd_charset (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
+weechat_cmd_clear (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 1)
{
if (ascii_strcasecmp (argv[0], "-all") == 0)
@@ -1526,7 +1531,7 @@ weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
}
}
else
- gui_buffer_clear (window->buffer);
+ gui_buffer_clear (buffer);
return 0;
}
@@ -1535,14 +1540,19 @@ weechat_cmd_clear (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_connect (t_gui_window *window, int argc, char **argv)
+weechat_cmd_connect (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, &window, &buffer);
+
if (argc == 1)
ptr_server = server_search (argv[0]);
else
- ptr_server = SERVER(window->buffer);
+ ptr_server = server;
if (ptr_server)
{
@@ -1626,10 +1636,12 @@ weechat_cmd_debug_display_windows (t_gui_window_tree *tree, int indent)
*/
int
-weechat_cmd_debug (t_gui_window *window, int argc, char **argv)
+weechat_cmd_debug (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (argc != 1)
{
@@ -1667,14 +1679,18 @@ weechat_cmd_debug (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
+weechat_cmd_disconnect (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 1)
ptr_server = server_search (argv[0]);
else
- ptr_server = SERVER(window->buffer);
+ ptr_server = server;
if (ptr_server)
{
@@ -1694,7 +1710,7 @@ weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
_("Auto-reconnection is cancelled\n"));
}
server_disconnect (ptr_server, 0);
- gui_draw_buffer_status (window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
}
else
{
@@ -1710,7 +1726,8 @@ weechat_cmd_disconnect (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_help (t_gui_window *window, int argc, char **argv)
+weechat_cmd_help (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
int i;
#ifdef PLUGINS
@@ -1719,7 +1736,8 @@ weechat_cmd_help (t_gui_window *window, int argc, char **argv)
#endif
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
switch (argc)
{
@@ -1877,42 +1895,45 @@ weechat_cmd_help (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_history (t_gui_window *window, int argc, char **argv)
+weechat_cmd_history (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_history *ptr_history;
int n;
int n_total;
int n_user;
+ irc_find_context (server, channel, NULL, &buffer);
+
n_user = cfg_history_display_default;
if (argc == 1)
{
if (ascii_strcasecmp (argv[0], "clear") == 0)
{
- history_buffer_free (window->buffer);
+ history_buffer_free (buffer);
return 0;
}
else
n_user = atoi (argv[0]);
}
-
- if (window->buffer->history != NULL)
+
+ if (buffer->history)
{
n_total = 1;
- for (ptr_history = window->buffer->history;
+ for (ptr_history = buffer->history;
ptr_history->next_history;
ptr_history = ptr_history->next_history)
{
n_total++;
}
- for (n = 0; ptr_history; ptr_history = ptr_history->prev_history)
+ for (n = 0; ptr_history; ptr_history = ptr_history->prev_history, n++)
{
if ((n_user > 0) && ((n_total - n_user) > n))
continue;
- irc_display_prefix (NULL, window->buffer, PREFIX_INFO);
- gui_printf_nolog (window->buffer, "%s\n", ptr_history->text);
- n++;
+ irc_display_prefix (NULL, buffer, PREFIX_INFO);
+ gui_printf_nolog (buffer, "%s\n", ptr_history->text);
}
}
@@ -1952,11 +1973,15 @@ weechat_cmd_ignore_display (char *text, t_irc_ignore *ptr_ignore)
*/
int
-weechat_cmd_ignore (t_gui_window *window, int argc, char **argv)
+weechat_cmd_ignore (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
t_irc_ignore *ptr_ignore;
int i;
+ irc_find_context (server, channel, NULL, &buffer);
+
ptr_ignore = NULL;
switch (argc)
{
@@ -1988,18 +2013,18 @@ weechat_cmd_ignore (t_gui_window *window, int argc, char **argv)
break;
case 1:
ptr_ignore = ignore_add (argv[0], "*", "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 2:
ptr_ignore = ignore_add (argv[0], argv[1], "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 3:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2],
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 4:
ptr_ignore = ignore_add (argv[0], argv[1], argv[2], argv[3]);
@@ -2047,14 +2072,16 @@ weechat_cmd_key_display (t_gui_key *key, int new_key)
*/
int
-weechat_cmd_key (t_gui_window *window, char *arguments)
+weechat_cmd_key (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos;
int i;
t_gui_key *ptr_key;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
if (arguments)
{
@@ -2162,7 +2189,8 @@ weechat_cmd_key (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
+weechat_cmd_plugin (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
#ifdef PLUGINS
t_weechat_plugin *ptr_plugin;
@@ -2170,7 +2198,8 @@ weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
int handler_found;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
switch (argc)
{
@@ -2293,12 +2322,28 @@ weechat_cmd_plugin (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_save (t_gui_window *window, int argc, char **argv)
+weechat_cmd_save (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ int rc;
+
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
- return (config_write ((argc == 1) ? argv[0] : NULL));
+ rc = config_write ((argc == 1) ? argv[0] : NULL);
+ if (rc == 0)
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_INFO);
+ gui_printf_nolog (NULL, _("Configuration file saved\n"));
+ }
+ else
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf_nolog (NULL, _("%s failed to save configuration file\n"),
+ WEECHAT_ERROR);
+ }
+ return rc;
}
/*
@@ -2306,13 +2351,18 @@ weechat_cmd_save (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_server (t_gui_window *window, int argc, char **argv)
+weechat_cmd_server (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
int i;
- t_irc_server server, *ptr_server, *server_found, *new_server;
+ t_irc_server server_tmp, *ptr_server, *server_found, *new_server;
t_gui_buffer *ptr_buffer;
char *server_name;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || (argc == 1))
{
/* list all servers */
@@ -2365,16 +2415,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
}
/* look for server by name */
- server_found = NULL;
- for (ptr_server = irc_servers; ptr_server;
- ptr_server = ptr_server->next_server)
- {
- if (strcmp (ptr_server->name, argv[1]) == 0)
- {
- server_found = ptr_server;
- break;
- }
- }
+ server_found = server_search (argv[1]);
if (!server_found)
{
irc_display_prefix (NULL, NULL, PREFIX_ERROR);
@@ -2414,13 +2455,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
if (server_name)
free (server_name);
- gui_redraw_buffer (window->buffer);
+ gui_redraw_buffer (buffer);
return 0;
}
/* init server struct */
- server_init (&server);
+ server_init (&server_tmp);
if (argc < 3)
{
@@ -2428,7 +2469,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing parameters for \"%s\" command\n"),
WEECHAT_ERROR, "server");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
@@ -2438,13 +2479,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s server \"%s\" already exists, can't create it!\n"),
WEECHAT_ERROR, argv[0]);
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.name = strdup (argv[0]);
- server.address = strdup (argv[1]);
- server.port = atoi (argv[2]);
+ server_tmp.name = strdup (argv[0]);
+ server_tmp.address = strdup (argv[1]);
+ server_tmp.port = atoi (argv[2]);
/* parse arguments */
for (i = 3; i < argc; i++)
@@ -2452,13 +2493,13 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
if (argv[i][0] == '-')
{
if (ascii_strcasecmp (argv[i], "-auto") == 0)
- server.autoconnect = 1;
+ server_tmp.autoconnect = 1;
if (ascii_strcasecmp (argv[i], "-noauto") == 0)
- server.autoconnect = 0;
+ server_tmp.autoconnect = 0;
if (ascii_strcasecmp (argv[i], "-ipv6") == 0)
- server.ipv6 = 1;
+ server_tmp.ipv6 = 1;
if (ascii_strcasecmp (argv[i], "-ssl") == 0)
- server.ssl = 1;
+ server_tmp.ssl = 1;
if (ascii_strcasecmp (argv[i], "-pwd") == 0)
{
if (i == (argc - 1))
@@ -2467,10 +2508,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-pwd");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.password = strdup (argv[++i]);
+ server_tmp.password = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-nicks") == 0)
{
@@ -2480,12 +2521,12 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing nick(s) for \"%s\" parameter\n"),
WEECHAT_ERROR, "-nicks");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.nick1 = strdup (argv[++i]);
- server.nick2 = strdup (argv[++i]);
- server.nick3 = strdup (argv[++i]);
+ server_tmp.nick1 = strdup (argv[++i]);
+ server_tmp.nick2 = strdup (argv[++i]);
+ server_tmp.nick3 = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-username") == 0)
{
@@ -2495,10 +2536,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-username");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.username = strdup (argv[++i]);
+ server_tmp.username = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-realname") == 0)
{
@@ -2508,10 +2549,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-realname");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.realname = strdup (argv[++i]);
+ server_tmp.realname = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-command") == 0)
{
@@ -2521,10 +2562,10 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing command for \"%s\" parameter\n"),
WEECHAT_ERROR, "-command");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.command = strdup (argv[++i]);
+ server_tmp.command = strdup (argv[++i]);
}
if (ascii_strcasecmp (argv[i], "-autojoin") == 0)
{
@@ -2534,30 +2575,31 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s missing password for \"%s\" parameter\n"),
WEECHAT_ERROR, "-autojoin");
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
- server.autojoin = strdup (argv[++i]);
+ server_tmp.autojoin = strdup (argv[++i]);
}
}
}
/* create new server */
- new_server = server_new (server.name, server.autoconnect,
- server.autoreconnect,
- server.autoreconnect_delay,
- 0, server.address, server.port, server.ipv6,
- server.ssl, server.password,
- server.nick1, server.nick2, server.nick3,
- server.username, server.realname,
- server.command, 1, server.autojoin, 1, NULL,
+ new_server = server_new (server_tmp.name, server_tmp.autoconnect,
+ server_tmp.autoreconnect,
+ server_tmp.autoreconnect_delay,
+ 0, server_tmp.address, server_tmp.port,
+ server_tmp.ipv6, server_tmp.ssl,
+ server_tmp.password, server_tmp.nick1,
+ server_tmp.nick2, server_tmp.nick3,
+ server_tmp.username, server_tmp.realname,
+ server_tmp.command, 1, server_tmp.autojoin, 1, NULL,
NULL, NULL, NULL);
if (new_server)
{
irc_display_prefix (NULL, NULL, PREFIX_INFO);
gui_printf (NULL, _("Server %s%s%s created\n"),
GUI_COLOR(COLOR_WIN_CHAT_SERVER),
- server.name,
+ server_tmp.name,
GUI_COLOR(COLOR_WIN_CHAT));
}
else
@@ -2566,7 +2608,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
gui_printf (NULL,
_("%s unable to create server\n"),
WEECHAT_ERROR);
- server_destroy (&server);
+ server_destroy (&server_tmp);
return -1;
}
@@ -2576,7 +2618,7 @@ weechat_cmd_server (t_gui_window *window, int argc, char **argv)
server_connect (new_server);
}
- server_destroy (&server);
+ server_destroy (&server_tmp);
}
return 0;
}
@@ -2669,7 +2711,8 @@ weechat_cmd_set_display_option (t_config_option *option, char *prefix, void *val
*/
int
-weechat_cmd_set (t_gui_window *window, char *arguments)
+weechat_cmd_set (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *option, *value, *pos;
int i, j, section_displayed;
@@ -2680,7 +2723,8 @@ weechat_cmd_set (t_gui_window *window, char *arguments)
int last_section, last_option, number_found;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
option = NULL;
value = NULL;
@@ -2988,13 +3032,15 @@ weechat_cmd_set (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_unalias (t_gui_window *window, char *arguments)
+weechat_cmd_unalias (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_weelist *ptr_weelist;
t_weechat_alias *ptr_alias;
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
ptr_weelist = weelist_search (index_commands, arguments);
if (!ptr_weelist)
@@ -3020,17 +3066,21 @@ weechat_cmd_unalias (t_gui_window *window, char *arguments)
*/
int
-weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
+weechat_cmd_unignore (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
char *error;
int number, ret;
+ irc_find_context (server, channel, NULL, &buffer);
+
ret = 0;
switch (argc)
{
case 0:
/* List all ignore */
- weechat_cmd_ignore (window, argc, argv);
+ weechat_cmd_ignore (server, channel, argc, argv);
return 0;
break;
case 1:
@@ -3040,18 +3090,18 @@ weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
ret = ignore_search_free_by_number (number);
else
ret = ignore_search_free (argv[0], "*", "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 2:
ret = ignore_search_free (argv[0], argv[1], "*",
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 3:
ret = ignore_search_free (argv[0], argv[1], argv[2],
- (SERVER(window->buffer)) ?
- SERVER(window->buffer)->name : "*");
+ (SERVER(buffer)) ?
+ SERVER(buffer)->name : "*");
break;
case 4:
ret = ignore_search_free (argv[0], argv[1], argv[2], argv[3]);
@@ -3086,7 +3136,8 @@ weechat_cmd_unignore (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
+weechat_cmd_upgrade (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
t_irc_server *ptr_server;
int filename_length;
@@ -3094,7 +3145,8 @@ weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
char *exec_args[5] = { NULL, "-a", "--session", NULL, NULL };
/* make gcc happy */
- (void) window;
+ (void) server;
+ (void) channel;
(void) argc;
(void) argv;
@@ -3182,12 +3234,16 @@ weechat_cmd_upgrade (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
+weechat_cmd_uptime (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
time_t running_time;
int day, hour, min, sec;
char string[256];
+ irc_find_context (server, channel, NULL, &buffer);
+
running_time = time (NULL) - weechat_start_time;
day = running_time / (60 * 60 * 24);
hour = (running_time % (60 * 60 * 24)) / (60 * 60);
@@ -3195,8 +3251,8 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
sec = ((running_time % (60 * 60 * 24)) % (60 * 60)) % 60;
if ((argc == 1) && (strcmp (argv[0], "-o") == 0)
- && ((BUFFER_IS_CHANNEL(window->buffer))
- || (BUFFER_IS_PRIVATE(window->buffer))))
+ && ((BUFFER_IS_CHANNEL(buffer))
+ || (BUFFER_IS_PRIVATE(buffer))))
{
snprintf (string, sizeof (string),
_("WeeChat uptime: %d %s %02d:%02d:%02d, started on %s"),
@@ -3207,12 +3263,12 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
sec,
ctime (&weechat_start_time));
string[strlen (string) - 1] = '\0';
- user_command (window->buffer, SERVER(window->buffer), string);
+ user_command (server, channel, string);
}
else
{
- irc_display_prefix (NULL, window->buffer, PREFIX_INFO);
- gui_printf_nolog (window->buffer,
+ irc_display_prefix (NULL, buffer, PREFIX_INFO);
+ gui_printf_nolog (buffer,
_("WeeChat uptime: %s%d %s%s "
"%s%02d%s:%s%02d%s:%s%02d%s, "
"started on %s%s"),
@@ -3241,13 +3297,17 @@ weechat_cmd_uptime (t_gui_window *window, int argc, char **argv)
*/
int
-weechat_cmd_window (t_gui_window *window, int argc, char **argv)
+weechat_cmd_window (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
- t_gui_window *ptr_win;
+ t_gui_window *window, *ptr_win;
+ t_gui_buffer *buffer;
int i;
char *error;
long number;
+ irc_find_context (server, channel, &window, &buffer);
+
if ((argc == 0) || ((argc == 1) && (ascii_strcasecmp (argv[0], "list") == 0)))
{
/* list opened windows */
diff --git a/weechat/src/common/command.h b/weechat/src/common/command.h
index 884b9f2fe..bdbc420d5 100644
--- a/weechat/src/common/command.h
+++ b/weechat/src/common/command.h
@@ -38,9 +38,9 @@ struct t_weechat_command
char *completion_template; /* template for completion */
/* NULL=no completion, ""=default (nick) */
int min_arg, max_arg; /* min & max number of arguments */
- int (*cmd_function_args)(t_gui_window *, int, char **);
+ int (*cmd_function_args)(t_irc_server *, t_irc_channel *, int, char **);
/* function called when user enters cmd */
- int (*cmd_function_1arg)(t_gui_window *, char *);
+ int (*cmd_function_1arg)(t_irc_server *, t_irc_channel *, char *);
/* function called when user enters cmd */
};
@@ -66,28 +66,28 @@ extern t_weechat_alias *alias_new (char *, char *);
extern void alias_free_all ();
extern char **explode_string (char *, char *, int, int *);
extern void free_exploded_string (char **);
-extern int exec_weechat_command (t_gui_window *, t_irc_server *, char *);
-extern void user_command (t_gui_buffer *, t_irc_server *, char *);
-extern int weechat_cmd_alias (t_gui_window *, char *);
-extern int weechat_cmd_buffer (t_gui_window *, int, char **);
-extern int weechat_cmd_charset (t_gui_window *, int, char **);
-extern int weechat_cmd_clear (t_gui_window *, int, char **);
-extern int weechat_cmd_connect (t_gui_window *, int, char **);
-extern int weechat_cmd_debug (t_gui_window *, int, char **);
-extern int weechat_cmd_disconnect (t_gui_window *, int, char **);
-extern int weechat_cmd_help (t_gui_window *, int, char **);
-extern int weechat_cmd_history (t_gui_window *, int, char **);
+extern int exec_weechat_command (t_irc_server *, t_irc_channel *, char *);
+extern void user_command (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_alias (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_buffer (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_charset (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_clear (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_connect (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_debug (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_disconnect (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_help (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_history (t_irc_server *, t_irc_channel *, int, char **);
extern void weechat_cmd_ignore_display (char *, t_irc_ignore *);
-extern int weechat_cmd_ignore (t_gui_window *, int, char **);
-extern int weechat_cmd_key (t_gui_window *, char *);
-extern int weechat_cmd_plugin (t_gui_window *, int, char **);
-extern int weechat_cmd_save (t_gui_window *, int, char **);
-extern int weechat_cmd_server (t_gui_window *, int, char **);
-extern int weechat_cmd_set (t_gui_window *, char *);
-extern int weechat_cmd_unalias (t_gui_window *, char *);
-extern int weechat_cmd_unignore (t_gui_window *, int, char **);
-extern int weechat_cmd_upgrade (t_gui_window *, int, char **);
-extern int weechat_cmd_uptime (t_gui_window *, int, char **);
-extern int weechat_cmd_window (t_gui_window *, int, char **);
+extern int weechat_cmd_ignore (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_key (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_plugin (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_save (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_server (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_set (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_unalias (t_irc_server *, t_irc_channel *, char *);
+extern int weechat_cmd_unignore (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_upgrade (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_uptime (t_irc_server *, t_irc_channel *, int, char **);
+extern int weechat_cmd_window (t_irc_server *, t_irc_channel *, int, char **);
#endif /* command.h */
diff --git a/weechat/src/common/fifo.c b/weechat/src/common/fifo.c
index a89854a97..3a69d9c57 100644
--- a/weechat/src/common/fifo.c
+++ b/weechat/src/common/fifo.c
@@ -101,20 +101,26 @@ fifo_exec (char *text)
char *pos_msg, *pos;
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
- t_gui_buffer *ptr_buffer;
pos = NULL;
ptr_server = NULL;
ptr_channel = NULL;
- ptr_buffer = NULL;
/* look for server/channel at beginning of text */
/* text may be: "server,channel *text" or "server *text" or "*text" */
if (text[0] == '*')
{
pos_msg = text + 1;
- ptr_buffer = (gui_current_window->buffer->has_input) ? gui_current_window->buffer : gui_buffers;
- ptr_server = SERVER(ptr_buffer);
+ if (gui_current_window->buffer->has_input)
+ {
+ ptr_server = SERVER(gui_current_window->buffer);
+ ptr_channel = CHANNEL(gui_current_window->buffer);
+ }
+ else
+ {
+ ptr_server = SERVER(gui_buffers);
+ ptr_channel = NULL;
+ }
}
else
{
@@ -163,15 +169,7 @@ fifo_exec (char *text)
}
}
- if (!ptr_buffer)
- {
- if (ptr_channel)
- ptr_buffer = ptr_channel->buffer;
- else
- ptr_buffer = gui_buffers;
- }
-
- user_command (ptr_buffer, ptr_server, pos_msg);
+ user_command (ptr_server, ptr_channel, pos_msg);
}
/*
diff --git a/weechat/src/gui/gui-action.c b/weechat/src/gui/gui-action.c
index 702b070c4..bb208a667 100644
--- a/weechat/src/gui/gui-action.c
+++ b/weechat/src/gui/gui-action.c
@@ -108,7 +108,8 @@ gui_action_return (t_gui_window *window)
window->buffer->completion.position = -1;
window->buffer->ptr_history = NULL;
gui_draw_buffer_input (window->buffer, 0);
- user_command (window->buffer, SERVER(window->buffer), command);
+ user_command (SERVER(window->buffer), CHANNEL(window->buffer),
+ command);
free (command);
}
}
diff --git a/weechat/src/gui/gui-common.c b/weechat/src/gui/gui-common.c
index d2e53639e..2b396fadb 100644
--- a/weechat/src/gui/gui-common.c
+++ b/weechat/src/gui/gui-common.c
@@ -1538,7 +1538,7 @@ gui_buffer_switch_by_number (t_gui_window *window, int number)
*/
void
-gui_buffer_move_to_number (t_gui_window *window, int number)
+gui_buffer_move_to_number (t_gui_buffer *buffer, int number)
{
t_gui_buffer *ptr_buffer;
int i;
@@ -1548,34 +1548,34 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
return;
/* buffer number is already ok ? */
- if (number == window->buffer->number)
+ if (number == buffer->number)
return;
if (number < 1)
number = 1;
/* remove buffer from list */
- if (window->buffer == gui_buffers)
+ if (buffer == gui_buffers)
{
- gui_buffers = window->buffer->next_buffer;
+ gui_buffers = buffer->next_buffer;
gui_buffers->prev_buffer = NULL;
}
- if (window->buffer == last_gui_buffer)
+ if (buffer == last_gui_buffer)
{
- last_gui_buffer = window->buffer->prev_buffer;
+ last_gui_buffer = buffer->prev_buffer;
last_gui_buffer->next_buffer = NULL;
}
- if (window->buffer->prev_buffer)
- (window->buffer->prev_buffer)->next_buffer = window->buffer->next_buffer;
- if (window->buffer->next_buffer)
- (window->buffer->next_buffer)->prev_buffer = window->buffer->prev_buffer;
+ if (buffer->prev_buffer)
+ (buffer->prev_buffer)->next_buffer = buffer->next_buffer;
+ if (buffer->next_buffer)
+ (buffer->next_buffer)->prev_buffer = buffer->prev_buffer;
if (number == 1)
{
- gui_buffers->prev_buffer = window->buffer;
- window->buffer->prev_buffer = NULL;
- window->buffer->next_buffer = gui_buffers;
- gui_buffers = window->buffer;
+ gui_buffers->prev_buffer = buffer;
+ buffer->prev_buffer = NULL;
+ buffer->next_buffer = gui_buffers;
+ gui_buffers = buffer;
}
else
{
@@ -1595,19 +1595,19 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
if (ptr_buffer)
{
/* insert before buffer found */
- window->buffer->prev_buffer = ptr_buffer->prev_buffer;
- window->buffer->next_buffer = ptr_buffer;
+ buffer->prev_buffer = ptr_buffer->prev_buffer;
+ buffer->next_buffer = ptr_buffer;
if (ptr_buffer->prev_buffer)
- (ptr_buffer->prev_buffer)->next_buffer = window->buffer;
- ptr_buffer->prev_buffer = window->buffer;
+ (ptr_buffer->prev_buffer)->next_buffer = buffer;
+ ptr_buffer->prev_buffer = buffer;
}
else
{
/* number not found (too big)? => add to end */
- window->buffer->prev_buffer = last_gui_buffer;
- window->buffer->next_buffer = NULL;
- last_gui_buffer->next_buffer = window->buffer;
- last_gui_buffer = window->buffer;
+ buffer->prev_buffer = last_gui_buffer;
+ buffer->next_buffer = NULL;
+ last_gui_buffer->next_buffer = buffer;
+ last_gui_buffer = buffer;
}
}
@@ -1619,7 +1619,7 @@ gui_buffer_move_to_number (t_gui_window *window, int number)
ptr_buffer->number = i++;
}
- gui_redraw_buffer (window->buffer);
+ gui_redraw_buffer (buffer);
}
/*
diff --git a/weechat/src/gui/gui-keyboard.c b/weechat/src/gui/gui-keyboard.c
index c5ad7482f..0e8522a5d 100644
--- a/weechat/src/gui/gui-keyboard.c
+++ b/weechat/src/gui/gui-keyboard.c
@@ -517,8 +517,8 @@ gui_key_pressed (char *key_str)
/* exact combo found => execute function or command */
gui_key_buffer[0] = '\0';
if (ptr_key->command)
- user_command (gui_current_window->buffer,
- SERVER(gui_current_window->buffer),
+ user_command (SERVER(gui_current_window->buffer),
+ CHANNEL(gui_current_window->buffer),
ptr_key->command);
else
(void)(ptr_key->function)(gui_current_window);
diff --git a/weechat/src/gui/gui.h b/weechat/src/gui/gui.h
index 32ee5281c..eb89671db 100644
--- a/weechat/src/gui/gui.h
+++ b/weechat/src/gui/gui.h
@@ -428,7 +428,7 @@ extern void gui_window_switch_next (t_gui_window *);
extern void gui_window_switch_by_buffer (t_gui_window *, int);
extern void gui_buffer_switch_dcc (t_gui_window *);
extern t_gui_buffer *gui_buffer_switch_by_number (t_gui_window *, int);
-extern void gui_buffer_move_to_number (t_gui_window *, int);
+extern void gui_buffer_move_to_number (t_gui_buffer *, int);
extern void gui_window_print_log (t_gui_window *);
extern void gui_buffer_print_log (t_gui_buffer *);
diff --git a/weechat/src/irc/irc-display.c b/weechat/src/irc/irc-display.c
index 4c628a944..8fd191416 100644
--- a/weechat/src/irc/irc-display.c
+++ b/weechat/src/irc/irc-display.c
@@ -36,6 +36,54 @@
/*
+ * irc_find_context: find window/buffer for a server/channel
+ */
+
+void
+irc_find_context (t_irc_server *server, t_irc_channel *channel,
+ t_gui_window **window, t_gui_buffer **buffer)
+{
+ t_gui_window *ptr_win;
+
+ if (!buffer)
+ return;
+
+ /* first find buffer */
+ *buffer = NULL;
+ if (channel && channel->buffer)
+ *buffer = channel->buffer;
+ else
+ {
+ if (server && server->buffer)
+ *buffer = server->buffer;
+ else
+ *buffer = gui_current_window->buffer;
+ }
+
+ /* then find first window displaying this buffer */
+ if (window)
+ {
+ *window = NULL;
+ if (gui_current_window->buffer == *buffer)
+ *window = gui_current_window;
+ else
+ {
+ for (ptr_win = gui_windows; ptr_win;
+ ptr_win = ptr_win->next_window)
+ {
+ if (ptr_win->buffer == *buffer)
+ {
+ *window = ptr_win;
+ break;
+ }
+ }
+ if (!*window)
+ *window = gui_current_window;
+ }
+ }
+}
+
+/*
* irc_display_prefix: display a prefix for action/info/error msg
* prefix must be 3 chars length
*/
diff --git a/weechat/src/irc/irc-recv.c b/weechat/src/irc/irc-recv.c
index f7d52b2cc..de24e19da 100644
--- a/weechat/src/irc/irc-recv.c
+++ b/weechat/src/irc/irc-recv.c
@@ -509,7 +509,7 @@ irc_cmd_recv_kick (t_irc_server *server, char *host, char *nick, char *arguments
gui_draw_buffer_nick (ptr_channel->buffer, 1);
gui_draw_buffer_status (ptr_channel->buffer, 1);
if (server->autorejoin)
- irc_cmd_send_join (server, ptr_channel->name);
+ irc_cmd_send_join (server, NULL, ptr_channel->name);
}
{
/* someone was kicked from channel (but not me) => remove only this nick */
@@ -2449,7 +2449,7 @@ irc_cmd_recv_004 (t_irc_server *server, char *host, char *nick, char *arguments)
/* execute command once connected */
if (server->command && server->command[0])
{
- user_command(NULL, server, server->command);
+ user_command (server, NULL, server->command);
if (server->command_delay > 0)
sleep (server->command_delay);
}
@@ -2476,7 +2476,7 @@ irc_cmd_recv_004 (t_irc_server *server, char *host, char *nick, char *arguments)
{
/* auto-join when connecting to server for first time */
if (server->autojoin && server->autojoin[0])
- return irc_cmd_send_join (server, server->autojoin);
+ return irc_cmd_send_join (server, NULL, server->autojoin);
}
return 0;
@@ -4444,7 +4444,7 @@ irc_cmd_recv_366 (t_irc_server *server, char *host, char *nick, char *arguments)
_("normal"),
GUI_COLOR(COLOR_WIN_CHAT_DARK));
}
- irc_cmd_send_mode (server, ptr_channel->name);
+ irc_cmd_send_mode (server, NULL, ptr_channel->name);
if (cfg_irc_away_check > 0)
channel_check_away (server, ptr_channel);
}
diff --git a/weechat/src/irc/irc-send.c b/weechat/src/irc/irc-send.c
index 77d24de08..38c21920f 100644
--- a/weechat/src/irc/irc-send.c
+++ b/weechat/src/irc/irc-send.c
@@ -75,8 +75,12 @@ irc_login (t_irc_server *server)
*/
int
-irc_cmd_send_admin (t_irc_server *server, char *arguments)
+irc_cmd_send_admin (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "ADMIN %s\r\n", arguments);
else
@@ -89,7 +93,8 @@ irc_cmd_send_admin (t_irc_server *server, char *arguments)
*/
int
-irc_send_me (t_irc_server *server, t_irc_channel *channel, char *arguments)
+irc_send_me (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *string;
@@ -110,17 +115,37 @@ irc_send_me (t_irc_server *server, t_irc_channel *channel, char *arguments)
}
/*
+ * irc_send_me_all_channels: send a ctcp action to all channels of a server
+ */
+
+int
+irc_send_me_all_channels (t_irc_server *server, char *arguments)
+{
+ t_irc_channel *ptr_channel;
+
+ for (ptr_channel = server->channels; ptr_channel;
+ ptr_channel = ptr_channel->next_channel)
+ {
+ if (ptr_channel->type == CHANNEL_TYPE_CHANNEL)
+ irc_send_me (server, ptr_channel, arguments);
+ }
+ return 0;
+}
+
+/*
* irc_cmd_send_ame: send a ctcp action to all channels of all connected servers
*/
int
-irc_cmd_send_ame (t_irc_server *server, char *arguments)
+irc_cmd_send_ame (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
/* make gcc happy */
(void) server;
+ (void) channel;
gui_add_hotlist = 0;
for (ptr_server = irc_servers; ptr_server;
@@ -145,7 +170,8 @@ irc_cmd_send_ame (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_amsg (t_irc_server *server, char *arguments)
+irc_cmd_send_amsg (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
t_irc_channel *ptr_channel;
@@ -154,6 +180,7 @@ irc_cmd_send_amsg (t_irc_server *server, char *arguments)
/* make gcc happy */
(void) server;
+ (void) channel;
if (arguments)
{
@@ -275,11 +302,18 @@ irc_send_away (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_away (t_irc_server *server, char *arguments)
+irc_cmd_send_away (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos;
t_irc_server *ptr_server;
+ irc_find_context (server, channel, NULL, &buffer);
+
+ /* make gcc happy */
+ (void) channel;
+
gui_add_hotlist = 0;
if (arguments && (strncmp (arguments, "-all", 4) == 0))
{
@@ -299,7 +333,7 @@ irc_cmd_send_away (t_irc_server *server, char *arguments)
else
irc_send_away (server, arguments);
- gui_draw_buffer_status (gui_current_window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
gui_add_hotlist = 1;
return 0;
}
@@ -309,10 +343,14 @@ irc_cmd_send_away (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ban (t_irc_server *server, char *arguments)
+irc_cmd_send_ban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos, *pos2;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
pos_channel = NULL;
@@ -340,7 +378,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
/* channel not given, use default buffer */
if (!pos_channel)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -348,7 +386,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "ban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
}
/* loop on users */
@@ -368,7 +406,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -376,7 +414,7 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "ban");
return -1;
}
- server_sendf (server, "MODE %s +b\r\n", CHANNEL(gui_current_window->buffer)->name);
+ server_sendf (server, "MODE %s +b\r\n", CHANNEL(buffer)->name);
}
return 0;
@@ -387,12 +425,16 @@ irc_cmd_send_ban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ctcp (t_irc_server *server, char *arguments)
+irc_cmd_send_ctcp (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos_type, *pos_args, *pos;
struct timeval tv;
struct timezone tz;
+ /* make gcc happy */
+ (void) channel;
+
pos_type = strchr (arguments, ' ');
if (pos_type)
{
@@ -463,10 +505,14 @@ irc_cmd_send_ctcp (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_dcc (t_irc_server *server, char *arguments)
+irc_cmd_send_dcc (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_nick, *pos_file;
+ irc_find_context (server, channel, NULL, &buffer);
+
/* DCC SEND file */
if (strncasecmp (arguments, "send", 4) == 0)
{
@@ -516,11 +562,10 @@ irc_cmd_send_dcc (t_irc_server *server, char *arguments)
}
else if (ascii_strcasecmp (arguments, "close") == 0)
{
- if (BUFFER_IS_PRIVATE(gui_current_window->buffer) &&
- CHANNEL(gui_current_window->buffer)->dcc_chat)
+ if (BUFFER_IS_PRIVATE(buffer) &&
+ CHANNEL(buffer)->dcc_chat)
{
- dcc_close ((t_irc_dcc *)(CHANNEL(gui_current_window->buffer)->dcc_chat),
- DCC_ABORTED);
+ dcc_close ((t_irc_dcc *)(CHANNEL(buffer)->dcc_chat), DCC_ABORTED);
dcc_redraw (1);
}
}
@@ -541,21 +586,25 @@ irc_cmd_send_dcc (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_dehalfop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_dehalfop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -574,21 +623,25 @@ irc_cmd_send_dehalfop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_deop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_deop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -607,21 +660,25 @@ irc_cmd_send_deop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_devoice (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_devoice (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s -v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s -v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -641,9 +698,11 @@ irc_cmd_send_devoice (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_die (t_irc_server *server, char *arguments)
+irc_cmd_send_die (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "DIE\r\n");
@@ -655,21 +714,25 @@ irc_cmd_send_die (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_halfop (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_halfop (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s +h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +h %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -689,8 +752,12 @@ irc_cmd_send_halfop (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_info (t_irc_server *server, char *arguments)
+irc_cmd_send_info (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "INFO %s\r\n", arguments);
else
@@ -703,13 +770,18 @@ irc_cmd_send_info (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_invite (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (argc == 2)
server_sendf (server, "INVITE %s %s\r\n", argv[0], argv[1]);
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -718,7 +790,7 @@ irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
return -1;
}
server_sendf (server, "INVITE %s %s\r\n",
- argv[0], CHANNEL(gui_current_window->buffer)->name);
+ argv[0], CHANNEL(buffer)->name);
}
return 0;
}
@@ -728,8 +800,12 @@ irc_cmd_send_invite (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_ison (t_irc_server *server, char *arguments)
+irc_cmd_send_ison (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "ISON %s\r\n", arguments);
return 0;
}
@@ -739,8 +815,12 @@ irc_cmd_send_ison (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_join (t_irc_server *server, char *arguments)
+irc_cmd_send_join (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (string_is_channel (arguments))
server_sendf (server, "JOIN %s\r\n", arguments);
else
@@ -753,10 +833,14 @@ irc_cmd_send_join (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kick (t_irc_server *server, char *arguments)
+irc_cmd_send_kick (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos_nick, *pos_comment;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (string_is_channel (arguments))
{
pos_channel = arguments;
@@ -776,7 +860,7 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -784,7 +868,7 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "kick");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
pos_nick = arguments;
}
@@ -810,10 +894,14 @@ irc_cmd_send_kick (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kickban (t_irc_server *server, char *arguments)
+irc_cmd_send_kickban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos_nick, *pos_comment;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (string_is_channel (arguments))
{
pos_channel = arguments;
@@ -833,7 +921,7 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
}
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -841,7 +929,7 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "kickban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
pos_nick = arguments;
}
@@ -868,8 +956,12 @@ irc_cmd_send_kickban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_kill (t_irc_server *server, char *arguments)
+irc_cmd_send_kill (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "KILL %s\r\n", arguments);
return 0;
}
@@ -880,8 +972,12 @@ irc_cmd_send_kill (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_links (t_irc_server *server, char *arguments)
+irc_cmd_send_links (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LINKS %s\r\n", arguments);
else
@@ -894,8 +990,12 @@ irc_cmd_send_links (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_list (t_irc_server *server, char *arguments)
+irc_cmd_send_list (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LIST %s\r\n", arguments);
else
@@ -908,8 +1008,12 @@ irc_cmd_send_list (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_lusers (t_irc_server *server, char *arguments)
+irc_cmd_send_lusers (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "LUSERS %s\r\n", arguments);
else
@@ -918,31 +1022,18 @@ irc_cmd_send_lusers (t_irc_server *server, char *arguments)
}
/*
- * irc_send_me_all_channels: send a ctcp action to all channels of a server
- */
-
-int
-irc_send_me_all_channels (t_irc_server *server, char *arguments)
-{
- t_irc_channel *ptr_channel;
-
- for (ptr_channel = server->channels; ptr_channel;
- ptr_channel = ptr_channel->next_channel)
- {
- if (ptr_channel->type == CHANNEL_TYPE_CHANNEL)
- irc_send_me (server, ptr_channel, arguments);
- }
- return 0;
-}
-
-/*
* irc_cmd_send_me: send a ctcp action to the current channel
*/
int
-irc_cmd_send_me (t_irc_server *server, char *arguments)
+irc_cmd_send_me (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -950,7 +1041,7 @@ irc_cmd_send_me (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "me");
return -1;
}
- irc_send_me (server, CHANNEL(gui_current_window->buffer), arguments);
+ irc_send_me (server, CHANNEL(buffer), arguments);
return 0;
}
@@ -959,8 +1050,12 @@ irc_cmd_send_me (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_mode (t_irc_server *server, char *arguments)
+irc_cmd_send_mode (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "MODE %s\r\n", arguments);
return 0;
}
@@ -970,8 +1065,12 @@ irc_cmd_send_mode (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_motd (t_irc_server *server, char *arguments)
+irc_cmd_send_motd (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "MOTD %s\r\n", arguments);
else
@@ -984,14 +1083,19 @@ irc_cmd_send_motd (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_msg (t_irc_server *server, char *arguments)
+irc_cmd_send_msg (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
char *pos, *pos_comma;
char *msg_pwd_hidden, *pos_pwd;
t_irc_channel *ptr_channel;
t_irc_nick *ptr_nick;
char *string;
+ irc_find_context (server, channel, &window, &buffer);
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1010,8 +1114,8 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
}
if (strcmp (arguments, "*") == 0)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer) &&
- !BUFFER_IS_PRIVATE(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer) &&
+ !BUFFER_IS_PRIVATE(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1019,16 +1123,16 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "msg *");
return -1;
}
- ptr_channel = CHANNEL(gui_current_window->buffer);
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ ptr_channel = CHANNEL(buffer);
+ if (BUFFER_IS_CHANNEL(buffer))
ptr_nick = nick_search (ptr_channel, server->nick);
else
ptr_nick = NULL;
- irc_display_nick (gui_current_window->buffer, ptr_nick,
+ irc_display_nick (buffer, ptr_nick,
(ptr_nick) ? NULL : server->nick,
MSG_TYPE_NICK, 1, 1, 0);
string = (char *)gui_color_decode ((unsigned char *)pos, 1);
- gui_printf_type (gui_current_window->buffer, MSG_TYPE_MSG, "%s\n",
+ gui_printf_type (buffer, MSG_TYPE_MSG, "%s\n",
(string) ? string : "");
if (string)
free (string);
@@ -1114,7 +1218,7 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
WEECHAT_ERROR, arguments);
return -1;
}
- gui_buffer_new (gui_current_window, server, ptr_channel, 0, 1);
+ gui_buffer_new (window, server, ptr_channel, 0, 1);
gui_draw_buffer_title (ptr_channel->buffer, 1);
}
@@ -1153,13 +1257,18 @@ irc_cmd_send_msg (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_names (t_irc_server *server, char *arguments)
+irc_cmd_send_names (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
server_sendf (server, "NAMES %s\r\n", arguments);
else
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1169,7 +1278,7 @@ irc_cmd_send_names (t_irc_server *server, char *arguments)
}
else
server_sendf (server, "NAMES %s\r\n",
- CHANNEL(gui_current_window->buffer)->name);
+ CHANNEL(buffer)->name);
}
return 0;
}
@@ -1204,10 +1313,14 @@ irc_cmd_send_nick_server (t_irc_server *server, char *nickname)
*/
int
-irc_cmd_send_nick (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_nick (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
t_irc_server *ptr_server;
+ /* make gcc happy */
+ (void) channel;
+
if (!server)
return 0;
@@ -1238,10 +1351,14 @@ irc_cmd_send_nick (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_notice (t_irc_server *server, char *arguments)
+irc_cmd_send_notice (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
char *pos, *string;
+ /* make gcc happy */
+ (void) channel;
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1278,15 +1395,19 @@ irc_cmd_send_notice (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_op (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_op (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +o %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
else
@@ -1305,8 +1426,12 @@ irc_cmd_send_op (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_oper (t_irc_server *server, char *arguments)
+irc_cmd_send_oper (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "OPER %s\r\n", arguments);
return 0;
}
@@ -1316,11 +1441,15 @@ irc_cmd_send_oper (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_part (t_irc_server *server, char *arguments)
+irc_cmd_send_part (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
- char *channel_name, *pos_args, *ptr_arg, *pos, buffer[4096];
+ t_gui_buffer *buffer;
+ char *channel_name, *pos_args, *ptr_arg, *pos, buf[4096];
t_irc_channel *ptr_channel;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
if (string_is_channel (arguments))
@@ -1337,7 +1466,7 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
}
else
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1345,13 +1474,13 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "part");
return -1;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
pos_args = arguments;
}
}
else
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1359,16 +1488,16 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "part");
return -1;
}
- if (BUFFER_IS_PRIVATE(gui_current_window->buffer))
+ if (BUFFER_IS_PRIVATE(buffer))
{
- ptr_channel = CHANNEL(gui_current_window->buffer);
+ ptr_channel = CHANNEL(buffer);
gui_buffer_free (ptr_channel->buffer, 1);
channel_free (server, ptr_channel);
- gui_draw_buffer_status (gui_current_window->buffer, 1);
- gui_draw_buffer_input (gui_current_window->buffer, 1);
+ gui_draw_buffer_status (buffer, 1);
+ gui_draw_buffer_input (buffer, 1);
return 0;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
pos_args = NULL;
}
@@ -1382,15 +1511,15 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
if (pos)
{
pos[0] = '\0';
- snprintf (buffer, sizeof (buffer), "%s%s%s",
+ snprintf (buf, sizeof (buf), "%s%s%s",
ptr_arg, PACKAGE_VERSION, pos + 2);
pos[0] = '%';
}
else
- snprintf (buffer, sizeof (buffer), "%s",
+ snprintf (buf, sizeof (buf), "%s",
ptr_arg);
server_sendf (server, "PART %s :%s\r\n",
- channel_name, buffer);
+ channel_name, buf);
}
else
server_sendf (server, "PART %s\r\n", channel_name);
@@ -1403,8 +1532,12 @@ irc_cmd_send_part (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_ping (t_irc_server *server, char *arguments)
+irc_cmd_send_ping (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "PING %s\r\n", arguments);
return 0;
}
@@ -1414,8 +1547,12 @@ irc_cmd_send_ping (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_pong (t_irc_server *server, char *arguments)
+irc_cmd_send_pong (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "PONG %s\r\n", arguments);
return 0;
}
@@ -1425,12 +1562,17 @@ irc_cmd_send_pong (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_query (t_irc_server *server, char *arguments)
+irc_cmd_send_query (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_window *window;
+ t_gui_buffer *buffer;
char *pos, *string;
t_irc_channel *ptr_channel;
t_gui_buffer *ptr_buffer;
+ irc_find_context (server, channel, &window, &buffer);
+
pos = strchr (arguments, ' ');
if (pos)
{
@@ -1455,7 +1597,7 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
WEECHAT_ERROR, arguments);
return -1;
}
- gui_buffer_new (gui_current_window, server, ptr_channel, 0, 1);
+ gui_buffer_new (window, server, ptr_channel, 0, 1);
gui_draw_buffer_title (ptr_channel->buffer, 1);
}
else
@@ -1464,7 +1606,7 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
{
if (ptr_buffer->channel == ptr_channel)
{
- gui_switch_to_buffer (gui_current_window, ptr_buffer);
+ gui_switch_to_buffer (window, ptr_buffer);
gui_redraw_buffer (ptr_buffer);
break;
}
@@ -1497,13 +1639,15 @@ irc_cmd_send_query (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_quit (t_irc_server *server, char *arguments)
+irc_cmd_send_quit (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
t_irc_server *ptr_server;
char *ptr_arg, *pos, buffer[4096];
/* make gcc happy */
(void) server;
+ (void) channel;
ptr_arg = (arguments) ? arguments :
(cfg_irc_default_msg_quit && cfg_irc_default_msg_quit[0]) ?
@@ -1541,8 +1685,12 @@ irc_cmd_send_quit (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_quote (t_irc_server *server, char *arguments)
+irc_cmd_send_quote (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "%s\r\n", arguments);
return 0;
}
@@ -1552,9 +1700,11 @@ irc_cmd_send_quote (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_rehash (t_irc_server *server, char *arguments)
+irc_cmd_send_rehash (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "REHASH\r\n");
@@ -1566,9 +1716,11 @@ irc_cmd_send_rehash (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_restart (t_irc_server *server, char *arguments)
+irc_cmd_send_restart (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
/* make gcc happy */
+ (void) channel;
(void) arguments;
server_sendf (server, "RESTART\r\n");
@@ -1580,8 +1732,12 @@ irc_cmd_send_restart (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_service (t_irc_server *server, char *arguments)
+irc_cmd_send_service (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SERVICE %s\r\n", arguments);
return 0;
}
@@ -1591,8 +1747,12 @@ irc_cmd_send_service (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_servlist (t_irc_server *server, char *arguments)
+irc_cmd_send_servlist (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "SERVLIST %s\r\n", arguments);
else
@@ -1605,8 +1765,12 @@ irc_cmd_send_servlist (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_squery (t_irc_server *server, char *arguments)
+irc_cmd_send_squery (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SQUERY %s\r\n", arguments);
return 0;
}
@@ -1616,8 +1780,12 @@ irc_cmd_send_squery (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_squit (t_irc_server *server, char *arguments)
+irc_cmd_send_squit (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SQUIT %s\r\n", arguments);
return 0;
}
@@ -1627,8 +1795,12 @@ irc_cmd_send_squit (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_stats (t_irc_server *server, char *arguments)
+irc_cmd_send_stats (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "STATS %s\r\n", arguments);
else
@@ -1642,8 +1814,12 @@ irc_cmd_send_stats (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_summon (t_irc_server *server, char *arguments)
+irc_cmd_send_summon (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "SUMMON %s\r\n", arguments);
return 0;
}
@@ -1653,8 +1829,12 @@ irc_cmd_send_summon (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_time (t_irc_server *server, char *arguments)
+irc_cmd_send_time (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "TIME %s\r\n", arguments);
else
@@ -1667,10 +1847,14 @@ irc_cmd_send_time (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_topic (t_irc_server *server, char *arguments)
+irc_cmd_send_topic (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *channel_name, *new_topic, *pos;
+ irc_find_context (server, channel, NULL, &buffer);
+
channel_name = NULL;
new_topic = NULL;
@@ -1696,7 +1880,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
/* look for current channel if not specified */
if (!channel_name)
{
- if (BUFFER_IS_SERVER(gui_current_window->buffer))
+ if (BUFFER_IS_SERVER(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1704,7 +1888,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "topic");
return -1;
}
- channel_name = CHANNEL(gui_current_window->buffer)->name;
+ channel_name = CHANNEL(buffer)->name;
}
if (new_topic)
@@ -1716,6 +1900,7 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
}
else
server_sendf (server, "TOPIC %s\r\n", channel_name);
+
return 0;
}
@@ -1724,8 +1909,12 @@ irc_cmd_send_topic (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_trace (t_irc_server *server, char *arguments)
+irc_cmd_send_trace (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "TRACE %s\r\n", arguments);
else
@@ -1738,10 +1927,14 @@ irc_cmd_send_trace (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_unban (t_irc_server *server, char *arguments)
+irc_cmd_send_unban (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
char *pos_channel, *pos, *pos2;
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
pos_channel = NULL;
@@ -1769,7 +1962,7 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
/* channel not given, use default buffer */
if (!pos_channel)
{
- if (!BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ if (!BUFFER_IS_CHANNEL(buffer))
{
irc_display_prefix (NULL, server->buffer, PREFIX_ERROR);
gui_printf_nolog (server->buffer,
@@ -1777,7 +1970,7 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "unban");
return -1;
}
- pos_channel = CHANNEL(gui_current_window->buffer)->name;
+ pos_channel = CHANNEL(buffer)->name;
}
/* loop on users */
@@ -1803,7 +1996,6 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
WEECHAT_ERROR, "unban");
return -1;
}
-
return 0;
}
@@ -1812,8 +2004,12 @@ irc_cmd_send_unban (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_userhost (t_irc_server *server, char *arguments)
+irc_cmd_send_userhost (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "USERHOST %s\r\n", arguments);
return 0;
}
@@ -1823,8 +2019,12 @@ irc_cmd_send_userhost (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_users (t_irc_server *server, char *arguments)
+irc_cmd_send_users (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "USERS %s\r\n", arguments);
else
@@ -1837,12 +2037,17 @@ irc_cmd_send_users (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_version (t_irc_server *server, char *arguments)
+irc_cmd_send_version (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ t_gui_buffer *buffer;
+
+ irc_find_context (server, channel, NULL, &buffer);
+
if (arguments)
{
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer) &&
- nick_search (CHANNEL(gui_current_window->buffer), arguments))
+ if (BUFFER_IS_CHANNEL(buffer) &&
+ nick_search (CHANNEL(buffer), arguments))
server_sendf (server, "PRIVMSG %s :\01VERSION\01\r\n",
arguments);
else
@@ -1865,21 +2070,25 @@ irc_cmd_send_version (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_voice (t_irc_server *server, int argc, char **argv)
+irc_cmd_send_voice (t_irc_server *server, t_irc_channel *channel,
+ int argc, char **argv)
{
+ t_gui_buffer *buffer;
int i;
- if (BUFFER_IS_CHANNEL(gui_current_window->buffer))
+ irc_find_context (server, channel, NULL, &buffer);
+
+ if (BUFFER_IS_CHANNEL(buffer))
{
if (argc == 0)
server_sendf (server, "MODE %s +v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
server->nick);
else
{
for (i = 0; i < argc; i++)
server_sendf (server, "MODE %s +v %s\r\n",
- CHANNEL(gui_current_window->buffer)->name,
+ CHANNEL(buffer)->name,
argv[i]);
}
}
@@ -1900,8 +2109,12 @@ irc_cmd_send_voice (t_irc_server *server, int argc, char **argv)
*/
int
-irc_cmd_send_wallops (t_irc_server *server, char *arguments)
+irc_cmd_send_wallops (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WALLOPS %s\r\n", arguments);
return 0;
}
@@ -1911,8 +2124,12 @@ irc_cmd_send_wallops (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_who (t_irc_server *server, char *arguments)
+irc_cmd_send_who (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
if (arguments)
server_sendf (server, "WHO %s\r\n", arguments);
else
@@ -1925,8 +2142,12 @@ irc_cmd_send_who (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_whois (t_irc_server *server, char *arguments)
+irc_cmd_send_whois (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WHOIS %s\r\n", arguments);
return 0;
}
@@ -1936,8 +2157,12 @@ irc_cmd_send_whois (t_irc_server *server, char *arguments)
*/
int
-irc_cmd_send_whowas (t_irc_server *server, char *arguments)
+irc_cmd_send_whowas (t_irc_server *server, t_irc_channel *channel,
+ char *arguments)
{
+ /* make gcc happy */
+ (void) channel;
+
server_sendf (server, "WHOWAS %s\r\n", arguments);
return 0;
}
diff --git a/weechat/src/irc/irc.h b/weechat/src/irc/irc.h
index d0997221c..7c544ca19 100644
--- a/weechat/src/irc/irc.h
+++ b/weechat/src/irc/irc.h
@@ -190,9 +190,9 @@ struct t_irc_command
/* NULL=no completion, ""=default (nick) */
int min_arg, max_arg; /* min & max number of arguments */
int need_connection; /* = 1 if cmd needs server connection */
- int (*cmd_function_args)(t_irc_server *, int, char **);
+ int (*cmd_function_args)(t_irc_server *, t_irc_channel *, int, char **);
/* function called when user enters cmd */
- int (*cmd_function_1arg)(t_irc_server *, char *);
+ int (*cmd_function_1arg)(t_irc_server *, t_irc_channel *, char *);
/* function called when user enters cmd */
int (*recv_function)(t_irc_server *, char *, char *, char *);
/* function called when cmd is received */
@@ -395,6 +395,8 @@ extern void dcc_print_log (t_irc_dcc *);
/* IRC display (irc-diplay.c) */
+extern void irc_find_context (t_irc_server *, t_irc_channel *,
+ t_gui_window **, t_gui_buffer **);
extern void irc_display_prefix (t_irc_server *, t_gui_buffer *, char *);
extern void irc_display_nick (t_gui_buffer *, t_irc_nick *, char *, int,
int, int, int);
@@ -406,65 +408,63 @@ extern void irc_display_server (t_irc_server *ptr_server);
/* IRC commands issued by user (irc-send.c) */
extern void irc_login (t_irc_server *);
-extern int irc_cmd_send_admin (t_irc_server *, char *);
-extern int irc_cmd_send_ame (t_irc_server *, char *);
-extern int irc_cmd_send_amsg (t_irc_server *, char *);
-extern int irc_cmd_send_away (t_irc_server *, char *);
-extern int irc_cmd_send_ban (t_irc_server *, char *);
-extern int irc_cmd_send_ctcp (t_irc_server *, char *);
-extern int irc_cmd_send_dcc (t_irc_server *, char *);
-extern int irc_cmd_send_dehalfop (t_irc_server *, int, char **);
-extern int irc_cmd_send_deop (t_irc_server *, int, char **);
-extern int irc_cmd_send_devoice (t_irc_server *, int, char **);
-extern int irc_cmd_send_die (t_irc_server *, char *);
-extern int irc_cmd_send_halfop (t_irc_server *, int, char **);
-extern int irc_cmd_send_info (t_irc_server *, char *);
-extern int irc_cmd_send_invite (t_irc_server *, int, char **);
-extern int irc_cmd_send_ison (t_irc_server *, char *);
-extern int irc_cmd_send_join (t_irc_server *, char *);
-extern int irc_cmd_send_kick (t_irc_server *, char *);
-extern int irc_cmd_send_kickban (t_irc_server *, char *);
-extern int irc_cmd_send_kill (t_irc_server *, char *);
-extern int irc_cmd_send_links (t_irc_server *, char *);
-extern int irc_cmd_send_list (t_irc_server *, char *);
-extern int irc_cmd_send_lusers (t_irc_server *, char *);
-extern int irc_send_me (t_irc_server *, t_irc_channel *, char *);
-extern int irc_send_me_all_channels (t_irc_server *, char *);
-extern int irc_cmd_send_me (t_irc_server *, char *);
-extern int irc_cmd_send_mode (t_irc_server *, char *);
-extern int irc_cmd_send_motd (t_irc_server *, char *);
-extern int irc_cmd_send_msg (t_irc_server *, char *);
-extern int irc_cmd_send_names (t_irc_server *, char *);
-extern int irc_cmd_send_nick (t_irc_server *, int, char **);
-extern int irc_cmd_send_notice (t_irc_server *, char *);
-extern int irc_cmd_send_op (t_irc_server *, int, char **);
-extern int irc_cmd_send_oper (t_irc_server *, char *);
-extern int irc_cmd_send_part (t_irc_server *, char *);
-extern int irc_cmd_send_ping (t_irc_server *, char *);
-extern int irc_cmd_send_pong (t_irc_server *, char *);
-extern int irc_cmd_send_query (t_irc_server *, char *);
-extern int irc_cmd_send_quit (t_irc_server *, char *);
-extern int irc_cmd_send_quote (t_irc_server *, char *);
-extern int irc_cmd_send_rehash (t_irc_server *, char *);
-extern int irc_cmd_send_restart (t_irc_server *, char *);
-extern int irc_cmd_send_service (t_irc_server *, char *);
-extern int irc_cmd_send_servlist (t_irc_server *, char *);
-extern int irc_cmd_send_squery (t_irc_server *, char *);
-extern int irc_cmd_send_squit (t_irc_server *, char *);
-extern int irc_cmd_send_stats (t_irc_server *, char *);
-extern int irc_cmd_send_summon (t_irc_server *, char *);
-extern int irc_cmd_send_time (t_irc_server *, char *);
-extern int irc_cmd_send_topic (t_irc_server *, char *);
-extern int irc_cmd_send_trace (t_irc_server *, char *);
-extern int irc_cmd_send_unban (t_irc_server *, char *);
-extern int irc_cmd_send_userhost (t_irc_server *, char *);
-extern int irc_cmd_send_users (t_irc_server *, char *);
-extern int irc_cmd_send_version (t_irc_server *, char *);
-extern int irc_cmd_send_voice (t_irc_server *, int, char **);
-extern int irc_cmd_send_wallops (t_irc_server *, char *);
-extern int irc_cmd_send_who (t_irc_server *, char *);
-extern int irc_cmd_send_whois (t_irc_server *, char *);
-extern int irc_cmd_send_whowas (t_irc_server *, char *);
+extern int irc_cmd_send_admin (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ame (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_amsg (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_away (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ctcp (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_dcc (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_dehalfop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_deop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_devoice (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_die (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_halfop (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_info (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_invite (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_ison (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_join (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kick (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kickban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_kill (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_links (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_list (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_lusers (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_me (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_mode (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_motd (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_msg (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_names (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_nick (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_notice (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_op (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_oper (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_part (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_ping (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_pong (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_query (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_quit (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_quote (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_rehash (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_restart (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_service (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_servlist (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_squery (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_squit (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_stats (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_summon (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_time (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_topic (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_trace (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_unban (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_userhost (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_users (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_version (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_voice (t_irc_server *, t_irc_channel *, int, char **);
+extern int irc_cmd_send_wallops (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_who (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_whois (t_irc_server *, t_irc_channel *, char *);
+extern int irc_cmd_send_whowas (t_irc_server *, t_irc_channel *, char *);
/* IRC commands executed when received from server (irc-recv.c) */
diff --git a/weechat/src/plugins/plugins-interface.c b/weechat/src/plugins/plugins-interface.c
index 3b02532ec..7c6216b8f 100644
--- a/weechat/src/plugins/plugins-interface.c
+++ b/weechat/src/plugins/plugins-interface.c
@@ -288,13 +288,28 @@ weechat_plugin_exec_command (t_weechat_plugin *plugin,
if (!plugin || !command)
return;
- plugin_find_server_channel (server, channel, &ptr_server, &ptr_channel);
- if (ptr_server && ptr_channel)
- user_command (ptr_channel->buffer, ptr_server, command);
- else if (ptr_server && (ptr_server->buffer))
- user_command (ptr_server->buffer, ptr_server, command);
+ if (plugin_find_server_channel (server, channel, &ptr_server, &ptr_channel) < 0)
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf (NULL,
+ _("%s server/channel (%s/%s) not found for plugin "
+ "exec command\n"),
+ WEECHAT_ERROR,
+ (server) ? server : "", (channel) ? channel : "");
+ }
else
- user_command (gui_buffers, NULL, command);
+ {
+ if (ptr_server && ptr_channel)
+ user_command (ptr_server, ptr_channel, command);
+ else if (ptr_server && (ptr_server->buffer))
+ user_command (ptr_server, NULL, command);
+ else
+ {
+ irc_display_prefix (NULL, NULL, PREFIX_ERROR);
+ gui_printf (NULL, _("%s server not found for plugin exec command\n"),
+ WEECHAT_ERROR);
+ }
+ }
}
/*
diff --git a/weechat/src/plugins/plugins.c b/weechat/src/plugins/plugins.c
index 80b87922f..904eb06f8 100644
--- a/weechat/src/plugins/plugins.c
+++ b/weechat/src/plugins/plugins.c
@@ -51,7 +51,7 @@ t_weechat_plugin *last_weechat_plugin = NULL;
* plugin_find_server_channel: find server/channel for command execution
*/
-void
+int
plugin_find_server_channel (char *server, char *channel,
t_irc_server **ptr_server,
t_irc_channel **ptr_channel)
@@ -70,7 +70,11 @@ plugin_find_server_channel (char *server, char *channel,
else
{
if (server && server[0])
+ {
(*ptr_server) = server_search (server);
+ if (!(*ptr_server))
+ return -1;
+ }
else
{
(*ptr_server) = SERVER(gui_current_window->buffer);
@@ -82,8 +86,11 @@ plugin_find_server_channel (char *server, char *channel,
{
if ((*ptr_server))
(*ptr_channel) = channel_search ((*ptr_server), channel);
+ if (!(*ptr_channel))
+ return -1;
}
}
+ return 0;
}
/*
diff --git a/weechat/src/plugins/plugins.h b/weechat/src/plugins/plugins.h
index 60eb2e132..78d1ae95a 100644
--- a/weechat/src/plugins/plugins.h
+++ b/weechat/src/plugins/plugins.h
@@ -31,8 +31,8 @@ typedef void (t_weechat_end_func) (t_weechat_plugin *);
extern t_weechat_plugin *weechat_plugins;
extern t_weechat_plugin *last_weechat_plugin;
-extern void plugin_find_server_channel (char *, char *,
- t_irc_server **, t_irc_channel **);
+extern int plugin_find_server_channel (char *, char *,
+ t_irc_server **, t_irc_channel **);
extern void plugin_exec_on_files (t_weechat_plugin *, char *,
int (*)(t_weechat_plugin *, char *));
extern t_weechat_plugin *plugin_search (char *);