Add IRC command /notify, new options for notify and infolist "irc_notify" (task #5441)

This commit provides:
- new IRC command /notify
- new options: irc.look.notify_tags_ison, irc.look.notify_tags_whois,
  irc.network.notify_check_ison, irc.network.notify_check_whois
- new option "notify" in servers (but should not be changed, only /notify
  command should be used)
- infolist "irc_notify" to get notify list (by server or for all servers).
v2.8-utf8proc
Sebastien Helleu 2010-11-06 11:38:48 +01:00
parent a56dc00b2f
commit e001c05710
45 changed files with 3236 additions and 470 deletions

View File

@ -1,7 +1,7 @@
WeeChat ChangeLog
=================
Sébastien Helleu <flashcode@flashtux.org>
v0.3.4-dev, 2010-10-30
v0.3.4-dev, 2010-11-06
Version 0.3.4 (under dev!)
@ -29,6 +29,10 @@ Version 0.3.4 (under dev!)
nicklist_group_get_integer, nicklist_group_get_string,
nicklist_group_get_pointer, nicklist_group_set, nicklist_nick_get_integer,
nicklist_nick_get_string, nicklist_nick_get_pointer, nicklist_nick_set
* irc: add command /notify, new options irc.look.notify_tags_ison,
irc.look.notify_tags_whois, irc.network.notify_check_ison,
irc.network.notify_check_whois, new option "notify" in servers, new infolist
"irc_notify" (task #5441)
* irc: add new option irc.look.nick_color_force (task #7374)
* irc: improve nick prefixes, all modes (even unknown) are used with PREFIX
value from message 005

View File

@ -18,6 +18,8 @@
| irc | irc_msg_part | Standardnachricht beim Verlassen (/part) eines IRC-Channels
| irc | irc_notify_nicks | nicks in notify list
| irc | irc_privates | Private auf allen IRC Servern
| irc | irc_server | aktueller IRC-Server

View File

@ -10,6 +10,8 @@
| irc | irc_nick | Liste der Nicks im IRC-Channel | Nick Pointer (optional) | Server,Channel,Nick (Channel und Nick sind optional)
| irc | irc_notify | list of notify | notify pointer (optional) | Servername (darf mit einem "*" als Platzhalter beginnen oder enden) (optional)
| irc | irc_server | Liste der IRC-Server | Server Pointer (optional) | Servername (darf mit einem "*" als Platzhalter beginnen oder enden) (optional)
| logger | logger_buffer | Liste der protokollierten Buffer | Logger Pointer (optional) | -

View File

@ -151,21 +151,21 @@
........................................
Ignoriert Nicks/Hosts von Channels oder Servern
list: zeigt an, wer/was ignoriert wird
add: füge eine Ignorierung hinzu
del: entferne eine Ignorierung
number: Nummer der Ignorierung die entfernt werden soll (nutze "list" )
-all: entfernt alle Einträge
nick/host: Nick oder Host der ignoriert werden soll: Syntax ist "re:regex" oder "mask" (mask ist eine Zeichenkette in der mittels "*" (Joker) ein oder mehrere Zeichen ersetzt werden können)
server: interner Name des Server, in dem die Ignorierung statt finden soll
channel: Name des Channel, in dem die Ignorierung statt finden soll
list: list all ignores
add: add an ignore
del: delete an ignore
number: number of ignore to delete (look at list to find it)
-all: delete all ignores
nick/host: nick or host to ignore: syntax is "re:regex" or "mask" (a mask is a string with some "*" to replace one or more chars)
server: internal server name where ignore is working
channel: channel name where ignore is working
Beispiele:
ignoriert den Nick "toto":
Examples:
ignore nick "toto" everywhere:
/ignore add toto
ignoriert den Host "toto@domain.com" auf dem freenode Server:
ignore host "toto@domain.com" on freenode server:
/ignore add toto@domain.com freenode
ignoriert den Host "toto*@*.domain.com" im Chat freenode/#weechat:
ignore host "toto*@*.domain.com" on freenode/#weechat:
/ignore add toto*@*.domain.com freenode #weechat
........................................
@ -364,6 +364,29 @@
Text: zu sendender Text
........................................
&bull; *`/notify`* `[add nick [server [-away]]] | [del nick|-all [server]]`::
........................................
add a notification for presence or away status of nicks on servers
add: add a notification
nick: nickname
server: internal server name (by default current server)
-away: notify when away message is changed (by doing whois on nick)
del: delete a notification
-all: delete all notifications
Without argument, this command displays notifications for current server (or all servers if command is issued on core buffer).
Examples:
notify when "toto" joins/quits current server:
/notify add toto
notify when "toto" joins/quits freenode server:
/notify add toto freenode
notify when "toto" is away or back on freenode server:
/notify add toto freenode -away
........................................
&bull; *`/op`* `Nickname [Nickname]`::
........................................

View File

@ -218,6 +218,16 @@
** Typ: integer
** Werte: auto, never, always (Standardwert: `auto`)
* *irc.look.notify_tags_ison*
** Beschreibung: `comma separated list of tags used in messages printed by notify when a nick joins or quits server (result of command ison), for example: "notify_highglight", "notify_message" or "notify_private"`
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `"notify_message"`)
* *irc.look.notify_tags_whois*
** Beschreibung: `comma separated list of tags used in messages printed by notify when a nick away status changes (result of command whois), for example: "notify_highglight", "notify_message" or "notify_private"`
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `"notify_message"`)
* *irc.look.part_closes_buffer*
** Beschreibung: `Schließt den Buffer wenn "/part" im Channel ausgeführt wird`
** Typ: boolesch
@ -298,6 +308,16 @@
** Typ: integer
** Werte: 1 .. 3600 (Standardwert: `1`)
* *irc.network.notify_check_ison*
** Beschreibung: `interval between two checks for notify with IRC command "ison" (in minutes)`
** Typ: integer
** Werte: 1 .. 10080 (Standardwert: `1`)
* *irc.network.notify_check_whois*
** Beschreibung: `interval between two checks for notify with IRC command "whois" (in minutes)`
** Typ: integer
** Werte: 1 .. 10080 (Standardwert: `5`)
* *irc.network.send_unknown_commands*
** Beschreibung: `Sende unbekannte Befehle an den Server`
** Typ: boolesch
@ -398,6 +418,11 @@
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `""`)
* *irc.server_default.notify*
** Beschreibung: `notify list for server (you should not change this option but use /notify command instead)`
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `""`)
* *irc.server_default.password*
** Beschreibung: `Passwort für den Server`
** Typ: Zeichenkette

View File

@ -18,6 +18,8 @@
| irc | irc_msg_part | default part message for IRC channel
| irc | irc_notify_nicks | nicks in notify list
| irc | irc_privates | privates on all IRC servers
| irc | irc_server | current IRC server

View File

@ -10,6 +10,8 @@
| irc | irc_nick | list of nicks for an IRC channel | nick pointer (optional) | server,channel,nick (channel and nick are optional)
| irc | irc_notify | list of notify | notify pointer (optional) | server name (can start or end with "*" as wildcard) (optional)
| irc | irc_server | list of IRC servers | server pointer (optional) | server name (can start or end with "*" as wildcard) (optional)
| logger | logger_buffer | list of logger buffers | logger pointer (optional) | -

View File

@ -152,8 +152,8 @@
ignore nicks/hosts from servers or channels
list: list all ignores
add: add a ignore
del: del a ignore
add: add an ignore
del: delete an ignore
number: number of ignore to delete (look at list to find it)
-all: delete all ignores
nick/host: nick or host to ignore: syntax is "re:regex" or "mask" (a mask is a string with some "*" to replace one or more chars)
@ -364,6 +364,29 @@
text: text to send
........................................
&bull; *`/notify`* `[add nick [server [-away]]] | [del nick|-all [server]]`::
........................................
add a notification for presence or away status of nicks on servers
add: add a notification
nick: nickname
server: internal server name (by default current server)
-away: notify when away message is changed (by doing whois on nick)
del: delete a notification
-all: delete all notifications
Without argument, this command displays notifications for current server (or all servers if command is issued on core buffer).
Examples:
notify when "toto" joins/quits current server:
/notify add toto
notify when "toto" joins/quits freenode server:
/notify add toto freenode
notify when "toto" is away or back on freenode server:
/notify add toto freenode -away
........................................
&bull; *`/op`* `nickname [nickname]`::
........................................

View File

@ -218,6 +218,16 @@
** type: integer
** values: auto, never, always (default value: `auto`)
* *irc.look.notify_tags_ison*
** description: `comma separated list of tags used in messages printed by notify when a nick joins or quits server (result of command ison), for example: "notify_highglight", "notify_message" or "notify_private"`
** type: string
** values: any string (default value: `"notify_message"`)
* *irc.look.notify_tags_whois*
** description: `comma separated list of tags used in messages printed by notify when a nick away status changes (result of command whois), for example: "notify_highglight", "notify_message" or "notify_private"`
** type: string
** values: any string (default value: `"notify_message"`)
* *irc.look.part_closes_buffer*
** description: `close buffer when /part is issued on a channel`
** type: boolean
@ -298,6 +308,16 @@
** type: integer
** values: 1 .. 3600 (default value: `1`)
* *irc.network.notify_check_ison*
** description: `interval between two checks for notify with IRC command "ison" (in minutes)`
** type: integer
** values: 1 .. 10080 (default value: `1`)
* *irc.network.notify_check_whois*
** description: `interval between two checks for notify with IRC command "whois" (in minutes)`
** type: integer
** values: 1 .. 10080 (default value: `5`)
* *irc.network.send_unknown_commands*
** description: `send unknown commands to server`
** type: boolean
@ -398,6 +418,11 @@
** type: string
** values: any string (default value: `""`)
* *irc.server_default.notify*
** description: `notify list for server (you should not change this option but use /notify command instead)`
** type: string
** values: any string (default value: `""`)
* *irc.server_default.password*
** description: `password for server`
** type: string

View File

@ -18,6 +18,8 @@
| irc | irc_msg_part | message de fin par défaut pour le canal IRC
| irc | irc_notify_nicks | pseudos dans la liste de notifications
| irc | irc_privates | privés sur tous les serveurs IRC
| irc | irc_server | serveur IRC courant

View File

@ -10,6 +10,8 @@
| irc | irc_nick | liste des pseudos pour un canal IRC | pointeur vers le pseudo (optionnel) | serveur,canal,pseudo (canal et pseudo sont optionnels)
| irc | irc_notify | liste des notifications | pointeur vers la notification (optionnel) | nom de serveur (peut démarrer ou se terminer par "*" comme joker) (optionnel)
| irc | irc_server | liste des serveurs IRC | pointeur vers le serveur (optionnel) | nom de serveur (peut démarrer ou se terminer par "*" comme joker) (optionnel)
| logger | logger_buffer | liste des enregistreurs de tampons (loggers) | pointeur vers le logger (optionnel) | -

View File

@ -364,6 +364,29 @@
texte: texte à envoyer
........................................
&bull; *`/notify`* `[add pseudo [serveur [-away]]] | [del pseudo|-all [serveur]]`::
........................................
ajoute une notification de présence ou de statut d'absence pour des pseudos sur les serveurs
add: ajoute une notification
pasudo: pseudo
serveur: nom interne du serveur (par défaut le serveur courant)
-away: notifie quand le message d'absence est changé (en faisant un whois sur le pseudo)
del: supprime une notification
-all: supprime toutes les notifications
Sans paramètre, cette commande affiche les notifications pour le serveur courant (ou tous les serveurs si la commande est exécutée sur le tampon "core").
Exemples:
notifie quand "toto" rejoint/quitte le serveur courant:
/notify add toto
notifie quand "toto" rejoint/quitte le serveur freenode:
/notify add toto freenode
notifie quand "toto" est absent ou de retour sur le serveur freenode:
/notify add toto freenode -away
........................................
&bull; *`/op`* `pseudo [pseudo]`::
........................................

View File

@ -218,6 +218,16 @@
** type: entier
** valeurs: auto, never, always (valeur par défaut: `auto`)
* *irc.look.notify_tags_ison*
** description: `liste des tags (séparés par des virgules) utilisés dans les messages affichés par notify lorsqu'un pseudo a rejoint ou quitté le serveur (résultat de la commande ison), par exemple: "notify_highlight", "notify_message" ou "notify_private"`
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `"notify_message"`)
* *irc.look.notify_tags_whois*
** description: `liste des tags (séparés par des virgules) utilisés dans les messages affichés par notify lorsque le status d'absence d'un pseudo change (résultat de la commande whois), par exemple: "notify_highlight", "notify_message" ou "notify_private"`
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `"notify_message"`)
* *irc.look.part_closes_buffer*
** description: `fermer le tampon lorsque /part est exécuté sur un canal`
** type: booléen
@ -298,6 +308,16 @@
** type: entier
** valeurs: 1 .. 3600 (valeur par défaut: `1`)
* *irc.network.notify_check_ison*
** description: `intervalle entre deux vérifications de notification avec la commande IRC "ison" (en minutes)`
** type: entier
** valeurs: 1 .. 10080 (valeur par défaut: `1`)
* *irc.network.notify_check_whois*
** description: `intervalle entre deux vérifications de notification avec la commande IRC "whois" (en minutes)`
** type: entier
** valeurs: 1 .. 10080 (valeur par défaut: `5`)
* *irc.network.send_unknown_commands*
** description: `envoie les commandes inconnues au serveur`
** type: booléen
@ -398,6 +418,11 @@
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `""`)
* *irc.server_default.notify*
** description: `liste de notifications pour le serveur (vous ne devriez pas changer cette option mais utiliser la commande /notify)`
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `""`)
* *irc.server_default.password*
** description: `mot de passe pour le serveur`
** type: chaîne

View File

@ -18,6 +18,8 @@
| irc | irc_msg_part | messaggio di uscita predefinito per il canale IRC
| irc | irc_notify_nicks | nicks in notify list
| irc | irc_privates | privati su tutti i server IRC
| irc | irc_server | server IRC corrente

View File

@ -10,6 +10,8 @@
| irc | irc_nick | elenco dei nick per un canale IRC | puntatore al nick (opzionale) | server,canale,nick (canale e nick sono opzionali)
| irc | irc_notify | list of notify | notify pointer (optional) | nome server (può iniziare o terminare con "*" come carattere jolly) (opzionale)
| irc | irc_server | elenco di server IRC | puntatore al server (opzionale) | nome server (può iniziare o terminare con "*" come carattere jolly) (opzionale)
| logger | logger_buffer | elenco dei buffer logger | puntatore al logger (opzionale) | -

View File

@ -151,22 +151,22 @@
........................................
ignora nick/host dai server o dai canali
list: elenca tutti gli ignore
add: aggiungi un ignore
del: elimina un ignore
numero: numero di ignore da eliminare (nella lista)
all: elimina tutti gli ignore
nick/host: nick o host da ignorare: la sintassi è "re:regex" o "mask" (una mask è una stringa con alcuni "*" per sostituire uno o più caratteri)
server: nome interno del server dove l'ignore è attivo
canale: nome del canale dove l'ignore è attivo
list: list all ignores
add: add an ignore
del: delete an ignore
number: number of ignore to delete (look at list to find it)
-all: delete all ignores
nick/host: nick or host to ignore: syntax is "re:regex" or "mask" (a mask is a string with some "*" to replace one or more chars)
server: internal server name where ignore is working
channel: channel name where ignore is working
Esempi:
ignora nick "tizio" su tutti gli host/canali:
/ignore add tizio
ignora l'host "tizio@dominio.com" sul server freenode:
/ignore add tizio@dominio.com freenode
ignora l'host "tizio*@*.dominio.com" su freenode/#weechat:
/ignore add tizio*@*.dominio.com freenode #weechat
Examples:
ignore nick "toto" everywhere:
/ignore add toto
ignore host "toto@domain.com" on freenode server:
/ignore add toto@domain.com freenode
ignore host "toto*@*.domain.com" on freenode/#weechat:
/ignore add toto*@*.domain.com freenode #weechat
........................................
&bull; *`/info`* `[obiettivo]`::
@ -364,6 +364,29 @@
testo: testo da inviare
........................................
&bull; *`/notify`* `[add nick [server [-away]]] | [del nick|-all [server]]`::
........................................
add a notification for presence or away status of nicks on servers
add: add a notification
nick: nickname
server: internal server name (by default current server)
-away: notify when away message is changed (by doing whois on nick)
del: delete a notification
-all: delete all notifications
Without argument, this command displays notifications for current server (or all servers if command is issued on core buffer).
Examples:
notify when "toto" joins/quits current server:
/notify add toto
notify when "toto" joins/quits freenode server:
/notify add toto freenode
notify when "toto" is away or back on freenode server:
/notify add toto freenode -away
........................................
&bull; *`/op`* `nick [nick]`::
........................................

View File

@ -218,6 +218,16 @@
** tipo: intero
** valori: auto, never, always (valore predefinito: `auto`)
* *irc.look.notify_tags_ison*
** descrizione: `comma separated list of tags used in messages printed by notify when a nick joins or quits server (result of command ison), for example: "notify_highglight", "notify_message" or "notify_private"`
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `"notify_message"`)
* *irc.look.notify_tags_whois*
** descrizione: `comma separated list of tags used in messages printed by notify when a nick away status changes (result of command whois), for example: "notify_highglight", "notify_message" or "notify_private"`
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `"notify_message"`)
* *irc.look.part_closes_buffer*
** descrizione: `chiude buffer quando viene digitato /part nel canale`
** tipo: bool
@ -298,6 +308,16 @@
** tipo: intero
** valori: 1 .. 3600 (valore predefinito: `1`)
* *irc.network.notify_check_ison*
** descrizione: `interval between two checks for notify with IRC command "ison" (in minutes)`
** tipo: intero
** valori: 1 .. 10080 (valore predefinito: `1`)
* *irc.network.notify_check_whois*
** descrizione: `interval between two checks for notify with IRC command "whois" (in minutes)`
** tipo: intero
** valori: 1 .. 10080 (valore predefinito: `5`)
* *irc.network.send_unknown_commands*
** descrizione: `invia comandi sconosciuti al server`
** tipo: bool
@ -398,6 +418,11 @@
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `""`)
* *irc.server_default.notify*
** descrizione: `notify list for server (you should not change this option but use /notify command instead)`
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `""`)
* *irc.server_default.password*
** descrizione: `password per il server`
** tipo: stringa

View File

@ -137,6 +137,8 @@
./src/plugins/irc/irc-msgbuffer.h
./src/plugins/irc/irc-nick.c
./src/plugins/irc/irc-nick.h
./src/plugins/irc/irc-notify.c
./src/plugins/irc/irc-notify.h
./src/plugins/irc/irc-protocol.c
./src/plugins/irc/irc-protocol.h
./src/plugins/irc/irc-raw.c

197
po/cs.po
View File

@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-08-07 10:46+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:16+0100\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Czech\n"
@ -3209,6 +3209,41 @@ msgstr ""
msgid "Notice"
msgstr ""
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: příkaz \"%s\" nemůže být spuštěn v irc bufferu (server nebo kanál)"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: ignorování již existuje"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: přepínám adresu na %s/%d"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: chyba při přidávání ignorování"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "%s: všechny ignorování byly smazány"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s: žádné ignorování v seznamu"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "%s: ignorování smazáno"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: ignorování nenalezeno"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: nemohu vytvořít nový soukromý buffer\"%s\""
@ -3519,10 +3554,11 @@ msgstr "ignorovat přezdívky/hosty na serveru nebo kanálu"
msgid "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgstr "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
#, fuzzy
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3843,6 +3879,33 @@ msgstr ""
"přezdívka: uživatel, kterému poslat notifikaci\n"
" text: text, který poslat"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
#, fuzzy
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr "dát status operátora kanálu přezdívce (přezdívkám)"
@ -4347,6 +4410,10 @@ msgstr "výchozí odchozí zpráva pro IRC kanál"
msgid "numbers for defined ignores"
msgstr "čísla pro definované ignorování"
#, fuzzy
msgid "nicks in notify list"
msgstr "%s: žádné ignorování v seznamu"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4521,6 +4588,11 @@ msgstr ""
"výchozí zpráva při uknočnení (odpojení od serveru) (\"%v\" bude nahrazeno "
"verzí WeeChat v řetězci)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: chyba při vytváření serveru \"%s\""
@ -4655,6 +4727,18 @@ msgstr ""
"zobrazovat upozornění jako soukromé zprávy (pokud je automaticky, použije se "
"soukromý buffer, kdy existuje)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr "zavřít buffer, když je na kanálu spuštěn /part"
@ -4750,6 +4834,17 @@ msgstr ""
"maximální délka prodlevy automatíckého znovupřipojení k serveru (v "
"sekundách, 0 = žádné maximum)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "pokud je off, jsou barvy v příchozích zprávách ignorovány"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"povolit uživateli posílat barvy se speciálními kódy (ctrl-c + kód a "
"volitelná barva: b=tlustě, cxx=barva, cxx,yy=barva+pozadí, u=podtržené, "
"r=obrácené)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"interval mezi dvěmi knotrolami pro lag (v sekundách, 0 = nikdy nekontrolovat)"
@ -4766,20 +4861,24 @@ msgid ""
msgstr ""
"interval mezi dvěmi knotrolami pro lag, kdyz se lag zvětšuje (v sekundách)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "pokud je off, jsou barvy v příchozích zprávách ignorovány"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"povolit uživateli posílat barvy se speciálními kódy (ctrl-c + kód a "
"volitelná barva: b=tlustě, cxx=barva, cxx,yy=barva+pozadí, u=podtržené, "
"r=obrácené)"
msgid "send unknown commands to server"
msgstr "posílat neznámé příkazy na server"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"interval mezi dvěmi knotrolami pro nepřítomnost (v minutách, 0 = nikdy "
"nekontrolovat)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"interval mezi dvěmi knotrolami pro nepřítomnost (v minutách, 0 = nikdy "
"nekontrolovat)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP požadavek od %s%s%s: %s%s%s%s%s%s"
@ -4941,6 +5040,14 @@ msgstr "seznam pro IRC ignorování"
msgid "ignore pointer (optional)"
msgstr "ignorovat ukazatel (volitelné)"
#, fuzzy
msgid "list of notify"
msgstr "seznam konfiguračních možností"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "ukazatel přezdívky (volitelné)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: nejste připojen k serveru"
@ -4949,6 +5056,46 @@ msgstr "%s%s: nejste připojen k serveru"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: tenhle buffer není kanál!"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "Xfer seznam:"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "Xfer seznam:"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s%s byl vykopnut %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s%s byl vykopnut %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s[%s%s%s]%s je pryč: %s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%sTéma pro %s%s%s v \"%s%s\""
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s[%s%s%s]%s je pryč: %s"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -6934,23 +7081,3 @@ msgstr ""
msgid "Pointer"
msgstr "Ukazatel"
#~ msgid "open new channels near server"
#~ msgstr "otevřít nový kanál poblíž serveru"
#~ msgid "open new privates near server"
#~ msgstr "otevřít nový soukromý rozhovor poblíž serveru"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr "%s%s: adresa pro server \"%s\" není definována, nemohu se připojit"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s%s: buffer IRC serveru \"%s\", kanálu \"%s\" nenalezen"
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "seznam xfer"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Seznam proxy:"

194
po/de.po
View File

@ -22,8 +22,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.3-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-10-30 00:12+0100\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Nils G.\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: \n"
@ -3354,6 +3354,42 @@ msgstr ""
msgid "Notice"
msgstr "Hinweis"
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: Der Befehl \"%s\" kann nur im IRC-Buffer ausgeführt werden (Server "
"oder Channel)"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: Diese /ignore-Regel existiert bereits"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: Wechsel Adresse zu %s/%d"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: Fehler beim hinzufügen mittels /ignore-Befehl"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "%s: Alle /ignore-Regeln gelöscht"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s Keine /ignore-Regel gefunden"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "%s: /ignore-Regel gelöscht"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: /ignore-Regel nicht gefunden"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: Kann keinen neuen privaten Buffer \"%s\" erzeugen"
@ -3673,10 +3709,11 @@ msgstr "Ignoriert Nicks/Hosts von Channels oder Servern"
msgid "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgstr "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
#, fuzzy
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3999,6 +4036,33 @@ msgstr ""
"Nickname: Empfänger der Nachricht\n"
" Text: zu sendender Text"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
#, fuzzy
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr "Channel-Operator Status an Nicknamen verleihen"
@ -4510,6 +4574,10 @@ msgstr "Standardnachricht beim Verlassen (/part) eines IRC-Channels"
msgid "numbers for defined ignores"
msgstr "Anzahl für festgelegte /ignores"
#, fuzzy
msgid "nicks in notify list"
msgstr "%s Keine /ignore-Regel gefunden"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4703,6 +4771,11 @@ msgstr ""
"Standardnachricht beim Beenden (Verbindung zum Server trennen) (\"%v\": wird "
"durch die WeeChat-Version ersetzt)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: Fehler bei der Erstellung des Servers \"%s\""
@ -4854,6 +4927,18 @@ msgstr ""
"Zeigt Notizen als private Nachricht an (wird die \"auto\" Option verwendet "
"dann wird ein privater Buffer genutzt, falls vorhanden)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr "Schließt den Buffer wenn \"/part\" im Channel ausgeführt wird"
@ -4965,6 +5050,18 @@ msgstr ""
"maximale Verzögerung bei der automatischen wiederverbindung zum Server (in "
"Sekunden, 0 = keine Begrenzung)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"Falls deaktiviert, werden Farben-Codes von eingehenden Nachrichten ignoriert."
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"Erlaube Benutzern, spezielle Codes zu versenden (ctrl-c + Code und optional "
"Farbe: b=fett, cxx=Farbe, cxx,yy=Farbe+Hintergrund, u=unterstrichen, "
"r=invertiert)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"Intervall zwischen zwei Lag-Überprüfungen (in Sekunden, 0 = keine "
@ -4985,21 +5082,24 @@ msgstr ""
"Intervall zwischen zwei Aktualisierungen des Lag-Items, wenn die "
"Verzögerungszeit sich erhöht (in Sekunden)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"Falls deaktiviert, werden Farben-Codes von eingehenden Nachrichten ignoriert."
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"Erlaube Benutzern, spezielle Codes zu versenden (ctrl-c + Code und optional "
"Farbe: b=fett, cxx=Farbe, cxx,yy=Farbe+Hintergrund, u=unterstrichen, "
"r=invertiert)"
msgid "send unknown commands to server"
msgstr "Sende unbekannte Befehle an den Server"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"Überprüft die Abwesenheit (/away) der Nutzer, in dem angegebenen Intervall "
"(in Minuten, 0 = nicht überprüfen)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"Überprüft die Abwesenheit (/away) der Nutzer, in dem angegebenen Intervall "
"(in Minuten, 0 = nicht überprüfen)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP angefordert von %s%s%s: %s%s%s%s%s%s"
@ -5161,6 +5261,14 @@ msgstr "Liste von ignorierten IRCs"
msgid "ignore pointer (optional)"
msgstr "Ignore Pointer (optional)"
#, fuzzy
msgid "list of notify"
msgstr "Liste der Optionen"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "Nick Pointer (optional)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: Es besteht keine Verbindung zum Server"
@ -5169,6 +5277,46 @@ msgstr "%s%s: Es besteht keine Verbindung zum Server"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: Dieser Buffer ist kein Channel!"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "Transfer-Liste:"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "Transfer-Liste:"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s%s hat %s%s%s gekickt"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s%s hat %s%s%s gekickt"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s[%s%s%s]%s ist abwesend: %s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%sDas Topic von %s%s%s lautet: \"%s%s\""
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s[%s%s%s]%s ist abwesend: %s"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -7219,17 +7367,3 @@ msgstr "Hashtable (Ausgabe)"
msgid "Pointer"
msgstr "Pointer"
#~ msgid "open new channels near server"
#~ msgstr "Öffne neue Channels neben dem Server-Buffer"
#~ msgid "open new privates near server"
#~ msgstr "Öffne neue private Channels neben dem Server-Buffer"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr ""
#~ "%s%s: Adresse für den Server \"%s\" nicht definiert, Verbindung wird "
#~ "nicht hergestellt"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s%s: Keinen Buffer für IRC Server \"%s\", Channel \"%s\" gefunden"

229
po/es.po
View File

@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-08-07 10:46+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Spanish\n"
@ -3254,6 +3254,42 @@ msgstr ""
msgid "Notice"
msgstr ""
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: el comando \"%s\" debe ser ejecutado en un buffer irc (canal o "
"servidor)"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: ya se encuentra ignorado"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: cambiando dirección a %s/%d"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: error al actualizar la lista de ignorados"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "%s: lista de ignorados borrada"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s: lista de ignorados vacía"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "%s: borrado de la lista de ignorados"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: no se encontró el ignorado"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: no es posible crear la conversación privada \"%s\""
@ -3567,10 +3603,11 @@ msgstr "ignorar apodos/hosts en servidores o canales"
msgid "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgstr "[list] | [add [re:]apodo/host [servidor [canal]]] | [del número|-all]"
#, fuzzy
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3891,6 +3928,33 @@ msgstr ""
" apodo: apodo del destinatario\n"
" texto: texto a enviar"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
#, fuzzy
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[list] | [add [re:]apodo/host [servidor [canal]]] | [del número|-all]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr "dar el estado de operador del canal a el/los usuario(s)"
@ -4399,6 +4463,10 @@ msgstr "mensaje de abandono por defecto"
msgid "numbers for defined ignores"
msgstr "números para los ignores definidos"
#, fuzzy
msgid "nicks in notify list"
msgstr "%s: lista de ignorados vacía"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4575,6 +4643,11 @@ msgstr ""
"mensaje de salida por defecto (cuando se desconecta del servidor) (\"%v\" "
"será reemplazado por la versión de WeeChat)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: error al crear el servidor \"%s\""
@ -4713,6 +4786,18 @@ msgstr ""
"mostrar avisos como mensajes privados (si es auto, usa un buffer privado si "
"lo encuentra)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr "cerrar el buffer cuando /part es usado en un canal"
@ -4807,6 +4892,19 @@ msgstr ""
msgid "maximum autoreconnect delay to server (in seconds, 0 = no maximum)"
msgstr "retraso máximo para la autoreconexión (en segundos, 0 = sin máximo)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"cuando se desactiva, los códigos de color se ignoran en los mensajes "
"entrantes"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"permitir al usuario enviar colores con códigos especiales (ctrl-c + un "
"código y color opcional: b=negrita, cxx,yy=color+fondo, u=subrayado, "
"r=invertido)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"intervalo entre dos comprobaciones de retraso (en segundos, 0 = nunca "
@ -4826,22 +4924,22 @@ msgstr ""
"intervalo de refresco para el elemento de lag, cuando este aumenta (en "
"segundos)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"cuando se desactiva, los códigos de color se ignoran en los mensajes "
"entrantes"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"permitir al usuario enviar colores con códigos especiales (ctrl-c + un "
"código y color opcional: b=negrita, cxx,yy=color+fondo, u=subrayado, "
"r=invertido)"
msgid "send unknown commands to server"
msgstr "envía comandos desconocidos al servidor"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"intervalo entre dos comprobaciones de ausencia (en minutos, 0 = no comprobar)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"intervalo entre dos comprobaciones de ausencia (en minutos, 0 = no comprobar)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP solicitado por %s%s%s: %s%s%s%s%s%s"
@ -5004,6 +5102,14 @@ msgstr "lista de IRC ignores"
msgid "ignore pointer (optional)"
msgstr "puntero del ignore (opcional)"
#, fuzzy
msgid "list of notify"
msgstr "lista de opciones"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "puntero del apodo (opcional)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: no estas conectado a ningún servidor"
@ -5012,6 +5118,46 @@ msgstr "%s%s: no estas conectado a ningún servidor"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: ¡este buffer no es un canal!"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "Lista de transferencias:"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "Lista de transferencias:"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s%s ha expulsado %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s%s ha expulsado %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s[%s%s%s]%s está ausente: %s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%sEl tema para %s%s%s es \"%s%s\""
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s[%s%s%s]%s está ausente: %s"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -7023,52 +7169,3 @@ msgstr ""
msgid "Pointer"
msgstr "Puntero"
#~ msgid "open new channels near server"
#~ msgstr "abrir nuevos canales cerca del servidor"
#~ msgid "open new privates near server"
#~ msgstr "abrir nuevas conversaciones privadas cerca del servidor"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr ""
#~ "%s%s: dirección sin definir para el servidor \"%s\", no es posible "
#~ "conectarse"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr ""
#~ "%s%s: buffer no encontrado para el servidor IRC \"%s\", canal \"%s\""
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "lista de transferencias"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Lista de proxies:"
#~ msgid "text color for prefix #1 in nicklist"
#~ msgstr "color para el prefijo #1 en la lista de apodos"
#~ msgid "text color for prefix #2 in nicklist"
#~ msgstr "color para el prefijo #2 en la lista de apodos"
#~ msgid "text color for prefix #3 in nicklist"
#~ msgstr "color para el prefijo #3 en la lista de apodos"
#~ msgid "text color for prefix #4 in nicklist"
#~ msgstr "color para el prefijo #4 en la lista de apodos"
#~ msgid "text color for prefix #5 in nicklist"
#~ msgstr "color para el prefijo #5 en la lista de apodos"
#~ msgid ""
#~ "channel: channel name to join\n"
#~ " key: key to join the channel"
#~ msgstr ""
#~ "canal: canal a unirse\n"
#~ "clave: clave para unirse al canal"
#, fuzzy
#~ msgid "color for buffer name when connected using SSL to server"
#~ msgstr "%s%s: no estas conectado a ningún servidor"

221
po/fr.po
View File

@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-10-29 22:59+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 22:53+0100\n"
"Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: French\n"
@ -3299,6 +3299,42 @@ msgstr ""
msgid "Notice"
msgstr "Notice"
#, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: le serveur doit être spécifié car vous n'êtes pas sur un serveur ou un "
"canal irc"
#, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: la notification existe déjà"
#, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: notification ajoutée pour %s%s"
#, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: erreur d'ajout de la notification"
#, c-format
msgid "%s: all notifications deleted"
msgstr "%s: notifications supprimées"
#, c-format
msgid "%s: no notification in list"
msgstr "%s: pas de notification dans la liste"
#, c-format
msgid "%s: notification deleted"
msgstr "%s: notification supprimée"
#, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: notification non trouvée"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: impossible de créer le tampon privé \"%s\""
@ -3614,8 +3650,8 @@ msgstr "[list] | [add [re:]pseudo/hote [server [channel]]] | [del numéro|-all]"
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3938,6 +3974,53 @@ msgstr ""
" pseudo: pseudo cible pour la notice\n"
" texte: texte à envoyer"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
"ajoute une notification de présence ou de statut d'absence pour des pseudos "
"sur les serveurs"
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[add pseudo [serveur [-away]]] | [del pseudo|-all [serveur]]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
" add: ajoute une notification\n"
" pasudo: pseudo\n"
"serveur: nom interne du serveur (par défaut le serveur courant)\n"
" -away: notifie quand le message d'absence est changé (en faisant un whois "
"sur le pseudo)\n"
" del: supprime une notification\n"
" -all: supprime toutes les notifications\n"
"\n"
"Sans paramètre, cette commande affiche les notifications pour le serveur "
"courant (ou tous les serveurs si la commande est exécutée sur le tampon "
"\"core\").\n"
"\n"
"Exemples:\n"
" notifie quand \"toto\" rejoint/quitte le serveur courant:\n"
" /notify add toto\n"
" notifie quand \"toto\" rejoint/quitte le serveur freenode:\n"
" /notify add toto freenode\n"
" notifie quand \"toto\" est absent ou de retour sur le serveur freenode:\n"
" /notify add toto freenode -away"
msgid "give channel operator status to nickname(s)"
msgstr "donner le statut opérateur à un/des pseudo(s)"
@ -4446,6 +4529,9 @@ msgstr "message de fin par défaut pour le canal IRC"
msgid "numbers for defined ignores"
msgstr "numéros pour les ignores définis"
msgid "nicks in notify list"
msgstr "pseudos dans la liste de notifications"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4627,6 +4713,13 @@ msgstr ""
"message de fin par défaut (lors de la déconnexion du serveur) (\"%v\" sera "
"remplacé par la version de WeeChat dans la chaîne)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
"liste de notifications pour le serveur (vous ne devriez pas changer cette "
"option mais utiliser la commande /notify)"
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: erreur de création du serveur \"%s\""
@ -4774,6 +4867,26 @@ msgstr ""
"afficher les notices comme des messages privés (si auto, utilise le tampon "
"privé s'il est trouvé)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
"liste des tags (séparés par des virgules) utilisés dans les messages "
"affichés par notify lorsqu'un pseudo a rejoint ou quitté le serveur "
"(résultat de la commande ison), par exemple: \"notify_highlight\", "
"\"notify_message\" ou \"notify_private\""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
"liste des tags (séparés par des virgules) utilisés dans les messages "
"affichés par notify lorsque le status d'absence d'un pseudo change (résultat "
"de la commande whois), par exemple: \"notify_highlight\", \"notify_message\" "
"ou \"notify_private\""
msgid "close buffer when /part is issued on a channel"
msgstr "fermer le tampon lorsque /part est exécuté sur un canal"
@ -4873,6 +4986,17 @@ msgid "maximum autoreconnect delay to server (in seconds, 0 = no maximum)"
msgstr ""
"délai maximum d'autoreconnection au serveur (en secondes, 0 = pas de maximum)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "si désactivé, les codes couleurs des messages entrants sont ignorés"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (ctrl-"
"c + un code et une couleur optionnelle: b=gras, cxx=couleur, cxx,yy=couleur"
"+fond, u=souligné, r=inversé)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"intervalle entre deux vérifications du lag (en secondes, 0 = ne jamais "
@ -4892,20 +5016,22 @@ msgstr ""
"intervalle entre deux rafraichissements du lag, lorsque le lag augmente (en "
"secondes)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "si désactivé, les codes couleurs des messages entrants sont ignorés"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (ctrl-"
"c + un code et une couleur optionnelle: b=gras, cxx=couleur, cxx,yy=couleur"
"+fond, u=souligné, r=inversé)"
msgid "send unknown commands to server"
msgstr "envoie les commandes inconnues au serveur"
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"intervalle entre deux vérifications de notification avec la commande IRC "
"\"ison\" (en minutes)"
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"intervalle entre deux vérifications de notification avec la commande IRC "
"\"whois\" (en minutes)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP demandé par %s%s%s: %s%s%s%s%s%s"
@ -5065,6 +5191,12 @@ msgstr "liste des ignores IRC"
msgid "ignore pointer (optional)"
msgstr "pointeur vers l'ignore (optionnel)"
msgid "list of notify"
msgstr "liste des notifications"
msgid "notify pointer (optional)"
msgstr "pointeur vers la notification (optionnel)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: vous n'êtes pas connecté au serveur"
@ -5073,6 +5205,45 @@ msgstr "%s%s: vous n'êtes pas connecté au serveur"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: ce tampon n'est pas un canal !"
msgid "offline"
msgstr "déconnecté"
msgid "online"
msgstr "connecté"
#, c-format
msgid "Notify list for %s%s%s:"
msgstr "Liste de notifications pour %s%s%s:"
msgid "Notify list is empty on this server"
msgstr "La liste de notifications est vide sur ce serveur"
msgid "Notify list for all servers:"
msgstr "Liste de notifications pour tous les serveurs:"
msgid "Notify list is empty on all servers"
msgstr "La liste de notifications est vide sur tous les serveurs"
#, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%snotify: %s%s%s a rejoint %s%s"
#, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%snotify: %s%s%s a quitté %s%s"
#, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%snotify: %s%s%s est maintenant absent: \"%s\""
#, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%snotify: %s%s%s est de retour"
#, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%snotify: %s%s%s est toujours absent: \"%s\""
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -7100,23 +7271,3 @@ msgstr "Hashtable (sortie)"
msgid "Pointer"
msgstr "Pointeur"
#~ msgid ""
#~ "display full away message in away bar item (if not set, display "
#~ "translated string \"away\")"
#~ msgstr ""
#~ "afficher le message complet d'absence dans l'objet de barre d'absence (si "
#~ "non défini, affiche la chaîne tra"
#~ msgid "open new channels near server"
#~ msgstr "ouvrir les nouveaux canaux près du serveur"
#~ msgid "open new privates near server"
#~ msgstr "ouvrir les nouveaux privés près du serveur"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr ""
#~ "%s%s: adresses non définies pour le serveur \"%s\", connexion impossible"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s%s: tampon non trouvé pour le serveur IRC \"%s\", canal \"%s\""

221
po/hu.po
View File

@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-08-07 10:46+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Hungarian\n"
@ -3020,6 +3020,40 @@ msgstr "%s \"%s\" parancs csak a szobaablakban futtatható\n"
msgid "Notice"
msgstr ""
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr "%s \"%s\" parancs nem futtatható a szerverablakban\n"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s az ignore már létezik\n"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s IP-cím nem található\n"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s nincs elég memória az információs pult üzenethez\n"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "a felhasználók le lettek tiltva"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s nem található ilyen mellőzés\n"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "Nincs mellőzés megadva.\n"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "aláírás nem található"
#, fuzzy, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s nem sikerült új privát ablakot nyitni \"%s\"\n"
@ -3308,8 +3342,8 @@ msgstr ""
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3589,6 +3623,32 @@ msgstr ""
" név: felhasználó akinek az üzenetet küldjük\n"
"szöveg: az üzenet szövege"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr ""
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
#, fuzzy
msgid "give channel operator status to nickname(s)"
msgstr "operátori jogok biztosítása felhasználó(k)nak"
@ -4128,6 +4188,10 @@ msgstr "felhasználók listája a szobában"
msgid "numbers for defined ignores"
msgstr ""
#, fuzzy
msgid "nicks in notify list"
msgstr "%s nem található ilyen mellőzés\n"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4299,6 +4363,11 @@ msgstr ""
"alapértelmezett kilépő üzenet (a '%v' változó a WeeChat verziójára "
"cserélődik)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, fuzzy, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s nincs elég memória az információs pult üzenethez\n"
@ -4426,6 +4495,18 @@ msgid ""
"display notices as private messages (if auto, use private buffer if found)"
msgstr "figyelmeztetések privát üzenetként való mutatása"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr ""
@ -4514,6 +4595,17 @@ msgstr ""
msgid "maximum autoreconnect delay to server (in seconds, 0 = no maximum)"
msgstr ""
msgid "when off, colors codes are ignored in incoming messages"
msgstr "ha ki van kapcsolva, "
#, fuzzy
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"színküldés engedélyezése speciális karakterekkel (^Cb=félkövér, ^Ccxx=szín, "
"^Cxx,yy=szín+háttérszín ^Cu=aláhúzás, ^Cr=fordított)"
#, fuzzy
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr "két távollétellenőrzés közti idő (percben, 0 = nincs ellenőrzés)"
@ -4531,21 +4623,21 @@ msgid ""
"seconds)"
msgstr "két távollétellenőrzés közti idő (percben, 0 = nincs ellenőrzés)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "ha ki van kapcsolva, "
#, fuzzy
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"színküldés engedélyezése speciális karakterekkel (^Cb=félkövér, ^Ccxx=szín, "
"^Cxx,yy=szín+háttérszín ^Cu=aláhúzás, ^Cr=fordított)"
#, fuzzy
msgid "send unknown commands to server"
msgstr "ismeretlen parancsok küldése az IRC szervernek"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr "két távollétellenőrzés közti idő (percben, 0 = nincs ellenőrzés)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr "két távollétellenőrzés közti idő (percben, 0 = nincs ellenőrzés)"
#, fuzzy, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%s%s%s eltávolította %s%s%s-t a szerverről"
@ -4721,6 +4813,14 @@ msgstr "IRC szerver portja"
msgid "ignore pointer (optional)"
msgstr ""
#, fuzzy
msgid "list of notify"
msgstr "konfigurációs paraméterek beállítása"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "Beállítások mentése a lemezre\n"
#, fuzzy, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s nincs csatlakozva szerverhez!\n"
@ -4729,6 +4829,46 @@ msgstr "%s nincs csatlakozva szerverhez!\n"
msgid "%s%s: this buffer is not a channel!"
msgstr "Ez az ablak nem egy szoba!\n"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "hotlist törlése"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "hotlist törlése"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s kirúgta %s%s%s-t a(z) %s%s szobából"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s kirúgta %s%s%s-t a(z) %s%s szobából"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s%s távol: %s\n"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "A %s%s%s szoba témája: "
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s%s távol: %s\n"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -6676,54 +6816,3 @@ msgstr ""
#, fuzzy
msgid "Pointer"
msgstr "perc"
#, fuzzy
#~ msgid "open new channels near server"
#~ msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
#, fuzzy
#~ msgid "open new privates near server"
#~ msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
#, fuzzy
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n"
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "Aliaszok listája:\n"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Aliaszok listája:\n"
#, fuzzy
#~ msgid "text color for prefix #1 in nicklist"
#~ msgstr "név színe"
#, fuzzy
#~ msgid "text color for prefix #2 in nicklist"
#~ msgstr "név színe"
#, fuzzy
#~ msgid "text color for prefix #3 in nicklist"
#~ msgstr "név színe"
#, fuzzy
#~ msgid "text color for prefix #4 in nicklist"
#~ msgstr "név színe"
#, fuzzy
#~ msgid "text color for prefix #5 in nicklist"
#~ msgstr "név színe"
#~ msgid ""
#~ "channel: channel name to join\n"
#~ " key: key to join the channel"
#~ msgstr ""
#~ "szoba: a szoba neve, ahová csatlakozni szeretnénk\n"
#~ "kulcs: a csatlakozáshoz szükséges kulcs"
#, fuzzy
#~ msgid "color for buffer name when connected using SSL to server"
#~ msgstr "%s nincs csatlakozva szerverhez!\n"

214
po/it.po
View File

@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-10-30 20:30+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Italian\n"
@ -3272,6 +3272,42 @@ msgstr ""
msgid "Notice"
msgstr "Notice"
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: il comando \"%s\" deve essere eseguito su un buffer IRC (server o "
"canale)"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: l'ignore esiste già"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: cambio indirizzo in %s/%d"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: errore nell'aggiunta dell'ignore"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "%s: tutti gli ignore eliminati"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s: nessun ignore nella lista"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "%s: ignore eliminato"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: ignore non trovato"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: impossibile creare il nuovo buffer privato \"%s\""
@ -3584,10 +3620,11 @@ msgstr "ignora nick/host dai server o dai canali"
msgid "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgstr "[list] | [add [re:]nick/host [server [canale]]] | [del numero|-all]"
#, fuzzy
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3908,6 +3945,33 @@ msgstr ""
" nick: utente a cui inviare la notifica\n"
" testo: testo da inviare"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
#, fuzzy
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[list] | [add [re:]nick/host [server [canale]]] | [del numero|-all]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr "concede lo stato di operatore del canale al(ai) nick"
@ -4416,6 +4480,10 @@ msgstr "messaggio di uscita predefinito per il canale IRC"
msgid "numbers for defined ignores"
msgstr "numero di ignore definiti"
#, fuzzy
msgid "nicks in notify list"
msgstr "%s: nessun ignore nella lista"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4590,6 +4658,11 @@ msgstr ""
"messaggio di abbandono predefinito (disconnessione dal server) (\"%v\" verrà "
"sostituito dalla versione di WeeChat)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: errore durante la creazione del server \"%s\""
@ -4736,6 +4809,18 @@ msgstr ""
"visualizza notifiche come messaggi privati (se automatico, utilizza il "
"buffer privato se viene trovato)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr "chiude buffer quando viene digitato /part nel canale"
@ -4841,6 +4926,18 @@ msgstr ""
"ritardo massimo per la riconnessione automatica al server (in secondi, 0 = "
"nessun massimo)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"se disabilitato, i codici colori vengono ignorati nei messaggi in entrata"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"consente all'utente di inviare i colori con dei codici speciali (ctrl-c + un "
"codice ed un colore opzionale: b=grassetto, cxx.yy=colore+sfondo, "
"u=sottolineato, r=inverso)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"intervallo tra due controlli per il ritardo (in secondi, 0 = nessun "
@ -4860,21 +4957,22 @@ msgstr ""
"intervallo tra due aggiornamenti per l'elemento ritardo, quando è in aumento "
"(in secondi)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"se disabilitato, i codici colori vengono ignorati nei messaggi in entrata"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"consente all'utente di inviare i colori con dei codici speciali (ctrl-c + un "
"codice ed un colore opzionale: b=grassetto, cxx.yy=colore+sfondo, "
"u=sottolineato, r=inverso)"
msgid "send unknown commands to server"
msgstr "invia comandi sconosciuti al server"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"intervallo tra le due verifiche per l'assenza (in minuti, 0 = nessun check)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"intervallo tra le due verifiche per l'assenza (in minuti, 0 = nessun check)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP richiesto da %s%s%s: %s%s%s%s%s%s"
@ -5034,6 +5132,14 @@ msgstr "elenco di ignore IRC"
msgid "ignore pointer (optional)"
msgstr "puntatore all'ignore (opzionale)"
#, fuzzy
msgid "list of notify"
msgstr "elenco delle opzioni"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "puntatore al nick (opzionale)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: non connesso al server"
@ -5042,6 +5148,46 @@ msgstr "%s%s: non connesso al server"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: questo buffer non è un canale!"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "Lista xfer:"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "Lista xfer:"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s%s ha cacciato %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s%s ha cacciato %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s[%s%s%s]%s è assente: %s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%sL'argomento per %s%s%s è \"%s%s\""
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s[%s%s%s]%s è assente: %s"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -7051,39 +7197,3 @@ msgstr "Tabella hash (output)"
msgid "Pointer"
msgstr "Puntatore"
#~ msgid "open new channels near server"
#~ msgstr "apri nuovi canali vicino al server"
#~ msgid "open new privates near server"
#~ msgstr "apri nuovi privati vicino al server"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr ""
#~ "%s%s: indirizzo non definito per il server \"%s\", impossibile connettersi"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s%s: buffer non trovato per il server IRC \"%s\", canale \"%s\""
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "lista di xfer"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Elenco di proxy:"
#~ msgid "text color for prefix #1 in nicklist"
#~ msgstr "colore del testo per il prefisso #1 nella nicklist"
#~ msgid "text color for prefix #2 in nicklist"
#~ msgstr "colore del testo per il prefisso #2 nella nicklist"
#~ msgid "text color for prefix #3 in nicklist"
#~ msgstr "colore del testo per il prefisso #3 nella nicklist"
#~ msgid "text color for prefix #4 in nicklist"
#~ msgstr "colore del testo per il prefisso #4 nella nicklist"
#~ msgid "text color for prefix #5 in nicklist"
#~ msgstr "colore del testo per il prefisso #5 nella nicklist"

202
po/pl.po
View File

@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-08-07 10:46+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Krzysztof Koroscik <soltys@szluug.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Polish\n"
@ -3244,6 +3244,41 @@ msgstr ""
msgid "Notice"
msgstr ""
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
"%s%s: komenda \"%s\" musi zostać wykonana w buforze irc (serwer lub kanał)"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s%s: już jest ignorowane"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s: zmieniam adres na %s/%d"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s%s: błąd podczas dodawania do ignorowanych"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "%s: lista ignorowanych została usunięta"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s: brak osób ignorowanych"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "%s: usunięto ignorowanie"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "%s%s: nie znaleziono ignorowania"
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s%s: nie można utworzyć nowego bufora prywatnego \"%s\""
@ -3554,10 +3589,11 @@ msgstr "ignoruje nicki/hosty z serwera lub kanałów"
msgid "[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]"
msgstr "[list] | [add [re:]nick/host [serwer [kanał]]] | [del numer|-all]"
#, fuzzy
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3879,6 +3915,33 @@ msgstr ""
"nick: użytkownik, do którego wysłac powiadomienie\n"
" tekst: treść"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
#, fuzzy
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr "[list] | [add [re:]nick/host [serwer [kanał]]] | [del numer|-all]"
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr "nadaje uprawienia użytkownika kanału"
@ -4382,6 +4445,10 @@ msgstr "domyślna wiadomość opuszczenia kanału IRC"
msgid "numbers for defined ignores"
msgstr "numery zdefiniowanych irgnorów"
#, fuzzy
msgid "nicks in notify list"
msgstr "%s: brak osób ignorowanych"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4558,6 +4625,11 @@ msgstr ""
"domyślna wiadomość wyjścia z IRC (rozłączenia z serwerem) (\"%v\" zostanie "
"zastąpione wersją WeeChat)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s%s: błąd podczas tworzenia serwera \"%s\""
@ -4692,6 +4764,18 @@ msgstr ""
"wyświetlaj powiadomienia jako prywatne wiadomości (jeśli auto, użwa "
"prywatnego bufora jeśli taki istnieje)"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr "zamyka bufor, kiedy na kanale wykonamy /part"
@ -4786,6 +4870,19 @@ msgstr ""
"maksymalne opóźnienie do ponownego połączenia z serwerem (w sekundach, 0 = "
"brak maksimum)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"kiedy wyłączone (off) kody kolorów są ignorowane w przychodzących "
"wiadomościach"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"zezwala użytkownikowi wysyłać kolory za pomocą specjalnych kodów (ctrl-c + "
"kod i opcjonalny kolor: b=pogrubiony (bold), cxx=kolor, cxx,yy=kolor+tło, "
"u=podkreślenie, r=rewers)"
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
"przerwa między dwoma sprawdzeniami opóźnienia (w sekundach, 0 = nigdy nie "
@ -4804,22 +4901,24 @@ msgstr ""
"przerwa między dwoma odświerzeniami wskaźnika lagu, kiedy się on zwiększa (w "
"sekundach)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
"kiedy wyłączone (off) kody kolorów są ignorowane w przychodzących "
"wiadomościach"
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"zezwala użytkownikowi wysyłać kolory za pomocą specjalnych kodów (ctrl-c + "
"kod i opcjonalny kolor: b=pogrubiony (bold), cxx=kolor, cxx,yy=kolor+tło, "
"u=podkreślenie, r=rewers)"
msgid "send unknown commands to server"
msgstr "wysyłaj nieznane komendy do serwera"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"przerwa pomiędzy dwoma sprawdzeniami stanu nieobecności (w minutach, 0 = "
"nigdy nie sprawdzaj)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"przerwa pomiędzy dwoma sprawdzeniami stanu nieobecności (w minutach, 0 = "
"nigdy nie sprawdzaj)"
#, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%sCTCP zażądane przez %s%s%s: %s%s%s%s%s%s"
@ -4979,6 +5078,14 @@ msgstr "lista ignorów IRC"
msgid "ignore pointer (optional)"
msgstr "wskaźnik ignorowania (opcjonalne)"
#, fuzzy
msgid "list of notify"
msgstr "lista opcji"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "wskaźnik nicka (opcjonalne)"
#, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s%s: nie jesteś połączony z serwerem"
@ -4987,6 +5094,46 @@ msgstr "%s%s: nie jesteś połączony z serwerem"
msgid "%s%s: this buffer is not a channel!"
msgstr "%s%s: to nie jest bufor kanału"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "Lista xferów:"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "Lista xferów:"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s%s wykopał %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s%s wykopał %s%s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s[%s%s%s]%s jest nieobecny: %s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "%sTemat kanału %s%s%s to \"%s%s\""
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s[%s%s%s]%s jest nieobecny: %s"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -6951,24 +7098,3 @@ msgstr ""
msgid "Pointer"
msgstr "Wskaźnik"
#~ msgid "open new channels near server"
#~ msgstr "otwórz nowy kanał blisko serwera"
#~ msgid "open new privates near server"
#~ msgstr "otwórz prywatne konwersacje blisko serwera"
#~ msgid "%s%s: addresses not defined for server \"%s\", cannot connect"
#~ msgstr ""
#~ "%s%s: adres nie zdefiniowany dla serwera \"%s\", nie można się połączyć"
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s%s: nie znaleziono bufora dla serwera IRC \"%s\", kanał \"%s\""
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "lista xfer"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Lista proxy:"

223
po/ru.po
View File

@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.4-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"PO-Revision-Date: 2010-08-07 10:46+0200\n"
"POT-Creation-Date: 2010-11-06 11:25+0100\n"
"PO-Revision-Date: 2010-11-05 17:17+0100\n"
"Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: Russian\n"
@ -3040,6 +3040,40 @@ msgstr ""
msgid "Notice"
msgstr ""
#, fuzzy, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr "%s \"%s\" команда может быть выполнена только в буфере сервера\n"
#, fuzzy, c-format
msgid "%s%s: notify already exists"
msgstr "%s игнорирование уже существует\n"
#, fuzzy, c-format
msgid "%s: notification added for %s%s"
msgstr "%s IP адрес не найден\n"
#, fuzzy, c-format
msgid "%s%s: error adding notification"
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
#, fuzzy, c-format
msgid "%s: all notifications deleted"
msgstr "команда users отключена"
#, fuzzy, c-format
msgid "%s: no notification in list"
msgstr "%s игнорирования не найдены\n"
#, fuzzy, c-format
msgid "%s: notification deleted"
msgstr "Игнорирования не заданы.\n"
#, fuzzy, c-format
msgid "%s%s: notification not found"
msgstr "подпись не найдена"
#, fuzzy, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr "%s невозможно создать новый буфер привата \"%s\"\n"
@ -3327,8 +3361,8 @@ msgstr ""
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3606,6 +3640,32 @@ msgstr ""
" ник: адресат уведомления\n"
"текст: отправляемый текст"
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr ""
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
#, fuzzy
msgid "give channel operator status to nickname(s)"
msgstr "даёт статус оператора канала нику(-ам)"
@ -4137,6 +4197,10 @@ msgstr "список ников на канале"
msgid "numbers for defined ignores"
msgstr ""
#, fuzzy
msgid "nicks in notify list"
msgstr "%s игнорирования не найдены\n"
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -4306,6 +4370,11 @@ msgid ""
"WeeChat version in string)"
msgstr "сообщение о выходе по-умолчанию ('%v' будет заменён на версию WeeChat)"
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, fuzzy, c-format
msgid "%s%s: error creating server \"%s\""
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
@ -4433,6 +4502,18 @@ msgid ""
"display notices as private messages (if auto, use private buffer if found)"
msgstr "отображать notice'ы в виде личных сообщений"
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr ""
@ -4521,6 +4602,17 @@ msgstr ""
msgid "maximum autoreconnect delay to server (in seconds, 0 = no maximum)"
msgstr ""
msgid "when off, colors codes are ignored in incoming messages"
msgstr "когда выключено, цвета в исходящих сообщениях игнорируются"
#, fuzzy
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"позволить отправлять цвета специальными кодами (^Cb=жирный, ^Ccxx=цветной, "
"^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, ^Cr=инвертированный)"
#, fuzzy
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
@ -4541,21 +4633,23 @@ msgid ""
msgstr ""
"интервал между проверками на отсутствие (в минутах, 0 = не проверять никогда)"
msgid "when off, colors codes are ignored in incoming messages"
msgstr "когда выключено, цвета в исходящих сообщениях игнорируются"
#, fuzzy
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
"позволить отправлять цвета специальными кодами (^Cb=жирный, ^Ccxx=цветной, "
"^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, ^Cr=инвертированный)"
#, fuzzy
msgid "send unknown commands to server"
msgstr "отсылать неизвестные команды IRC серверу"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
"интервал между проверками на отсутствие (в минутах, 0 = не проверять никогда)"
#, fuzzy
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
"интервал между проверками на отсутствие (в минутах, 0 = не проверять никогда)"
#, fuzzy, c-format
msgid "%sCTCP requested by %s%s%s: %s%s%s%s%s%s"
msgstr "%s%s%s убил %s%s%s"
@ -4733,6 +4827,14 @@ msgstr "порт IRC сервера"
msgid "ignore pointer (optional)"
msgstr ""
#, fuzzy
msgid "list of notify"
msgstr "настроить параметры конфигурации"
#, fuzzy
msgid "notify pointer (optional)"
msgstr "Сохраняю конфигурацию\n"
#, fuzzy, c-format
msgid "%s%s: you are not connected to server"
msgstr "%s вы не подключены к серверу\n"
@ -4741,6 +4843,46 @@ msgstr "%s вы не подключены к серверу\n"
msgid "%s%s: this buffer is not a channel!"
msgstr "Это окно не является каналом!\n"
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, fuzzy, c-format
msgid "Notify list for %s%s%s:"
msgstr "очистить хотлист"
msgid "Notify list is empty on this server"
msgstr ""
#, fuzzy
msgid "Notify list for all servers:"
msgstr "очистить хотлист"
msgid "Notify list is empty on all servers"
msgstr ""
#, fuzzy, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr "%s%s%s выкинул %s%s%s с канала %s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr "%s%s%s выкинул %s%s%s с канала %s%s"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr "%s%s%s отсутствует: %s\n"
#, fuzzy, c-format
msgid "%snotify: %s%s%s is back"
msgstr "Тема канала %s%s%s: "
#, fuzzy, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr "%s%s%s отсутствует: %s\n"
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""
@ -6682,54 +6824,3 @@ msgstr ""
#, fuzzy
msgid "Pointer"
msgstr "минута"
#, fuzzy
#~ msgid "open new channels near server"
#~ msgstr "открывать новые каналы/приваты рядом с сервером"
#, fuzzy
#~ msgid "open new privates near server"
#~ msgstr "открывать новые каналы/приваты рядом с сервером"
#, fuzzy
#~ msgid "%s%s: buffer not found for IRC server \"%s\", channel \"%s\""
#~ msgstr "%s ник \"%s\" не найден для команды \"%s\"\n"
#, fuzzy
#~ msgid "list of regex modifiers"
#~ msgstr "Список сокращений:\n"
#, fuzzy
#~ msgid "List of regex modifiers:"
#~ msgstr "Список сокращений:\n"
#, fuzzy
#~ msgid "text color for prefix #1 in nicklist"
#~ msgstr "цвет ника"
#, fuzzy
#~ msgid "text color for prefix #2 in nicklist"
#~ msgstr "цвет ника"
#, fuzzy
#~ msgid "text color for prefix #3 in nicklist"
#~ msgstr "цвет ника"
#, fuzzy
#~ msgid "text color for prefix #4 in nicklist"
#~ msgstr "цвет ника"
#, fuzzy
#~ msgid "text color for prefix #5 in nicklist"
#~ msgstr "цвет ника"
#~ msgid ""
#~ "channel: channel name to join\n"
#~ " key: key to join the channel"
#~ msgstr ""
#~ "канал: название канала\n"
#~ " ключ: ключ для входа на канал"
#, fuzzy
#~ msgid "color for buffer name when connected using SSL to server"
#~ msgstr "%s вы не подключены к серверу\n"

View File

@ -138,6 +138,8 @@ SET(WEECHAT_SOURCES
./src/plugins/irc/irc-msgbuffer.h
./src/plugins/irc/irc-nick.c
./src/plugins/irc/irc-nick.h
./src/plugins/irc/irc-notify.c
./src/plugins/irc/irc-notify.h
./src/plugins/irc/irc-protocol.c
./src/plugins/irc/irc-protocol.h
./src/plugins/irc/irc-raw.c

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2010-11-01 18:38+0100\n"
"POT-Creation-Date: 2010-11-06 11:25+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"
@ -2641,6 +2641,40 @@ msgstr ""
msgid "Notice"
msgstr ""
#, c-format
msgid ""
"%s%s: server must be specified because you are not on an irc server or "
"channel"
msgstr ""
#, c-format
msgid "%s%s: notify already exists"
msgstr ""
#, c-format
msgid "%s: notification added for %s%s"
msgstr ""
#, c-format
msgid "%s%s: error adding notification"
msgstr ""
#, c-format
msgid "%s: all notifications deleted"
msgstr ""
#, c-format
msgid "%s: no notification in list"
msgstr ""
#, c-format
msgid "%s: notification deleted"
msgstr ""
#, c-format
msgid "%s%s: notification not found"
msgstr ""
#, c-format
msgid "%s%s: cannot create new private buffer \"%s\""
msgstr ""
@ -2887,8 +2921,8 @@ msgstr ""
msgid ""
" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at list to find it)\n"
" -all: delete all ignores\n"
"nick/host: nick or host to ignore: syntax is \"re:regex\" or \"mask\" (a "
@ -3119,6 +3153,32 @@ msgid ""
" text: text to send"
msgstr ""
msgid "add a notification for presence or away status of nicks on servers"
msgstr ""
msgid "[add nick [server [-away]]] | [del nick|-all [server]]"
msgstr ""
msgid ""
" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default current server)\n"
" -away: notify when away message is changed (by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n"
"\n"
"Without argument, this command displays notifications for current server (or "
"all servers if command is issued on core buffer).\n"
"\n"
"Examples:\n"
" notify when \"toto\" joins/quits current server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on freenode server:\n"
" /notify add toto freenode -away"
msgstr ""
msgid "give channel operator status to nickname(s)"
msgstr ""
@ -3529,6 +3589,9 @@ msgstr ""
msgid "numbers for defined ignores"
msgstr ""
msgid "nicks in notify list"
msgstr ""
#, c-format
msgid ""
"%s%s: warning: server \"%s\" not found in configuration file, not deleted in "
@ -3668,6 +3731,11 @@ msgid ""
"WeeChat version in string)"
msgstr ""
msgid ""
"notify list for server (you should not change this option but use /notify "
"command instead)"
msgstr ""
#, c-format
msgid "%s%s: error creating server \"%s\""
msgstr ""
@ -3785,6 +3853,18 @@ msgid ""
"display notices as private messages (if auto, use private buffer if found)"
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"joins or quits server (result of command ison), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid ""
"comma separated list of tags used in messages printed by notify when a nick "
"away status changes (result of command whois), for example: "
"\"notify_highglight\", \"notify_message\" or \"notify_private\""
msgstr ""
msgid "close buffer when /part is issued on a channel"
msgstr ""
@ -3865,6 +3945,14 @@ msgstr ""
msgid "maximum autoreconnect delay to server (in seconds, 0 = no maximum)"
msgstr ""
msgid "when off, colors codes are ignored in incoming messages"
msgstr ""
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
msgstr ""
msgid "interval between two checks for lag (in seconds, 0 = never check)"
msgstr ""
@ -3879,15 +3967,16 @@ msgid ""
"seconds)"
msgstr ""
msgid "when off, colors codes are ignored in incoming messages"
msgid "send unknown commands to server"
msgstr ""
msgid ""
"allow user to send colors with special codes (ctrl-c + a code and optional "
"color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)"
"interval between two checks for notify with IRC command \"ison\" (in minutes)"
msgstr ""
msgid "send unknown commands to server"
msgid ""
"interval between two checks for notify with IRC command \"whois\" (in "
"minutes)"
msgstr ""
#, c-format
@ -4044,6 +4133,12 @@ msgstr ""
msgid "ignore pointer (optional)"
msgstr ""
msgid "list of notify"
msgstr ""
msgid "notify pointer (optional)"
msgstr ""
#, c-format
msgid "%s%s: you are not connected to server"
msgstr ""
@ -4052,6 +4147,45 @@ msgstr ""
msgid "%s%s: this buffer is not a channel!"
msgstr ""
msgid "offline"
msgstr ""
msgid "online"
msgstr ""
#, c-format
msgid "Notify list for %s%s%s:"
msgstr ""
msgid "Notify list is empty on this server"
msgstr ""
msgid "Notify list for all servers:"
msgstr ""
msgid "Notify list is empty on all servers"
msgstr ""
#, c-format
msgid "%snotify: %s%s%s has joined %s%s"
msgstr ""
#, c-format
msgid "%snotify: %s%s%s has quit %s%s"
msgstr ""
#, c-format
msgid "%snotify: %s%s%s is now away: \"%s\""
msgstr ""
#, c-format
msgid "%snotify: %s%s%s is back"
msgstr ""
#, c-format
msgid "%snotify: %s%s%s is still away: \"%s\""
msgstr ""
#, c-format
msgid ""
"%s%s: error building answer for SASL authentication, using mechanism \"%s\""

View File

@ -35,6 +35,7 @@ irc-input.c irc-input.h
irc-mode.c irc-mode.h
irc-msgbuffer.c irc-msgbuffer.h
irc-nick.c irc-nick.h
irc-notify.c irc-notify.h
irc-protocol.c irc-protocol.h
irc-raw.c irc-raw.h
irc-redirect.c irc-redirect.h

View File

@ -57,6 +57,8 @@ irc_la_SOURCES = irc.c \
irc-msgbuffer.h \
irc-nick.c \
irc-nick.h \
irc-notify.c \
irc-notify.h \
irc-protocol.c \
irc-protocol.h \
irc-raw.c \

View File

@ -36,16 +36,17 @@
#include "irc.h"
#include "irc-command.h"
#include "irc-buffer.h"
#include "irc-channel.h"
#include "irc-color.h"
#include "irc-config.h"
#include "irc-input.h"
#include "irc-server.h"
#include "irc-channel.h"
#include "irc-nick.h"
#include "irc-display.h"
#include "irc-ignore.h"
#include "irc-input.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-protocol.h"
#include "irc-raw.h"
#include "irc-server.h"
/*
@ -1436,7 +1437,7 @@ irc_command_halfop (void *data, struct t_gui_buffer *buffer, int argc,
}
/*
* irc_command_ignore_display: display a ignore
* irc_command_ignore_display: display an ignore
*/
void
@ -1454,10 +1455,8 @@ irc_command_ignore_display (struct t_irc_ignore *ignore)
IRC_COLOR_CHAT_DELIMITERS,
IRC_COLOR_CHAT,
(mask) ? mask : ignore->mask,
(ignore->server) ?
ignore->server : "*",
(ignore->channel) ?
ignore->channel : "*");
(ignore->server) ? ignore->server : "*",
(ignore->channel) ? ignore->channel : "*");
if (mask)
free (mask);
@ -1483,7 +1482,7 @@ irc_command_ignore (void *data, struct t_gui_buffer *buffer, int argc,
if ((argc == 1)
|| ((argc == 2) && (weechat_strcasecmp (argv[1], "list") == 0)))
{
/* display all key bindings */
/* display all ignores */
if (irc_ignore_list)
{
weechat_printf (NULL, "");
@ -2622,6 +2621,184 @@ irc_command_notice (void *data, struct t_gui_buffer *buffer, int argc,
return WEECHAT_RC_OK;
}
/*
* irc_command_notify: add or remove notify
*/
int
irc_command_notify (void *data, struct t_gui_buffer *buffer, int argc,
char **argv, char **argv_eol)
{
struct t_irc_notify *ptr_notify;
int i, check_away;
IRC_BUFFER_GET_SERVER(buffer);
/* make C compiler happy */
(void) data;
(void) buffer;
(void) argv_eol;
/* display notify status for users on server */
if (argc == 1)
{
irc_notify_display_list (ptr_server);
return WEECHAT_RC_OK;
}
/* add notify */
if (weechat_strcasecmp (argv[1], "add") == 0)
{
if (argc < 3)
{
weechat_printf (NULL,
_("%s%s: missing arguments for \"%s\" "
"command"),
weechat_prefix ("error"), IRC_PLUGIN_NAME,
"notify add");
return WEECHAT_RC_OK;
}
check_away = 0;
if (argc > 3)
{
ptr_server = irc_server_search (argv[3]);
if (!ptr_server)
{
weechat_printf (NULL,
_("%s%s: server \"%s\" not found"),
weechat_prefix ("error"), IRC_PLUGIN_NAME,
argv[3]);
return WEECHAT_RC_OK;
}
}
if (!ptr_server)
{
weechat_printf (NULL,
_("%s%s: server must be specified because you are "
"not on an irc server or channel"),
weechat_prefix ("error"), IRC_PLUGIN_NAME);
return WEECHAT_RC_OK;
}
if (argc > 4)
{
for (i = 4; i < argc; i++)
{
if (weechat_strcasecmp (argv[i], "-away") == 0)
check_away = 1;
}
}
ptr_notify = irc_notify_search (ptr_server, argv[2]);
if (ptr_notify)
{
weechat_printf (NULL,
_("%s%s: notify already exists"),
weechat_prefix ("error"), IRC_PLUGIN_NAME);
return WEECHAT_RC_OK;
}
ptr_notify = irc_notify_new (ptr_server, argv[2], check_away);
if (ptr_notify)
{
irc_notify_set_server_option (ptr_server);
weechat_printf (ptr_server->buffer,
_("%s: notification added for %s%s"),
IRC_PLUGIN_NAME,
IRC_COLOR_CHAT_NICK,
ptr_notify->nick);
}
else
{
weechat_printf (NULL, _("%s%s: error adding notification"),
weechat_prefix ("error"), IRC_PLUGIN_NAME);
}
return WEECHAT_RC_OK;
}
/* delete notify */
if (weechat_strcasecmp (argv[1], "del") == 0)
{
if (argc < 3)
{
weechat_printf (NULL,
_("%s%s: missing arguments for \"%s\" "
"command"),
weechat_prefix ("error"), IRC_PLUGIN_NAME,
"notify del");
return WEECHAT_RC_OK;
}
if (argc > 3)
{
ptr_server = irc_server_search (argv[3]);
if (!ptr_server)
{
weechat_printf (NULL,
_("%s%s: server \"%s\" not found"),
weechat_prefix ("error"), IRC_PLUGIN_NAME,
argv[3]);
return WEECHAT_RC_OK;
}
}
if (!ptr_server)
{
weechat_printf (NULL,
_("%s%s: server must be specified because you are "
"not on an irc server or channel"),
weechat_prefix ("error"), IRC_PLUGIN_NAME);
return WEECHAT_RC_OK;
}
if (weechat_strcasecmp (argv[2], "-all") == 0)
{
if (ptr_server->notify_list)
{
irc_notify_free_all (ptr_server);
irc_notify_set_server_option (ptr_server);
weechat_printf (NULL, _("%s: all notifications deleted"),
IRC_PLUGIN_NAME);
}
else
{
weechat_printf (NULL, _("%s: no notification in list"),
IRC_PLUGIN_NAME);
}
}
else
{
ptr_notify = irc_notify_search (ptr_server, argv[2]);
if (ptr_notify)
{
irc_notify_free (ptr_server, ptr_notify);
irc_notify_set_server_option (ptr_server);
weechat_printf (NULL, _("%s: notification deleted"),
IRC_PLUGIN_NAME);
}
else
{
weechat_printf (NULL,
_("%s%s: notification not found"),
weechat_prefix ("error"), IRC_PLUGIN_NAME);
return WEECHAT_RC_OK;
}
}
return WEECHAT_RC_OK;
}
weechat_printf (NULL,
_("%s%s: unknown option for \"%s\" "
"command"),
weechat_prefix ("error"), IRC_PLUGIN_NAME, "notify");
return WEECHAT_RC_OK;
}
/*
* irc_command_op: give operator privileges to nickname(s)
*/
@ -4502,8 +4679,8 @@ irc_command_init ()
N_("[list] | [add [re:]nick/host [server [channel]]] | "
"[del number|-all]"),
N_(" list: list all ignores\n"
" add: add a ignore\n"
" del: del a ignore\n"
" add: add an ignore\n"
" del: delete an ignore\n"
" number: number of ignore to delete (look at "
"list to find it)\n"
" -all: delete all ignores\n"
@ -4686,6 +4863,37 @@ irc_command_init ()
"nickname: user to send notice to\n"
" text: text to send"),
"%(nicks) %-", &irc_command_notice, NULL);
weechat_hook_command ("notify",
N_("add a notification for presence or away status "
"of nicks on servers"),
N_("[add nick [server [-away]]] | "
"[del nick|-all [server]]"),
N_(" add: add a notification\n"
" nick: nickname\n"
"server: internal server name (by default "
"current server)\n"
" -away: notify when away message is changed "
"(by doing whois on nick)\n"
" del: delete a notification\n"
" -all: delete all notifications\n\n"
"Without argument, this command displays "
"notifications for current server (or all servers "
"if command is issued on core buffer).\n\n"
"Examples:\n"
" notify when \"toto\" joins/quits current "
"server:\n"
" /notify add toto\n"
" notify when \"toto\" joins/quits freenode "
"server:\n"
" /notify add toto freenode\n"
" notify when \"toto\" is away or back on "
"freenode server:\n"
" /notify add toto freenode -away"),
"list"
" || add %(irc_channel_nicks) %(irc_servers) "
"-away %-"
" || del -all|%(irc_notify_nicks) %(irc_servers) %-",
&irc_command_notify, NULL);
weechat_hook_command ("op",
N_("give channel operator status to nickname(s)"),
N_("nickname [nickname]"),

View File

@ -28,13 +28,14 @@
#include "../weechat-plugin.h"
#include "irc.h"
#include "irc-buffer.h"
#include "irc-channel.h"
#include "irc-color.h"
#include "irc-completion.h"
#include "irc-config.h"
#include "irc-ignore.h"
#include "irc-server.h"
#include "irc-channel.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-server.h"
/*
@ -565,6 +566,50 @@ irc_completion_ignores_numbers_cb (void *data, const char *completion_item,
return WEECHAT_RC_OK;
}
/*
* irc_completion_notify_nicks_cb: callback for completion with nicks in notify
* list
*/
int
irc_completion_notify_nicks_cb (void *data, const char *completion_item,
struct t_gui_buffer *buffer,
struct t_gui_completion *completion)
{
struct t_irc_notify *ptr_notify;
IRC_BUFFER_GET_SERVER(buffer);
/* make C compiler happy */
(void) data;
(void) completion_item;
if (ptr_server)
{
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
weechat_hook_completion_list_add (completion, ptr_notify->nick,
0, WEECHAT_LIST_POS_SORT);
}
}
else
{
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
weechat_hook_completion_list_add (completion, ptr_notify->nick,
0, WEECHAT_LIST_POS_SORT);
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_completion_init: init completion for IRC plugin
*/
@ -614,4 +659,7 @@ irc_completion_init ()
weechat_hook_completion ("irc_ignores_numbers",
N_("numbers for defined ignores"),
&irc_completion_ignores_numbers_cb, NULL);
weechat_hook_completion ("irc_notify_nicks",
N_("nicks in notify list"),
&irc_completion_notify_nicks_cb, NULL);
}

View File

@ -32,13 +32,14 @@
#include "../weechat-plugin.h"
#include "irc.h"
#include "irc-config.h"
#include "irc-ctcp.h"
#include "irc-buffer.h"
#include "irc-channel.h"
#include "irc-ctcp.h"
#include "irc-ignore.h"
#include "irc-msgbuffer.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-server.h"
#include "irc-channel.h"
struct t_config_file *irc_config_file = NULL;
@ -79,6 +80,8 @@ struct t_config_option *irc_config_look_highlight_tags;
struct t_config_option *irc_config_look_item_display_server;
struct t_config_option *irc_config_look_msgbuffer_fallback;
struct t_config_option *irc_config_look_notice_as_pv;
struct t_config_option *irc_config_look_notify_tags_ison;
struct t_config_option *irc_config_look_notify_tags_whois;
struct t_config_option *irc_config_look_part_closes_buffer;
struct t_config_option *irc_config_look_raw_messages;
struct t_config_option *irc_config_look_smart_filter;
@ -109,12 +112,14 @@ struct t_config_option *irc_config_color_reason_quit;
struct t_config_option *irc_config_network_autoreconnect_delay_growing;
struct t_config_option *irc_config_network_autoreconnect_delay_max;
struct t_config_option *irc_config_network_colors_receive;
struct t_config_option *irc_config_network_colors_send;
struct t_config_option *irc_config_network_lag_check;
struct t_config_option *irc_config_network_lag_min_show;
struct t_config_option *irc_config_network_lag_disconnect;
struct t_config_option *irc_config_network_lag_refresh_interval;
struct t_config_option *irc_config_network_colors_receive;
struct t_config_option *irc_config_network_colors_send;
struct t_config_option *irc_config_network_notify_check_ison;
struct t_config_option *irc_config_network_notify_check_whois;
struct t_config_option *irc_config_network_send_unknown_commands;
/* IRC config, server section */
@ -586,6 +591,38 @@ irc_config_change_network_lag_min_show (void *data,
weechat_bar_item_update ("lag");
}
/*
* irc_config_change_network_notify_check_ison: called when notify check ison
* is changed
*/
void
irc_config_change_network_notify_check_ison (void *data,
struct t_config_option *option)
{
/* make C compiler happy */
(void) data;
(void) option;
irc_notify_hook_timer_ison ();
}
/*
* irc_config_change_network_notify_check_whois: called when notify check whois
* is changed
*/
void
irc_config_change_network_notify_check_whois (void *data,
struct t_config_option *option)
{
/* make C compiler happy */
(void) data;
(void) option;
irc_notify_hook_timer_whois ();
}
/*
* irc_config_change_network_send_unknown_commands: called when "send_unknown_commands"
* is changed
@ -715,11 +752,38 @@ irc_config_server_change_cb (void *data, struct t_config_option *option)
irc_server_check_away (ptr_server);
else
irc_server_remove_away (ptr_server);
break;
case IRC_SERVER_OPTION_NOTIFY:
irc_notify_new_for_server (ptr_server);
break;
}
}
}
}
/*
* irc_config_server_default_check_notify: calback called when "notify" option
* from "server_default" section is
* changed: return 0 if a value is set
* This option is not used, only values
* in servers are used for notify.
*/
int
irc_config_server_default_check_notify (void *data,
struct t_config_option *option,
const char *value)
{
/* make C compiler happy */
(void) data;
(void) option;
if (value && value[0])
return 0;
return 1;
}
/*
* irc_config_reload: reload IRC configuration file
*/
@ -1436,6 +1500,21 @@ irc_config_server_new_option (struct t_config_file *config_file,
callback_change, callback_change_data,
NULL, NULL);
break;
case IRC_SERVER_OPTION_NOTIFY:
new_option = weechat_config_new_option (
config_file, section,
option_name, "string",
N_("notify list for server (you should not change this option "
"but use /notify command instead)"),
NULL, 0, 0,
default_value, value,
null_value_allowed,
(section == irc_config_section_server_default) ?
&irc_config_server_default_check_notify : NULL,
NULL,
callback_change, callback_change_data,
NULL, NULL);
break;
case IRC_SERVER_NUM_OPTIONS:
break;
}
@ -1855,6 +1934,24 @@ irc_config_init ()
N_("display notices as private messages (if auto, use private buffer "
"if found)"),
"auto|never|always", 0, 0, "auto", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_look_notify_tags_ison = weechat_config_new_option (
irc_config_file, ptr_section,
"notify_tags_ison", "string",
N_("comma separated list of tags used in messages printed by notify "
"when a nick joins or quits server (result of command ison), "
"for example: \"notify_highglight\", \"notify_message\" or "
"\"notify_private\""),
NULL, 0, 0, "notify_message", NULL, 0, NULL, NULL,
NULL, NULL, NULL, NULL);
irc_config_look_notify_tags_whois = weechat_config_new_option (
irc_config_file, ptr_section,
"notify_tags_whois", "string",
N_("comma separated list of tags used in messages printed by notify "
"when a nick away status changes (result of command whois), "
"for example: \"notify_highglight\", \"notify_message\" or "
"\"notify_private\""),
NULL, 0, 0, "notify_message", NULL, 0, NULL, NULL,
NULL, NULL, NULL, NULL);
irc_config_look_part_closes_buffer = weechat_config_new_option (
irc_config_file, ptr_section,
"part_closes_buffer", "boolean",
@ -2026,6 +2123,18 @@ irc_config_init ()
N_("maximum autoreconnect delay to server (in seconds, 0 = no maximum)"),
NULL, 0, 3600 * 24, "1800", NULL, 0, NULL, NULL,
NULL, NULL, NULL, NULL);
irc_config_network_colors_receive = weechat_config_new_option (
irc_config_file, ptr_section,
"colors_receive", "boolean",
N_("when off, colors codes are ignored in incoming messages"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_network_colors_send = weechat_config_new_option (
irc_config_file, ptr_section,
"colors_send", "boolean",
N_("allow user to send colors with special codes (ctrl-c + a code and "
"optional color: b=bold, cxx=color, cxx,yy=color+background, "
"u=underline, r=reverse)"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_network_lag_check = weechat_config_new_option (
irc_config_file, ptr_section,
"lag_check", "integer",
@ -2051,24 +2160,26 @@ irc_config_init ()
N_("interval between two refreshs of lag item, when lag is increasing "
"(in seconds)"),
NULL, 1, 3600, "1", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_network_colors_receive = weechat_config_new_option (
irc_config_file, ptr_section,
"colors_receive", "boolean",
N_("when off, colors codes are ignored in incoming messages"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_network_colors_send = weechat_config_new_option (
irc_config_file, ptr_section,
"colors_send", "boolean",
N_("allow user to send colors with special codes (ctrl-c + a code and "
"optional color: b=bold, cxx=color, cxx,yy=color+background, "
"u=underline, r=reverse)"),
NULL, 0, 0, "on", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
irc_config_network_send_unknown_commands = weechat_config_new_option (
irc_config_file, ptr_section,
"send_unknown_commands", "boolean",
N_("send unknown commands to server"),
NULL, 0, 0, "off", NULL, 0, NULL, NULL,
&irc_config_change_network_send_unknown_commands, NULL, NULL, NULL);
irc_config_network_notify_check_ison = weechat_config_new_option (
irc_config_file, ptr_section,
"notify_check_ison", "integer",
N_("interval between two checks for notify with IRC command \"ison\" "
"(in minutes)"),
NULL, 1, 60 * 24 * 7, "1", NULL, 0, NULL, NULL,
&irc_config_change_network_notify_check_ison, NULL, NULL, NULL);
irc_config_network_notify_check_whois = weechat_config_new_option (
irc_config_file, ptr_section,
"notify_check_whois", "integer",
N_("interval between two checks for notify with IRC command \"whois\" "
"(in minutes)"),
NULL, 1, 60 * 24 * 7, "5", NULL, 0, NULL, NULL,
&irc_config_change_network_notify_check_whois, NULL, NULL, NULL);
/* msgbuffer */
ptr_section = weechat_config_new_section (irc_config_file, "msgbuffer",
@ -2154,7 +2265,16 @@ irc_config_init ()
int
irc_config_read ()
{
return weechat_config_read (irc_config_file);
int rc;
rc = weechat_config_read (irc_config_file);
if (rc == WEECHAT_CONFIG_READ_OK)
{
irc_notify_new_for_all_servers ();
irc_config_change_network_notify_check_ison (NULL, NULL);
irc_config_change_network_notify_check_whois (NULL, NULL);
}
return rc;
}
/*

View File

@ -105,6 +105,8 @@ extern struct t_config_option *irc_config_look_highlight_tags;
extern struct t_config_option *irc_config_look_item_display_server;
extern struct t_config_option *irc_config_look_msgbuffer_fallback;
extern struct t_config_option *irc_config_look_notice_as_pv;
extern struct t_config_option *irc_config_look_notify_tags_ison;
extern struct t_config_option *irc_config_look_notify_tags_whois;
extern struct t_config_option *irc_config_look_part_closes_buffer;
extern struct t_config_option *irc_config_look_raw_messages;
extern struct t_config_option *irc_config_look_smart_filter;
@ -131,12 +133,14 @@ extern struct t_config_option *irc_config_color_reason_quit;
extern struct t_config_option *irc_config_network_autoreconnect_delay_growing;
extern struct t_config_option *irc_config_network_autoreconnect_delay_max;
extern struct t_config_option *irc_config_network_colors_receive;
extern struct t_config_option *irc_config_network_colors_send;
extern struct t_config_option *irc_config_network_lag_check;
extern struct t_config_option *irc_config_network_lag_min_show;
extern struct t_config_option *irc_config_network_lag_disconnect;
extern struct t_config_option *irc_config_network_lag_refresh_interval;
extern struct t_config_option *irc_config_network_colors_receive;
extern struct t_config_option *irc_config_network_colors_send;
extern struct t_config_option *irc_config_network_notify_check_ison;
extern struct t_config_option *irc_config_network_notify_check_whois;
extern struct t_config_option *irc_config_network_send_unknown_commands;
extern struct t_config_option *irc_config_server_default[];

View File

@ -36,7 +36,7 @@ struct t_irc_ignore *last_irc_ignore = NULL; /* last ignore in list */
/*
* irc_ignore_valid: check if a ignore pointer exists
* irc_ignore_valid: check if an ignore pointer exists
* return 1 if ignore exists
* 0 if ignore is not found
*/
@ -61,7 +61,7 @@ irc_ignore_valid (struct t_irc_ignore *ignore)
}
/*
* irc_ignore_search: search a ignore
* irc_ignore_search: search an ignore
*/
struct t_irc_ignore *
@ -91,7 +91,7 @@ irc_ignore_search (const char *mask, const char *server, const char *channel)
}
/*
* irc_ignore_search_by_number: search a ignore by number (first is #1)
* irc_ignore_search_by_number: search an ignore by number (first is #1)
*/
struct t_irc_ignore *
@ -241,7 +241,7 @@ irc_ignore_check (struct t_irc_server *server, const char *channel,
}
/*
* irc_ignore_free: remove a ignore
* irc_ignore_free: remove an ignore
*/
void
@ -302,7 +302,7 @@ irc_ignore_free_all ()
}
/*
* irc_ignore_add_to_infolist: add a ignore in an infolist
* irc_ignore_add_to_infolist: add an ignore in an infolist
* return 1 if ok, 0 if error
*/

View File

@ -30,8 +30,8 @@ struct t_irc_ignore
int number; /* ignore number */
char *mask; /* nick / host mask */
regex_t *regex_mask; /* regex for mask */
char *server; /* server name */
char *channel; /* channel name */
char *server; /* server name ("*" == any server) */
char *channel; /* channel name ("*" == any channel) */
struct t_irc_ignore *prev_ignore; /* link to previous ignore */
struct t_irc_ignore *next_ignore; /* link to next ignore */
};

View File

@ -31,6 +31,7 @@
#include "irc-config.h"
#include "irc-ignore.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-protocol.h"
#include "irc-server.h"
@ -273,6 +274,7 @@ irc_info_get_infolist_cb (void *data, const char *infolist_name,
struct t_irc_channel *ptr_channel;
struct t_irc_nick *ptr_nick;
struct t_irc_ignore *ptr_ignore;
struct t_irc_notify *ptr_notify;
char **argv;
int argc;
@ -495,6 +497,49 @@ irc_info_get_infolist_cb (void *data, const char *infolist_name,
}
}
}
else if (weechat_strcasecmp (infolist_name, "irc_notify") == 0)
{
if (pointer && !irc_notify_valid (NULL, pointer))
return NULL;
ptr_infolist = weechat_infolist_new ();
if (ptr_infolist)
{
if (pointer)
{
/* build list with only one notify */
if (!irc_notify_add_to_infolist (ptr_infolist, pointer))
{
weechat_infolist_free (ptr_infolist);
return NULL;
}
return ptr_infolist;
}
else
{
/* build list with notify list of all servers matchin arguments */
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (!arguments || !arguments[0]
|| weechat_string_match (ptr_server->name, arguments, 0))
{
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (!irc_notify_add_to_infolist (ptr_infolist,
ptr_notify))
{
weechat_infolist_free (ptr_infolist);
return NULL;
}
}
}
}
return ptr_infolist;
}
}
}
return NULL;
}
@ -575,4 +620,9 @@ irc_info_init ()
N_("ignore pointer (optional)"),
NULL,
&irc_info_get_infolist_cb, NULL);
weechat_hook_infolist ("irc_notify",
N_("list of notify"),
N_("notify pointer (optional)"),
N_("server name (can start or end with \"*\" as wildcard) (optional)"),
&irc_info_get_infolist_cb, NULL);
}

View File

@ -0,0 +1,927 @@
/*
* Copyright (C) 2010 Sebastien Helleu <flashcode@flashtux.org>
*
* This file is part of WeeChat, the extensible chat client.
*
* WeeChat is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* WeeChat is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with WeeChat. If not, see <http://www.gnu.org/licenses/>.
*/
/*
* irc-notify.c: notify lists for IRC plugin
*/
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "../weechat-plugin.h"
#include "irc.h"
#include "irc-notify.h"
#include "irc-color.h"
#include "irc-config.h"
#include "irc-redirect.h"
#include "irc-server.h"
/* timers to run "ison" and "whois" commands */
struct t_hook *irc_notify_timer_ison = NULL; /* timer for "ison" */
struct t_hook *irc_notify_timer_whois = NULL; /* timer for "whois" */
/* hsignal for redirected commands */
struct t_hook *irc_notify_hsignal = NULL;
/*
* irc_notify_valid: check if a notify pointer exists for a server
* if server is NULL, search in all servers
* return 1 if notify exists
* 0 if notify is not found
*/
int
irc_notify_valid (struct t_irc_server *server, struct t_irc_notify *notify)
{
struct t_irc_server *ptr_server;
struct t_irc_notify *ptr_notify;
if (!notify)
return 0;
if (server)
{
for (ptr_notify = server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (ptr_notify == notify)
return 1;
}
}
else
{
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (ptr_notify == notify)
return 1;
}
}
}
/* notify not found */
return 0;
}
/*
* irc_notify_search: search a notify
*/
struct t_irc_notify *
irc_notify_search (struct t_irc_server *server, const char *nick)
{
struct t_irc_notify *ptr_notify;
if (!server || !nick)
return NULL;
for (ptr_notify = server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (strcmp (ptr_notify->nick, nick) == 0)
return ptr_notify;
}
/* notify not found */
return NULL;
}
/*
* irc_notify_set_server_option: set server option "notify" with notify
* list on server
*/
void
irc_notify_set_server_option (struct t_irc_server *server)
{
char *str;
struct t_irc_notify *ptr_notify;
int total_length, length;
if (!server)
return;
if (server->notify_list)
{
str = NULL;
total_length = 0;
for (ptr_notify = server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
length = strlen (ptr_notify->nick) + 32;
if (!str)
{
total_length += length + 1;
str = malloc (total_length);
if (str)
str[0] = '\0';
}
else
{
total_length += length;
str = realloc (str, total_length);
}
if (str)
{
if (str[0])
strcat (str, ",");
strcat (str, ptr_notify->nick);
if (ptr_notify->check_away)
strcat (str, " away");
}
}
if (str)
{
weechat_config_option_set (server->options[IRC_SERVER_OPTION_NOTIFY],
str, 0);
free (str);
}
}
else
{
weechat_config_option_set (server->options[IRC_SERVER_OPTION_NOTIFY],
"", 0);
}
}
/*
* irc_notify_new: add new notify
*/
struct t_irc_notify *
irc_notify_new (struct t_irc_server *server, const char *nick, int check_away)
{
struct t_irc_notify *new_notify;
if (!server || !nick || !nick[0])
return NULL;
new_notify = malloc (sizeof (*new_notify));
if (new_notify)
{
new_notify->server = server;
new_notify->nick = strdup (nick);
new_notify->check_away = check_away;
new_notify->is_on_server = 0;
new_notify->away_message = NULL;
new_notify->ison_received = 0;
/* add notify to notify list on server */
new_notify->prev_notify = server->last_notify;
if (server->notify_list)
server->last_notify->next_notify = new_notify;
else
server->notify_list = new_notify;
server->last_notify = new_notify;
new_notify->next_notify = NULL;
}
return new_notify;
}
/*
* irc_notify_new_for_server: create notify list for server with option
* "irc.server.xxx.notify"
*/
void
irc_notify_new_for_server (struct t_irc_server *server)
{
const char *notify;
char **items, *pos_params, **params;
int i, j, num_items, num_params, check_away;
irc_notify_free_all (server);
notify = IRC_SERVER_OPTION_STRING(server, IRC_SERVER_OPTION_NOTIFY);
if (!notify || !notify[0])
return;
items = weechat_string_split (notify, ",", 0, 0, &num_items);
if (items)
{
for (i = 0; i < num_items; i++)
{
check_away = 0;
pos_params = strchr (items[i], ' ');
if (pos_params)
{
pos_params[0] = '\0';
pos_params++;
while (pos_params[0] == ' ')
{
pos_params++;
}
params = weechat_string_split (pos_params, "/", 0, 0,
&num_params);
if (params)
{
for (j = 0; j < num_params; j++)
{
if (weechat_strcasecmp (params[j], "away") == 0)
check_away = 1;
}
weechat_string_free_split (params);
}
}
irc_notify_new (server, items[i], check_away);
}
weechat_string_free_split (items);
}
}
/*
* irc_notify_new_for_all_servers: create notify list for all servers with
* option "irc.server.xxx.notify"
*/
void
irc_notify_new_for_all_servers ()
{
struct t_irc_server *ptr_server;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
irc_notify_new_for_server (ptr_server);
}
}
/*
* irc_notify_free: remove a notify on a server
*/
void
irc_notify_free (struct t_irc_server *server, struct t_irc_notify *notify)
{
weechat_hook_signal_send ("irc_notify_removing",
WEECHAT_HOOK_SIGNAL_POINTER, notify);
/* free data */
if (notify->nick)
free (notify->nick);
if (notify->away_message)
free (notify->away_message);
/* remove notify from list */
if (notify->prev_notify)
(notify->prev_notify)->next_notify = notify->next_notify;
if (notify->next_notify)
(notify->next_notify)->prev_notify = notify->prev_notify;
if (server->notify_list == notify)
server->notify_list = notify->next_notify;
if (server->last_notify == notify)
server->last_notify = notify->prev_notify;
free (notify);
weechat_hook_signal_send ("irc_notify_removed",
WEECHAT_HOOK_SIGNAL_STRING, NULL);
}
/*
* irc_notify_free_all: remove all notify on a server
*/
void
irc_notify_free_all (struct t_irc_server *server)
{
while (server->notify_list)
{
irc_notify_free (server, server->notify_list);
}
}
/*
* irc_notify_display: display a notify
*/
void
irc_notify_display (struct t_gui_buffer *buffer, struct t_irc_notify *notify)
{
if (!notify->is_on_server && !notify->away_message)
{
weechat_printf (buffer,
" %s%s%s @ %s%s%s: %s%s",
IRC_COLOR_CHAT_NICK,
notify->nick,
IRC_COLOR_CHAT,
IRC_COLOR_CHAT_SERVER,
notify->server->name,
IRC_COLOR_CHAT,
IRC_COLOR_MESSAGE_QUIT,
_("offline"));
}
else
{
weechat_printf (buffer,
" %s%s%s @ %s%s%s: %s%s %s%s%s%s%s%s",
IRC_COLOR_CHAT_NICK,
notify->nick,
IRC_COLOR_CHAT,
IRC_COLOR_CHAT_SERVER,
notify->server->name,
IRC_COLOR_CHAT,
IRC_COLOR_MESSAGE_JOIN,
_("online"),
IRC_COLOR_CHAT,
(notify->away_message) ? " (" : "",
(notify->away_message) ? _("away") : "",
(notify->away_message) ? ": \"" : "",
(notify->away_message) ? notify->away_message : "",
(notify->away_message) ? "\")" : "");
}
}
/*
* irc_notify_display_list: display notify list for a server
* (or all servers if server is NULL)
*/
void
irc_notify_display_list (struct t_irc_server *server)
{
struct t_irc_notify *ptr_notify;
struct t_irc_server *ptr_server;
int count;
if (server)
{
if (server->notify_list)
{
weechat_printf (server->buffer, "");
weechat_printf (server->buffer,
_("Notify list for %s%s%s:"),
IRC_COLOR_CHAT_SERVER,
server->name,
IRC_COLOR_CHAT);
for (ptr_notify = server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
irc_notify_display (server->buffer, ptr_notify);
}
}
else
{
weechat_printf (server->buffer,
_("Notify list is empty on this server"));
}
}
else
{
count = 0;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (count == 0)
{
weechat_printf (NULL, "");
weechat_printf (NULL, _("Notify list for all servers:"));
}
irc_notify_display (NULL, ptr_notify);
count++;
}
}
if (count == 0)
{
weechat_printf (NULL,
_("Notify list is empty on all servers"));
}
}
}
/*
* irc_notify_get_tags: get tags for message displayed
* (concatenation of "irc_notify" and tags from option)
*/
const char *
irc_notify_get_tags (struct t_config_option *option)
{
static char string[1024];
const char *tags;
tags = weechat_config_string (option);
snprintf (string, sizeof (string), "irc_notify%s%s",
(tags && tags[0]) ? "," : "",
(tags && tags[0]) ? tags : "");
return string;
}
/*
* irc_notify_set_is_on_server: set flag "is_on_server" for a notify
* and display message if user was not on server
*/
void
irc_notify_set_is_on_server (struct t_irc_notify *notify,
int is_on_server)
{
if (!notify)
return;
/* same status, then do nothing */
if (notify->is_on_server == is_on_server)
return;
notify->is_on_server = is_on_server;
weechat_printf_tags (notify->server->buffer,
irc_notify_get_tags (irc_config_look_notify_tags_ison),
(notify->is_on_server) ?
_("%snotify: %s%s%s has joined %s%s") :
_("%snotify: %s%s%s has quit %s%s"),
weechat_prefix ("network"),
IRC_COLOR_CHAT_NICK,
notify->nick,
(notify->is_on_server) ?
IRC_COLOR_MESSAGE_JOIN : IRC_COLOR_MESSAGE_QUIT,
IRC_COLOR_CHAT_SERVER,
notify->server->name);
}
/*
* irc_notify_set_away_message: set away message for a notify
* and display message if away status has changed
*/
void
irc_notify_set_away_message (struct t_irc_notify *notify,
const char *away_message)
{
if (!notify)
return;
/* same away message, then do nothing */
if ((!notify->away_message && !away_message)
|| (notify->away_message && away_message
&& (strcmp (notify->away_message, away_message) == 0)))
return;
if (!notify->away_message && away_message)
{
weechat_printf_tags (notify->server->buffer,
irc_notify_get_tags (irc_config_look_notify_tags_whois),
_("%snotify: %s%s%s is now away: \"%s\""),
weechat_prefix ("network"),
IRC_COLOR_CHAT_NICK,
notify->nick,
IRC_COLOR_CHAT,
away_message);
}
else if (notify->away_message && !away_message)
{
weechat_printf_tags (notify->server->buffer,
irc_notify_get_tags (irc_config_look_notify_tags_whois),
_("%snotify: %s%s%s is back"),
weechat_prefix ("network"),
IRC_COLOR_CHAT_NICK,
notify->nick,
IRC_COLOR_CHAT);
}
else if (notify->away_message && away_message)
{
weechat_printf_tags (notify->server->buffer,
irc_notify_get_tags (irc_config_look_notify_tags_whois),
_("%snotify: %s%s%s is still away: \"%s\""),
weechat_prefix ("network"),
IRC_COLOR_CHAT_NICK,
notify->nick,
IRC_COLOR_CHAT,
away_message);
}
if (notify->away_message)
free (notify->away_message);
notify->away_message = (away_message) ? strdup (away_message) : NULL;
}
/*
* irc_notify_hsignal_cb: callback for hsignal on redirected commands
* "ison" and "whois"
*/
int
irc_notify_hsignal_cb (void *data, const char *signal,
struct t_hashtable *hashtable)
{
const char *error, *server, *pattern, *command, *output;
char **messages, **nicks_sent, **nicks_recv, *irc_cmd, *arguments;
char *ptr_args, *pos;
int i, j, num_messages, num_nicks_sent, num_nicks_recv, nick_was_sent;
int away_message_updated, no_such_nick;
struct t_irc_server *ptr_server;
struct t_irc_notify *ptr_notify;
/* make C compiler happy */
(void) data;
(void) signal;
error = weechat_hashtable_get (hashtable, "error");
server = weechat_hashtable_get (hashtable, "server");
pattern = weechat_hashtable_get (hashtable, "pattern");
command = weechat_hashtable_get (hashtable, "command");
output = weechat_hashtable_get (hashtable, "output");
/* if there is an error on redirection, just ignore result */
if (error && error[0])
return WEECHAT_RC_OK;
/* missing things in redirection */
if (!server || !pattern || !command || !output)
return WEECHAT_RC_OK;
/* search server */
ptr_server = irc_server_search (server);
if (!ptr_server)
return WEECHAT_RC_OK;
/* search for start of arguments in command sent to server */
ptr_args = strchr (command, ' ');
if (!ptr_args)
return WEECHAT_RC_OK;
ptr_args++;
while ((ptr_args[0] == ' ') || (ptr_args[0] == ':'))
{
ptr_args++;
}
if (!ptr_args[0])
return WEECHAT_RC_OK;
/* read output of command */
if (strcmp (pattern, "ison") == 0)
{
/* redirection of command "ison" */
messages = weechat_string_split (output, "\n", 0, 0, &num_messages);
if (messages)
{
nicks_sent = weechat_string_split (ptr_args, " ", 0, 0,
&num_nicks_sent);
if (!nicks_sent)
return WEECHAT_RC_OK;
for (ptr_notify = ptr_server->notify_list;
ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
ptr_notify->ison_received = 0;
}
for (i = 0; i < num_messages; i++)
{
irc_server_parse_message (messages[i], NULL, NULL, NULL, NULL,
&arguments);
if (arguments)
{
pos = strchr (arguments, ' ');
if (pos)
{
pos++;
while ((pos[0] == ' ') || (pos[0] == ':'))
{
pos++;
}
if (pos[0])
{
nicks_recv = weechat_string_split (pos, " ", 0, 0,
&num_nicks_recv);
if (nicks_recv)
{
for (j = 0; j < num_nicks_recv; j++)
{
for (ptr_notify = ptr_server->notify_list;
ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (strcmp (ptr_notify->nick, nicks_recv[j]) == 0)
{
irc_notify_set_is_on_server (ptr_notify, 1);
ptr_notify->ison_received = 1;
}
}
}
weechat_string_free_split (nicks_recv);
}
}
}
free (arguments);
}
}
for (ptr_notify = ptr_server->notify_list;
ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
if (!ptr_notify->ison_received)
{
nick_was_sent = 0;
for (j = 0; j < num_nicks_sent; j++)
{
if (strcmp (nicks_sent[j], ptr_notify->nick) == 0)
{
nick_was_sent = 1;
break;
}
}
if (nick_was_sent)
{
irc_notify_set_is_on_server (ptr_notify, 0);
}
}
}
weechat_string_free_split (messages);
}
}
else if (strcmp (pattern, "whois") == 0)
{
/* redirection of command "whois" */
ptr_notify = irc_notify_search (ptr_server, ptr_args);
if (ptr_notify)
{
away_message_updated = 0;
no_such_nick = 0;
messages = weechat_string_split (output, "\n", 0, 0, &num_messages);
if (messages)
{
for (i = 0; i < num_messages; i++)
{
irc_server_parse_message (messages[0], NULL, NULL,
&irc_cmd, NULL, &arguments);
if (irc_cmd && arguments)
{
if (strcmp (irc_cmd, "401") == 0)
{
/* no such nick/channel */
no_such_nick = 1;
}
else if (strcmp (irc_cmd, "301") == 0)
{
/* away message */
pos = strchr (arguments, ':');
if (pos)
{
pos++;
/* nick is away */
irc_notify_set_away_message (ptr_notify, pos);
away_message_updated = 1;
}
}
}
if (irc_cmd)
free (irc_cmd);
if (arguments)
free (arguments);
}
}
if (!away_message_updated && !no_such_nick)
{
/* nick is back */
irc_notify_set_away_message (ptr_notify, NULL);
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_notify_timer_ison_cb: timer called to send "ison" command to servers
*/
int
irc_notify_timer_ison_cb (void *data, int remaining_calls)
{
char ison_list[1024];
int total_length, length;
struct t_irc_server *ptr_server;
struct t_irc_notify *ptr_notify, *ptr_next_notify;
/* make C compiler happy */
(void) data;
(void) remaining_calls;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server->is_connected && ptr_server->notify_list)
{
ison_list[0] = '\0';
total_length = 0;
ptr_notify = ptr_server->notify_list;
while (ptr_notify)
{
ptr_next_notify = ptr_notify->next_notify;
length = strlen (ptr_notify->nick);
total_length += length + 1;
if (ison_list[0])
strcat (ison_list, " ");
strcat (ison_list, ptr_notify->nick);
ptr_notify = ptr_next_notify;
}
if (ison_list[0])
{
irc_redirect_new (ptr_server, "ison", "notify", 1,
NULL, 0, NULL);
irc_server_sendf (ptr_server, IRC_SERVER_SEND_OUTQ_PRIO_LOW,
NULL, "ISON :%s", ison_list);
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_notify_timer_whois_cb: timer called to send "whois" command to servers
*/
int
irc_notify_timer_whois_cb (void *data, int remaining_calls)
{
struct t_irc_server *ptr_server;
struct t_irc_notify *ptr_notify, *ptr_next_notify;
/* make C compiler happy */
(void) data;
(void) remaining_calls;
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server->is_connected && ptr_server->notify_list)
{
ptr_notify = ptr_server->notify_list;
while (ptr_notify)
{
ptr_next_notify = ptr_notify->next_notify;
if (ptr_notify->check_away)
{
/*
* redirect whois, and get only 2 messages:
* 301: away message
* 401: no such nick/channel
*/
irc_redirect_new (ptr_server, "whois", "notify", 1,
ptr_notify->nick, 0, "301,401");
irc_server_sendf (ptr_server,
IRC_SERVER_SEND_OUTQ_PRIO_LOW, NULL,
"WHOIS :%s", ptr_notify->nick);
}
ptr_notify = ptr_next_notify;
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_notify_add_to_infolist: add a notify in an infolist
* return 1 if ok, 0 if error
*/
int
irc_notify_add_to_infolist (struct t_infolist *infolist,
struct t_irc_notify *notify)
{
struct t_infolist_item *ptr_item;
if (!infolist || !notify)
return 0;
ptr_item = weechat_infolist_new_item (infolist);
if (!ptr_item)
return 0;
if (!weechat_infolist_new_var_pointer (ptr_item, "server", notify->server))
return 0;
if (!weechat_infolist_new_var_string (ptr_item, "server_name", notify->server->name))
return 0;
if (!weechat_infolist_new_var_string (ptr_item, "nick", notify->nick))
return 0;
if (!weechat_infolist_new_var_integer (ptr_item, "check_away", notify->check_away))
return 0;
if (!weechat_infolist_new_var_integer (ptr_item, "is_on_server", notify->is_on_server))
return 0;
if (!weechat_infolist_new_var_string (ptr_item, "away_message", notify->away_message))
return 0;
return 1;
}
/*
* irc_notify_print_log: print notify infos in log (usually for crash dump)
*/
void
irc_notify_print_log (struct t_irc_server *server)
{
struct t_irc_notify *ptr_notify;
for (ptr_notify = server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
weechat_log_printf ("");
weechat_log_printf (" => notify (addr:0x%lx):", ptr_notify);
weechat_log_printf (" server. . . . . . . : 0x%lx", ptr_notify->server);
weechat_log_printf (" nick. . . . . . . . : '%s'", ptr_notify->nick);
weechat_log_printf (" check_away. . . . . : %d", ptr_notify->check_away);
weechat_log_printf (" is_on_server. . . . : %d", ptr_notify->is_on_server);
weechat_log_printf (" away_message. . . . : '%s'", ptr_notify->away_message);
weechat_log_printf (" ison_received . . . : %d", ptr_notify->ison_received);
weechat_log_printf (" prev_notify . . . . : 0x%lx", ptr_notify->prev_notify);
weechat_log_printf (" next_notify . . . . : 0x%lx", ptr_notify->next_notify);
}
}
/*
* irc_notify_hook_timer_ison: hook timer to send "ison" command
*/
void
irc_notify_hook_timer_ison ()
{
if (irc_notify_timer_ison)
weechat_unhook (irc_notify_timer_ison);
irc_notify_timer_ison = weechat_hook_timer (
60 * 1000 * weechat_config_integer (irc_config_network_notify_check_ison),
0, 0, &irc_notify_timer_ison_cb, NULL);
}
/*
* irc_notify_hook_timer_whois: hook timer to send "whois" command
*/
void
irc_notify_hook_timer_whois ()
{
if (irc_notify_timer_whois)
weechat_unhook (irc_notify_timer_whois);
irc_notify_timer_whois = weechat_hook_timer (
60 * 1000 * weechat_config_integer (irc_config_network_notify_check_whois),
0, 0, &irc_notify_timer_whois_cb, NULL);
}
/*
* irc_notify_init: hook timers and hsignals
*/
void
irc_notify_init ()
{
irc_notify_hook_timer_ison ();
irc_notify_hook_timer_whois ();
irc_notify_hsignal = weechat_hook_hsignal ("irc_redirection_notify_*",
&irc_notify_hsignal_cb,
NULL);
}
/*
* irc_notify_end: remove timers and hsignals
*/
void
irc_notify_end ()
{
if (irc_notify_timer_ison)
weechat_unhook (irc_notify_timer_ison);
if (irc_notify_timer_whois)
weechat_unhook (irc_notify_timer_whois);
if (irc_notify_hsignal)
weechat_unhook (irc_notify_hsignal);
}

View File

@ -0,0 +1,66 @@
/*
* Copyright (C) 2010 Sebastien Helleu <flashcode@flashtux.org>
*
* This file is part of WeeChat, the extensible chat client.
*
* WeeChat is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* WeeChat is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with WeeChat. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __WEECHAT_IRC_NOTIFY_H
#define __WEECHAT_IRC_NOTIFY_H 1
struct t_irc_server;
struct t_irc_notify
{
struct t_irc_server *server; /* server */
char *nick; /* nick */
int check_away; /* check away status (with whois) */
/* current state of nick */
int is_on_server; /* 1 if nick is currently on server */
/* (using answer of ison command) */
char *away_message; /* current away message, NULL if */
/* nick is not away (using answer of */
/* whois command) */
/* internal stuff */
int ison_received; /* used when receiving ison answer */
struct t_irc_notify *prev_notify; /* link to previous notify */
struct t_irc_notify *next_notify; /* link to next notify */
};
extern int irc_notify_valid (struct t_irc_server *server,
struct t_irc_notify *notify);
extern struct t_irc_notify *irc_notify_search (struct t_irc_server *server,
const char *nick);
extern void irc_notify_set_server_option (struct t_irc_server *server);
extern struct t_irc_notify *irc_notify_new (struct t_irc_server *server,
const char *nick,
int check_away);
extern void irc_notify_new_for_server (struct t_irc_server *server);
extern void irc_notify_new_for_all_servers ();
extern void irc_notify_free (struct t_irc_server *server,
struct t_irc_notify *notify);
extern void irc_notify_free_all (struct t_irc_server *server);
extern void irc_notify_display_list (struct t_irc_server *server);
extern int irc_notify_timer_ison_cb (void *data, int remaining_calls);
extern int irc_notify_timer_whois_cb (void *data, int remaining_calls);
extern int irc_notify_add_to_infolist (struct t_infolist *infolist,
struct t_irc_notify *notify);
extern void irc_notify_print_log (struct t_irc_server *server);
extern void irc_notify_hook_timer_ison ();
extern void irc_notify_hook_timer_whois ();
extern void irc_notify_init ();
extern void irc_notify_end ();
#endif /* __WEECHAT_IRC_NOTIFY_H */

View File

@ -91,6 +91,13 @@ extern struct t_irc_redirect *irc_redirect_new_with_commands (struct t_irc_serve
const char *cmd_stop,
const char *cmd_extra,
const char *cmd_filter);
extern struct t_irc_redirect *irc_redirect_new (struct t_irc_server *server,
const char *pattern,
const char *signal,
int count,
const char *string,
int timeout,
const char *cmd_filter);
extern struct t_irc_redirect *irc_redirect_search_available (struct t_irc_server *server);
extern void irc_redirect_init_command (struct t_irc_redirect *redirect,
const char *command);

View File

@ -50,6 +50,7 @@
#include "irc-config.h"
#include "irc-input.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-protocol.h"
#include "irc-raw.h"
#include "irc-redirect.h"
@ -73,6 +74,7 @@ char *irc_server_option_string[IRC_SERVER_NUM_OPTIONS] =
"anti_flood_prio_high", "anti_flood_prio_low",
"away_check", "away_check_max_nicks",
"default_msg_part", "default_msg_quit",
"notify",
};
char *irc_server_option_default[IRC_SERVER_NUM_OPTIONS] =
@ -86,6 +88,7 @@ char *irc_server_option_default[IRC_SERVER_NUM_OPTIONS] =
"2", "2",
"0", "25",
"WeeChat %v", "WeeChat %v",
"",
};
char *irc_server_prefix_modes_default = "qaohvu";
@ -650,6 +653,8 @@ irc_server_alloc (const char *name)
}
new_server->redirects = NULL;
new_server->last_redirect = NULL;
new_server->notify_list = NULL;
new_server->last_notify = NULL;
new_server->buffer = NULL;
new_server->buffer_as_string = NULL;
new_server->channels = NULL;
@ -1088,6 +1093,7 @@ irc_server_free_data (struct t_irc_server *server)
{
irc_server_outqueue_free_all (server, i);
}
irc_notify_free_all (server);
irc_redirect_free_all (server);
if (server->channels)
irc_channel_free_all (server);
@ -4480,6 +4486,8 @@ irc_server_print_log ()
}
weechat_log_printf (" redirects. . . . . . : 0x%lx", ptr_server->redirects);
weechat_log_printf (" last_redirect. . . . : 0x%lx", ptr_server->last_redirect);
weechat_log_printf (" notify_list. . . . . : 0x%lx", ptr_server->notify_list);
weechat_log_printf (" last_notify. . . . . : 0x%lx", ptr_server->last_notify);
weechat_log_printf (" buffer . . . . . . . : 0x%lx", ptr_server->buffer);
weechat_log_printf (" buffer_as_string . . : 0x%lx", ptr_server->buffer_as_string);
weechat_log_printf (" channels . . . . . . : 0x%lx", ptr_server->channels);
@ -4489,6 +4497,8 @@ irc_server_print_log ()
irc_redirect_print_log (ptr_server);
irc_notify_print_log (ptr_server);
for (ptr_channel = ptr_server->channels; ptr_channel;
ptr_channel = ptr_channel->next_channel)
{

View File

@ -64,6 +64,7 @@ enum t_irc_server_option
IRC_SERVER_OPTION_AWAY_CHECK_MAX_NICKS, /* max nicks for away check */
IRC_SERVER_OPTION_DEFAULT_MSG_PART, /* default part message */
IRC_SERVER_OPTION_DEFAULT_MSG_QUIT, /* default quit message */
IRC_SERVER_OPTION_NOTIFY, /* notify list */
/* number of server options */
IRC_SERVER_NUM_OPTIONS,
};
@ -173,6 +174,8 @@ struct t_irc_server
struct t_irc_outqueue *last_outqueue[2]; /* last outgoing message */
struct t_irc_redirect *redirects; /* command redirections */
struct t_irc_redirect *last_redirect; /* last command redirection */
struct t_irc_notify *notify_list; /* list of notify */
struct t_irc_notify *last_notify; /* last notify */
struct t_gui_buffer *buffer; /* GUI buffer allocated for server */
char *buffer_as_string; /* used to return buffer info */
struct t_irc_channel *channels; /* opened channels on server */
@ -234,6 +237,9 @@ extern void irc_server_send_signal (struct t_irc_server *server,
const char *signal, const char *command,
const char *full_message,
const char *tags);
extern void irc_server_parse_message (const char *message, char **nick,
char **host, char **command,
char **channel, char **arguments);
extern struct t_hashtable *irc_server_parse_message_to_hashtable (const char *message);
extern void irc_server_set_send_default_tags (const char *tags);
extern void irc_server_sendf (struct t_irc_server *server, int flags,

View File

@ -29,13 +29,14 @@
#include "irc.h"
#include "irc-upgrade.h"
#include "irc-buffer.h"
#include "irc-channel.h"
#include "irc-config.h"
#include "irc-input.h"
#include "irc-server.h"
#include "irc-channel.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-raw.h"
#include "irc-redirect.h"
#include "irc-server.h"
struct t_irc_server *irc_upgrade_current_server = NULL;
@ -55,6 +56,7 @@ irc_upgrade_save_all_data (struct t_upgrade_file *upgrade_file)
struct t_irc_nick *ptr_nick;
struct t_irc_redirect *ptr_redirect;
struct t_irc_redirect_pattern *ptr_redirect_pattern;
struct t_irc_notify *ptr_notify;
struct t_irc_raw_message *ptr_raw_message;
int rc;
@ -122,7 +124,6 @@ irc_upgrade_save_all_data (struct t_upgrade_file *upgrade_file)
for (ptr_redirect = ptr_server->redirects; ptr_redirect;
ptr_redirect = ptr_redirect->next_redirect)
{
/* save channel */
infolist = weechat_infolist_new ();
if (!infolist)
return 0;
@ -138,6 +139,26 @@ irc_upgrade_save_all_data (struct t_upgrade_file *upgrade_file)
if (!rc)
return 0;
}
/* save server notify list */
for (ptr_notify = ptr_server->notify_list; ptr_notify;
ptr_notify = ptr_notify->next_notify)
{
infolist = weechat_infolist_new ();
if (!infolist)
return 0;
if (!irc_notify_add_to_infolist (infolist, ptr_notify))
{
weechat_infolist_free (infolist);
return 0;
}
rc = weechat_upgrade_write_object (upgrade_file,
IRC_UPGRADE_TYPE_NOTIFY,
infolist);
weechat_infolist_free (infolist);
if (!rc)
return 0;
}
}
/* save raw messages */
@ -255,6 +276,7 @@ irc_upgrade_read_cb (void *data,
const char *buffer_name, *str, *nick;
struct t_irc_nick *ptr_nick;
struct t_irc_redirect *ptr_redirect;
struct t_irc_notify *ptr_notify;
struct t_gui_buffer *ptr_buffer;
/* make C compiler happy */
@ -558,6 +580,20 @@ irc_upgrade_read_cb (void *data,
weechat_infolist_string (infolist, "cmd_stop"),
weechat_infolist_string (infolist, "cmd_extra"));
break;
case IRC_UPGRADE_TYPE_NOTIFY:
if (irc_upgrade_current_server)
{
ptr_notify = irc_notify_search (irc_upgrade_current_server,
weechat_infolist_string (infolist, "nick"));
if (ptr_notify)
{
ptr_notify->is_on_server = weechat_infolist_integer (infolist, "is_on_server");
str = weechat_infolist_string (infolist, "away_message");
if (str)
ptr_notify->away_message = strdup (str);
}
}
break;
case IRC_UPGRADE_TYPE_RAW_MESSAGE:
irc_raw_message_add_to_list (weechat_infolist_time (infolist, "date"),
weechat_infolist_string (infolist, "prefix"),

View File

@ -32,6 +32,7 @@ enum t_irc_upgrade_type
IRC_UPGRADE_TYPE_RAW_MESSAGE,
IRC_UPGRADE_TYPE_REDIRECT_PATTERN,
IRC_UPGRADE_TYPE_REDIRECT,
IRC_UPGRADE_TYPE_NOTIFY,
};
extern int irc_upgrade_save ();

View File

@ -29,6 +29,7 @@
#include "irc.h"
#include "irc-bar-item.h"
#include "irc-buffer.h"
#include "irc-channel.h"
#include "irc-color.h"
#include "irc-command.h"
#include "irc-completion.h"
@ -36,11 +37,11 @@
#include "irc-debug.h"
#include "irc-info.h"
#include "irc-input.h"
#include "irc-server.h"
#include "irc-channel.h"
#include "irc-nick.h"
#include "irc-notify.h"
#include "irc-raw.h"
#include "irc-redirect.h"
#include "irc-server.h"
#include "irc-upgrade.h"
@ -167,6 +168,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
irc_redirect_init ();
irc_notify_init ();
/* hook some signals */
irc_debug_init ();
weechat_hook_signal ("quit", &irc_signal_quit_cb, NULL);
@ -269,6 +272,8 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
irc_config_free ();
irc_notify_end ();
irc_redirect_end ();
return WEECHAT_RC_OK;