mirror of
https://github.com/weechat/weechat.git
synced 2026-06-26 12:56:37 +02:00
Remove jabber plugin (will be replaced by script)
This commit is contained in:
@@ -48,7 +48,6 @@ OPTION(DISABLE_CHARSET "Disable Charset plugin")
|
||||
OPTION(ENABLE_DEMO "Enable Demo plugin")
|
||||
OPTION(DISABLE_FIFO "Disable FIFO plugin")
|
||||
OPTION(DISABLE_IRC "Disable IRC plugin")
|
||||
OPTION(ENABLE_JABBER "Enable Jabber plugin")
|
||||
OPTION(DISABLE_LOGGER "Disable Logger plugin")
|
||||
OPTION(ENABLE_RELAY "Enable Relay plugin")
|
||||
OPTION(DISABLE_SCRIPTS "Disable script plugins")
|
||||
|
||||
@@ -102,7 +102,6 @@ AH_VERBATIM([PLUGIN_CHARSET], [#undef PLUGIN_CHARSET])
|
||||
AH_VERBATIM([PLUGIN_DEMO], [#undef PLUGIN_DEMO])
|
||||
AH_VERBATIM([PLUGIN_FIFO], [#undef PLUGIN_FIFO])
|
||||
AH_VERBATIM([PLUGIN_IRC], [#undef PLUGIN_IRC])
|
||||
AH_VERBATIM([PLUGIN_JABBER], [#undef PLUGIN_JABBER])
|
||||
AH_VERBATIM([PLUGIN_LOGGER], [#undef PLUGIN_LOGGER])
|
||||
AH_VERBATIM([PLUGIN_RELAY], [#undef PLUGIN_RELAY])
|
||||
AH_VERBATIM([PLUGIN_PERL], [#undef PLUGIN_PERL])
|
||||
@@ -127,7 +126,6 @@ AC_ARG_ENABLE(charset, [ --disable-charset turn off Charset plugin (
|
||||
AC_ARG_ENABLE(demo, [ --enable-demo turn on Demo plugin (default=off)],enable_demo=$enableval,enable_demo=no)
|
||||
AC_ARG_ENABLE(fifo, [ --disable-fifo turn off Fifo plugin (default=compiled)],enable_fifo=$enableval,enable_fifo=yes)
|
||||
AC_ARG_ENABLE(irc, [ --disable-irc turn off IRC plugin (default=compiled)],enable_irc=$enableval,enable_irc=yes)
|
||||
AC_ARG_ENABLE(jabber, [ --enable-jabber turn off Jabber plugin (default=off)],enable_jabber=$enableval,enable_jabber=no)
|
||||
AC_ARG_ENABLE(logger, [ --disable-logger turn off Logger plugin (default=compiled)],enable_logger=$enableval,enable_logger=yes)
|
||||
AC_ARG_ENABLE(relay, [ --enable-relay turn on Relay plugin (default=off)],enable_relay=$enableval,enable_relay=no)
|
||||
AC_ARG_ENABLE(scripts, [ --disable-scripts turn off script plugins (default=compiled if found)],enable_scripts=$enableval,enable_scripts=yes)
|
||||
@@ -374,26 +372,6 @@ else
|
||||
not_asked="$not_asked irc"
|
||||
fi
|
||||
|
||||
# --------------------------------- jabber -------------------------------------
|
||||
|
||||
if test "x$enable_jabber" = "xyes" ; then
|
||||
if test "$LIBIKSEMEL_FOUND" = "0" ; then
|
||||
AC_MSG_WARN([[
|
||||
*** libiksemel was not found. You may want to get it from http://code.google.com/p/iksemel/
|
||||
*** WeeChat will be built without Jabber support.]])
|
||||
enable_jabber="no"
|
||||
not_found="$not_found jabber"
|
||||
else
|
||||
IKSEMEL_CFLAGS=""
|
||||
IKSEMEL_LFLAGS="-liksemel"
|
||||
AC_SUBST(IKSEMEL_CFLAGS)
|
||||
AC_SUBST(IKSEMEL_LFLAGS)
|
||||
AC_DEFINE(PLUGIN_JABBER)
|
||||
fi
|
||||
else
|
||||
not_asked="$not_asked jabber"
|
||||
fi
|
||||
|
||||
# --------------------------------- logger -------------------------------------
|
||||
|
||||
if test "x$enable_logger" = "xyes" ; then
|
||||
@@ -966,7 +944,6 @@ AM_CONDITIONAL(PLUGIN_CHARSET, test "$enable_charset" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_DEMO, test "$enable_demo" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_FIFO, test "$enable_fifo" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_IRC, test "$enable_irc" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_JABBER, test "$enable_jabber" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_LOGGER, test "$enable_logger" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_RELAY, test "$enable_relay" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_PERL, test "$enable_perl" = "yes")
|
||||
@@ -990,7 +967,6 @@ AC_OUTPUT([Makefile
|
||||
src/plugins/demo/Makefile
|
||||
src/plugins/fifo/Makefile
|
||||
src/plugins/irc/Makefile
|
||||
src/plugins/jabber/Makefile
|
||||
src/plugins/logger/Makefile
|
||||
src/plugins/relay/Makefile
|
||||
src/plugins/scripts/Makefile
|
||||
@@ -1051,9 +1027,6 @@ fi
|
||||
if test "x$enable_irc" = "xyes" ; then
|
||||
listplugins="$listplugins irc"
|
||||
fi
|
||||
if test "x$enable_jabber" = "xyes" ; then
|
||||
listplugins="$listplugins jabber"
|
||||
fi
|
||||
if test "x$enable_logger" = "xyes"; then
|
||||
listplugins="$listplugins logger"
|
||||
fi
|
||||
|
||||
+8
-8
@@ -65,11 +65,11 @@ my @locale_list = qw(en_US fr_FR);
|
||||
my %plugin_list = ("weechat" => "co", "alias" => "",
|
||||
"aspell" => "o", "charset" => "co",
|
||||
"demo" => "co", "fifo" => "co",
|
||||
"irc" => "co", "jabber" => "co",
|
||||
"logger" => "co", "relay" => "co",
|
||||
"perl" => "", "python" => "",
|
||||
"ruby" => "", "lua" => "",
|
||||
"tcl" => "", "xfer" => "co");
|
||||
"irc" => "co", "logger" => "co",
|
||||
"relay" => "co", "perl" => "",
|
||||
"python" => "", "ruby" => "",
|
||||
"lua" => "", "tcl" => "",
|
||||
"xfer" => "co");
|
||||
|
||||
# options to ignore
|
||||
my @ignore_options = ("aspell\\.dict\\..*",
|
||||
@@ -85,13 +85,13 @@ my @ignore_options = ("aspell\\.dict\\..*",
|
||||
"weechat\\.notify\\..*");
|
||||
|
||||
# infos to ignore
|
||||
my @ignore_infos_plugins = ("jabber");
|
||||
my @ignore_infos_plugins = ();
|
||||
|
||||
# infolists to ignore
|
||||
my @ignore_infolists_plugins = ("jabber");
|
||||
my @ignore_infolists_plugins = ();
|
||||
|
||||
# completions to ignore
|
||||
my @ignore_completions_plugins = ("jabber");
|
||||
my @ignore_completions_plugins = ();
|
||||
my @ignore_completions_items = ("jabber.*",
|
||||
"weeget.*");
|
||||
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
• *`/jabber`* `[list [servername]] | [listfull [servername]] | [add servername username hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy servername newservername] | [rename servername newservername] | [keep servername] | [del servername] | [switch]`::
|
||||
|
||||
........................................
|
||||
list, add or remove Jabber servers
|
||||
|
||||
list: list servers (no parameter implies this list)
|
||||
listfull: list servers with detailed info for each server
|
||||
add: create a new server
|
||||
servername: server name, for internal and display use
|
||||
username: username to use on server
|
||||
hostname: name or IP address of server, with optional port (default: 5222)
|
||||
password: password for username on server
|
||||
auto: automatically connect to server when WeeChat starts
|
||||
noauto: do not connect to server when WeeChat starts (default)
|
||||
ipv6: use IPv6 protocol
|
||||
tls: use TLS cryptographic protocol
|
||||
sasl: use SASL for authentication
|
||||
copy: duplicate a server
|
||||
rename: rename a server
|
||||
keep: keep server in config file (for temporary servers only)
|
||||
del: delete a server
|
||||
switch: switch active server (when one buffer is used for all servers, default key: alt-s on server buffer)
|
||||
|
||||
Examples:
|
||||
/jabber listfull
|
||||
/jabber add jabberfr user jabber.fr/5222 password -tls
|
||||
/jabber copy jabberfr jabberfr2
|
||||
/jabber rename jabberfr jabbfr
|
||||
/jabber del jabberfr
|
||||
/jabber switch
|
||||
........................................
|
||||
|
||||
• *`/jchat`* `buddy [text]`::
|
||||
|
||||
........................................
|
||||
chat with a buddy
|
||||
|
||||
buddy: buddy name for chat
|
||||
text: text to send
|
||||
........................................
|
||||
|
||||
• *`/jconnect`* `[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port port] [-ipv6] [-tls] [-sasl]]`::
|
||||
|
||||
........................................
|
||||
connect to Jabber server(s)
|
||||
|
||||
-all: connect to all servers
|
||||
servername: internal server name to connect
|
||||
-nojoin: do not join any MUC (even if autojoin is enabled on server)
|
||||
hostname: hostname to connect
|
||||
port: port for server (integer, default is 6667)
|
||||
ipv6: use IPv6 protocol
|
||||
tls: use TLS cryptographic protocol
|
||||
saal: use SASL for authentication
|
||||
........................................
|
||||
|
||||
• *`/jdisconnect`* `[-all | servername [servername ...]]`::
|
||||
|
||||
........................................
|
||||
disconnect from Jabber server(s)
|
||||
|
||||
-all: disconnect from all servers
|
||||
servername: server name to disconnect
|
||||
........................................
|
||||
|
||||
@@ -1,205 +0,0 @@
|
||||
* *jabber.color.input_nick*
|
||||
** description: color for nick in input bar
|
||||
** type: color
|
||||
** values: a color name (default value: lightcyan)
|
||||
|
||||
* *jabber.color.message_join*
|
||||
** description: color for text in join messages
|
||||
** type: color
|
||||
** values: a color name (default value: green)
|
||||
|
||||
* *jabber.color.message_quit*
|
||||
** description: color for text in part/quit messages
|
||||
** type: color
|
||||
** values: a color name (default value: red)
|
||||
|
||||
* *jabber.look.color_nicks_in_server_messages*
|
||||
** description: use nick color in messages from server
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.look.display_away*
|
||||
** description: display message when (un)marking as away
|
||||
** type: integer
|
||||
** values: off, local, muc (default value: local)
|
||||
|
||||
* *jabber.look.display_muc_modes*
|
||||
** description: display MUC modes in "buffer_name" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.look.display_nick_modes*
|
||||
** description: display nick modes in "input_prompt" bar item
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.look.highlight_tags*
|
||||
** description: comma separated list of tags for messages that may produce highlight (usually any message from another user, not server messages,..)
|
||||
** type: string
|
||||
** values: any string (default value: "jabber_chat_msg,jabber_notice")
|
||||
|
||||
* *jabber.look.nick_completion_smart*
|
||||
** description: smart completion for nicks (completes with last speakers first)
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.look.nick_prefix*
|
||||
** description: text to display before nick in chat window
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.look.nick_suffix*
|
||||
** description: text to display after nick in chat window
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.look.one_server_buffer*
|
||||
** description: use same buffer for all servers
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.look.open_near_server*
|
||||
** description: open new MUCs/privates near server
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.look.show_away_once*
|
||||
** description: show remote away message only once in private
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.look.smart_filter*
|
||||
** description: filter join/part/quit messages for a nick if not speaking for some minutes on MUC (you must create a filter on tag "jabber_smart_filter")
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.look.smart_filter_delay*
|
||||
** description: delay for filtering join/part/quit messages (in minutes)
|
||||
** type: integer
|
||||
** values: 1 .. 10080 (default value: 5)
|
||||
|
||||
* *jabber.network.anti_flood*
|
||||
** description: anti-flood: # seconds between two user messages (0 = no anti-flood)
|
||||
** type: integer
|
||||
** values: 0 .. 5 (default value: 2)
|
||||
|
||||
* *jabber.network.colors_receive*
|
||||
** description: when off, colors codes are ignored in incoming messages
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.network.colors_send*
|
||||
** description: allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.network.default_msg_part*
|
||||
** description: default part message (leaving MUC) ('%v' will be replaced by WeeChat version in string)
|
||||
** type: string
|
||||
** values: any string (default value: "WeeChat %v")
|
||||
|
||||
* *jabber.network.default_msg_quit*
|
||||
** description: default quit message (disconnecting from server) ('%v' will be replaced by WeeChat version in string)
|
||||
** type: string
|
||||
** values: any string (default value: "WeeChat %v")
|
||||
|
||||
* *jabber.network.lag_check*
|
||||
** description: interval between two checks for lag (in seconds, 0 = never check)
|
||||
** type: integer
|
||||
** values: 0 .. 2147483647 (default value: 60)
|
||||
|
||||
* *jabber.network.lag_disconnect*
|
||||
** description: disconnect after important lag (in minutes, 0 = never disconnect)
|
||||
** type: integer
|
||||
** values: 0 .. 2147483647 (default value: 5)
|
||||
|
||||
* *jabber.network.lag_min_show*
|
||||
** description: minimum lag to show (in seconds)
|
||||
** type: integer
|
||||
** values: 0 .. 2147483647 (default value: 1)
|
||||
|
||||
* *jabber.server_default.autoconnect*
|
||||
** description: automatically connect to server when WeeChat is starting
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.server_default.autojoin*
|
||||
** description: comma separated list of MUCs to join when connected to server (example: "#chan1,#chan2,#chan3 key1,key2")
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.autoreconnect*
|
||||
** description: automatically reconnect to server when disconnected
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.server_default.autoreconnect_delay*
|
||||
** description: delay (in seconds) before trying again to reconnect to server
|
||||
** type: integer
|
||||
** values: 0 .. 65535 (default value: 10)
|
||||
|
||||
* *jabber.server_default.autorejoin*
|
||||
** description: automatically rejoin MUCs when kicked
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.server_default.command*
|
||||
** description: command(s) to run when connected to server (many commands should be separated by ';', use '\;' for a semicolon, special variables $nick, $muc and $server are replaced by their value)
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.command_delay*
|
||||
** description: delay (in seconds) after command was executed (example: give some time for authentication)
|
||||
** type: integer
|
||||
** values: 0 .. 3600 (default value: 0)
|
||||
|
||||
* *jabber.server_default.ipv6*
|
||||
** description: use IPv6 protocol for server communication
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.server_default.local_alias*
|
||||
** description: local alias
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.local_hostname*
|
||||
** description: custom local hostname/IP for server (optional, if empty local hostname is used)
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.password*
|
||||
** description: password
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.proxy*
|
||||
** description: proxy used for this server (optional)
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.resource*
|
||||
** description: resource (for example: Home or Work)
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.sasl*
|
||||
** description: use SASL for authentication
|
||||
** type: boolean
|
||||
** values: on, off (default value: on)
|
||||
|
||||
* *jabber.server_default.server*
|
||||
** description: hostname/port or IP/port for server
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
* *jabber.server_default.tls*
|
||||
** description: use TLS cryptographic protocol for server communication
|
||||
** type: boolean
|
||||
** values: on, off (default value: off)
|
||||
|
||||
* *jabber.server_default.username*
|
||||
** description: user name to use on server
|
||||
** type: string
|
||||
** values: any string (default value: "")
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
• *`/jabber`* `[list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur nom_utilisateur nom[/port] mot_de_passe [-temp] [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [switch]`::
|
||||
|
||||
........................................
|
||||
liste, ajoute ou retire des serveurs Jabber
|
||||
|
||||
list: afficher les serveurs (pas de paramètre implique cette liste)
|
||||
listfull: afficher les serveurs avec de l'info détaillée pour chaque
|
||||
add: créer un nouveau serveur
|
||||
nom_serveur: nom du serveur, pour usage interne et affichage
|
||||
nom_utilisateur: nom d'utilisateur pour ce serveur
|
||||
nom: nom ou adresse IP du serveur avec port en option (defaut: 5222)
|
||||
mot_de_passe: mot de passe pour l'utilisateur sur le serveur
|
||||
auto: se connecter automatiquement au serveur quand WeeChat démarre
|
||||
noauto: ne pas se connecter au serveur quand WeeChat démarre (par défaut)
|
||||
ipv6: utiliser le protocole IPv6
|
||||
tsl: utiliser le protocole de chiffrement TLS
|
||||
sasl: utiliser SASL pour l'authentification
|
||||
copy: dupliquer un serveur
|
||||
rename: renommer un serveur
|
||||
keep: garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
|
||||
del: supprimer un serveur
|
||||
switch: changer le serveur actif (quand un tampon est utilisé pour tous les serveurs, touche par défaut: alt-s sur le tampon serveur)
|
||||
|
||||
Exemples:
|
||||
/jabber listfull
|
||||
/jabber add jabberfr user jabber.fr/5222 password -tls
|
||||
/jabber copy jabberfr jabberfr2
|
||||
/jabber rename jabberfr jabbfr
|
||||
/jabber del jabberfr
|
||||
/jabber switch
|
||||
........................................
|
||||
|
||||
• *`/jchat`* `contact [texte]`::
|
||||
|
||||
........................................
|
||||
discuter avec un contact
|
||||
|
||||
contact: nom du contact pour la discussion
|
||||
texte: texte à envoyer
|
||||
........................................
|
||||
|
||||
• *`/jconnect`* `[-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port port] [-ipv6] [-tls] [-sasl]]`::
|
||||
|
||||
........................................
|
||||
se connecter à un/plusieurs serveur(s) Jabber
|
||||
|
||||
-all: se reconnecter à tous les serveurs
|
||||
nom_serveur: nom du serveur pour se connecter
|
||||
-nojoin: ne rejoindre aucun MUC (même si l'autojoin est activé pour le serveur)
|
||||
nom/IP: nom/IP pour se connecter
|
||||
port: port pour le serveur (nombre entier, 6667 par défaut)
|
||||
ipv6: utiliser le protocole IPv6
|
||||
tls: utiliser le protocole de chiffrement TLS
|
||||
sasl: utiliser SASL pour l'authentification
|
||||
........................................
|
||||
|
||||
• *`/jdisconnect`* `[-all | nom_serveur [nom_serveur...]]`::
|
||||
|
||||
........................................
|
||||
se déconnecter d'un/plusieurs serveur(s) Jabber
|
||||
|
||||
-all: se déconnecter de tous les serveurs
|
||||
nom_serveur: nom du serveur pour se déconnecter
|
||||
........................................
|
||||
|
||||
@@ -1,205 +0,0 @@
|
||||
* *jabber.color.input_nick*
|
||||
** description: couleur du pseudo dans la barre de saisie
|
||||
** type: couleur
|
||||
** valeurs: un nom de couleur (valeur par défaut: lightcyan)
|
||||
|
||||
* *jabber.color.message_join*
|
||||
** description: couleur pour le texte dans les messages join
|
||||
** type: couleur
|
||||
** valeurs: un nom de couleur (valeur par défaut: green)
|
||||
|
||||
* *jabber.color.message_quit*
|
||||
** description: couleur pour le texte dans les messages part/quit
|
||||
** type: couleur
|
||||
** valeurs: un nom de couleur (valeur par défaut: red)
|
||||
|
||||
* *jabber.look.color_nicks_in_server_messages*
|
||||
** description: utiliser la couleur du pseudo dans les messages du serveur
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.look.display_away*
|
||||
** description: affiche un message pour l'absence/le retour
|
||||
** type: entier
|
||||
** valeurs: off, local, muc (valeur par défaut: local)
|
||||
|
||||
* *jabber.look.display_muc_modes*
|
||||
** description: affiche les modes du MUC dans l'objet de barre "buffer_name"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.look.display_nick_modes*
|
||||
** description: affiche les modes du pseudo dans l'objet de barre "input_prompt"
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.look.highlight_tags*
|
||||
** description: liste des tags pour les messages qui peuvent produire un highlight (séparés par des virgules, typiquement tout message venant d'un autre utilisateur, pas les messages du serveur, ...)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "jabber_chat_msg,jabber_notice")
|
||||
|
||||
* *jabber.look.nick_completion_smart*
|
||||
** description: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment)
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.look.nick_prefix*
|
||||
** description: texte à afficher avant le pseudo dans la fenêtre de discussion
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.look.nick_suffix*
|
||||
** description: texte à afficher après le pseudo dans la fenêtre de discussion
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.look.one_server_buffer*
|
||||
** description: utiliser le même tampon pour tous les serveurs
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.look.open_near_server*
|
||||
** description: ouvrir les nouveaux MUCs/privés près du serveur
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.look.show_away_once*
|
||||
** description: voir le message d'absence distant une seule fois en privé
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.look.smart_filter*
|
||||
** description: filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le MUC (vous devez créer un filtre sur le tag "jabber_smart_filter")
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.look.smart_filter_delay*
|
||||
** description: délai pour filtrer les messages join/part/quit (en minutes)
|
||||
** type: entier
|
||||
** valeurs: 1 .. 10080 (valeur par défaut: 5)
|
||||
|
||||
* *jabber.network.anti_flood*
|
||||
** description: anti-flood: nombre de secondes entre deux messages utilisateur (0 = pas d'anti-flood)
|
||||
** type: entier
|
||||
** valeurs: 0 .. 5 (valeur par défaut: 2)
|
||||
|
||||
* *jabber.network.colors_receive*
|
||||
** description: si désactivé, les codes couleurs des messages entrants sont ignorés
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.network.colors_send*
|
||||
** description: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (^Cb=gras, ^Cxx=couleur, ^Ccxx,yy=couleur+fond, ^Cu=souligné, ^Cr=inversé)
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.network.default_msg_part*
|
||||
** description: message par défaut pour le part (en quittant un MUC) ('%v' sera remplacé par la version de WeeChat dans la chaîne)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
|
||||
|
||||
* *jabber.network.default_msg_quit*
|
||||
** description: 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)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "WeeChat %v")
|
||||
|
||||
* *jabber.network.lag_check*
|
||||
** description: intervalle entre deux vérifications des absences (en secondes, 0 = ne jamais vérifier)
|
||||
** type: entier
|
||||
** valeurs: 0 .. 2147483647 (valeur par défaut: 60)
|
||||
|
||||
* *jabber.network.lag_disconnect*
|
||||
** description: déconnexion après un lag important (en minutes, 0 = ne jamais se déconnecter)
|
||||
** type: entier
|
||||
** valeurs: 0 .. 2147483647 (valeur par défaut: 5)
|
||||
|
||||
* *jabber.network.lag_min_show*
|
||||
** description: lag minimum à afficher (en secondes)
|
||||
** type: entier
|
||||
** valeurs: 0 .. 2147483647 (valeur par défaut: 1)
|
||||
|
||||
* *jabber.server_default.autoconnect*
|
||||
** description: connexion automatique au serveur quand WeeChat démarre
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.server_default.autojoin*
|
||||
** description: liste des MUCs (séparés par des virgules) à rejoindre lorsque connecté au serveur (exemple: "#chan1,#chan2,#chan3 key1,key2")
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.autoreconnect*
|
||||
** description: reconnexion automatique au serveur après une déconnexion
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.server_default.autoreconnect_delay*
|
||||
** description: délai (en secondes) avant de tenter une reconnexion au serveur
|
||||
** type: entier
|
||||
** valeurs: 0 .. 65535 (valeur par défaut: 10)
|
||||
|
||||
* *jabber.server_default.autorejoin*
|
||||
** description: rejoindre automatiquement les MUCs quand mis dehors
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.server_default.command*
|
||||
** description: commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes doivent être séparées par ';', utilisez '\;' pour un point-virgule, les variables spéciales $nick, $muc et $server sont remplacées par leur valeur)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.command_delay*
|
||||
** description: délai (en secondes) après exécution de la commande (exemple: donner du temps pour l'authentification)
|
||||
** type: entier
|
||||
** valeurs: 0 .. 3600 (valeur par défaut: 0)
|
||||
|
||||
* *jabber.server_default.ipv6*
|
||||
** description: utiliser le protocole IPv6 pour la communication avec le serveur
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.server_default.local_alias*
|
||||
** description: alias local
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.local_hostname*
|
||||
** description: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.password*
|
||||
** description: mot de passe
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.proxy*
|
||||
** description: proxy utilisé pour ce serveur (optionnel)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.resource*
|
||||
** description: ressource (pas exemple: Maison ou Travail)
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.sasl*
|
||||
** description: utiliser SASL pour l'authentification
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: on)
|
||||
|
||||
* *jabber.server_default.server*
|
||||
** description: nom/port ou IP/port pour le serveur
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
* *jabber.server_default.tls*
|
||||
** description: utiliser le protocole de chiffrement TLS pour la communication avec le serveur
|
||||
** type: booléen
|
||||
** valeurs: on, off (valeur par défaut: off)
|
||||
|
||||
* *jabber.server_default.username*
|
||||
** description: nom d'utilisateur pour le serveur
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: "")
|
||||
|
||||
@@ -137,36 +137,6 @@
|
||||
./src/plugins/irc/irc-raw.h
|
||||
./src/plugins/irc/irc-server.c
|
||||
./src/plugins/irc/irc-server.h
|
||||
./src/plugins/jabber/jabber-bar-item.c
|
||||
./src/plugins/jabber/jabber-bar-item.h
|
||||
./src/plugins/jabber/jabber-buddy.c
|
||||
./src/plugins/jabber/jabber-buddy.h
|
||||
./src/plugins/jabber/jabber-buffer.c
|
||||
./src/plugins/jabber/jabber-buffer.h
|
||||
./src/plugins/jabber/jabber.c
|
||||
./src/plugins/jabber/jabber-command.c
|
||||
./src/plugins/jabber/jabber-command.h
|
||||
./src/plugins/jabber/jabber-completion.c
|
||||
./src/plugins/jabber/jabber-completion.h
|
||||
./src/plugins/jabber/jabber-config.c
|
||||
./src/plugins/jabber/jabber-config.h
|
||||
./src/plugins/jabber/jabber-debug.c
|
||||
./src/plugins/jabber/jabber-debug.h
|
||||
./src/plugins/jabber/jabber-display.c
|
||||
./src/plugins/jabber/jabber-display.h
|
||||
./src/plugins/jabber/jabber.h
|
||||
./src/plugins/jabber/jabber-info.c
|
||||
./src/plugins/jabber/jabber-info.h
|
||||
./src/plugins/jabber/jabber-input.c
|
||||
./src/plugins/jabber/jabber-input.h
|
||||
./src/plugins/jabber/jabber-muc.c
|
||||
./src/plugins/jabber/jabber-muc.h
|
||||
./src/plugins/jabber/jabber-server.c
|
||||
./src/plugins/jabber/jabber-server.h
|
||||
./src/plugins/jabber/jabber-upgrade.c
|
||||
./src/plugins/jabber/jabber-upgrade.h
|
||||
./src/plugins/jabber/jabber-xmpp.c
|
||||
./src/plugins/jabber/jabber-xmpp.h
|
||||
./src/plugins/logger/logger.c
|
||||
./src/plugins/logger/logger.h
|
||||
./src/plugins/logger/logger-buffer.c
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4454,339 +4454,6 @@ msgstr "Odpojen od serveru!\n"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "Odpojen od serveru!\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "servers"
|
||||
msgstr "server"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "Automatické znovupřipojené je zrušeno\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "vypíše, přídá nebo odebere servery"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[list [jméno_serveru]] | [listfull [jméno_serveru]] | [add jméno_serveru "
|
||||
"jméno_hosta [-port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd "
|
||||
"heslo] [-nick přezdívka1 přezdívka2 přezdívka3] [-username "
|
||||
"uživatelské_jméno] [-realname pravé_jméno] [-command příkaz] [-autojoin kanál"
|
||||
"[,kanál]] ] | [copy jméno_serveru nové_jméno_serveru] | [rename "
|
||||
"jméno_serveru nové_jméno_serveru] | [keep jméno_serveru] | [del "
|
||||
"jméno_serveru]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
" list: vypsat servery (pokud nejsou uvedeny žádné parametry bude "
|
||||
"vypsán tento seznam)\n"
|
||||
" listfull: vypsat servery s detailními informacemi o každém serveru\n"
|
||||
" add: vytvoří nový server\n"
|
||||
" jméno_serveru: jméno serveru pro vnitřní a zobrazovací použití\n"
|
||||
" jméno_hosta: jméno nebo IP adresa serveru\n"
|
||||
" port: port pro server (celé číslo, výchozí je 6667)\n"
|
||||
" temp: vytvořit dočasný server (neukládá se do konfiguračního "
|
||||
"souboru)\n"
|
||||
" auto: automatickz pripojit k serveru při startu WeeChat\n"
|
||||
" noauto: nepřipojovat k serveru automatickz při startu WeeChat "
|
||||
"(výchozí)\n"
|
||||
" ipv6: používat IPv6 protokol\n"
|
||||
" ssl: používat SSL protokol\n"
|
||||
" heslo: heslo pro server\n"
|
||||
" přezdívka1: první přezdívka pro server\n"
|
||||
" přezdívka2: alternativní přezdívka pro server\n"
|
||||
" přezdívka3: druhá alternativní přezdívka pro server\n"
|
||||
"uživatelské_jméno: uživatelské jméno\n"
|
||||
" pravé_jméno: pravé jméno uživatele\n"
|
||||
" copy: zkopírovat server\n"
|
||||
" rename: přejmenovat server\n"
|
||||
" keep: zachovat server v konfiguračním souboru (pouze pro "
|
||||
"dočasné servery)\n"
|
||||
" del: smazat server\n"
|
||||
" deloutq: smazat zprávy v odchozích frontách všech serverů (všechny "
|
||||
"zprávy, které WeeChat právě posílá)"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "buddy [text]"
|
||||
msgstr "text"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"služba: jméno služby\n"
|
||||
"text: text, který se má poslat"
|
||||
|
||||
#, fuzzy
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "připojit se k serveru/serverům"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
"[-all [-nojoin] | jméno_serveru [jméno_serveru ...] [-nojoin] | hostname [-"
|
||||
"port port] [-ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
" -all: připojit ke všem serverům\n"
|
||||
"jméno_serveru: jméno serveru pro přípojení -nojoin: nepřipojovat se na "
|
||||
"kanály (i pokud je na serveru zpanuto automatické připojování)\n"
|
||||
" hostname: hostname pro připojení, vytvoří dočasný server\n"
|
||||
" port: port pro server (celé číslo, výchozí je 6667)\n"
|
||||
" ipv6: použít IPv6 protokol\n"
|
||||
" ssl: použít SSL protokol"
|
||||
|
||||
#, fuzzy
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "odpojit ze serveru/serverů"
|
||||
|
||||
#, fuzzy
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "přezdívka použitá na IRC serveru"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr "použít protokol IPv6 pro komunikaci se serverem"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "použít SSL pro komunikaci se serverem"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "password"
|
||||
msgstr "uživatel heslo"
|
||||
|
||||
#, fuzzy
|
||||
msgid "local alias"
|
||||
msgstr "Seznam pro aliasy:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"příkaz(y), které provést po přípojení k serveru (více příkazů se odděluje "
|
||||
"pomocí ';', použijte '\\;' pro středník, speciální proměnné $nick, $channel "
|
||||
"a $server jsou přepsány svou hodnotou)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"čárkou rozdělený seznam kanálů na které přistoupit po připojení na server "
|
||||
"(příklad: \"#kanál1,#kanál2,#kanál3 klíč1,klíč2\")"
|
||||
|
||||
#, fuzzy
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "automaticky znovu přijít na kanál po vykopnutí"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "pužít stejný buffer pro všechny servery"
|
||||
|
||||
#, fuzzy
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "otevřít nový kanál/soukromý rozhovor poblíž serveru"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr "chytré doplňování přezdívek (doplňovat posledně mluvící jako první)"
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
"výchozí zpráva při odchodu z kanálu ('%v' bude nahrazeno verzí WeeChat v "
|
||||
"řetězci)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
"výchozí zpráva při uknočnení ('%v' bude nahrazeno verzí WeeChat v řetězci)"
|
||||
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
"povolit uživateli posílat barvy se speciálními kódy (^Cb=tlustě, "
|
||||
"^Ccxx=barva, ^Ccxx,yy=barva+pozadí, ^Cu=podtržené, ^Cr=obrácené)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Jabber debug messages"
|
||||
msgstr "vypsat debug zprávy"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "heslo pro IRC server"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "Tohe není okno kanálu!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s nemohu přidělit nový kanál"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s: Navazuji nové spojení se serverem za %d sekund\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s nepřipojen k serveru \"%s\"!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s chyba inicializace gnutls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s handshake s gnutls selhal\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "%s: připojuji se k serveru %s:%d%s%s přes %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "Připojuji se k serveru %s:%d%s%s přes %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s: připojuji se k serveru %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s nemohu se připojit pomocí SSL, protže WeeChat nebyl sestaven s podporou "
|
||||
"GNUtls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s nemohu vytvořit server\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s DCC: nemohu vytvořit rouru\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s: Připojuji se znovu k serveru...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr "Nemůžu zapsat log soubor \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "Server %s%s%s vytvořen\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s DCC: nemohu provést fork\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr "Nemůžu zapsat log soubor \"%s\"\n"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
@@ -5851,6 +5518,322 @@ msgstr "%s DCC: nemohu nastavit 'neblokovaci' volbu na soket\n"
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s chybí argument pro volbu \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "servers"
|
||||
#~ msgstr "server"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: auto-reconnection is cancelled"
|
||||
#~ msgstr "Automatické znovupřipojené je zrušeno\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list, add or remove Jabber servers"
|
||||
#~ msgstr "vypíše, přídá nebo odebere servery"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
#~ "[copy servername newservername] | [rename servername newservername] | "
|
||||
#~ "[keep servername] | [del servername] | [switch]"
|
||||
#~ msgstr ""
|
||||
#~ "[list [jméno_serveru]] | [listfull [jméno_serveru]] | [add jméno_serveru "
|
||||
#~ "jméno_hosta [-port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd "
|
||||
#~ "heslo] [-nick přezdívka1 přezdívka2 přezdívka3] [-username "
|
||||
#~ "uživatelské_jméno] [-realname pravé_jméno] [-command příkaz] [-autojoin "
|
||||
#~ "kanál[,kanál]] ] | [copy jméno_serveru nové_jméno_serveru] | [rename "
|
||||
#~ "jméno_serveru nové_jméno_serveru] | [keep jméno_serveru] | [del "
|
||||
#~ "jméno_serveru]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " list: list servers (no parameter implies this list)\n"
|
||||
#~ " listfull: list servers with detailed info for each server\n"
|
||||
#~ " add: create a new server\n"
|
||||
#~ "servername: server name, for internal and display use\n"
|
||||
#~ " username: username to use on server\n"
|
||||
#~ " hostname: name or IP address of server, with optional port (default: "
|
||||
#~ "5222)\n"
|
||||
#~ " password: password for username on server\n"
|
||||
#~ " auto: automatically connect to server when WeeChat starts\n"
|
||||
#~ " noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " sasl: use SASL for authentication\n"
|
||||
#~ " copy: duplicate a server\n"
|
||||
#~ " rename: rename a server\n"
|
||||
#~ " keep: keep server in config file (for temporary servers only)\n"
|
||||
#~ " del: delete a server\n"
|
||||
#~ " switch: switch active server (when one buffer is used for all "
|
||||
#~ "servers, default key: alt-s on server buffer)\n"
|
||||
#~ "\n"
|
||||
#~ "Examples:\n"
|
||||
#~ " /jabber listfull\n"
|
||||
#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
#~ " /jabber copy jabberfr jabberfr2\n"
|
||||
#~ " /jabber rename jabberfr jabbfr\n"
|
||||
#~ " /jabber del jabberfr\n"
|
||||
#~ " /jabber switch"
|
||||
#~ msgstr ""
|
||||
#~ " list: vypsat servery (pokud nejsou uvedeny žádné parametry "
|
||||
#~ "bude vypsán tento seznam)\n"
|
||||
#~ " listfull: vypsat servery s detailními informacemi o každém "
|
||||
#~ "serveru\n"
|
||||
#~ " add: vytvoří nový server\n"
|
||||
#~ " jméno_serveru: jméno serveru pro vnitřní a zobrazovací použití\n"
|
||||
#~ " jméno_hosta: jméno nebo IP adresa serveru\n"
|
||||
#~ " port: port pro server (celé číslo, výchozí je 6667)\n"
|
||||
#~ " temp: vytvořit dočasný server (neukládá se do konfiguračního "
|
||||
#~ "souboru)\n"
|
||||
#~ " auto: automatickz pripojit k serveru při startu WeeChat\n"
|
||||
#~ " noauto: nepřipojovat k serveru automatickz při startu WeeChat "
|
||||
#~ "(výchozí)\n"
|
||||
#~ " ipv6: používat IPv6 protokol\n"
|
||||
#~ " ssl: používat SSL protokol\n"
|
||||
#~ " heslo: heslo pro server\n"
|
||||
#~ " přezdívka1: první přezdívka pro server\n"
|
||||
#~ " přezdívka2: alternativní přezdívka pro server\n"
|
||||
#~ " přezdívka3: druhá alternativní přezdívka pro server\n"
|
||||
#~ "uživatelské_jméno: uživatelské jméno\n"
|
||||
#~ " pravé_jméno: pravé jméno uživatele\n"
|
||||
#~ " copy: zkopírovat server\n"
|
||||
#~ " rename: přejmenovat server\n"
|
||||
#~ " keep: zachovat server v konfiguračním souboru (pouze pro "
|
||||
#~ "dočasné servery)\n"
|
||||
#~ " del: smazat server\n"
|
||||
#~ " deloutq: smazat zprávy v odchozích frontách všech serverů "
|
||||
#~ "(všechny zprávy, které WeeChat právě posílá)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "buddy [text]"
|
||||
#~ msgstr "text"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "buddy: buddy name for chat\n"
|
||||
#~ " text: text to send"
|
||||
#~ msgstr ""
|
||||
#~ "služba: jméno služby\n"
|
||||
#~ "text: text, který se má poslat"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "connect to Jabber server(s)"
|
||||
#~ msgstr "připojit se k serveru/serverům"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
#~ "port] [-ipv6] [-tls] [-sasl]]"
|
||||
#~ msgstr ""
|
||||
#~ "[-all [-nojoin] | jméno_serveru [jméno_serveru ...] [-nojoin] | hostname "
|
||||
#~ "[-port port] [-ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " -all: connect to all servers\n"
|
||||
#~ "servername: internal server name to connect\n"
|
||||
#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
#~ " hostname: hostname to connect\n"
|
||||
#~ " port: port for server (integer, default is 6667)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " saal: use SASL for authentication"
|
||||
#~ msgstr ""
|
||||
#~ " -all: připojit ke všem serverům\n"
|
||||
#~ "jméno_serveru: jméno serveru pro přípojení -nojoin: nepřipojovat se "
|
||||
#~ "na kanály (i pokud je na serveru zpanuto automatické připojování)\n"
|
||||
#~ " hostname: hostname pro připojení, vytvoří dočasný server\n"
|
||||
#~ " port: port pro server (celé číslo, výchozí je 6667)\n"
|
||||
#~ " ipv6: použít IPv6 protokol\n"
|
||||
#~ " ssl: použít SSL protokol"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "disconnect from Jabber server(s)"
|
||||
#~ msgstr "odpojit ze serveru/serverů"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "hostname/port or IP/port for server"
|
||||
#~ msgstr "přezdívka použitá na IRC serveru"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use TLS cryptographic protocol for server communication"
|
||||
#~ msgstr "použít protokol IPv6 pro komunikaci se serverem"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use SASL for authentication"
|
||||
#~ msgstr "použít SSL pro komunikaci se serverem"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "password"
|
||||
#~ msgstr "uživatel heslo"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "local alias"
|
||||
#~ msgstr "Seznam pro aliasy:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "command(s) to run when connected to server (many commands should be "
|
||||
#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, "
|
||||
#~ "$muc and $server are replaced by their value)"
|
||||
#~ msgstr ""
|
||||
#~ "příkaz(y), které provést po přípojení k serveru (více příkazů se odděluje "
|
||||
#~ "pomocí ';', použijte '\\;' pro středník, speciální proměnné $nick, "
|
||||
#~ "$channel a $server jsou přepsány svou hodnotou)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "comma separated list of MUCs to join when connected to server (example: "
|
||||
#~ "\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
#~ msgstr ""
|
||||
#~ "čárkou rozdělený seznam kanálů na které přistoupit po připojení na server "
|
||||
#~ "(příklad: \"#kanál1,#kanál2,#kanál3 klíč1,klíč2\")"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "automatically rejoin MUCs when kicked"
|
||||
#~ msgstr "automaticky znovu přijít na kanál po vykopnutí"
|
||||
|
||||
#~ msgid "use same buffer for all servers"
|
||||
#~ msgstr "pužít stejný buffer pro všechny servery"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "open new MUCs/privates near server"
|
||||
#~ msgstr "otevřít nový kanál/soukromý rozhovor poblíž serveru"
|
||||
|
||||
#~ msgid "smart completion for nicks (completes with last speakers first)"
|
||||
#~ msgstr "chytré doplňování přezdívek (doplňovat posledně mluvící jako první)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat "
|
||||
#~ "version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "výchozí zpráva při odchodu z kanálu ('%v' bude nahrazeno verzí WeeChat v "
|
||||
#~ "řetězci)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default quit message (disconnecting from server) ('%v' will be replaced "
|
||||
#~ "by WeeChat version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "výchozí zpráva při uknočnení ('%v' bude nahrazeno verzí WeeChat v řetězci)"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, "
|
||||
#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
#~ msgstr ""
|
||||
#~ "povolit uživateli posílat barvy se speciálními kódy (^Cb=tlustě, "
|
||||
#~ "^Ccxx=barva, ^Ccxx,yy=barva+pozadí, ^Cu=podtržené, ^Cr=obrácené)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Jabber debug messages"
|
||||
#~ msgstr "vypsat debug zprávy"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "get buffer pointer for a Jabber server/MUC"
|
||||
#~ msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of Jabber servers"
|
||||
#~ msgstr "heslo pro IRC server"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of MUCs for a Jabber server"
|
||||
#~ msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of buddies for a Jabber server or MUC"
|
||||
#~ msgstr "seznam uživatelů přihlášených k serveru"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s: this buffer is not a MUC!"
|
||||
#~ msgstr "Tohe není okno kanálu!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: cannot allocate new MUC"
|
||||
#~ msgstr "%s nemohu přidělit nový kanál"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server in %d %s"
|
||||
#~ msgstr "%s: Navazuji nové spojení se serverem za %d sekund\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connected to %s (%s)"
|
||||
#~ msgstr "%s nepřipojen k serveru \"%s\"!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS init error"
|
||||
#~ msgstr "%s chyba inicializace gnutls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS handshake failed"
|
||||
#~ msgstr "%s handshake s gnutls selhal\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "%s: připojuji se k serveru %s:%d%s%s přes %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "Připojuji se k serveru %s:%d%s%s přes %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
#~ msgstr "%s: připojuji se k serveru %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s přezdívka \"%s\" nebyla nalezena pro příkaz \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
#~ "GnuTLS support"
|
||||
#~ msgstr ""
|
||||
#~ "%s nemohu se připojit pomocí SSL, protže WeeChat nebyl sestaven s "
|
||||
#~ "podporou GNUtls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create stream parser"
|
||||
#~ msgstr "%s nemohu vytvořit server\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create id"
|
||||
#~ msgstr "%s DCC: nemohu vytvořit rouru\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server..."
|
||||
#~ msgstr "%s: Připojuji se znovu k serveru...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: I/O error (%d)"
|
||||
#~ msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Nemůžu zapsat log soubor \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: server disconnected"
|
||||
#~ msgstr "Server %s%s%s vytvořen\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: stream error"
|
||||
#~ msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: login ok"
|
||||
#~ msgstr "%s DCC: nemohu provést fork\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Nemůžu zapsat log soubor \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running "
|
||||
|
||||
@@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: Thomas Schuetz <i18n@internet-villa.de>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4425,316 +4425,6 @@ msgstr "Vom Server getrennt!\n"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "Vom Server getrennt!\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "servers"
|
||||
msgstr "Server"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "Automatisches Neuverbinden abgebrochen\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "Auflisten, Hinzufügen oder Entfernen von Servern"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[Servername] | [Servername Hostname Port [-auto | -noauto] [-ipv6] [-ssl] [-"
|
||||
"pwd Passwort] [-nicks Nick1 Nick2 Nick3] [-username Benutzername] [-realname "
|
||||
"Name] [-command Befehl] [-autojoin Channel[,Channel]] ] | [del Servername]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
"Servername: anzuzeigender Servername\n"
|
||||
" Hostname: Name oder IP-Adresse des Servers\n"
|
||||
" Port: Port des Servers\n"
|
||||
" ipv6: IPv6 benutzen\n"
|
||||
" ssl: SSL benutzen\n"
|
||||
" Passwort: Serverpasswort\n"
|
||||
" Nick1: erster Nickname\n"
|
||||
" Nick2: zweiter Nickname\n"
|
||||
" Nick3: dritter Nicname\n"
|
||||
" Benutzername: Benutzername\n"
|
||||
" Realname: voller Name des Benutzers"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "buddy [text]"
|
||||
msgstr "Text"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"Service: Name des Service\n"
|
||||
"Text: zu sendender Text"
|
||||
|
||||
#, fuzzy
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "mit Server verbinden"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr "[-all | Servername [Servername ...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
" -all: Verbinde mit allen Servern neu\n"
|
||||
"servername: Servername, mit dem verbunden werden soll"
|
||||
|
||||
#, fuzzy
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "Serververbindung(en) trennen"
|
||||
|
||||
#, fuzzy
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "eigener Nickname, der auf dem IRC-Server benutzt werden soll"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr "Server über IPv6 ansprechen"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "Server über SSL ansprechen"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "password"
|
||||
msgstr "Benutzername Passwort"
|
||||
|
||||
#, fuzzy
|
||||
msgid "local alias"
|
||||
msgstr "Liste der Aliases:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"Befehle, die nach der Verbindung zum Server ausgeführt werden sollen "
|
||||
"(mehrere Befehle müssen mit einem Semikolon getrennt werden, um ein "
|
||||
"Semikolon zu schreiben, muss man '\\;' verwenden, die spezielllen Variablen "
|
||||
"$nick, $channel und $server werden dabei durch den jeweiligen Wert ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"durch Kommata getrennte Liste der Channels, die beim Verbinden zum Server "
|
||||
"betreten werden sollen (Beispiel: \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "Channels nach Kick automatisch wieder betreten, falls möglich"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "benutze den gleichen Puffer für alle Server"
|
||||
|
||||
#, fuzzy
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "öffne neue Channels oder private Nachrichten neben dem Server-Puffer"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr ""
|
||||
"Intelligente vervollständigung der Nicknamen (vervollständigt zuerst mit dem "
|
||||
"letzten Nick, der einen angesprochen hat)"
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
"Standardnachricht beim Verlasseb eines Channels ('%v' wird durch die WeeChat-"
|
||||
"Version ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
"Standardnachricht beim Beenden ('%v' wird durch die WeeChat-Version ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
"erlaube Benutzern, spezielle Codes zu versenden (%B=fett, %Cxx,yy=Farbe, %"
|
||||
"U=unterstrichen, %R=reverse/umgekehrt)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Jabber debug messages"
|
||||
msgstr "Debugging-Nachricht ausgeben"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "Port des IRC-Servers"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "Dieses Fenster ist kein Channel!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s Neuer Channel konnte nicht alloziert werden"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s: Neuverbinden in %d Sekunden\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s keine Verbindung zum Server \"%s\"!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s gnutls Initialisierungsfehler\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s gnutls-Handshake schlug fehl\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "%s: verbinden zu Server %s:%d%s%s via %s-Proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "verbinden zu Server %s:%d%s%s via %s-Proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s: verbinden zu Server %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s Nickname \"%s\" für den \"%s\"-Befehl nicht gefunden\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s Nickname \"%s\" für den \"%s\"-Befehl nicht gefunden\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s SSL-Verbindung nicht möglich, da WeeChat nicht mit GNUtls-Support "
|
||||
"kompiliert wurde\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s kann den Server nicht anlegen\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s DCC: kann keine Pipe erstellen\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s: Neuverbinden zum Server...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr "Kann das Logfile nicht schreiben\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "Server %s%s%s angelegt\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s DCC: kann nicht forken\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr "Kann das Logfile nicht schreiben\n"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
@@ -5792,6 +5482,302 @@ msgstr "%s DCC: kann die 'nonblock'-Option für den Socket nicht festlegen\n"
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s fehlende Argumente für die \"--dir\"-Option\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "servers"
|
||||
#~ msgstr "Server"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: auto-reconnection is cancelled"
|
||||
#~ msgstr "Automatisches Neuverbinden abgebrochen\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list, add or remove Jabber servers"
|
||||
#~ msgstr "Auflisten, Hinzufügen oder Entfernen von Servern"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
#~ "[copy servername newservername] | [rename servername newservername] | "
|
||||
#~ "[keep servername] | [del servername] | [switch]"
|
||||
#~ msgstr ""
|
||||
#~ "[Servername] | [Servername Hostname Port [-auto | -noauto] [-ipv6] [-ssl] "
|
||||
#~ "[-pwd Passwort] [-nicks Nick1 Nick2 Nick3] [-username Benutzername] [-"
|
||||
#~ "realname Name] [-command Befehl] [-autojoin Channel[,Channel]] ] | [del "
|
||||
#~ "Servername]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " list: list servers (no parameter implies this list)\n"
|
||||
#~ " listfull: list servers with detailed info for each server\n"
|
||||
#~ " add: create a new server\n"
|
||||
#~ "servername: server name, for internal and display use\n"
|
||||
#~ " username: username to use on server\n"
|
||||
#~ " hostname: name or IP address of server, with optional port (default: "
|
||||
#~ "5222)\n"
|
||||
#~ " password: password for username on server\n"
|
||||
#~ " auto: automatically connect to server when WeeChat starts\n"
|
||||
#~ " noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " sasl: use SASL for authentication\n"
|
||||
#~ " copy: duplicate a server\n"
|
||||
#~ " rename: rename a server\n"
|
||||
#~ " keep: keep server in config file (for temporary servers only)\n"
|
||||
#~ " del: delete a server\n"
|
||||
#~ " switch: switch active server (when one buffer is used for all "
|
||||
#~ "servers, default key: alt-s on server buffer)\n"
|
||||
#~ "\n"
|
||||
#~ "Examples:\n"
|
||||
#~ " /jabber listfull\n"
|
||||
#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
#~ " /jabber copy jabberfr jabberfr2\n"
|
||||
#~ " /jabber rename jabberfr jabbfr\n"
|
||||
#~ " /jabber del jabberfr\n"
|
||||
#~ " /jabber switch"
|
||||
#~ msgstr ""
|
||||
#~ "Servername: anzuzeigender Servername\n"
|
||||
#~ " Hostname: Name oder IP-Adresse des Servers\n"
|
||||
#~ " Port: Port des Servers\n"
|
||||
#~ " ipv6: IPv6 benutzen\n"
|
||||
#~ " ssl: SSL benutzen\n"
|
||||
#~ " Passwort: Serverpasswort\n"
|
||||
#~ " Nick1: erster Nickname\n"
|
||||
#~ " Nick2: zweiter Nickname\n"
|
||||
#~ " Nick3: dritter Nicname\n"
|
||||
#~ " Benutzername: Benutzername\n"
|
||||
#~ " Realname: voller Name des Benutzers"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "buddy [text]"
|
||||
#~ msgstr "Text"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "buddy: buddy name for chat\n"
|
||||
#~ " text: text to send"
|
||||
#~ msgstr ""
|
||||
#~ "Service: Name des Service\n"
|
||||
#~ "Text: zu sendender Text"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "connect to Jabber server(s)"
|
||||
#~ msgstr "mit Server verbinden"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
#~ "port] [-ipv6] [-tls] [-sasl]]"
|
||||
#~ msgstr "[-all | Servername [Servername ...]]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " -all: connect to all servers\n"
|
||||
#~ "servername: internal server name to connect\n"
|
||||
#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
#~ " hostname: hostname to connect\n"
|
||||
#~ " port: port for server (integer, default is 6667)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " saal: use SASL for authentication"
|
||||
#~ msgstr ""
|
||||
#~ " -all: Verbinde mit allen Servern neu\n"
|
||||
#~ "servername: Servername, mit dem verbunden werden soll"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "disconnect from Jabber server(s)"
|
||||
#~ msgstr "Serververbindung(en) trennen"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "hostname/port or IP/port for server"
|
||||
#~ msgstr "eigener Nickname, der auf dem IRC-Server benutzt werden soll"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use TLS cryptographic protocol for server communication"
|
||||
#~ msgstr "Server über IPv6 ansprechen"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use SASL for authentication"
|
||||
#~ msgstr "Server über SSL ansprechen"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "password"
|
||||
#~ msgstr "Benutzername Passwort"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "local alias"
|
||||
#~ msgstr "Liste der Aliases:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "command(s) to run when connected to server (many commands should be "
|
||||
#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, "
|
||||
#~ "$muc and $server are replaced by their value)"
|
||||
#~ msgstr ""
|
||||
#~ "Befehle, die nach der Verbindung zum Server ausgeführt werden sollen "
|
||||
#~ "(mehrere Befehle müssen mit einem Semikolon getrennt werden, um ein "
|
||||
#~ "Semikolon zu schreiben, muss man '\\;' verwenden, die spezielllen "
|
||||
#~ "Variablen $nick, $channel und $server werden dabei durch den jeweiligen "
|
||||
#~ "Wert ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "comma separated list of MUCs to join when connected to server (example: "
|
||||
#~ "\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
#~ msgstr ""
|
||||
#~ "durch Kommata getrennte Liste der Channels, die beim Verbinden zum Server "
|
||||
#~ "betreten werden sollen (Beispiel: \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "automatically rejoin MUCs when kicked"
|
||||
#~ msgstr "Channels nach Kick automatisch wieder betreten, falls möglich"
|
||||
|
||||
#~ msgid "use same buffer for all servers"
|
||||
#~ msgstr "benutze den gleichen Puffer für alle Server"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "open new MUCs/privates near server"
|
||||
#~ msgstr ""
|
||||
#~ "öffne neue Channels oder private Nachrichten neben dem Server-Puffer"
|
||||
|
||||
#~ msgid "smart completion for nicks (completes with last speakers first)"
|
||||
#~ msgstr ""
|
||||
#~ "Intelligente vervollständigung der Nicknamen (vervollständigt zuerst mit "
|
||||
#~ "dem letzten Nick, der einen angesprochen hat)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat "
|
||||
#~ "version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "Standardnachricht beim Verlasseb eines Channels ('%v' wird durch die "
|
||||
#~ "WeeChat-Version ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default quit message (disconnecting from server) ('%v' will be replaced "
|
||||
#~ "by WeeChat version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "Standardnachricht beim Beenden ('%v' wird durch die WeeChat-Version "
|
||||
#~ "ersetzt)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, "
|
||||
#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
#~ msgstr ""
|
||||
#~ "erlaube Benutzern, spezielle Codes zu versenden (%B=fett, %Cxx,yy=Farbe, %"
|
||||
#~ "U=unterstrichen, %R=reverse/umgekehrt)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Jabber debug messages"
|
||||
#~ msgstr "Debugging-Nachricht ausgeben"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "get buffer pointer for a Jabber server/MUC"
|
||||
#~ msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of Jabber servers"
|
||||
#~ msgstr "Port des IRC-Servers"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of MUCs for a Jabber server"
|
||||
#~ msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of buddies for a Jabber server or MUC"
|
||||
#~ msgstr "Channels, die bei Verbindung zum Server zu betreten sind"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s: this buffer is not a MUC!"
|
||||
#~ msgstr "Dieses Fenster ist kein Channel!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: cannot allocate new MUC"
|
||||
#~ msgstr "%s Neuer Channel konnte nicht alloziert werden"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server in %d %s"
|
||||
#~ msgstr "%s: Neuverbinden in %d Sekunden\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connected to %s (%s)"
|
||||
#~ msgstr "%s keine Verbindung zum Server \"%s\"!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS init error"
|
||||
#~ msgstr "%s gnutls Initialisierungsfehler\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS handshake failed"
|
||||
#~ msgstr "%s gnutls-Handshake schlug fehl\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "%s: verbinden zu Server %s:%d%s%s via %s-Proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "verbinden zu Server %s:%d%s%s via %s-Proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
#~ msgstr "%s: verbinden zu Server %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s Nickname \"%s\" für den \"%s\"-Befehl nicht gefunden\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s Nickname \"%s\" für den \"%s\"-Befehl nicht gefunden\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
#~ "GnuTLS support"
|
||||
#~ msgstr ""
|
||||
#~ "%s SSL-Verbindung nicht möglich, da WeeChat nicht mit GNUtls-Support "
|
||||
#~ "kompiliert wurde\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create stream parser"
|
||||
#~ msgstr "%s kann den Server nicht anlegen\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create id"
|
||||
#~ msgstr "%s DCC: kann keine Pipe erstellen\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server..."
|
||||
#~ msgstr "%s: Neuverbinden zum Server...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: I/O error (%d)"
|
||||
#~ msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Kann das Logfile nicht schreiben\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: server disconnected"
|
||||
#~ msgstr "Server %s%s%s angelegt\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: stream error"
|
||||
#~ msgstr "%sServer: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: login ok"
|
||||
#~ msgstr "%s DCC: kann nicht forken\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Kann das Logfile nicht schreiben\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running "
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: Roberto González Cardenete <robert.glez@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4417,312 +4417,6 @@ msgstr "¡Desconectado del servidor!\n"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "¡Desconectado del servidor!\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "servers"
|
||||
msgstr "servidor"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "La reconexión automática está anulada\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "lista, añde o elimina servidores"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[nombre_de_servidor] | [nombre_de_servidor nombre/IP puerto [-auto | -"
|
||||
"noauto] [-ipv6] [-ssl] [-pwd contraseña] [-nicks alias1 alias2 alias3] [-"
|
||||
"username nombre de usuario] [-realname nombre_real] [-command comando] [-"
|
||||
"autojoin canal[,canal]] ] | [del nombre_de_servidor]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
" nombre_de_servidor: nombre del servidor, para uso interno y para mostrar\n"
|
||||
"nombre_de_anfitrión: nombre o dirección IP del servidor\n"
|
||||
" puerto: puerto para el servidor (número entero)\n"
|
||||
" ipv6: utilizar protocolo IPv6\n"
|
||||
" ssl: utilizar protocolo SSL\n"
|
||||
" contraseña: contraseña para el servidor\n"
|
||||
" alias1: primer alias para el servidor\n"
|
||||
" alias2: alias alternativo para el servidor\n"
|
||||
" alias3: segundo alias alternativo para el servidor\n"
|
||||
" nombre_de_usuario: nombre de usuario\n"
|
||||
" nombre_real: nombre real del usuario"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "buddy [text]"
|
||||
msgstr "texto"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"servicio: nombre del servicio\n"
|
||||
"texto: texto a enviar"
|
||||
|
||||
#, fuzzy
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "conectarse a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr "nombre_del_servidor: nombre del servidor al que conectarse"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr "nombre_del_servidor: nombre del servidor al que conectarse"
|
||||
|
||||
#, fuzzy
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "desconectarse de un servidor"
|
||||
|
||||
#, fuzzy
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "nombre de usuario a utilizar en el servidor IRC"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr "usar el protocolo IPv6 para la comunicación del servidor"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "usar SSL para la comunicación del servidor"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "password"
|
||||
msgstr "contraseña de usuario"
|
||||
|
||||
#, fuzzy
|
||||
msgid "local alias"
|
||||
msgstr "Lista de alias:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"comando(s) a ejecutar cuando se conecte al servidor (muchos comandos deberÃ"
|
||||
"an ser separados por ';', utilizar '\\;' para un punto y coma)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"lista de canales (separados por comas) a unirse cuando se conecte a un "
|
||||
"servidor (ejemplo: \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "unirse de nuevo automáticamente a los canales cuando sea expulsado"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "usar el mismo búfer para todos los servidores"
|
||||
|
||||
#, fuzzy
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "abrir nuevos canales/privados cerca del servidor"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr ""
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
"mensaje de partida por defecto (abandonando el canal) ('%v' será "
|
||||
"reemplazado por la versión de WeeChat en la cadena)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
"mensaje de fin por defecto ('%v' será reemplazado por la versión de "
|
||||
"WeeChat en la cadena)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
"permitir al usuario enviar colores con códigos especiales (%B=negrita, %Cxx,"
|
||||
"yy=color, %U=subrayado, %R=invertido) "
|
||||
|
||||
#, fuzzy
|
||||
msgid "Jabber debug messages"
|
||||
msgstr "imprime mensajes de depuración"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "puerto para el servidor IRC"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "¡Esta ventana no es un canal!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s no ha sido posible crear un nuevo canal"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s: Reconexión al servidor en %d segundos\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s ¡no conectado al servidor \"%s\"!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s error de inicialización de gnutls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s el handshake gnutls ha fallado\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "%s: conectando al servidor %s:%d%s%s vÃa %s proxy %s: %d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "Conectando al servidor %s:%d%s%s vÃa %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s: conectando al servidor %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s No ha sido posible conectar con SSL debido a que Weechat no fue compilado "
|
||||
"con soporte GNUtls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s: Reconectando al servidor...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%sServidor: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr "No es posible escribir un fichero de log para un búfer\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "Servidor %s%s%s creado\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%sServidor: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr "No es posible escribir un fichero de log para un búfer\n"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
@@ -5785,6 +5479,292 @@ msgstr "%s no es posible crear el servidor\n"
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s falta un argumento para la opción --dir\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "servers"
|
||||
#~ msgstr "servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: auto-reconnection is cancelled"
|
||||
#~ msgstr "La reconexión automática está anulada\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list, add or remove Jabber servers"
|
||||
#~ msgstr "lista, añde o elimina servidores"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
#~ "[copy servername newservername] | [rename servername newservername] | "
|
||||
#~ "[keep servername] | [del servername] | [switch]"
|
||||
#~ msgstr ""
|
||||
#~ "[nombre_de_servidor] | [nombre_de_servidor nombre/IP puerto [-auto | -"
|
||||
#~ "noauto] [-ipv6] [-ssl] [-pwd contraseña] [-nicks alias1 alias2 alias3] [-"
|
||||
#~ "username nombre de usuario] [-realname nombre_real] [-command comando] [-"
|
||||
#~ "autojoin canal[,canal]] ] | [del nombre_de_servidor]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " list: list servers (no parameter implies this list)\n"
|
||||
#~ " listfull: list servers with detailed info for each server\n"
|
||||
#~ " add: create a new server\n"
|
||||
#~ "servername: server name, for internal and display use\n"
|
||||
#~ " username: username to use on server\n"
|
||||
#~ " hostname: name or IP address of server, with optional port (default: "
|
||||
#~ "5222)\n"
|
||||
#~ " password: password for username on server\n"
|
||||
#~ " auto: automatically connect to server when WeeChat starts\n"
|
||||
#~ " noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " sasl: use SASL for authentication\n"
|
||||
#~ " copy: duplicate a server\n"
|
||||
#~ " rename: rename a server\n"
|
||||
#~ " keep: keep server in config file (for temporary servers only)\n"
|
||||
#~ " del: delete a server\n"
|
||||
#~ " switch: switch active server (when one buffer is used for all "
|
||||
#~ "servers, default key: alt-s on server buffer)\n"
|
||||
#~ "\n"
|
||||
#~ "Examples:\n"
|
||||
#~ " /jabber listfull\n"
|
||||
#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
#~ " /jabber copy jabberfr jabberfr2\n"
|
||||
#~ " /jabber rename jabberfr jabbfr\n"
|
||||
#~ " /jabber del jabberfr\n"
|
||||
#~ " /jabber switch"
|
||||
#~ msgstr ""
|
||||
#~ " nombre_de_servidor: nombre del servidor, para uso interno y para "
|
||||
#~ "mostrar\n"
|
||||
#~ "nombre_de_anfitrión: nombre o dirección IP del servidor\n"
|
||||
#~ " puerto: puerto para el servidor (número entero)\n"
|
||||
#~ " ipv6: utilizar protocolo IPv6\n"
|
||||
#~ " ssl: utilizar protocolo SSL\n"
|
||||
#~ " contraseña: contraseña para el servidor\n"
|
||||
#~ " alias1: primer alias para el servidor\n"
|
||||
#~ " alias2: alias alternativo para el servidor\n"
|
||||
#~ " alias3: segundo alias alternativo para el servidor\n"
|
||||
#~ " nombre_de_usuario: nombre de usuario\n"
|
||||
#~ " nombre_real: nombre real del usuario"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "buddy [text]"
|
||||
#~ msgstr "texto"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "buddy: buddy name for chat\n"
|
||||
#~ " text: text to send"
|
||||
#~ msgstr ""
|
||||
#~ "servicio: nombre del servicio\n"
|
||||
#~ "texto: texto a enviar"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "connect to Jabber server(s)"
|
||||
#~ msgstr "conectarse a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
#~ "port] [-ipv6] [-tls] [-sasl]]"
|
||||
#~ msgstr "nombre_del_servidor: nombre del servidor al que conectarse"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " -all: connect to all servers\n"
|
||||
#~ "servername: internal server name to connect\n"
|
||||
#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
#~ " hostname: hostname to connect\n"
|
||||
#~ " port: port for server (integer, default is 6667)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " saal: use SASL for authentication"
|
||||
#~ msgstr "nombre_del_servidor: nombre del servidor al que conectarse"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "disconnect from Jabber server(s)"
|
||||
#~ msgstr "desconectarse de un servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "hostname/port or IP/port for server"
|
||||
#~ msgstr "nombre de usuario a utilizar en el servidor IRC"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use TLS cryptographic protocol for server communication"
|
||||
#~ msgstr "usar el protocolo IPv6 para la comunicación del servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use SASL for authentication"
|
||||
#~ msgstr "usar SSL para la comunicación del servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "password"
|
||||
#~ msgstr "contraseña de usuario"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "local alias"
|
||||
#~ msgstr "Lista de alias:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "command(s) to run when connected to server (many commands should be "
|
||||
#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, "
|
||||
#~ "$muc and $server are replaced by their value)"
|
||||
#~ msgstr ""
|
||||
#~ "comando(s) a ejecutar cuando se conecte al servidor (muchos comandos "
|
||||
#~ "deberÃan ser separados por ';', utilizar '\\;' para un punto y coma)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "comma separated list of MUCs to join when connected to server (example: "
|
||||
#~ "\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
#~ msgstr ""
|
||||
#~ "lista de canales (separados por comas) a unirse cuando se conecte a un "
|
||||
#~ "servidor (ejemplo: \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "automatically rejoin MUCs when kicked"
|
||||
#~ msgstr "unirse de nuevo automáticamente a los canales cuando sea expulsado"
|
||||
|
||||
#~ msgid "use same buffer for all servers"
|
||||
#~ msgstr "usar el mismo búfer para todos los servidores"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "open new MUCs/privates near server"
|
||||
#~ msgstr "abrir nuevos canales/privados cerca del servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat "
|
||||
#~ "version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "mensaje de partida por defecto (abandonando el canal) ('%v' será "
|
||||
#~ "reemplazado por la versión de WeeChat en la cadena)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default quit message (disconnecting from server) ('%v' will be replaced "
|
||||
#~ "by WeeChat version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "mensaje de fin por defecto ('%v' será reemplazado por la versión de "
|
||||
#~ "WeeChat en la cadena)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, "
|
||||
#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
#~ msgstr ""
|
||||
#~ "permitir al usuario enviar colores con códigos especiales (%B=negrita, %"
|
||||
#~ "Cxx,yy=color, %U=subrayado, %R=invertido) "
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Jabber debug messages"
|
||||
#~ msgstr "imprime mensajes de depuración"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "get buffer pointer for a Jabber server/MUC"
|
||||
#~ msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of Jabber servers"
|
||||
#~ msgstr "puerto para el servidor IRC"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of MUCs for a Jabber server"
|
||||
#~ msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of buddies for a Jabber server or MUC"
|
||||
#~ msgstr "lista de canales a unirse cuando se conecte a un servidor"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s: this buffer is not a MUC!"
|
||||
#~ msgstr "¡Esta ventana no es un canal!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: cannot allocate new MUC"
|
||||
#~ msgstr "%s no ha sido posible crear un nuevo canal"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server in %d %s"
|
||||
#~ msgstr "%s: Reconexión al servidor en %d segundos\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connected to %s (%s)"
|
||||
#~ msgstr "%s ¡no conectado al servidor \"%s\"!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS init error"
|
||||
#~ msgstr "%s error de inicialización de gnutls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS handshake failed"
|
||||
#~ msgstr "%s el handshake gnutls ha fallado\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "%s: conectando al servidor %s:%d%s%s vÃa %s proxy %s: %d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "Conectando al servidor %s:%d%s%s vÃa %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
#~ msgstr "%s: conectando al servidor %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
#~ "GnuTLS support"
|
||||
#~ msgstr ""
|
||||
#~ "%s No ha sido posible conectar con SSL debido a que Weechat no fue "
|
||||
#~ "compilado con soporte GNUtls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create stream parser"
|
||||
#~ msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create id"
|
||||
#~ msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server..."
|
||||
#~ msgstr "%s: Reconectando al servidor...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: I/O error (%d)"
|
||||
#~ msgstr "%sServidor: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
#~ msgstr "No es posible escribir un fichero de log para un búfer\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: server disconnected"
|
||||
#~ msgstr "Servidor %s%s%s creado\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: stream error"
|
||||
#~ msgstr "%sServidor: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: login ok"
|
||||
#~ msgstr "%s no es posible crear el servidor\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
#~ msgstr "No es posible escribir un fichero de log para un búfer\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running "
|
||||
|
||||
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"PO-Revision-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-06-14 14:07+0200\n"
|
||||
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -4599,329 +4599,6 @@ msgstr "%s%s: déconnecté du serveur"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "%s: déconnecté du serveur"
|
||||
|
||||
msgid "servers"
|
||||
msgstr "serveurs"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "%s%s: la reconnexion automatique est annulée"
|
||||
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "liste, ajoute ou retire des serveurs Jabber"
|
||||
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[list [nom_serveur]] | [listfull [nom_serveur]] | [add nom_serveur "
|
||||
"nom_utilisateur nom[/port] mot_de_passe [-temp] [-auto | -noauto] [-ipv6] [-"
|
||||
"tls] [-sasl]] | [copy nom_serveur nouveau_nom_serveur] | [rename nom_serveur "
|
||||
"nouveau_nom_serveur] | [keep nom_serveur] | [del nom_serveur] | [switch]"
|
||||
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
" list: afficher les serveurs (pas de paramètre implique cette "
|
||||
"liste)\n"
|
||||
" listfull: afficher les serveurs avec de l'info détaillée pour chaque\n"
|
||||
" add: créer un nouveau serveur\n"
|
||||
" nom_serveur: nom du serveur, pour usage interne et affichage\n"
|
||||
"nom_utilisateur: nom d'utilisateur pour ce serveur\n"
|
||||
" nom: nom ou adresse IP du serveur avec port en option (defaut: "
|
||||
"5222)\n"
|
||||
" mot_de_passe: mot de passe pour l'utilisateur sur le serveur\n"
|
||||
" auto: se connecter automatiquement au serveur quand WeeChat "
|
||||
"démarre\n"
|
||||
" noauto: ne pas se connecter au serveur quand WeeChat démarre (par "
|
||||
"défaut)\n"
|
||||
" ipv6: utiliser le protocole IPv6\n"
|
||||
" tsl: utiliser le protocole de chiffrement TLS\n"
|
||||
" sasl: utiliser SASL pour l'authentification\n"
|
||||
" copy: dupliquer un serveur\n"
|
||||
" rename: renommer un serveur\n"
|
||||
" keep: garder le serveur dans le fichier de configuration (pour "
|
||||
"les serveurs temporaires seulement)\n"
|
||||
" del: supprimer un serveur\n"
|
||||
" switch: changer le serveur actif (quand un tampon est utilisé pour "
|
||||
"tous les serveurs, touche par défaut: alt-s sur le tampon serveur)\n"
|
||||
"\n"
|
||||
"Exemples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr "discuter avec un contact"
|
||||
|
||||
msgid "buddy [text]"
|
||||
msgstr "contact [texte]"
|
||||
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"contact: nom du contact pour la discussion\n"
|
||||
" texte: texte à envoyer"
|
||||
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "se connecter à un/plusieurs serveur(s) Jabber"
|
||||
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
"[-all [-nojoin] | nom_serveur [nom_serveur ...] [-nojoin] | nom/IP [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
" -all: se reconnecter à tous les serveurs\n"
|
||||
"nom_serveur: nom du serveur pour se connecter\n"
|
||||
" -nojoin: ne rejoindre aucun MUC (même si l'autojoin est activé pour le "
|
||||
"serveur)\n"
|
||||
" nom/IP: nom/IP pour se connecter\n"
|
||||
" port: port pour le serveur (nombre entier, 6667 par défaut)\n"
|
||||
" ipv6: utiliser le protocole IPv6\n"
|
||||
" tls: utiliser le protocole de chiffrement TLS\n"
|
||||
" sasl: utiliser SASL pour l'authentification"
|
||||
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "se déconnecter d'un/plusieurs serveur(s) Jabber"
|
||||
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "nom/port ou IP/port pour le serveur"
|
||||
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr ""
|
||||
"utiliser le protocole de chiffrement TLS pour la communication avec le "
|
||||
"serveur"
|
||||
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "utiliser SASL pour l'authentification"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr "ressource (pas exemple: Maison ou Travail)"
|
||||
|
||||
msgid "password"
|
||||
msgstr "mot de passe"
|
||||
|
||||
msgid "local alias"
|
||||
msgstr "alias local"
|
||||
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"commande(s) à exécuter lorsque connecté au serveur (plusieurs commandes "
|
||||
"doivent être séparées par ';', utilisez '\\;' pour un point-virgule, les "
|
||||
"variables spéciales $nick, $muc et $server sont remplacées par leur valeur)"
|
||||
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"liste des MUCs (séparés par des virgules) à rejoindre lorsque connecté au "
|
||||
"serveur (exemple: \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "rejoindre automatiquement les MUCs quand mis dehors"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "utiliser le même tampon pour tous les serveurs"
|
||||
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "ouvrir les nouveaux MUCs/privés près du serveur"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr ""
|
||||
"complétion intelligente pour les pseudos (complète d'abord avec les "
|
||||
"personnes qui ont parlé récemment)"
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr "affiche les modes du MUC dans l'objet de barre \"buffer_name\""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
"filtrer les messages join/part/quit pour un pseudo s'il n'a pas parlé "
|
||||
"pendant quelques minutes sur le MUC (vous devez créer un filtre sur le tag "
|
||||
"\"jabber_smart_filter\")"
|
||||
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
"message par défaut pour le part (en quittant un MUC) ('%v' sera remplacé par "
|
||||
"la version de WeeChat dans la chaîne)"
|
||||
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
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 ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
"autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux "
|
||||
"(^Cb=gras, ^Cxx=couleur, ^Ccxx,yy=couleur+fond, ^Cu=souligné, ^Cr=inversé)"
|
||||
|
||||
msgid "Jabber debug messages"
|
||||
msgstr "Messages de debug Jabber"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] "MUC"
|
||||
msgstr[1] "MUCs"
|
||||
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "retourne le pointeur vers le tampon pour un serveur/MUC Jabber"
|
||||
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "liste des serveurs Jabber"
|
||||
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "liste des MUCs pour un serveur Jabber"
|
||||
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "liste des contacts pour un serveur ou MUC Jabber"
|
||||
|
||||
#, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "%s: ce tampon n'est pas un MUC !"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s%s: impossible d'allouer un nouveau MUC"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s%s: reconnexion au serveur dans %d %s"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s%s: connecté à %s (%s)"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s%s: erreur d'initialisation GnuTLS"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s%s: la poignée de main (handshake) de GnuTLS a échoué"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "%s%s: connexion au serveur %s/%d%s%s%s via le proxy %s %s/%d%s..."
|
||||
|
||||
#, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "Connexion au serveur %s/%d%s%s%s via le proxy %s %s/%d%s..."
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s%s: connexion au serveur %s/%d%s%s%s..."
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr ""
|
||||
"%s%s: nom d'utilisateur ou de serveur non défini pour le serveur \"%s\", "
|
||||
"connexion impossible"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s%s: nom/IP non défini pour le serveur \"%s\", connexion impossible"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s%s: impossible de se connecter avec TLS car la bibliothèque iksemel n'a "
|
||||
"pas été construite avec le support GnuTLS"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s%s: impossible de créer l'analyseur de flux"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s%s: impossible de créer l'id"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s%s: reconnexion au serveur..."
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%s%s: erreur I/O (%d)"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
"%s%s: l'authentification SASL a échoué (vérifiez l'option SASL et le mot de "
|
||||
"passe)"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "%s%s: serveur déconnecté"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%s%s: erreur de flux"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s%s: login ok"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
"%s%s: l'authentification a échoué (vérifiez l'option SASL et le mot de passe)"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
|
||||
@@ -12,7 +12,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4456,344 +4456,6 @@ msgstr "Lekapcsolódott a szerverről!\n"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "Lekapcsolódott a szerverről!\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "servers"
|
||||
msgstr "szerver"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "automata újracsatlakozás megszakítva\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "szerverek listázása, hozzáadása vagy eltávolítása"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[list [szervernév]] | [listfull [szervernév]] | [add szervernév gépnév [-"
|
||||
"port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd jelszó] [-nicks "
|
||||
"név1 név2 név3] [-username felhasználó] [-realname valódinév] [-command "
|
||||
"parancs] [-autojoin szoba[,szoba]] ] | [copy szervernév újszervernév] | "
|
||||
"[rename szervernév újszervernév] | [keep szervernév] | [del szervernév]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
" list: szerverek listázása (paraméter nélkül is ez a parancs "
|
||||
"hívódik meg)\n"
|
||||
" listfull: szerverek listázása részletes információkkal együtt\n"
|
||||
" add: új szerver hozzáadása\n"
|
||||
" szervernév: szerver neve, saját használatra, megjelenítéshez\n"
|
||||
" gépnév: a szerver neve vagy IP-címe\n"
|
||||
" port: a szerver portja (egész szám, alapértelmezetten 6667)\n"
|
||||
" temp: ideiglenes szerver létrehozása (nem kerül be a "
|
||||
"beállítófájlba)\n"
|
||||
" auto: automatikus kapcsolódás a szerverhez a WeeChat indulásakor\n"
|
||||
" noauto: ne kapcsolódjon a szerverhez a WeeChat indulásakor "
|
||||
"(alapértelmezett)\n"
|
||||
" ipv6: IPv6 protokoll használata\n"
|
||||
" ssl: SSL protokoll használata\n"
|
||||
" jelszó: jelszó a szerverhez\n"
|
||||
" név1: elsődleges név a szerveren\n"
|
||||
" név2: alternatív név a szerveren\n"
|
||||
" név3: második alternatív név a szerveren\n"
|
||||
"felhasználónév: felhasználónév a szerveren\n"
|
||||
" valódi név: a felhasználó valódi neve\n"
|
||||
" copy: szerver másolása\n"
|
||||
" rename: szerver átnevezése\n"
|
||||
" keep: szerver mentése a beállítófájlba (csak ideiglenes "
|
||||
"szervereknél)\n"
|
||||
" del: szerver törlése\n"
|
||||
" deloutq: a kimenő üzenettár törlése minden szerverre (minden üzenet "
|
||||
"amit a WeeChat küldeni készül)"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "buddy [text]"
|
||||
msgstr "szöveg"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"szolgáltatás: szolgáltatás neve\n"
|
||||
" szöveg: küldendő üzenet"
|
||||
|
||||
#, fuzzy
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "csatlakozás a szerver(ek)hez"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
"[-all [-nojoin] | szervernév [szervernév ...] [-nojoin] | gépnév [-port "
|
||||
"port] [-ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
" -all: kapcsolódás minden szerverhez\n"
|
||||
"szervernév: a belső szervernév amihez kapcsolódik\n"
|
||||
" -nojoin: ne lépjen be egyik szobába se (még ha az automata belépés be is "
|
||||
"van kapcsolva a szerveren) gépnév: gépnév amihez csatlakozik, ideiglenes "
|
||||
"szerver létrehozása\n"
|
||||
" port: a szerver portja (egész szám, alapértelmezetten 6667)\n"
|
||||
" ipv6: IPv6 protokoll használata\n"
|
||||
" ssl: SSL protokoll használata"
|
||||
|
||||
#, fuzzy
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "kilépés a szerver(ek)ről"
|
||||
|
||||
#, fuzzy
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "felhasználónév az IRC szerveren"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr "IPv6 protokoll használata a kapcsolathoz"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "SSL használata a a kapcsolathoz"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "password"
|
||||
msgstr "felhasználó jelszó"
|
||||
|
||||
#, fuzzy
|
||||
msgid "local alias"
|
||||
msgstr "Aliaszok listája:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"szerverre csatlakozáskor futtatandó parancs(ok) (több parancs esetén azokat "
|
||||
"';'-vel kell elválasztani, használja a '\\;' sorozatot, ha "
|
||||
"pontosvesszőtszeretne írni, a $nick, $channel és $server szavak helyére azok "
|
||||
"értéke kerül)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"szobák vesszővel elválasztott listája ahová be akarunk lépni csatlakozás "
|
||||
"után (például: \"#szoba1,#szoba2,#szoba3 kulcs1,kulcs2\")"
|
||||
|
||||
#, fuzzy
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "automatikus visszalépés a szobába kirúgáskor"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "ugyanazon puffer használata minden szerverhez"
|
||||
|
||||
#, fuzzy
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr "okos névkiegészítés (először az utolsó partnerre egészít ki)"
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
"alapértelmezett távozó üzenet (szoba elhagyásakor) (a '%v' változó a WeeChat "
|
||||
"verziójára cserélődik)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
"alapértelmezett kilépő üzenet (a '%v' változó a WeeChat verziójára "
|
||||
"cserélődik)"
|
||||
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=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 "Jabber debug messages"
|
||||
msgstr "hibakereső üzenetek megjelenítése"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "IRC szerver portja"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "Ez az ablak nem egy szoba!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s nem sikerült új csatornát lefoglalni"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s: Újracsatlakozás a szerverhez %d másodperc múlva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s nincs csatlakozva a \"%s\" szerverhez!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s gnutls inicializációs hiba\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s gnutls kézfogás sikertelen\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
"%s: csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: %s:"
|
||||
"%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
"Csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: %s:%d%"
|
||||
"s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s: csatlakozás a(z) %s:%d%s%s szerverhez...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls "
|
||||
"támogatás nélkül lett fordítva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s nem sikerült a szervert létrehozni\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s DCC: nem sikerült a csövet létrehozni\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s: Újracsatlakozás a szerverhez...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%sSzerver: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "A %s%s%s szerver létrehozva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%sSzerver: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s DCC: nem sikerült forkolni\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
@@ -5846,6 +5508,327 @@ msgstr "%s DCC: nem sikerült 'nonblock' opciót beállítani a csatornán\n"
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "servers"
|
||||
#~ msgstr "szerver"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: auto-reconnection is cancelled"
|
||||
#~ msgstr "automata újracsatlakozás megszakítva\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list, add or remove Jabber servers"
|
||||
#~ msgstr "szerverek listázása, hozzáadása vagy eltávolítása"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
#~ "[copy servername newservername] | [rename servername newservername] | "
|
||||
#~ "[keep servername] | [del servername] | [switch]"
|
||||
#~ msgstr ""
|
||||
#~ "[list [szervernév]] | [listfull [szervernév]] | [add szervernév gépnév [-"
|
||||
#~ "port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd jelszó] [-nicks "
|
||||
#~ "név1 név2 név3] [-username felhasználó] [-realname valódinév] [-command "
|
||||
#~ "parancs] [-autojoin szoba[,szoba]] ] | [copy szervernév újszervernév] | "
|
||||
#~ "[rename szervernév újszervernév] | [keep szervernév] | [del szervernév]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " list: list servers (no parameter implies this list)\n"
|
||||
#~ " listfull: list servers with detailed info for each server\n"
|
||||
#~ " add: create a new server\n"
|
||||
#~ "servername: server name, for internal and display use\n"
|
||||
#~ " username: username to use on server\n"
|
||||
#~ " hostname: name or IP address of server, with optional port (default: "
|
||||
#~ "5222)\n"
|
||||
#~ " password: password for username on server\n"
|
||||
#~ " auto: automatically connect to server when WeeChat starts\n"
|
||||
#~ " noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " sasl: use SASL for authentication\n"
|
||||
#~ " copy: duplicate a server\n"
|
||||
#~ " rename: rename a server\n"
|
||||
#~ " keep: keep server in config file (for temporary servers only)\n"
|
||||
#~ " del: delete a server\n"
|
||||
#~ " switch: switch active server (when one buffer is used for all "
|
||||
#~ "servers, default key: alt-s on server buffer)\n"
|
||||
#~ "\n"
|
||||
#~ "Examples:\n"
|
||||
#~ " /jabber listfull\n"
|
||||
#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
#~ " /jabber copy jabberfr jabberfr2\n"
|
||||
#~ " /jabber rename jabberfr jabbfr\n"
|
||||
#~ " /jabber del jabberfr\n"
|
||||
#~ " /jabber switch"
|
||||
#~ msgstr ""
|
||||
#~ " list: szerverek listázása (paraméter nélkül is ez a parancs "
|
||||
#~ "hívódik meg)\n"
|
||||
#~ " listfull: szerverek listázása részletes információkkal együtt\n"
|
||||
#~ " add: új szerver hozzáadása\n"
|
||||
#~ " szervernév: szerver neve, saját használatra, megjelenítéshez\n"
|
||||
#~ " gépnév: a szerver neve vagy IP-címe\n"
|
||||
#~ " port: a szerver portja (egész szám, alapértelmezetten 6667)\n"
|
||||
#~ " temp: ideiglenes szerver létrehozása (nem kerül be a "
|
||||
#~ "beállítófájlba)\n"
|
||||
#~ " auto: automatikus kapcsolódás a szerverhez a WeeChat "
|
||||
#~ "indulásakor\n"
|
||||
#~ " noauto: ne kapcsolódjon a szerverhez a WeeChat indulásakor "
|
||||
#~ "(alapértelmezett)\n"
|
||||
#~ " ipv6: IPv6 protokoll használata\n"
|
||||
#~ " ssl: SSL protokoll használata\n"
|
||||
#~ " jelszó: jelszó a szerverhez\n"
|
||||
#~ " név1: elsődleges név a szerveren\n"
|
||||
#~ " név2: alternatív név a szerveren\n"
|
||||
#~ " név3: második alternatív név a szerveren\n"
|
||||
#~ "felhasználónév: felhasználónév a szerveren\n"
|
||||
#~ " valódi név: a felhasználó valódi neve\n"
|
||||
#~ " copy: szerver másolása\n"
|
||||
#~ " rename: szerver átnevezése\n"
|
||||
#~ " keep: szerver mentése a beállítófájlba (csak ideiglenes "
|
||||
#~ "szervereknél)\n"
|
||||
#~ " del: szerver törlése\n"
|
||||
#~ " deloutq: a kimenő üzenettár törlése minden szerverre (minden "
|
||||
#~ "üzenet amit a WeeChat küldeni készül)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "buddy [text]"
|
||||
#~ msgstr "szöveg"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "buddy: buddy name for chat\n"
|
||||
#~ " text: text to send"
|
||||
#~ msgstr ""
|
||||
#~ "szolgáltatás: szolgáltatás neve\n"
|
||||
#~ " szöveg: küldendő üzenet"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "connect to Jabber server(s)"
|
||||
#~ msgstr "csatlakozás a szerver(ek)hez"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
#~ "port] [-ipv6] [-tls] [-sasl]]"
|
||||
#~ msgstr ""
|
||||
#~ "[-all [-nojoin] | szervernév [szervernév ...] [-nojoin] | gépnév [-port "
|
||||
#~ "port] [-ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " -all: connect to all servers\n"
|
||||
#~ "servername: internal server name to connect\n"
|
||||
#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
#~ " hostname: hostname to connect\n"
|
||||
#~ " port: port for server (integer, default is 6667)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " saal: use SASL for authentication"
|
||||
#~ msgstr ""
|
||||
#~ " -all: kapcsolódás minden szerverhez\n"
|
||||
#~ "szervernév: a belső szervernév amihez kapcsolódik\n"
|
||||
#~ " -nojoin: ne lépjen be egyik szobába se (még ha az automata belépés be "
|
||||
#~ "is van kapcsolva a szerveren) gépnév: gépnév amihez csatlakozik, "
|
||||
#~ "ideiglenes szerver létrehozása\n"
|
||||
#~ " port: a szerver portja (egész szám, alapértelmezetten 6667)\n"
|
||||
#~ " ipv6: IPv6 protokoll használata\n"
|
||||
#~ " ssl: SSL protokoll használata"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "disconnect from Jabber server(s)"
|
||||
#~ msgstr "kilépés a szerver(ek)ről"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "hostname/port or IP/port for server"
|
||||
#~ msgstr "felhasználónév az IRC szerveren"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use TLS cryptographic protocol for server communication"
|
||||
#~ msgstr "IPv6 protokoll használata a kapcsolathoz"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use SASL for authentication"
|
||||
#~ msgstr "SSL használata a a kapcsolathoz"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "password"
|
||||
#~ msgstr "felhasználó jelszó"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "local alias"
|
||||
#~ msgstr "Aliaszok listája:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "command(s) to run when connected to server (many commands should be "
|
||||
#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, "
|
||||
#~ "$muc and $server are replaced by their value)"
|
||||
#~ msgstr ""
|
||||
#~ "szerverre csatlakozáskor futtatandó parancs(ok) (több parancs esetén "
|
||||
#~ "azokat ';'-vel kell elválasztani, használja a '\\;' sorozatot, ha "
|
||||
#~ "pontosvesszőtszeretne írni, a $nick, $channel és $server szavak helyére "
|
||||
#~ "azok értéke kerül)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "comma separated list of MUCs to join when connected to server (example: "
|
||||
#~ "\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
#~ msgstr ""
|
||||
#~ "szobák vesszővel elválasztott listája ahová be akarunk lépni csatlakozás "
|
||||
#~ "után (például: \"#szoba1,#szoba2,#szoba3 kulcs1,kulcs2\")"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "automatically rejoin MUCs when kicked"
|
||||
#~ msgstr "automatikus visszalépés a szobába kirúgáskor"
|
||||
|
||||
#~ msgid "use same buffer for all servers"
|
||||
#~ msgstr "ugyanazon puffer használata minden szerverhez"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "open new MUCs/privates near server"
|
||||
#~ msgstr "az új szobák/privát beszélgetések a szerverhez közel nyíljanak"
|
||||
|
||||
#~ msgid "smart completion for nicks (completes with last speakers first)"
|
||||
#~ msgstr "okos névkiegészítés (először az utolsó partnerre egészít ki)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat "
|
||||
#~ "version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "alapértelmezett távozó üzenet (szoba elhagyásakor) (a '%v' változó a "
|
||||
#~ "WeeChat verziójára cserélődik)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default quit message (disconnecting from server) ('%v' will be replaced "
|
||||
#~ "by WeeChat version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "alapértelmezett kilépő üzenet (a '%v' változó a WeeChat verziójára "
|
||||
#~ "cserélődik)"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, "
|
||||
#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=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 "Jabber debug messages"
|
||||
#~ msgstr "hibakereső üzenetek megjelenítése"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "get buffer pointer for a Jabber server/MUC"
|
||||
#~ msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of Jabber servers"
|
||||
#~ msgstr "IRC szerver portja"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of MUCs for a Jabber server"
|
||||
#~ msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of buddies for a Jabber server or MUC"
|
||||
#~ msgstr "szobák listája ahová be akarunk lépni csatlakozás után"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s: this buffer is not a MUC!"
|
||||
#~ msgstr "Ez az ablak nem egy szoba!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: cannot allocate new MUC"
|
||||
#~ msgstr "%s nem sikerült új csatornát lefoglalni"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server in %d %s"
|
||||
#~ msgstr "%s: Újracsatlakozás a szerverhez %d másodperc múlva\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connected to %s (%s)"
|
||||
#~ msgstr "%s nincs csatlakozva a \"%s\" szerverhez!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS init error"
|
||||
#~ msgstr "%s gnutls inicializációs hiba\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS handshake failed"
|
||||
#~ msgstr "%s gnutls kézfogás sikertelen\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr ""
|
||||
#~ "%s: csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: "
|
||||
#~ "%s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr ""
|
||||
#~ "Csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: %s:%"
|
||||
#~ "d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
#~ msgstr "%s: csatlakozás a(z) %s:%d%s%s szerverhez...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
#~ "GnuTLS support"
|
||||
#~ msgstr ""
|
||||
#~ "%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls "
|
||||
#~ "támogatás nélkül lett fordítva\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create stream parser"
|
||||
#~ msgstr "%s nem sikerült a szervert létrehozni\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create id"
|
||||
#~ msgstr "%s DCC: nem sikerült a csövet létrehozni\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server..."
|
||||
#~ msgstr "%s: Újracsatlakozás a szerverhez...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: I/O error (%d)"
|
||||
#~ msgstr "%sSzerver: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: server disconnected"
|
||||
#~ msgstr "A %s%s%s szerver létrehozva\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: stream error"
|
||||
#~ msgstr "%sSzerver: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: login ok"
|
||||
#~ msgstr "%s DCC: nem sikerült forkolni\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running "
|
||||
|
||||
@@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: <soltys@szluug.org>\n"
|
||||
"Language-Team: Polish\n"
|
||||
@@ -3881,257 +3881,6 @@ msgstr ""
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr ""
|
||||
|
||||
msgid "servers"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr ""
|
||||
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
msgid "buddy [text]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr ""
|
||||
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr ""
|
||||
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr ""
|
||||
|
||||
msgid "use SASL for authentication"
|
||||
msgstr ""
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
msgid "password"
|
||||
msgstr ""
|
||||
|
||||
msgid "local alias"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr ""
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr ""
|
||||
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr ""
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr ""
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
|
||||
msgid "Jabber debug messages"
|
||||
msgstr ""
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
msgstr[2] ""
|
||||
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of Jabber servers"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.3.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\n"
|
||||
"PO-Revision-Date: 2009-05-11 13:02+0200\n"
|
||||
"Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4442,332 +4442,6 @@ msgstr "Отключен от сервера!\n"
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr "Отключен от сервера!\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "servers"
|
||||
msgstr "сервер"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr "Авто-переподключение отменено\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr "перечислить, добавить или удалить серверы"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
"[list [сервер]] | [listfull [сервер]] | [add сервер адрес [-port порт] [-"
|
||||
"temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd пароль] [-nicks ник1 ник2 ник3] "
|
||||
"[-username имя_пользователя] [-realname реальное_имя] [-command команда] [-"
|
||||
"autojoin канал[,канал]] ] | [copy сервер новый_сервер] | [rename сервер "
|
||||
"новое_имя] | [keep сервер] | [del сервер]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
" list: перечислить серверы (отсутствие параметров подразумевает этот "
|
||||
"список)\n"
|
||||
"listfull: перечислить серверы с подробностями\n"
|
||||
" add: создать новый сервер\n"
|
||||
" сервер: имя сервера\n"
|
||||
"hostname: адрес сервера\n"
|
||||
" port: порт сервера (целочисленное значение)\n"
|
||||
" temp: создать временный сервер (не сохраняется в конфигурационном "
|
||||
"файле)\n"
|
||||
" auto: автоматически подключаться к серверу при запуске WeeChat\n"
|
||||
" noauto: не подключаться автоматически к серверу при запуске WeeChat\n"
|
||||
" ipv6: использовать протокол IPv6\n"
|
||||
" ssl: использовать протокол SSL\n"
|
||||
"password: пароль от сервера\n"
|
||||
" nick1: ник на сервере\n"
|
||||
" nick2: альтернативный ник на сервере\n"
|
||||
" nick3: запасной альтернативный ник на сервере\n"
|
||||
"username: имя пользователя\n"
|
||||
"realname: настоящее имя\n"
|
||||
" copy: создать копию сервера\n"
|
||||
" rename: переименовать сервер\n"
|
||||
" keep: сохранить временный сервер\n"
|
||||
" del: удалить сервер deloutq: очистить очередь исходящих сообщений для "
|
||||
"всех серверов (сообщения, отправляемые WeeChatом)"
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "buddy [text]"
|
||||
msgstr "текст"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
"сервис: название сервиса\n"
|
||||
" текст: отправляемый текст"
|
||||
|
||||
#, fuzzy
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr "подключиться к серверу(-ам)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
"[-all [-nojoin] | сервер [servername ...] [-nojoin] | адрес [-port порт] [-"
|
||||
"ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
" -all: переподключиться ко всем серверам\n"
|
||||
" сервер: название сервера для переподключения\n"
|
||||
"-nojoin: не заходить на каналы (даже если автозаход включен для сервера)\n"
|
||||
" адрес: адрес сервера, создавая временный сервер\n"
|
||||
" порт: порт сервера (число, по-умолчанию - 6667)\n"
|
||||
" ipv6: использовать протокол IPv6\n"
|
||||
" ssl: использовать протокол SSL"
|
||||
|
||||
#, fuzzy
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr "отключиться от сервера(-ов)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr "ник, используемый на IRC сервере"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr "использовать IPv6 при связи с сервером"
|
||||
|
||||
#, fuzzy
|
||||
msgid "use SASL for authentication"
|
||||
msgstr "использовать SSL при связи с сервером"
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "password"
|
||||
msgstr "пользователь пароль"
|
||||
|
||||
#, fuzzy
|
||||
msgid "local alias"
|
||||
msgstr "Список сокращений:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
"команды, выполняемые при подключении к серверу (несколько команд должны быть "
|
||||
"разделены символом ';', используйте '\\;' вместо обычной точки с запятой, "
|
||||
"специальные переменные $nick, $channel и $server заменяются на "
|
||||
"соответствующие значения)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
"разделённый запятыми список каналов, на которые заходить при подключении к "
|
||||
"серверу (например, \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr "автоматически перезаходить на каналы после кика"
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr "один буфер для всех серверов"
|
||||
|
||||
#, fuzzy
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr "открывать новые каналы/приваты рядом с сервером"
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr "умное дополнение ников (начинает перебор с последних собеседников)"
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr "сообщение покидания канала ('%v' будет заменён на версию WeeChat)"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr "сообщение о выходе по-умолчанию ('%v' будет заменён на версию WeeChat)"
|
||||
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
"позволить отправлять цвета специальными кодами (^Cb=жирный, ^Ccxx=цветной, "
|
||||
"^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, ^Cr=инвертированный)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Jabber debug messages"
|
||||
msgstr "выводить отладочные сообщения"
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of Jabber servers"
|
||||
msgstr "порт IRC сервера"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr "Это окно не является каналом!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr "%s не могу расположить новый канал"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr "%s: Повторное подключение к серверу через %d секунд\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr "%s не подключен к серверу \"%s\"!\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr "%s ошибка инициализации gnutls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr "%s инициализация gnutls не удалось\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "%s: подключение к серверу %s:%d%s%s через %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr "Подключаюсь к серверу %s:%d%s%s через %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr "%s: поключаюсь к серверу %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s ник \"%s\" не найден для команды \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr "%s ник \"%s\" не найден для команды \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
"%s невозможно соединиться с использованием SSL, так как WeeChat собран без "
|
||||
"поддержки GNUtls\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr "%s не могу создать сервер\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr "%s DCC: не могу создать pipe\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr "%s: Повторное соединение...\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr "%sСервер: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr "Не могу записать лог-файл \"%s\"\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr "Сервер %s%s%s создан\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr "%sСервер: %s%s\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr "%s DCC: не могу forkнуться\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr "Не могу записать лог-файл \"%s\"\n"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
@@ -5813,6 +5487,316 @@ msgstr "%s DCC: не могу установить неблокирующий р
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s нет аргумента для параметра \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "servers"
|
||||
#~ msgstr "сервер"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: auto-reconnection is cancelled"
|
||||
#~ msgstr "Авто-переподключение отменено\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list, add or remove Jabber servers"
|
||||
#~ msgstr "перечислить, добавить или удалить серверы"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
#~ "[copy servername newservername] | [rename servername newservername] | "
|
||||
#~ "[keep servername] | [del servername] | [switch]"
|
||||
#~ msgstr ""
|
||||
#~ "[list [сервер]] | [listfull [сервер]] | [add сервер адрес [-port порт] [-"
|
||||
#~ "temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd пароль] [-nicks ник1 ник2 "
|
||||
#~ "ник3] [-username имя_пользователя] [-realname реальное_имя] [-command "
|
||||
#~ "команда] [-autojoin канал[,канал]] ] | [copy сервер новый_сервер] | "
|
||||
#~ "[rename сервер новое_имя] | [keep сервер] | [del сервер]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " list: list servers (no parameter implies this list)\n"
|
||||
#~ " listfull: list servers with detailed info for each server\n"
|
||||
#~ " add: create a new server\n"
|
||||
#~ "servername: server name, for internal and display use\n"
|
||||
#~ " username: username to use on server\n"
|
||||
#~ " hostname: name or IP address of server, with optional port (default: "
|
||||
#~ "5222)\n"
|
||||
#~ " password: password for username on server\n"
|
||||
#~ " auto: automatically connect to server when WeeChat starts\n"
|
||||
#~ " noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " sasl: use SASL for authentication\n"
|
||||
#~ " copy: duplicate a server\n"
|
||||
#~ " rename: rename a server\n"
|
||||
#~ " keep: keep server in config file (for temporary servers only)\n"
|
||||
#~ " del: delete a server\n"
|
||||
#~ " switch: switch active server (when one buffer is used for all "
|
||||
#~ "servers, default key: alt-s on server buffer)\n"
|
||||
#~ "\n"
|
||||
#~ "Examples:\n"
|
||||
#~ " /jabber listfull\n"
|
||||
#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
#~ " /jabber copy jabberfr jabberfr2\n"
|
||||
#~ " /jabber rename jabberfr jabbfr\n"
|
||||
#~ " /jabber del jabberfr\n"
|
||||
#~ " /jabber switch"
|
||||
#~ msgstr ""
|
||||
#~ " list: перечислить серверы (отсутствие параметров подразумевает этот "
|
||||
#~ "список)\n"
|
||||
#~ "listfull: перечислить серверы с подробностями\n"
|
||||
#~ " add: создать новый сервер\n"
|
||||
#~ " сервер: имя сервера\n"
|
||||
#~ "hostname: адрес сервера\n"
|
||||
#~ " port: порт сервера (целочисленное значение)\n"
|
||||
#~ " temp: создать временный сервер (не сохраняется в конфигурационном "
|
||||
#~ "файле)\n"
|
||||
#~ " auto: автоматически подключаться к серверу при запуске WeeChat\n"
|
||||
#~ " noauto: не подключаться автоматически к серверу при запуске WeeChat\n"
|
||||
#~ " ipv6: использовать протокол IPv6\n"
|
||||
#~ " ssl: использовать протокол SSL\n"
|
||||
#~ "password: пароль от сервера\n"
|
||||
#~ " nick1: ник на сервере\n"
|
||||
#~ " nick2: альтернативный ник на сервере\n"
|
||||
#~ " nick3: запасной альтернативный ник на сервере\n"
|
||||
#~ "username: имя пользователя\n"
|
||||
#~ "realname: настоящее имя\n"
|
||||
#~ " copy: создать копию сервера\n"
|
||||
#~ " rename: переименовать сервер\n"
|
||||
#~ " keep: сохранить временный сервер\n"
|
||||
#~ " del: удалить сервер deloutq: очистить очередь исходящих сообщений "
|
||||
#~ "для всех серверов (сообщения, отправляемые WeeChatом)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "buddy [text]"
|
||||
#~ msgstr "текст"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "buddy: buddy name for chat\n"
|
||||
#~ " text: text to send"
|
||||
#~ msgstr ""
|
||||
#~ "сервис: название сервиса\n"
|
||||
#~ " текст: отправляемый текст"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "connect to Jabber server(s)"
|
||||
#~ msgstr "подключиться к серверу(-ам)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
#~ "port] [-ipv6] [-tls] [-sasl]]"
|
||||
#~ msgstr ""
|
||||
#~ "[-all [-nojoin] | сервер [servername ...] [-nojoin] | адрес [-port порт] "
|
||||
#~ "[-ipv6] [-ssl]]"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ " -all: connect to all servers\n"
|
||||
#~ "servername: internal server name to connect\n"
|
||||
#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
#~ " hostname: hostname to connect\n"
|
||||
#~ " port: port for server (integer, default is 6667)\n"
|
||||
#~ " ipv6: use IPv6 protocol\n"
|
||||
#~ " tls: use TLS cryptographic protocol\n"
|
||||
#~ " saal: use SASL for authentication"
|
||||
#~ msgstr ""
|
||||
#~ " -all: переподключиться ко всем серверам\n"
|
||||
#~ " сервер: название сервера для переподключения\n"
|
||||
#~ "-nojoin: не заходить на каналы (даже если автозаход включен для сервера)\n"
|
||||
#~ " адрес: адрес сервера, создавая временный сервер\n"
|
||||
#~ " порт: порт сервера (число, по-умолчанию - 6667)\n"
|
||||
#~ " ipv6: использовать протокол IPv6\n"
|
||||
#~ " ssl: использовать протокол SSL"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "disconnect from Jabber server(s)"
|
||||
#~ msgstr "отключиться от сервера(-ов)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "hostname/port or IP/port for server"
|
||||
#~ msgstr "ник, используемый на IRC сервере"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use TLS cryptographic protocol for server communication"
|
||||
#~ msgstr "использовать IPv6 при связи с сервером"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "use SASL for authentication"
|
||||
#~ msgstr "использовать SSL при связи с сервером"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "password"
|
||||
#~ msgstr "пользователь пароль"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "local alias"
|
||||
#~ msgstr "Список сокращений:\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "command(s) to run when connected to server (many commands should be "
|
||||
#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, "
|
||||
#~ "$muc and $server are replaced by their value)"
|
||||
#~ msgstr ""
|
||||
#~ "команды, выполняемые при подключении к серверу (несколько команд должны "
|
||||
#~ "быть разделены символом ';', используйте '\\;' вместо обычной точки с "
|
||||
#~ "запятой, специальные переменные $nick, $channel и $server заменяются на "
|
||||
#~ "соответствующие значения)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "comma separated list of MUCs to join when connected to server (example: "
|
||||
#~ "\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
#~ msgstr ""
|
||||
#~ "разделённый запятыми список каналов, на которые заходить при подключении "
|
||||
#~ "к серверу (например, \"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "automatically rejoin MUCs when kicked"
|
||||
#~ msgstr "автоматически перезаходить на каналы после кика"
|
||||
|
||||
#~ msgid "use same buffer for all servers"
|
||||
#~ msgstr "один буфер для всех серверов"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "open new MUCs/privates near server"
|
||||
#~ msgstr "открывать новые каналы/приваты рядом с сервером"
|
||||
|
||||
#~ msgid "smart completion for nicks (completes with last speakers first)"
|
||||
#~ msgstr "умное дополнение ников (начинает перебор с последних собеседников)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat "
|
||||
#~ "version in string)"
|
||||
#~ msgstr "сообщение покидания канала ('%v' будет заменён на версию WeeChat)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "default quit message (disconnecting from server) ('%v' will be replaced "
|
||||
#~ "by WeeChat version in string)"
|
||||
#~ msgstr ""
|
||||
#~ "сообщение о выходе по-умолчанию ('%v' будет заменён на версию WeeChat)"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, "
|
||||
#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
#~ msgstr ""
|
||||
#~ "позволить отправлять цвета специальными кодами (^Cb=жирный, "
|
||||
#~ "^Ccxx=цветной, ^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, "
|
||||
#~ "^Cr=инвертированный)"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Jabber debug messages"
|
||||
#~ msgstr "выводить отладочные сообщения"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "get buffer pointer for a Jabber server/MUC"
|
||||
#~ msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of Jabber servers"
|
||||
#~ msgstr "порт IRC сервера"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of MUCs for a Jabber server"
|
||||
#~ msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "list of buddies for a Jabber server or MUC"
|
||||
#~ msgstr "Список каналов, на которые заходить при соединении с сервером"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s: this buffer is not a MUC!"
|
||||
#~ msgstr "Это окно не является каналом!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: cannot allocate new MUC"
|
||||
#~ msgstr "%s не могу расположить новый канал"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server in %d %s"
|
||||
#~ msgstr "%s: Повторное подключение к серверу через %d секунд\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connected to %s (%s)"
|
||||
#~ msgstr "%s не подключен к серверу \"%s\"!\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS init error"
|
||||
#~ msgstr "%s ошибка инициализации gnutls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: GnuTLS handshake failed"
|
||||
#~ msgstr "%s инициализация gnutls не удалось\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "%s: подключение к серверу %s:%d%s%s через %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
#~ msgstr "Подключаюсь к серверу %s:%d%s%s через %s proxy %s:%d%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
#~ msgstr "%s: поключаюсь к серверу %s:%d%s%s...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s ник \"%s\" не найден для команды \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
#~ msgstr "%s ник \"%s\" не найден для команды \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
#~ "GnuTLS support"
|
||||
#~ msgstr ""
|
||||
#~ "%s невозможно соединиться с использованием SSL, так как WeeChat собран "
|
||||
#~ "без поддержки GNUtls\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create stream parser"
|
||||
#~ msgstr "%s не могу создать сервер\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: failed to create id"
|
||||
#~ msgstr "%s DCC: не могу создать pipe\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: reconnecting to server..."
|
||||
#~ msgstr "%s: Повторное соединение...\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: I/O error (%d)"
|
||||
#~ msgstr "%sСервер: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Не могу записать лог-файл \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: server disconnected"
|
||||
#~ msgstr "Сервер %s%s%s создан\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: stream error"
|
||||
#~ msgstr "%sСервер: %s%s\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: login ok"
|
||||
#~ msgstr "%s DCC: не могу forkнуться\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
#~ msgstr "Не могу записать лог-файл \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid ""
|
||||
#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running "
|
||||
|
||||
@@ -138,36 +138,6 @@ SET(WEECHAT_SOURCES
|
||||
./src/plugins/irc/irc-raw.h
|
||||
./src/plugins/irc/irc-server.c
|
||||
./src/plugins/irc/irc-server.h
|
||||
./src/plugins/jabber/jabber-bar-item.c
|
||||
./src/plugins/jabber/jabber-bar-item.h
|
||||
./src/plugins/jabber/jabber-buddy.c
|
||||
./src/plugins/jabber/jabber-buddy.h
|
||||
./src/plugins/jabber/jabber-buffer.c
|
||||
./src/plugins/jabber/jabber-buffer.h
|
||||
./src/plugins/jabber/jabber.c
|
||||
./src/plugins/jabber/jabber-command.c
|
||||
./src/plugins/jabber/jabber-command.h
|
||||
./src/plugins/jabber/jabber-completion.c
|
||||
./src/plugins/jabber/jabber-completion.h
|
||||
./src/plugins/jabber/jabber-config.c
|
||||
./src/plugins/jabber/jabber-config.h
|
||||
./src/plugins/jabber/jabber-debug.c
|
||||
./src/plugins/jabber/jabber-debug.h
|
||||
./src/plugins/jabber/jabber-display.c
|
||||
./src/plugins/jabber/jabber-display.h
|
||||
./src/plugins/jabber/jabber.h
|
||||
./src/plugins/jabber/jabber-info.c
|
||||
./src/plugins/jabber/jabber-info.h
|
||||
./src/plugins/jabber/jabber-input.c
|
||||
./src/plugins/jabber/jabber-input.h
|
||||
./src/plugins/jabber/jabber-muc.c
|
||||
./src/plugins/jabber/jabber-muc.h
|
||||
./src/plugins/jabber/jabber-server.c
|
||||
./src/plugins/jabber/jabber-server.h
|
||||
./src/plugins/jabber/jabber-upgrade.c
|
||||
./src/plugins/jabber/jabber-upgrade.h
|
||||
./src/plugins/jabber/jabber-xmpp.c
|
||||
./src/plugins/jabber/jabber-xmpp.h
|
||||
./src/plugins/logger/logger.c
|
||||
./src/plugins/logger/logger.h
|
||||
./src/plugins/logger/logger-buffer.c
|
||||
|
||||
+1
-251
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2009-06-14 12:44+0200\n"
|
||||
"POT-Creation-Date: 2009-06-14 14:06+0200\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"
|
||||
@@ -3844,256 +3844,6 @@ msgstr ""
|
||||
msgid "%s: disconnected from server"
|
||||
msgstr ""
|
||||
|
||||
msgid "servers"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: auto-reconnection is cancelled"
|
||||
msgstr ""
|
||||
|
||||
msgid "list, add or remove Jabber servers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"[list [servername]] | [listfull [servername]] | [add servername username "
|
||||
"hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | [copy "
|
||||
"servername newservername] | [rename servername newservername] | [keep "
|
||||
"servername] | [del servername] | [switch]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list servers (no parameter implies this list)\n"
|
||||
" listfull: list servers with detailed info for each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with optional port (default: "
|
||||
"5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server when WeeChat starts\n"
|
||||
" noauto: do not connect to server when WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one buffer is used for all servers, "
|
||||
"default key: alt-s on server buffer)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"
|
||||
msgstr ""
|
||||
|
||||
msgid "chat with a buddy"
|
||||
msgstr ""
|
||||
|
||||
msgid "buddy [text]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"buddy: buddy name for chat\n"
|
||||
" text: text to send"
|
||||
msgstr ""
|
||||
|
||||
msgid "connect to Jabber server(s)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port "
|
||||
"port] [-ipv6] [-tls] [-sasl]]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"
|
||||
msgstr ""
|
||||
|
||||
msgid "disconnect from Jabber server(s)"
|
||||
msgstr ""
|
||||
|
||||
msgid "hostname/port or IP/port for server"
|
||||
msgstr ""
|
||||
|
||||
msgid "use TLS cryptographic protocol for server communication"
|
||||
msgstr ""
|
||||
|
||||
msgid "use SASL for authentication"
|
||||
msgstr ""
|
||||
|
||||
msgid "resource (for example: Home or Work)"
|
||||
msgstr ""
|
||||
|
||||
msgid "password"
|
||||
msgstr ""
|
||||
|
||||
msgid "local alias"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"command(s) to run when connected to server (many commands should be "
|
||||
"separated by ';', use '\\;' for a semicolon, special variables $nick, $muc "
|
||||
"and $server are replaced by their value)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"comma separated list of MUCs to join when connected to server (example: "
|
||||
"\"#chan1,#chan2,#chan3 key1,key2\")"
|
||||
msgstr ""
|
||||
|
||||
msgid "automatically rejoin MUCs when kicked"
|
||||
msgstr ""
|
||||
|
||||
msgid "use same buffer for all servers"
|
||||
msgstr ""
|
||||
|
||||
msgid "open new MUCs/privates near server"
|
||||
msgstr ""
|
||||
|
||||
msgid "smart completion for nicks (completes with last speakers first)"
|
||||
msgstr ""
|
||||
|
||||
msgid "display MUC modes in \"buffer_name\" bar item"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"filter join/part/quit messages for a nick if not speaking for some minutes "
|
||||
"on MUC (you must create a filter on tag \"jabber_smart_filter\")"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"default part message (leaving MUC) ('%v' will be replaced by WeeChat version "
|
||||
"in string)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"default quit message (disconnecting from server) ('%v' will be replaced by "
|
||||
"WeeChat version in string)"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, ^Ccxx,"
|
||||
"yy=color+background, ^Cu=underline, ^Cr=reverse)"
|
||||
msgstr ""
|
||||
|
||||
msgid "Jabber debug messages"
|
||||
msgstr ""
|
||||
|
||||
msgid "MUC"
|
||||
msgid_plural "MUCs"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
msgid "get buffer pointer for a Jabber server/MUC"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of Jabber servers"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of MUCs for a Jabber server"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of buddies for a Jabber server or MUC"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s: this buffer is not a MUC!"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: cannot allocate new MUC"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server in %d %s"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connected to %s (%s)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS init error"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: GnuTLS handshake failed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: connecting to server %s/%d%s%s%s..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: username or server not defined for server \"%s\", cannot connect"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: cannot connect with TLS because iksemel library was not built with "
|
||||
"GnuTLS support"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create stream parser"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: failed to create id"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: reconnecting to server..."
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: I/O error (%d)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: SASL authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: server disconnected"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: stream error"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: login ok"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: authentication failed (check SASL option and password)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s%s: unable to find filename mask for buffer \"%s\", logging is disabled "
|
||||
|
||||
@@ -58,14 +58,6 @@ IF(NOT DISABLE_IRC)
|
||||
ADD_SUBDIRECTORY( irc )
|
||||
ENDIF(NOT DISABLE_IRC)
|
||||
|
||||
IF(ENABLE_JABBER)
|
||||
# Check for iksemel library
|
||||
FIND_PACKAGE(Iksemel)
|
||||
IF(IKSEMEL_FOUND)
|
||||
ADD_SUBDIRECTORY( jabber )
|
||||
ENDIF(IKSEMEL_FOUND)
|
||||
ENDIF(ENABLE_JABBER)
|
||||
|
||||
IF(NOT DISABLE_LOGGER)
|
||||
ADD_SUBDIRECTORY( logger )
|
||||
ENDIF(NOT DISABLE_LOGGER)
|
||||
|
||||
@@ -50,10 +50,6 @@ if PLUGIN_IRC
|
||||
irc_dir = irc
|
||||
endif
|
||||
|
||||
if PLUGIN_JABBER
|
||||
jabber_dir = jabber
|
||||
endif
|
||||
|
||||
if PLUGIN_LOGGER
|
||||
logger_dir = logger
|
||||
endif
|
||||
@@ -87,8 +83,7 @@ xfer_dir = xfer
|
||||
endif
|
||||
|
||||
SUBDIRS = . $(alias_dir) $(aspell_dir) $(charset_dir) $(demo_dir) $(fifo_dir) \
|
||||
$(irc_dir) $(jabber_dir) $(logger_dir) $(relay_dir) $(script_dir) \
|
||||
$(xfer_dir)
|
||||
$(irc_dir) $(logger_dir) $(relay_dir) $(script_dir) $(xfer_dir)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt
|
||||
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
# Copyright (c) 2009 FlashCode <flashcode@flashtux.org>
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
ADD_LIBRARY(jabber MODULE
|
||||
jabber.c jabber.h
|
||||
jabber-bar-item.c jabber-bar-item.h
|
||||
jabber-buddy.c jabber-buddy.h
|
||||
jabber-buffer.c jabber-buffer.h
|
||||
jabber-command.c jabber-command.h
|
||||
jabber-completion.c jabber-completion.h
|
||||
jabber-config.c jabber-config.h
|
||||
jabber-debug.c jabber-debug.h
|
||||
jabber-display.c jabber-display.h
|
||||
jabber-info.c jabber-info.h
|
||||
jabber-input.c jabber-input.h
|
||||
jabber-muc.c jabber-muc.h
|
||||
jabber-server.c jabber-server.h
|
||||
jabber-upgrade.c jabber-upgrade.h
|
||||
jabber-xmpp.c jabber-xmpp.h)
|
||||
SET_TARGET_PROPERTIES(jabber PROPERTIES PREFIX "")
|
||||
|
||||
CHECK_INCLUDE_FILES("regex.h" HAVE_REGEX_H)
|
||||
CHECK_FUNCTION_EXISTS(regexec HAVE_REGEXEC)
|
||||
|
||||
IF(GNUTLS_FOUND)
|
||||
INCLUDE_DIRECTORIES(${GNUTLS_INCLUDE_PATH} ${IKSEMEL_INCLUDE_PATH})
|
||||
TARGET_LINK_LIBRARIES(jabber ${GNUTLS_LIBRARY} ${IKSEMEL_LIBRARY})
|
||||
ELSE(GNUTLS_FOUND)
|
||||
TARGET_LINK_LIBRARIES(jabber ${IKSEMEL_LIBRARY})
|
||||
ENDIF(GNUTLS_FOUND)
|
||||
|
||||
INSTALL(TARGETS jabber LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins)
|
||||
@@ -1,57 +0,0 @@
|
||||
# Copyright (c) 2009 FlashCode <flashcode@flashtux.org>
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
INCLUDES = -DLOCALEDIR=\"$(datadir)/locale\" $(GNUTLS_CFLAGS) $(IKSEMEL_CFLAGS)
|
||||
|
||||
libdir = ${weechat_libdir}/plugins
|
||||
|
||||
lib_LTLIBRARIES = jabber.la
|
||||
|
||||
jabber_la_SOURCES = jabber.c \
|
||||
jabber.h \
|
||||
jabber-bar-item.c \
|
||||
jabber-bar-item.h \
|
||||
jabber-buddy.c \
|
||||
jabber-buddy.h \
|
||||
jabber-buffer.c \
|
||||
jabber-buffer.h \
|
||||
jabber-command.c \
|
||||
jabber-command.h \
|
||||
jabber-completion.c \
|
||||
jabber-completion.h \
|
||||
jabber-config.c \
|
||||
jabber-config.h \
|
||||
jabber-debug.c \
|
||||
jabber-debug.h \
|
||||
jabber-display.c \
|
||||
jabber-display.h \
|
||||
jabber-info.c \
|
||||
jabber-info.h \
|
||||
jabber-input.c \
|
||||
jabber-input.h \
|
||||
jabber-muc.c \
|
||||
jabber-muc.h \
|
||||
jabber-server.c \
|
||||
jabber-server.h \
|
||||
jabber-upgrade.c \
|
||||
jabber-upgrade.h \
|
||||
jabber-xmpp.c \
|
||||
jabber-xmpp.h
|
||||
|
||||
jabber_la_LDFLAGS = -module
|
||||
jabber_la_LIBADD = $(JABBER_LFLAGS) $(GNUTLS_LFLAGS) $(IKSEMEL_LFLAGS)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt
|
||||
@@ -1,190 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-bar-item.c: bar items for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-muc.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_bar_item_buffer_name: bar item with buffer name
|
||||
*/
|
||||
|
||||
char *
|
||||
jabber_bar_item_buffer_name (void *data, struct t_gui_bar_item *item,
|
||||
struct t_gui_window *window)
|
||||
{
|
||||
char buf[512], buf_name[256], modes[128], away[128];
|
||||
const char *name;
|
||||
int part_from_muc;
|
||||
struct t_gui_buffer *buffer;
|
||||
struct t_jabber_server *server;
|
||||
struct t_jabber_muc *muc;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) item;
|
||||
|
||||
if (!window)
|
||||
window = weechat_current_window ();
|
||||
|
||||
buf_name[0] = '\0';
|
||||
modes[0] = '\0';
|
||||
away[0] = '\0';
|
||||
|
||||
buffer = weechat_window_get_pointer (window, "buffer");
|
||||
|
||||
if (buffer)
|
||||
{
|
||||
jabber_buffer_get_server_muc (buffer, &server, &muc);
|
||||
if (server || muc)
|
||||
{
|
||||
if (server && !muc)
|
||||
{
|
||||
if (weechat_config_boolean (jabber_config_look_one_server_buffer))
|
||||
{
|
||||
snprintf (buf_name, sizeof (buf_name), "%s%s[<%s%s%s>]",
|
||||
_("servers"),
|
||||
JABBER_COLOR_BAR_DELIM,
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
(jabber_current_server) ? jabber_current_server->name : "-",
|
||||
JABBER_COLOR_BAR_DELIM);
|
||||
}
|
||||
else
|
||||
{
|
||||
snprintf (buf_name, sizeof (buf_name), "%s%s[%s%s%s]",
|
||||
_("server"),
|
||||
JABBER_COLOR_BAR_DELIM,
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
server->name,
|
||||
JABBER_COLOR_BAR_DELIM);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (muc)
|
||||
{
|
||||
part_from_muc = ((muc->type == JABBER_MUC_TYPE_MUC)
|
||||
&& !muc->buddies);
|
||||
snprintf (buf_name, sizeof (buf_name),
|
||||
"%s%s%s%s%s/%s%s%s%s",
|
||||
(part_from_muc) ? JABBER_COLOR_BAR_DELIM : "",
|
||||
(part_from_muc) ? "(" : "",
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
server->name,
|
||||
JABBER_COLOR_BAR_DELIM,
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
muc->name,
|
||||
(part_from_muc) ? JABBER_COLOR_BAR_DELIM : "",
|
||||
(part_from_muc) ? ")" : "");
|
||||
if (!part_from_muc
|
||||
&& weechat_config_boolean (jabber_config_look_display_muc_modes)
|
||||
&& muc->modes && muc->modes[0]
|
||||
&& (strcmp (muc->modes, "+") != 0))
|
||||
{
|
||||
snprintf (modes, sizeof (modes),
|
||||
"%s(%s%s%s)",
|
||||
JABBER_COLOR_BAR_DELIM,
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
muc->modes,
|
||||
JABBER_COLOR_BAR_DELIM);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (server && server->is_away)
|
||||
{
|
||||
snprintf (away, sizeof (away), " %s(%s%s%s)",
|
||||
JABBER_COLOR_BAR_DELIM,
|
||||
JABBER_COLOR_BAR_FG,
|
||||
_("away"),
|
||||
JABBER_COLOR_BAR_DELIM);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
name = weechat_buffer_get_string (buffer, "name");
|
||||
if (name)
|
||||
snprintf (buf_name, sizeof (buf_name), "%s", name);
|
||||
}
|
||||
|
||||
snprintf (buf, sizeof (buf), "%s%s%s%s",
|
||||
JABBER_COLOR_STATUS_NAME,
|
||||
buf_name,
|
||||
modes,
|
||||
away);
|
||||
return strdup (buf);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_bar_item_input_prompt: bar item with input prompt
|
||||
*/
|
||||
|
||||
char *
|
||||
jabber_bar_item_input_prompt (void *data, struct t_gui_bar_item *item,
|
||||
struct t_gui_window *window)
|
||||
{
|
||||
struct t_gui_buffer *buffer;
|
||||
struct t_jabber_server *server;
|
||||
const char *local_name;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) item;
|
||||
|
||||
if (!window)
|
||||
window = weechat_current_window ();
|
||||
|
||||
buffer = weechat_window_get_pointer (window, "buffer");
|
||||
|
||||
if (buffer)
|
||||
{
|
||||
jabber_buffer_get_server_muc (buffer, &server, NULL);
|
||||
if (!server)
|
||||
return NULL;
|
||||
|
||||
local_name = jabber_server_get_local_name (server);
|
||||
|
||||
return (local_name) ? strdup (local_name) : NULL;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_bar_item_init: initialize Jabber bar items
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_bar_item_init ()
|
||||
{
|
||||
weechat_bar_item_new ("buffer_name", &jabber_bar_item_buffer_name, NULL);
|
||||
weechat_bar_item_new ("input_prompt", &jabber_bar_item_input_prompt, NULL);
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_BAR_ITEM_H
|
||||
#define __WEECHAT_JABBER_BAR_ITEM_H 1
|
||||
|
||||
extern void jabber_bar_item_init ();
|
||||
|
||||
#endif /* jabber-bar-item.h */
|
||||
@@ -1,727 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-buddy.c: manages buddies list for servers and MUCs */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-muc.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_buddy_valid: check if a buddy pointer exists for a server or a muc
|
||||
* return 1 if buddy exists
|
||||
* 0 if buddy is not found
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_buddy_valid (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
if (server)
|
||||
{
|
||||
for (ptr_buddy = server->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (ptr_buddy == buddy)
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (muc)
|
||||
{
|
||||
for (ptr_buddy = muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (ptr_buddy == buddy)
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* buddy not found */
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_find_color: find a color for a buddy (according to buddy letters)
|
||||
*/
|
||||
|
||||
const char *
|
||||
jabber_buddy_find_color (struct t_jabber_buddy *buddy)
|
||||
{
|
||||
int i, color;
|
||||
char color_name[64];
|
||||
|
||||
color = 0;
|
||||
for (i = strlen (buddy->name) - 1; i >= 0; i--)
|
||||
{
|
||||
color += (int)(buddy->name[i]);
|
||||
}
|
||||
color = (color %
|
||||
weechat_config_integer (weechat_config_get ("weechat.look.color_nicks_number")));
|
||||
|
||||
snprintf (color_name, sizeof (color_name),
|
||||
"chat_buddy_color%02d", color + 1);
|
||||
|
||||
return weechat_color (color_name);
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_get_gui_infos: get GUI infos for a buddy (sort_index, prefix,
|
||||
* prefix color)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_get_gui_infos (struct t_jabber_buddy *buddy,
|
||||
char *prefix, int *prefix_color,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_nick_group **group)
|
||||
{
|
||||
if (buddy->flags & JABBER_BUDDY_CHANOWNER)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '~';
|
||||
if (prefix_color)
|
||||
*prefix_color = 1;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_OP);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_CHANADMIN)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '&';
|
||||
if (prefix_color)
|
||||
*prefix_color = 1;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_OP);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_CHANADMIN2)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '!';
|
||||
if (prefix_color)
|
||||
*prefix_color = 1;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_OP);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_OP)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '@';
|
||||
if (prefix_color)
|
||||
*prefix_color = 1;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_OP);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_HALFOP)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '%';
|
||||
if (prefix_color)
|
||||
*prefix_color = 2;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_HALFOP);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_VOICE)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '+';
|
||||
if (prefix_color)
|
||||
*prefix_color = 3;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_VOICE);
|
||||
}
|
||||
else if (buddy->flags & JABBER_BUDDY_CHANUSER)
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = '-';
|
||||
if (prefix_color)
|
||||
*prefix_color = 4;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_CHANUSER);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (prefix)
|
||||
prefix[0] = ' ';
|
||||
if (prefix_color)
|
||||
*prefix_color = 0;
|
||||
if (buffer && group)
|
||||
*group = weechat_nicklist_search_group (buffer, NULL,
|
||||
JABBER_BUDDY_GROUP_NORMAL);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_new: allocate a new buddy for a muc and add it to the buddy list
|
||||
*/
|
||||
|
||||
struct t_jabber_buddy *
|
||||
jabber_buddy_new (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
const char *buddy_name, int is_chanowner, int is_chanadmin,
|
||||
int is_chanadmin2, int is_op, int is_halfop, int has_voice,
|
||||
int is_chanuser, int is_away)
|
||||
{
|
||||
struct t_jabber_buddy *new_buddy, *ptr_buddy;
|
||||
char prefix[2], str_prefix_color[64];
|
||||
const char *local_name;
|
||||
int prefix_color;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_nick_group *ptr_group;
|
||||
|
||||
ptr_buffer = (muc) ? muc->buffer : server->buffer;
|
||||
|
||||
/* buddy already exists on this muc? */
|
||||
if (muc)
|
||||
ptr_buddy = jabber_buddy_search (NULL, muc, buddy_name);
|
||||
else
|
||||
ptr_buddy = jabber_buddy_search (server, NULL, buddy_name);
|
||||
if (ptr_buddy)
|
||||
{
|
||||
/* remove old buddy from buddylist */
|
||||
jabber_buddy_get_gui_infos (ptr_buddy, prefix,
|
||||
&prefix_color, ptr_buffer, &ptr_group);
|
||||
weechat_nicklist_remove_nick (ptr_buffer,
|
||||
weechat_nicklist_search_nick (ptr_buffer,
|
||||
ptr_group,
|
||||
ptr_buddy->name));
|
||||
|
||||
/* update buddy */
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_chanowner, JABBER_BUDDY_CHANOWNER);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_chanadmin, JABBER_BUDDY_CHANADMIN);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_chanadmin2, JABBER_BUDDY_CHANADMIN2);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_op, JABBER_BUDDY_OP);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_halfop, JABBER_BUDDY_HALFOP);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, has_voice, JABBER_BUDDY_VOICE);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_chanuser, JABBER_BUDDY_CHANUSER);
|
||||
JABBER_BUDDY_SET_FLAG(ptr_buddy, is_away, JABBER_BUDDY_AWAY);
|
||||
|
||||
/* add new buddy in buddylist */
|
||||
prefix[0] = ' ';
|
||||
prefix[1] = '\0';
|
||||
jabber_buddy_get_gui_infos (ptr_buddy, prefix,
|
||||
&prefix_color, ptr_buffer, &ptr_group);
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.nicklist_prefix%d",
|
||||
prefix_color);
|
||||
weechat_nicklist_add_nick (ptr_buffer, ptr_group,
|
||||
ptr_buddy->name,
|
||||
(is_away) ?
|
||||
"weechat.color.nicklist_away" : "bar_fg",
|
||||
prefix, str_prefix_color, 1);
|
||||
|
||||
return ptr_buddy;
|
||||
}
|
||||
|
||||
/* alloc memory for new buddy */
|
||||
if ((new_buddy = malloc (sizeof (*new_buddy))) == NULL)
|
||||
return NULL;
|
||||
|
||||
/* initialize new buddy */
|
||||
new_buddy->name = strdup (buddy_name);
|
||||
new_buddy->host = NULL;
|
||||
new_buddy->flags = 0;
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_chanowner, JABBER_BUDDY_CHANOWNER);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_chanadmin, JABBER_BUDDY_CHANADMIN);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_chanadmin2, JABBER_BUDDY_CHANADMIN2);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_op, JABBER_BUDDY_OP);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_halfop, JABBER_BUDDY_HALFOP);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, has_voice, JABBER_BUDDY_VOICE);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_chanuser, JABBER_BUDDY_CHANUSER);
|
||||
JABBER_BUDDY_SET_FLAG(new_buddy, is_away, JABBER_BUDDY_AWAY);
|
||||
local_name = jabber_server_get_local_name (server);
|
||||
if (weechat_strcasecmp (new_buddy->name, local_name) == 0)
|
||||
new_buddy->color = JABBER_COLOR_CHAT_NICK_SELF;
|
||||
else
|
||||
new_buddy->color = jabber_buddy_find_color (new_buddy);
|
||||
|
||||
/* add buddy to end of list */
|
||||
if (muc)
|
||||
{
|
||||
new_buddy->prev_buddy = muc->last_buddy;
|
||||
if (muc->buddies)
|
||||
muc->last_buddy->next_buddy = new_buddy;
|
||||
else
|
||||
muc->buddies = new_buddy;
|
||||
muc->last_buddy = new_buddy;
|
||||
new_buddy->next_buddy = NULL;
|
||||
|
||||
muc->buddies_count++;
|
||||
|
||||
muc->nick_completion_reset = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
new_buddy->prev_buddy = server->last_buddy;
|
||||
if (server->buddies)
|
||||
server->last_buddy->next_buddy = new_buddy;
|
||||
else
|
||||
server->buddies = new_buddy;
|
||||
server->last_buddy = new_buddy;
|
||||
new_buddy->next_buddy = NULL;
|
||||
|
||||
server->buddies_count++;
|
||||
}
|
||||
|
||||
/* add buddy to buffer buddylist */
|
||||
prefix[0] = ' ';
|
||||
prefix[1] = '\0';
|
||||
jabber_buddy_get_gui_infos (new_buddy, prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.nicklist_prefix%d",
|
||||
prefix_color);
|
||||
weechat_nicklist_add_nick (ptr_buffer, ptr_group,
|
||||
new_buddy->name,
|
||||
(is_away) ?
|
||||
"weechat.color.nicklist_away" : "bar_fg",
|
||||
prefix, str_prefix_color, 1);
|
||||
|
||||
/* all is ok, return address of new buddy */
|
||||
return new_buddy;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_change: change buddyname
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_change (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy, const char *new_buddy)
|
||||
{
|
||||
int buddy_is_me, prefix_color;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_nick_group *ptr_group;
|
||||
char prefix[2], str_prefix_color[64];
|
||||
const char *local_name;
|
||||
|
||||
ptr_buffer = (muc) ? muc->buffer : server->buffer;
|
||||
|
||||
/* remove buddy from buddylist */
|
||||
jabber_buddy_get_gui_infos (buddy, prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
weechat_nicklist_remove_nick (ptr_buffer,
|
||||
weechat_nicklist_search_nick (ptr_buffer,
|
||||
ptr_group,
|
||||
buddy->name));
|
||||
|
||||
/* update buddies speaking */
|
||||
local_name = jabber_server_get_local_name (server);
|
||||
buddy_is_me = (strcmp (buddy->name, local_name) == 0) ? 1 : 0;
|
||||
if (muc && !buddy_is_me)
|
||||
jabber_muc_buddy_speaking_rename (muc, buddy->name, new_buddy);
|
||||
|
||||
/* change buddyname */
|
||||
if (buddy->name)
|
||||
free (buddy->name);
|
||||
buddy->name = strdup (new_buddy);
|
||||
if (buddy_is_me)
|
||||
buddy->color = JABBER_COLOR_CHAT_NICK_SELF;
|
||||
else
|
||||
buddy->color = jabber_buddy_find_color (buddy);
|
||||
|
||||
/* add buddy in buddylist */
|
||||
prefix[0] = ' ';
|
||||
prefix[1] = '\0';
|
||||
jabber_buddy_get_gui_infos (buddy, prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.nicklist_prefix%d",
|
||||
prefix_color);
|
||||
weechat_nicklist_add_nick (ptr_buffer, ptr_group,
|
||||
buddy->name, "bar_fg",
|
||||
prefix, str_prefix_color, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_set: set a flag for a buddy
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_set (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy, int set, int flag)
|
||||
{
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_nick_group *ptr_group;
|
||||
char prefix[2], str_prefix_color[64];
|
||||
int prefix_color;
|
||||
|
||||
if (server || muc)
|
||||
{
|
||||
ptr_buffer = (muc) ? muc->buffer : server->buffer;
|
||||
|
||||
/* remove buddy from buddylist */
|
||||
jabber_buddy_get_gui_infos (buddy, prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
weechat_nicklist_remove_nick (ptr_buffer,
|
||||
weechat_nicklist_search_nick (ptr_buffer,
|
||||
ptr_group,
|
||||
buddy->name));
|
||||
|
||||
/* set flag */
|
||||
JABBER_BUDDY_SET_FLAG(buddy, set, flag);
|
||||
|
||||
/* add buddy in buddylist */
|
||||
prefix[0] = ' ';
|
||||
prefix[1] = '\0';
|
||||
jabber_buddy_get_gui_infos (buddy, prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.nicklist_prefix%d",
|
||||
prefix_color);
|
||||
weechat_nicklist_add_nick (ptr_buffer, ptr_group,
|
||||
buddy->name,
|
||||
(buddy->flags & JABBER_BUDDY_AWAY) ?
|
||||
"weechat.color.nicklist_away" : "bar_fg",
|
||||
prefix, str_prefix_color, 1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_free: free a buddy and remove it from buddies list
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_free (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy)
|
||||
{
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_nick_group *ptr_group;
|
||||
struct t_jabber_buddy *new_buddies;
|
||||
char prefix;
|
||||
int prefix_color;
|
||||
|
||||
if ((!server && !muc) || !buddy)
|
||||
return;
|
||||
|
||||
ptr_buffer = (muc) ? muc->buffer : server->buffer;
|
||||
|
||||
/* remove buddy from buddylist */
|
||||
jabber_buddy_get_gui_infos (buddy, &prefix, &prefix_color,
|
||||
ptr_buffer, &ptr_group);
|
||||
weechat_nicklist_remove_nick (ptr_buffer,
|
||||
weechat_nicklist_search_nick (ptr_buffer,
|
||||
ptr_group,
|
||||
buddy->name));
|
||||
|
||||
/* remove buddy */
|
||||
if (muc)
|
||||
{
|
||||
if (muc->last_buddy == buddy)
|
||||
muc->last_buddy = buddy->prev_buddy;
|
||||
if (buddy->prev_buddy)
|
||||
{
|
||||
(buddy->prev_buddy)->next_buddy = buddy->next_buddy;
|
||||
new_buddies = muc->buddies;
|
||||
}
|
||||
else
|
||||
new_buddies = buddy->next_buddy;
|
||||
if (buddy->next_buddy)
|
||||
(buddy->next_buddy)->prev_buddy = buddy->prev_buddy;
|
||||
muc->buddies_count--;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (server->last_buddy == buddy)
|
||||
server->last_buddy = buddy->prev_buddy;
|
||||
if (buddy->prev_buddy)
|
||||
{
|
||||
(buddy->prev_buddy)->next_buddy = buddy->next_buddy;
|
||||
new_buddies = server->buddies;
|
||||
}
|
||||
else
|
||||
new_buddies = buddy->next_buddy;
|
||||
if (buddy->next_buddy)
|
||||
(buddy->next_buddy)->prev_buddy = buddy->prev_buddy;
|
||||
server->buddies_count--;
|
||||
}
|
||||
|
||||
/* free data */
|
||||
if (buddy->name)
|
||||
free (buddy->name);
|
||||
if (buddy->host)
|
||||
free (buddy->host);
|
||||
|
||||
free (buddy);
|
||||
|
||||
if (muc)
|
||||
{
|
||||
muc->buddies = new_buddies;
|
||||
muc->nick_completion_reset = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
server->buddies = new_buddies;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_free_all: free all allocated buddies for a muc
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_free_all (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc)
|
||||
{
|
||||
if (server)
|
||||
{
|
||||
while (server->buddies)
|
||||
{
|
||||
jabber_buddy_free (server, NULL, server->buddies);
|
||||
}
|
||||
/* sould be zero, but prevent any bug :D */
|
||||
server->buddies_count = 0;
|
||||
}
|
||||
|
||||
if (muc)
|
||||
{
|
||||
while (muc->buddies)
|
||||
{
|
||||
jabber_buddy_free (NULL, muc, muc->buddies);
|
||||
}
|
||||
/* sould be zero, but prevent any bug :D */
|
||||
muc->buddies_count = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_search: returns pointer on a buddy
|
||||
*/
|
||||
|
||||
struct t_jabber_buddy *
|
||||
jabber_buddy_search (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
const char *buddyname)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
if (!buddyname)
|
||||
return NULL;
|
||||
|
||||
if (server)
|
||||
{
|
||||
for (ptr_buddy = server->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (weechat_strcasecmp (ptr_buddy->name, buddyname) == 0)
|
||||
return ptr_buddy;
|
||||
}
|
||||
}
|
||||
|
||||
if (muc)
|
||||
{
|
||||
for (ptr_buddy = muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (weechat_strcasecmp (ptr_buddy->name, buddyname) == 0)
|
||||
return ptr_buddy;
|
||||
}
|
||||
}
|
||||
|
||||
/* buddy not found */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_count: returns number of buddies (total, op, halfop, voice) on
|
||||
* a server or MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_count (struct t_jabber_server *server, struct t_jabber_muc *muc,
|
||||
int *total, int *count_op, int *count_halfop,
|
||||
int *count_voice, int *count_normal)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
(*total) = 0;
|
||||
(*count_op) = 0;
|
||||
(*count_halfop) = 0;
|
||||
(*count_voice) = 0;
|
||||
(*count_normal) = 0;
|
||||
|
||||
if (server || muc)
|
||||
{
|
||||
for (ptr_buddy = (muc) ? muc->buddies : server->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
(*total)++;
|
||||
if ((ptr_buddy->flags & JABBER_BUDDY_CHANOWNER) ||
|
||||
(ptr_buddy->flags & JABBER_BUDDY_CHANADMIN) ||
|
||||
(ptr_buddy->flags & JABBER_BUDDY_CHANADMIN2) ||
|
||||
(ptr_buddy->flags & JABBER_BUDDY_OP))
|
||||
(*count_op)++;
|
||||
else
|
||||
{
|
||||
if (ptr_buddy->flags & JABBER_BUDDY_HALFOP)
|
||||
(*count_halfop)++;
|
||||
else
|
||||
{
|
||||
if (ptr_buddy->flags & JABBER_BUDDY_VOICE)
|
||||
(*count_voice)++;
|
||||
else
|
||||
(*count_normal)++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_set_away: set/unset away status for a muc
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_set_away (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy, int is_away)
|
||||
{
|
||||
if (((is_away) && (!(buddy->flags & JABBER_BUDDY_AWAY))) ||
|
||||
((!is_away) && (buddy->flags & JABBER_BUDDY_AWAY)))
|
||||
{
|
||||
if (muc)
|
||||
jabber_buddy_set (NULL, muc, buddy, is_away, JABBER_BUDDY_AWAY);
|
||||
else
|
||||
jabber_buddy_set (server, NULL, buddy, is_away, JABBER_BUDDY_AWAY);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_as_prefix: return string with buddy to display as prefix on
|
||||
* buffer (string will end by a tab)
|
||||
*/
|
||||
|
||||
char *
|
||||
jabber_buddy_as_prefix (struct t_jabber_buddy *buddy, const char *buddyname,
|
||||
const char *force_color)
|
||||
{
|
||||
static char result[256];
|
||||
char prefix[2], str_prefix_color[64];
|
||||
int prefix_color;
|
||||
|
||||
prefix[0] = '\0';
|
||||
prefix[1] = '\0';
|
||||
if (weechat_config_boolean (weechat_config_get ("weechat.look.nickmode")))
|
||||
{
|
||||
if (buddy)
|
||||
{
|
||||
jabber_buddy_get_gui_infos (buddy, &prefix[0], &prefix_color, NULL, NULL);
|
||||
if ((prefix[0] == ' ')
|
||||
&& !weechat_config_boolean (weechat_config_get ("weechat.look.nickmode_empty")))
|
||||
prefix[0] = '\0';
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.nicklist_prefix%d",
|
||||
prefix_color);
|
||||
}
|
||||
else
|
||||
{
|
||||
prefix[0] = (weechat_config_boolean (weechat_config_get ("weechat.look.nickmode_empty"))) ?
|
||||
' ' : '\0';
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color),
|
||||
"weechat.color.chat");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
prefix[0] = '\0';
|
||||
snprintf (str_prefix_color, sizeof (str_prefix_color), "chat");
|
||||
}
|
||||
|
||||
snprintf (result, sizeof (result), "%s%s%s%s%s%s%s%s\t",
|
||||
(weechat_config_string (jabber_config_look_nick_prefix)
|
||||
&& weechat_config_string (jabber_config_look_nick_prefix)[0]) ?
|
||||
JABBER_COLOR_CHAT_DELIMITERS : "",
|
||||
(weechat_config_string (jabber_config_look_nick_prefix)
|
||||
&& weechat_config_string (jabber_config_look_nick_prefix)[0]) ?
|
||||
weechat_config_string (jabber_config_look_nick_prefix) : "",
|
||||
weechat_color(weechat_config_string(weechat_config_get(str_prefix_color))),
|
||||
prefix,
|
||||
(force_color) ? force_color : ((buddy) ? buddy->color : JABBER_COLOR_CHAT_NICK),
|
||||
(buddy) ? buddy->name : buddyname,
|
||||
(weechat_config_string (jabber_config_look_nick_suffix)
|
||||
&& weechat_config_string (jabber_config_look_nick_suffix)[0]) ?
|
||||
JABBER_COLOR_CHAT_DELIMITERS : "",
|
||||
(weechat_config_string (jabber_config_look_nick_suffix)
|
||||
&& weechat_config_string (jabber_config_look_nick_suffix)[0]) ?
|
||||
weechat_config_string (jabber_config_look_nick_suffix) : "");
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_add_to_infolist: add a buddy in an infolist
|
||||
* return 1 if ok, 0 if error
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_buddy_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_jabber_buddy *buddy)
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
|
||||
if (!infolist || !buddy)
|
||||
return 0;
|
||||
|
||||
ptr_item = weechat_infolist_new_item (infolist);
|
||||
if (!ptr_item)
|
||||
return 0;
|
||||
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "name", buddy->name))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "host", buddy->host))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "flags", buddy->flags))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "color", buddy->color))
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buddy_print_log: print buddy infos in log (usually for crash dump)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buddy_print_log (struct t_jabber_buddy *buddy)
|
||||
{
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf (" => buddy %s (addr:0x%lx):", buddy->name, buddy);
|
||||
weechat_log_printf (" host . . . . . : %s", buddy->host);
|
||||
weechat_log_printf (" flags. . . . . : %d", buddy->flags);
|
||||
weechat_log_printf (" color. . . . . : '%s'", buddy->color);
|
||||
weechat_log_printf (" prev_buddy . . : 0x%lx", buddy->prev_buddy);
|
||||
weechat_log_printf (" next_buddy . . : 0x%lx", buddy->next_buddy);
|
||||
}
|
||||
@@ -1,101 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_BUDDY_H
|
||||
#define __WEECHAT_JABBER_BUDDY_H 1
|
||||
|
||||
#define JABBER_BUDDY_CHANOWNER 1
|
||||
#define JABBER_BUDDY_CHANADMIN 2
|
||||
#define JABBER_BUDDY_CHANADMIN2 4
|
||||
#define JABBER_BUDDY_OP 8
|
||||
#define JABBER_BUDDY_HALFOP 16
|
||||
#define JABBER_BUDDY_VOICE 32
|
||||
#define JABBER_BUDDY_AWAY 64
|
||||
#define JABBER_BUDDY_CHANUSER 128
|
||||
#define JABBER_BUDDY_SET_FLAG(buddy, set, flag) \
|
||||
if (set) \
|
||||
buddy->flags |= flag; \
|
||||
else \
|
||||
buddy->flags &= 0xFFFF - flag;
|
||||
|
||||
#define JABBER_BUDDY_GROUP_OP "1|op"
|
||||
#define JABBER_BUDDY_GROUP_HALFOP "2|halfop"
|
||||
#define JABBER_BUDDY_GROUP_VOICE "3|voice"
|
||||
#define JABBER_BUDDY_GROUP_CHANUSER "4|chanuser"
|
||||
#define JABBER_BUDDY_GROUP_NORMAL "5|normal"
|
||||
|
||||
struct t_jabber_server;
|
||||
struct t_jabber_muc;
|
||||
|
||||
struct t_jabber_buddy
|
||||
{
|
||||
char *name; /* buddyname */
|
||||
char *host; /* full hostname */
|
||||
int flags; /* chanowner/chanadmin, op, halfop, */
|
||||
/* voice, away */
|
||||
const char *color; /* color for buddyname in chat window */
|
||||
struct t_jabber_buddy *prev_buddy; /* link to previous buddy in MUC */
|
||||
struct t_jabber_buddy *next_buddy; /* link to next buddy in MUC */
|
||||
};
|
||||
|
||||
extern int jabber_buddy_valid (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy);
|
||||
extern const char *jabber_buddy_find_color (struct t_jabber_buddy *buddy);
|
||||
extern struct t_jabber_buddy *jabber_buddy_new (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
int is_chanowner,
|
||||
int is_chanadmin,
|
||||
int is_chanadmin2,
|
||||
int is_op,
|
||||
int is_halfop,
|
||||
int has_voice,
|
||||
int is_chanuser,
|
||||
int is_away);
|
||||
extern void jabber_buddy_change (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy,
|
||||
const char *new_buddy);
|
||||
extern void jabber_buddy_set (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy, int set, int flag);
|
||||
extern void jabber_buddy_free (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy);
|
||||
extern void jabber_buddy_free_all (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc);
|
||||
extern struct t_jabber_buddy *jabber_buddy_search (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
const char *buddyname);
|
||||
extern void jabber_buddy_count (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc, int *total,
|
||||
int *count_op, int *count_halfop,
|
||||
int *count_voice, int *count_normal);
|
||||
extern void jabber_buddy_set_away (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
struct t_jabber_buddy *buddy, int is_away);
|
||||
extern char *jabber_buddy_as_prefix (struct t_jabber_buddy *buddy,
|
||||
const char *buddyname,
|
||||
const char *force_color);
|
||||
extern int jabber_buddy_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_jabber_buddy *buddy);
|
||||
extern void jabber_buddy_print_log (struct t_jabber_buddy *buddy);
|
||||
|
||||
#endif /* jabber-buddy.h */
|
||||
@@ -1,313 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-buffer.c: buffer functions for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-command.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
/* buffer for all servers (if using one buffer for all servers) */
|
||||
struct t_gui_buffer *jabber_buffer_servers = NULL;
|
||||
|
||||
|
||||
/*
|
||||
* jabber_buffer_get_server_muc: get Jabber server and MUC pointers
|
||||
* with a buffer pointer
|
||||
* (buffer may be a server or a MUC)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buffer_get_server_muc (struct t_gui_buffer *buffer,
|
||||
struct t_jabber_server **server,
|
||||
struct t_jabber_muc **muc)
|
||||
{
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
if (server)
|
||||
*server = NULL;
|
||||
if (muc)
|
||||
*muc = NULL;
|
||||
|
||||
if (!buffer)
|
||||
return;
|
||||
|
||||
/* look for a server or MUC using this buffer */
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if (ptr_server->buffer == buffer)
|
||||
{
|
||||
if (server)
|
||||
{
|
||||
if (weechat_config_boolean (jabber_config_look_one_server_buffer))
|
||||
*server = jabber_current_server;
|
||||
else
|
||||
*server = ptr_server;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
for (ptr_muc = ptr_server->mucs; ptr_muc;
|
||||
ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
if (ptr_muc->buffer == buffer)
|
||||
{
|
||||
if (server)
|
||||
*server = ptr_server;
|
||||
if (muc)
|
||||
*muc = ptr_muc;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* no server or MUC found */
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buffer_build_name: build buffer name with a server and a MUC
|
||||
*/
|
||||
|
||||
char *
|
||||
jabber_buffer_build_name (const char *server, const char *muc)
|
||||
{
|
||||
static char buffer[128];
|
||||
|
||||
buffer[0] = '\0';
|
||||
|
||||
if (!server && !muc)
|
||||
return buffer;
|
||||
|
||||
if (server && muc)
|
||||
snprintf (buffer, sizeof (buffer), "%s.%s", server, muc);
|
||||
else
|
||||
snprintf (buffer, sizeof (buffer), "%s",
|
||||
(server) ? server : muc);
|
||||
|
||||
return buffer;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buffer_get_server_prefix: return prefix, with server name if server
|
||||
* buffers are displayed in only one buffer
|
||||
*/
|
||||
|
||||
char *
|
||||
jabber_buffer_get_server_prefix (struct t_jabber_server *server,
|
||||
char *prefix_code)
|
||||
{
|
||||
static char buf[256];
|
||||
const char *prefix;
|
||||
|
||||
prefix = (prefix_code && prefix_code[0]) ?
|
||||
weechat_prefix (prefix_code) : NULL;
|
||||
|
||||
if (weechat_config_boolean (jabber_config_look_one_server_buffer) && server)
|
||||
{
|
||||
snprintf (buf, sizeof (buf), "%s%s[%s%s%s]%s ",
|
||||
(prefix) ? prefix : "",
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
server->name,
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT);
|
||||
}
|
||||
else
|
||||
{
|
||||
snprintf (buf, sizeof (buf), "%s",
|
||||
(prefix) ? prefix : "");
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buffer_merge_servers: merge server buffers in one buffer
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buffer_merge_servers ()
|
||||
{
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
int number, number_selected;
|
||||
char charset_modifier[256];
|
||||
|
||||
jabber_buffer_servers = NULL;
|
||||
jabber_current_server = NULL;
|
||||
|
||||
/* choose server buffer with lower number (should be first created) */
|
||||
number_selected = -1;
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if (ptr_server->buffer)
|
||||
{
|
||||
number = weechat_buffer_get_integer (ptr_server->buffer, "number");
|
||||
if ((number_selected == -1) || (number < number_selected))
|
||||
{
|
||||
jabber_buffer_servers = ptr_server->buffer;
|
||||
jabber_current_server = ptr_server;
|
||||
number_selected = number;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (jabber_buffer_servers)
|
||||
{
|
||||
weechat_buffer_set (jabber_buffer_servers,
|
||||
"name", JABBER_BUFFER_ALL_SERVERS_NAME);
|
||||
weechat_buffer_set (jabber_buffer_servers,
|
||||
"short_name", JABBER_BUFFER_ALL_SERVERS_NAME);
|
||||
weechat_buffer_set (jabber_buffer_servers,
|
||||
"localvar_set_server", JABBER_BUFFER_ALL_SERVERS_NAME);
|
||||
weechat_buffer_set (jabber_buffer_servers,
|
||||
"localvar_set_muc", JABBER_BUFFER_ALL_SERVERS_NAME);
|
||||
snprintf (charset_modifier, sizeof (charset_modifier),
|
||||
"jabber.%s", jabber_current_server->name);
|
||||
weechat_buffer_set (jabber_buffer_servers,
|
||||
"localvar_set_charset_modifier",
|
||||
charset_modifier);
|
||||
weechat_hook_signal_send ("logger_stop",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER,
|
||||
jabber_buffer_servers);
|
||||
weechat_hook_signal_send ("logger_start",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER,
|
||||
jabber_buffer_servers);
|
||||
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if (ptr_server->buffer
|
||||
&& (ptr_server->buffer != jabber_buffer_servers))
|
||||
{
|
||||
ptr_buffer = ptr_server->buffer;
|
||||
ptr_server->buffer = jabber_buffer_servers;
|
||||
weechat_buffer_close (ptr_buffer);
|
||||
}
|
||||
}
|
||||
|
||||
jabber_server_set_buffer_title (jabber_current_server);
|
||||
jabber_server_buffer_set_highlight_words (jabber_buffer_servers);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buffer_split_server: split the server buffer into many buffers (one by server)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_buffer_split_server ()
|
||||
{
|
||||
struct t_jabber_server *ptr_server;
|
||||
char buffer_name[256], charset_modifier[256];
|
||||
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if (ptr_server->buffer && (ptr_server != jabber_current_server))
|
||||
{
|
||||
jabber_server_create_buffer (ptr_server, 0);
|
||||
}
|
||||
}
|
||||
|
||||
if (jabber_current_server)
|
||||
{
|
||||
snprintf (buffer_name, sizeof (buffer_name),
|
||||
"server.%s", jabber_current_server->name);
|
||||
weechat_buffer_set (jabber_current_server->buffer, "name", buffer_name);
|
||||
weechat_buffer_set (jabber_current_server->buffer,
|
||||
"short_name", jabber_current_server->name);
|
||||
weechat_buffer_set (jabber_current_server->buffer,
|
||||
"localvar_set_server", jabber_current_server->name);
|
||||
weechat_buffer_set (jabber_current_server->buffer,
|
||||
"localvar_set_muc", jabber_current_server->name);
|
||||
snprintf (charset_modifier, sizeof (charset_modifier),
|
||||
"jabber.%s", jabber_current_server->name);
|
||||
weechat_buffer_set (jabber_current_server->buffer,
|
||||
"localvar_set_charset_modifier",
|
||||
charset_modifier);
|
||||
weechat_hook_signal_send ("logger_stop",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER,
|
||||
jabber_current_server->buffer);
|
||||
weechat_hook_signal_send ("logger_start",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER,
|
||||
jabber_current_server->buffer);
|
||||
}
|
||||
|
||||
jabber_buffer_servers = NULL;
|
||||
jabber_current_server = NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_buffer_close_cb: callback called when a buffer is closed
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_buffer_close_cb (void *data, struct t_gui_buffer *buffer)
|
||||
{
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
/* send PART for channel if its buffer is closed */
|
||||
//if ((ptr_channel->type == JABBER_CHANNEL_TYPE_CHANNEL)
|
||||
// && (ptr_channel->nicks))
|
||||
//{
|
||||
// jabber_command_part_channel (ptr_server, ptr_channel->name, NULL);
|
||||
//}
|
||||
jabber_muc_free (ptr_server, ptr_muc);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ptr_server)
|
||||
{
|
||||
/* send PART on all channels for server, then disconnect from server */
|
||||
//ptr_channel = ptr_server->channels;
|
||||
//while (ptr_channel)
|
||||
//{
|
||||
// next_channel = ptr_channel->next_channel;
|
||||
// weechat_buffer_close (ptr_channel->buffer);
|
||||
// ptr_channel = next_channel;
|
||||
//}
|
||||
jabber_server_disconnect (ptr_server, 0);
|
||||
ptr_server->buffer = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
if (jabber_buffer_servers == buffer)
|
||||
jabber_buffer_servers = NULL;
|
||||
if (ptr_server && (jabber_current_server == ptr_server))
|
||||
jabber_current_server = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_BUFFER_H
|
||||
#define __WEECHAT_JABBER_BUFFER_H 1
|
||||
|
||||
#define JABBER_BUFFER_ALL_SERVERS_NAME "servers"
|
||||
|
||||
struct t_gui_buffer;
|
||||
struct t_jabber_server;
|
||||
struct t_jabber_muc;
|
||||
|
||||
extern struct t_gui_buffer *jabber_buffer_servers;
|
||||
|
||||
extern void jabber_buffer_get_server_muc (struct t_gui_buffer *buffer,
|
||||
struct t_jabber_server **server,
|
||||
struct t_jabber_muc **muc);
|
||||
extern char *jabber_buffer_build_name (const char *server, const char *muc);
|
||||
extern char *jabber_buffer_get_server_prefix (struct t_jabber_server *server,
|
||||
char *prefix_code);
|
||||
extern void jabber_buffer_merge_servers ();
|
||||
extern void jabber_buffer_split_server ();
|
||||
extern int jabber_buffer_close_cb (void *data, struct t_gui_buffer *buffer);
|
||||
|
||||
#endif /* jabber-buffer.h */
|
||||
@@ -1,847 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-command.c: Jabber commands */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-command.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-input.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-display.h"
|
||||
#include "jabber-xmpp.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_command_quit_server: send QUIT to a server
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_command_quit_server (struct t_jabber_server *server,
|
||||
const char *arguments)
|
||||
{
|
||||
if (!server)
|
||||
return;
|
||||
|
||||
(void) arguments;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jabber: test
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jabber (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
int i, detailed_list, one_server_found;
|
||||
struct t_jabber_server *ptr_server2, *server_found, *new_server;
|
||||
char *server_name;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) buffer;
|
||||
(void) argv_eol;
|
||||
|
||||
if ((argc == 1)
|
||||
|| (weechat_strcasecmp (argv[1], "list") == 0)
|
||||
|| (weechat_strcasecmp (argv[1], "listfull") == 0))
|
||||
{
|
||||
/* list servers */
|
||||
server_name = NULL;
|
||||
detailed_list = 0;
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (weechat_strcasecmp (argv[i], "list") == 0)
|
||||
continue;
|
||||
if (weechat_strcasecmp (argv[i], "listfull") == 0)
|
||||
{
|
||||
detailed_list = 1;
|
||||
continue;
|
||||
}
|
||||
if (!server_name)
|
||||
server_name = argv[i];
|
||||
}
|
||||
if (!server_name)
|
||||
{
|
||||
if (jabber_servers)
|
||||
{
|
||||
weechat_printf (NULL, "");
|
||||
weechat_printf (NULL, _("All servers:"));
|
||||
for (ptr_server2 = jabber_servers; ptr_server2;
|
||||
ptr_server2 = ptr_server2->next_server)
|
||||
{
|
||||
jabber_display_server (ptr_server2, detailed_list);
|
||||
}
|
||||
}
|
||||
else
|
||||
weechat_printf (NULL, _("No server"));
|
||||
}
|
||||
else
|
||||
{
|
||||
one_server_found = 0;
|
||||
for (ptr_server2 = jabber_servers; ptr_server2;
|
||||
ptr_server2 = ptr_server2->next_server)
|
||||
{
|
||||
if (weechat_strcasestr (ptr_server2->name, server_name))
|
||||
{
|
||||
if (!one_server_found)
|
||||
{
|
||||
weechat_printf (NULL, "");
|
||||
weechat_printf (NULL,
|
||||
_("Servers with \"%s\":"),
|
||||
server_name);
|
||||
}
|
||||
one_server_found = 1;
|
||||
jabber_display_server (ptr_server2, detailed_list);
|
||||
}
|
||||
}
|
||||
if (!one_server_found)
|
||||
weechat_printf (NULL,
|
||||
_("No server found with \"%s\""),
|
||||
server_name);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "add") == 0)
|
||||
{
|
||||
if (argc < 6)
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(NULL, "server add");
|
||||
}
|
||||
if (jabber_server_search (argv[2]))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" already exists, "
|
||||
"can't create it!"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2]);
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
new_server = jabber_server_alloc (argv[2]);
|
||||
if (!new_server)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: unable to create server"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME);
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_USERNAME],
|
||||
argv[3], 1);
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_SERVER],
|
||||
argv[4], 1);
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_PASSWORD],
|
||||
argv[5], 1);
|
||||
|
||||
/* parse arguments */
|
||||
for (i = 6; i < argc; i++)
|
||||
{
|
||||
if (argv[i][0] == '-')
|
||||
{
|
||||
if (weechat_strcasecmp (argv[i], "-auto") == 0)
|
||||
{
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_AUTOCONNECT],
|
||||
"on", 1);
|
||||
}
|
||||
if (weechat_strcasecmp (argv[i], "-noauto") == 0)
|
||||
{
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_AUTOCONNECT],
|
||||
"off", 1);
|
||||
}
|
||||
if (weechat_strcasecmp (argv[i], "-ipv6") == 0)
|
||||
{
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_IPV6],
|
||||
"on", 1);
|
||||
}
|
||||
if (weechat_strcasecmp (argv[i], "-tls") == 0)
|
||||
{
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_TLS],
|
||||
"on", 1);
|
||||
}
|
||||
if (weechat_strcasecmp (argv[i], "-sasl") == 0)
|
||||
{
|
||||
weechat_config_option_set (new_server->options[JABBER_SERVER_OPTION_SASL],
|
||||
"on", 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
weechat_printf (NULL,
|
||||
_("%s: server %s%s%s created"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
new_server->name,
|
||||
JABBER_COLOR_CHAT);
|
||||
|
||||
if (JABBER_SERVER_OPTION_BOOLEAN(new_server, JABBER_SERVER_OPTION_AUTOCONNECT))
|
||||
jabber_server_connect (new_server);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "copy") == 0)
|
||||
{
|
||||
if (argc < 4)
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(NULL, "server copy");
|
||||
}
|
||||
|
||||
/* look for server by name */
|
||||
server_found = jabber_server_search (argv[2]);
|
||||
if (!server_found)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" not found for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], "server copy");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* check if target name already exists */
|
||||
if (jabber_server_search (argv[3]))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" already exists for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[3], "server copy");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* copy server */
|
||||
new_server = jabber_server_copy (server_found, argv[3]);
|
||||
if (new_server)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s: server %s%s%s has been copied to "
|
||||
"%s%s"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
argv[2],
|
||||
JABBER_COLOR_CHAT,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
argv[3]);
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "rename") == 0)
|
||||
{
|
||||
if (argc < 4)
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(NULL, "server rename");
|
||||
}
|
||||
|
||||
/* look for server by name */
|
||||
server_found = jabber_server_search (argv[2]);
|
||||
if (!server_found)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" not found for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], "server rename");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* check if target name already exists */
|
||||
if (jabber_server_search (argv[3]))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" already exists for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[3], "server rename");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* rename server */
|
||||
if (jabber_server_rename (server_found, argv[3]))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s: server %s%s%s has been renamed to "
|
||||
"%s%s"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
argv[2],
|
||||
JABBER_COLOR_CHAT,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
argv[3]);
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "keep") == 0)
|
||||
{
|
||||
if (argc < 3)
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(NULL, "server keep");
|
||||
}
|
||||
|
||||
/* look for server by name */
|
||||
server_found = jabber_server_search (argv[2]);
|
||||
if (!server_found)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" not found for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], "server keep");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* check that is it temporary server */
|
||||
if (!server_found->temp_server)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" is not a temporary server"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], "server keep");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/* remove temporary flag on server */
|
||||
server_found->temp_server = 0;
|
||||
|
||||
weechat_printf (NULL,
|
||||
_("%s: server %s%s%s is not temporary any more"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
argv[2],
|
||||
JABBER_COLOR_CHAT);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "del") == 0)
|
||||
{
|
||||
if (argc < 3)
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(NULL, "server del");
|
||||
}
|
||||
|
||||
/* look for server by name */
|
||||
server_found = jabber_server_search (argv[2]);
|
||||
if (!server_found)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" not found for "
|
||||
"\"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], "server del");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
if (server_found->is_connected)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: you can not delete server \"%s\" "
|
||||
"because you are connected to. "
|
||||
"Try \"/disconnect %s\" before."),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[2], argv[2]);
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
server_name = strdup (server_found->name);
|
||||
jabber_server_free (server_found);
|
||||
weechat_printf (NULL,
|
||||
_("%s: Server %s%s%s has been deleted"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
(server_name) ? server_name : "???",
|
||||
JABBER_COLOR_CHAT);
|
||||
if (server_name)
|
||||
free (server_name);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "switch") == 0)
|
||||
{
|
||||
if (weechat_config_boolean (jabber_config_look_one_server_buffer))
|
||||
{
|
||||
if (jabber_current_server)
|
||||
{
|
||||
ptr_server2 = jabber_current_server->next_server;
|
||||
if (!ptr_server2)
|
||||
ptr_server2 = jabber_servers;
|
||||
while (ptr_server2 != jabber_current_server)
|
||||
{
|
||||
if (ptr_server2->buffer)
|
||||
{
|
||||
jabber_current_server = ptr_server2;
|
||||
break;
|
||||
}
|
||||
ptr_server2 = ptr_server2->next_server;
|
||||
if (!ptr_server2)
|
||||
ptr_server2 = jabber_servers;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (ptr_server2 = jabber_servers; ptr_server2;
|
||||
ptr_server2 = ptr_server2->next_server)
|
||||
{
|
||||
if (ptr_server2->buffer)
|
||||
{
|
||||
jabber_current_server = ptr_server2;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
jabber_server_set_current_server (jabber_current_server);
|
||||
}
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: unknown option for \"%s\" command"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME, "server");
|
||||
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jchat: chat with a buddy
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jchat (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
if (!ptr_server || !ptr_server->is_connected || !ptr_server->iks_authorized)
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) argv;
|
||||
|
||||
if (argc > 1)
|
||||
{
|
||||
/* create private window if not already opened */
|
||||
ptr_muc = jabber_muc_search (ptr_server, argv[1]);
|
||||
if (!ptr_muc)
|
||||
{
|
||||
ptr_muc = jabber_muc_new (ptr_server,
|
||||
JABBER_MUC_TYPE_PRIVATE,
|
||||
argv[1], 1, 0);
|
||||
if (!ptr_muc)
|
||||
{
|
||||
weechat_printf (ptr_server->buffer,
|
||||
_("%s%s: cannot create new private "
|
||||
"buffer \"%s\""),
|
||||
jabber_buffer_get_server_prefix (ptr_server, "error"),
|
||||
JABBER_PLUGIN_NAME, argv[1]);
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
}
|
||||
weechat_buffer_set (ptr_muc->buffer, "display", "1");
|
||||
|
||||
/* display text if given */
|
||||
if (argv_eol[2])
|
||||
{
|
||||
jabber_xmpp_send_chat_message (ptr_server, ptr_muc, argv_eol[2]);
|
||||
jabber_input_user_message_display (ptr_muc->buffer, argv_eol[2]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
JABBER_COMMAND_TOO_FEW_ARGUMENTS(ptr_server->buffer, "chat");
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jconnect_one_server: connect to one server
|
||||
* return 0 if error, 1 if ok
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jconnect_one_server (struct t_jabber_server *server, int no_join)
|
||||
{
|
||||
if (!server)
|
||||
return 0;
|
||||
|
||||
if (server->is_connected)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: already connected to server "
|
||||
"\"%s\"!"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
server->name);
|
||||
return 0;
|
||||
}
|
||||
if (server->hook_connect)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: currently connecting to server "
|
||||
"\"%s\"!"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
server->name);
|
||||
return 0;
|
||||
}
|
||||
server->disable_autojoin = no_join;
|
||||
if (jabber_server_connect (server))
|
||||
{
|
||||
server->reconnect_start = 0;
|
||||
server->reconnect_join = (server->mucs) ? 1 : 0;
|
||||
}
|
||||
|
||||
/* connect ok */
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jconnect: connect to server(s)
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jconnect (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
int i, nb_connect, connect_ok, all_servers, no_join, port, ipv6, tls, sasl;
|
||||
char *name, *error;
|
||||
long number;
|
||||
|
||||
JABBER_GET_SERVER(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) argv_eol;
|
||||
|
||||
nb_connect = 0;
|
||||
connect_ok = 1;
|
||||
port = JABBER_SERVER_DEFAULT_PORT;
|
||||
ipv6 = 0;
|
||||
tls = 0;
|
||||
sasl = 0;
|
||||
|
||||
all_servers = 0;
|
||||
no_join = 0;
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (weechat_strcasecmp (argv[i], "-all") == 0)
|
||||
all_servers = 1;
|
||||
if (weechat_strcasecmp (argv[i], "-nojoin") == 0)
|
||||
no_join = 1;
|
||||
if (weechat_strcasecmp (argv[i], "-ipv6") == 0)
|
||||
ipv6 = 1;
|
||||
if (weechat_strcasecmp (argv[i], "-tls") == 0)
|
||||
tls = 1;
|
||||
if (weechat_strcasecmp (argv[i], "-sasl") == 0)
|
||||
sasl = 1;
|
||||
if (weechat_strcasecmp (argv[i], "-port") == 0)
|
||||
{
|
||||
if (i == (argc - 1))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: missing argument for \"%s\" "
|
||||
"option"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
"-port");
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
error = NULL;
|
||||
number = strtol (argv[++i], &error, 10);
|
||||
if (error && !error[0])
|
||||
port = number;
|
||||
}
|
||||
}
|
||||
|
||||
if (all_servers)
|
||||
{
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
nb_connect++;
|
||||
if (!ptr_server->is_connected && (!ptr_server->hook_connect))
|
||||
{
|
||||
if (!jabber_command_jconnect_one_server (ptr_server, no_join))
|
||||
connect_ok = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (argv[i][0] != '-')
|
||||
{
|
||||
nb_connect++;
|
||||
ptr_server = jabber_server_search (argv[i]);
|
||||
if (ptr_server)
|
||||
{
|
||||
if (!jabber_command_jconnect_one_server (ptr_server, no_join))
|
||||
connect_ok = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
name = jabber_server_get_name_without_port (argv[i]);
|
||||
ptr_server = jabber_server_alloc ((name) ? name : argv[i]);
|
||||
if (name)
|
||||
free (name);
|
||||
if (ptr_server)
|
||||
{
|
||||
ptr_server->temp_server = 1;
|
||||
weechat_config_option_set (ptr_server->options[JABBER_SERVER_OPTION_SERVER],
|
||||
argv[i], 1);
|
||||
weechat_printf (NULL,
|
||||
_("%s: server %s%s%s created (temporary server, NOT SAVED!)"),
|
||||
JABBER_PLUGIN_NAME,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
ptr_server->name,
|
||||
JABBER_COLOR_CHAT);
|
||||
if (!jabber_command_jconnect_one_server (ptr_server, 0))
|
||||
connect_ok = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: unable to create server "
|
||||
"\"%s\""),
|
||||
weechat_prefix ("error"),
|
||||
JABBER_PLUGIN_NAME, argv[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (weechat_strcasecmp (argv[i], "-port") == 0)
|
||||
i++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (nb_connect == 0)
|
||||
connect_ok = jabber_command_jconnect_one_server (ptr_server, no_join);
|
||||
|
||||
if (!connect_ok)
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jdisconnect_one_server: disconnect from a server
|
||||
* return 0 if error, 1 if ok
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jdisconnect_one_server (struct t_jabber_server *server)
|
||||
{
|
||||
if (!server)
|
||||
return 0;
|
||||
|
||||
if ((!server->is_connected) && (!server->hook_connect)
|
||||
&& (server->reconnect_start == 0))
|
||||
{
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: not connected to server \"%s\"!"),
|
||||
jabber_buffer_get_server_prefix (server, "error"),
|
||||
JABBER_PLUGIN_NAME, server->name);
|
||||
return 0;
|
||||
}
|
||||
if (server->reconnect_start > 0)
|
||||
{
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: auto-reconnection is cancelled"),
|
||||
jabber_buffer_get_server_prefix (server, NULL),
|
||||
JABBER_PLUGIN_NAME);
|
||||
}
|
||||
jabber_command_quit_server (server, NULL);
|
||||
jabber_server_disconnect (server, 0);
|
||||
|
||||
/* disconnect ok */
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_jdisconnect: disconnect from server(s)
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_command_jdisconnect (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
int i, disconnect_ok;
|
||||
|
||||
JABBER_GET_SERVER(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) argv_eol;
|
||||
|
||||
if (argc < 2)
|
||||
disconnect_ok = jabber_command_jdisconnect_one_server (ptr_server);
|
||||
else
|
||||
{
|
||||
disconnect_ok = 1;
|
||||
|
||||
if (weechat_strcasecmp (argv[1], "-all") == 0)
|
||||
{
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if ((ptr_server->is_connected) || (ptr_server->hook_connect)
|
||||
|| (ptr_server->reconnect_start != 0))
|
||||
{
|
||||
if (!jabber_command_jdisconnect_one_server (ptr_server))
|
||||
disconnect_ok = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
ptr_server = jabber_server_search (argv[i]);
|
||||
if (ptr_server)
|
||||
{
|
||||
if (!jabber_command_jdisconnect_one_server (ptr_server))
|
||||
disconnect_ok = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: server \"%s\" not found"),
|
||||
weechat_prefix ("error"),
|
||||
JABBER_PLUGIN_NAME, argv[i]);
|
||||
disconnect_ok = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!disconnect_ok)
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_command_init: init Jabber commands (create hooks)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_command_init ()
|
||||
{
|
||||
weechat_hook_command ("jabber",
|
||||
N_("list, add or remove Jabber servers"),
|
||||
N_("[list [servername]] | [listfull [servername]] | "
|
||||
"[add servername username hostname[/port] password "
|
||||
"[-auto | -noauto] [-ipv6] [-tls] [-sasl]] | "
|
||||
"[copy servername newservername] | "
|
||||
"[rename servername newservername] | "
|
||||
"[keep servername] | [del servername] | "
|
||||
"[switch]"),
|
||||
N_(" list: list servers (no parameter implies "
|
||||
"this list)\n"
|
||||
" listfull: list servers with detailed info for "
|
||||
"each server\n"
|
||||
" add: create a new server\n"
|
||||
"servername: server name, for internal and "
|
||||
"display use\n"
|
||||
" username: username to use on server\n"
|
||||
" hostname: name or IP address of server, with "
|
||||
"optional port (default: 5222)\n"
|
||||
" password: password for username on server\n"
|
||||
" auto: automatically connect to server "
|
||||
"when WeeChat starts\n"
|
||||
" noauto: do not connect to server when "
|
||||
"WeeChat starts (default)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" sasl: use SASL for authentication\n"
|
||||
" copy: duplicate a server\n"
|
||||
" rename: rename a server\n"
|
||||
" keep: keep server in config file (for "
|
||||
"temporary servers only)\n"
|
||||
" del: delete a server\n"
|
||||
" switch: switch active server (when one "
|
||||
"buffer is used for all servers, default key: "
|
||||
"alt-s on server buffer)\n\n"
|
||||
"Examples:\n"
|
||||
" /jabber listfull\n"
|
||||
" /jabber add jabberfr user jabber.fr/5222 "
|
||||
"password -tls\n"
|
||||
" /jabber copy jabberfr jabberfr2\n"
|
||||
" /jabber rename jabberfr jabbfr\n"
|
||||
" /jabber del jabberfr\n"
|
||||
" /jabber switch"),
|
||||
"add|copy|rename|keep|del|list|listfull|switch "
|
||||
"%(jabber_servers) %(jabber_servers)",
|
||||
&jabber_command_jabber, NULL);
|
||||
weechat_hook_command ("jchat",
|
||||
N_("chat with a buddy"),
|
||||
N_("buddy [text]"),
|
||||
N_("buddy: buddy name for chat\n"
|
||||
" text: text to send"),
|
||||
"%(nicks) %-", &jabber_command_jchat, NULL);
|
||||
weechat_hook_command ("jconnect",
|
||||
N_("connect to Jabber server(s)"),
|
||||
N_("[-all [-nojoin] | servername [servername ...] "
|
||||
"[-nojoin] | hostname [-port port] [-ipv6] "
|
||||
"[-tls] [-sasl]]"),
|
||||
N_(" -all: connect to all servers\n"
|
||||
"servername: internal server name to connect\n"
|
||||
" -nojoin: do not join any MUC (even if "
|
||||
"autojoin is enabled on server)\n"
|
||||
" hostname: hostname to connect\n"
|
||||
" port: port for server (integer, default "
|
||||
"is 6667)\n"
|
||||
" ipv6: use IPv6 protocol\n"
|
||||
" tls: use TLS cryptographic protocol\n"
|
||||
" saal: use SASL for authentication"),
|
||||
"%(jabber_servers)|-all|-nojoin|%*",
|
||||
&jabber_command_jconnect, NULL);
|
||||
weechat_hook_command ("jdisconnect",
|
||||
N_("disconnect from Jabber server(s)"),
|
||||
N_("[-all | servername [servername ...]]"),
|
||||
N_(" -all: disconnect from all servers\n"
|
||||
"servername: server name to disconnect"),
|
||||
"%(jabber_servers)|-all",
|
||||
&jabber_command_jdisconnect, NULL);
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_COMMAND_H
|
||||
#define __WEECHAT_JABBER_COMMAND_H 1
|
||||
|
||||
struct t_jabber_server;
|
||||
|
||||
#define JABBER_COMMAND_TOO_FEW_ARGUMENTS(__buffer, __command) \
|
||||
weechat_printf (__buffer, \
|
||||
_("%s%s: too few arguments for \"%s\" command"), \
|
||||
jabber_buffer_get_server_prefix (ptr_server, "error"), \
|
||||
JABBER_PLUGIN_NAME, \
|
||||
__command); \
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
extern void jabber_command_quit_server (struct t_jabber_server *server,
|
||||
const char *arguments);
|
||||
extern void jabber_command_init ();
|
||||
|
||||
#endif /* jabber-command.h */
|
||||
@@ -1,458 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-completion.c: completion for Jabber commands */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-completion.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_completion_server_cb: callback for completion with current server
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_server_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
JABBER_GET_SERVER(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_server)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion, ptr_server->name,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_server_local_name_cb: callback for completion with local
|
||||
* name on server
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_server_local_name_cb (void *data,
|
||||
const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
const char *local_name;
|
||||
|
||||
JABBER_GET_SERVER(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_server)
|
||||
{
|
||||
local_name = jabber_server_get_local_name (ptr_server);
|
||||
if (local_name && local_name[0])
|
||||
{
|
||||
weechat_hook_completion_list_add (completion, local_name,
|
||||
1, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_server_buddies_cb: callback for completion with buddies
|
||||
* of current server
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_server_buddies_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
struct t_jabber_muc *ptr_muc2;
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
const char *local_name;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_server)
|
||||
{
|
||||
for (ptr_muc2 = ptr_server->mucs; ptr_muc2;
|
||||
ptr_muc2 = ptr_muc2->next_muc)
|
||||
{
|
||||
if (ptr_muc2->type == JABBER_MUC_TYPE_MUC)
|
||||
{
|
||||
for (ptr_buddy = ptr_muc2->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_buddy->name,
|
||||
1, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
local_name = jabber_server_get_local_name (ptr_server);
|
||||
|
||||
if (local_name && local_name[0])
|
||||
{
|
||||
/* add local name at the end */
|
||||
weechat_hook_completion_list_add (completion, local_name,
|
||||
1, WEECHAT_LIST_POS_END);
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_servers_cb: callback for completion with servers
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_servers_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
struct t_jabber_server *ptr_server;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion, ptr_server->name,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_muc_cb: callback for completion with current MUC
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_muc_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion, ptr_muc->name,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_muc_buddies_cb: callback for completion with buddies
|
||||
* of current MUC
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_muc_buddies_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
const char *buddy, *local_name;
|
||||
int list_size, i, j;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
switch (ptr_muc->type)
|
||||
{
|
||||
case JABBER_MUC_TYPE_MUC:
|
||||
for (ptr_buddy = ptr_muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_buddy->name,
|
||||
1,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
/* add buddies speaking recently on this MUC */
|
||||
if (weechat_config_boolean (jabber_config_look_nick_completion_smart))
|
||||
{
|
||||
/* 0 => buddy speaking ; 1 => buddy speaking to me
|
||||
(with highlight) */
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (ptr_muc->buddies_speaking[i])
|
||||
{
|
||||
list_size = weechat_list_size (ptr_muc->buddies_speaking[i]);
|
||||
for (j = 0; j < list_size; j++)
|
||||
{
|
||||
buddy = weechat_list_string (weechat_list_get (ptr_muc->buddies_speaking[i], j));
|
||||
if (buddy && jabber_buddy_search (NULL, ptr_muc, buddy))
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
buddy,
|
||||
1,
|
||||
WEECHAT_LIST_POS_BEGINNING);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/* add local name at the end */
|
||||
local_name = jabber_server_get_local_name (ptr_server);
|
||||
if (local_name && local_name[0])
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
local_name,
|
||||
1,
|
||||
WEECHAT_LIST_POS_END);
|
||||
}
|
||||
break;
|
||||
case JABBER_MUC_TYPE_PRIVATE:
|
||||
/* remote buddy */
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_muc->name,
|
||||
0,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
/* add local name at the end */
|
||||
local_name = jabber_server_get_local_name (ptr_server);
|
||||
if (local_name && local_name[0])
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
local_name,
|
||||
1,
|
||||
WEECHAT_LIST_POS_END);
|
||||
}
|
||||
break;
|
||||
}
|
||||
ptr_muc->nick_completion_reset = 0;
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_muc_buddies_hosts_cb: callback for completion with buddies
|
||||
* and hosts of current MUC
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_muc_buddies_hosts_cb (void *data,
|
||||
const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
char *buf;
|
||||
int length;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
switch (ptr_muc->type)
|
||||
{
|
||||
case JABBER_MUC_TYPE_MUC:
|
||||
for (ptr_buddy = ptr_muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_buddy->name,
|
||||
1,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
if (ptr_buddy->host)
|
||||
{
|
||||
length = strlen (ptr_buddy->name) + 1 +
|
||||
strlen (ptr_buddy->host) + 1;
|
||||
buf = malloc (length);
|
||||
if (buf)
|
||||
{
|
||||
snprintf (buf, length, "%s!%s",
|
||||
ptr_buddy->name, ptr_buddy->host);
|
||||
weechat_hook_completion_list_add (completion,
|
||||
buf,
|
||||
0,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
free (buf);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case JABBER_MUC_TYPE_PRIVATE:
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_muc->name,
|
||||
0,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_muc_topic_cb: callback for completion with topic of
|
||||
* current MUC
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_muc_topic_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
|
||||
if (ptr_muc && ptr_muc->topic && ptr_muc->topic[0])
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_muc->topic,
|
||||
0,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_mucs_cb: callback for completion with MUCs
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_mucs_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
(void) completion;
|
||||
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
for (ptr_muc = ptr_server->mucs; ptr_muc; ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
ptr_muc->name,
|
||||
0,
|
||||
WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_msg_part_cb: callback for completion with default part
|
||||
* message
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_completion_msg_part_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
if (weechat_config_string (jabber_config_network_default_msg_part)
|
||||
&& weechat_config_string (jabber_config_network_default_msg_part)[0])
|
||||
{
|
||||
weechat_hook_completion_list_add (completion,
|
||||
weechat_config_string (jabber_config_network_default_msg_part),
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_completion_init: init completion for Jabber plugin
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_completion_init ()
|
||||
{
|
||||
weechat_hook_completion ("jabber_server", "",
|
||||
&jabber_completion_server_cb, NULL);
|
||||
weechat_hook_completion ("jabber_server_local_name", "",
|
||||
&jabber_completion_server_local_name_cb, NULL);
|
||||
weechat_hook_completion ("jabber_server_buddies", "",
|
||||
&jabber_completion_server_buddies_cb, NULL);
|
||||
weechat_hook_completion ("jabber_servers", "",
|
||||
&jabber_completion_servers_cb, NULL);
|
||||
weechat_hook_completion ("jabber_muc", "",
|
||||
&jabber_completion_muc_cb, NULL);
|
||||
weechat_hook_completion ("buddy", "",
|
||||
&jabber_completion_muc_buddies_cb, NULL);
|
||||
weechat_hook_completion ("jabber_muc_buddies_hosts", "",
|
||||
&jabber_completion_muc_buddies_hosts_cb, NULL);
|
||||
weechat_hook_completion ("jabber_muc_topic", "",
|
||||
&jabber_completion_muc_topic_cb, NULL);
|
||||
weechat_hook_completion ("jabber_mucs", "",
|
||||
&jabber_completion_mucs_cb, NULL);
|
||||
weechat_hook_completion ("jabber_msg_part", "",
|
||||
&jabber_completion_msg_part_cb, NULL);
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_COMPLETION_H
|
||||
#define __WEECHAT_JABBER_COMPLETION_H 1
|
||||
|
||||
extern void jabber_completion_init ();
|
||||
|
||||
#endif /* jabber-completion.h */
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,81 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_CONFIG_H
|
||||
#define __WEECHAT_JABBER_CONFIG_H 1
|
||||
|
||||
#define JABBER_CONFIG_NAME "jabber"
|
||||
|
||||
enum t_jabber_config_display_away
|
||||
{
|
||||
JABBER_CONFIG_DISPLAY_AWAY_OFF = 0,
|
||||
JABBER_CONFIG_DISPLAY_AWAY_LOCAL,
|
||||
JABBER_CONFIG_DISPLAY_AWAY_MUC,
|
||||
};
|
||||
|
||||
extern struct t_config_file *jabber_config_file;
|
||||
extern struct t_config_section *jabber_config_section_server_default;
|
||||
extern struct t_config_section *jabber_config_section_server;
|
||||
|
||||
extern struct t_config_option *jabber_config_look_color_nicks_in_server_messages;
|
||||
extern struct t_config_option *jabber_config_look_one_server_buffer;
|
||||
extern struct t_config_option *jabber_config_look_open_near_server;
|
||||
extern struct t_config_option *jabber_config_look_nick_prefix;
|
||||
extern struct t_config_option *jabber_config_look_nick_suffix;
|
||||
extern struct t_config_option *jabber_config_look_nick_completion_smart;
|
||||
extern struct t_config_option *jabber_config_look_display_away;
|
||||
extern struct t_config_option *jabber_config_look_display_muc_modes;
|
||||
extern struct t_config_option *jabber_config_look_display_nick_modes;
|
||||
extern struct t_config_option *jabber_config_look_highlight_tags;
|
||||
extern struct t_config_option *jabber_config_look_show_away_once;
|
||||
extern struct t_config_option *jabber_config_look_smart_filter;
|
||||
extern struct t_config_option *jabber_config_look_smart_filter_delay;
|
||||
|
||||
extern struct t_config_option *jabber_config_color_message_join;
|
||||
extern struct t_config_option *jabber_config_color_message_quit;
|
||||
extern struct t_config_option *jabber_config_color_input_nick;
|
||||
|
||||
extern struct t_config_option *jabber_config_network_default_msg_part;
|
||||
extern struct t_config_option *jabber_config_network_default_msg_quit;
|
||||
extern struct t_config_option *jabber_config_network_lag_check;
|
||||
extern struct t_config_option *jabber_config_network_lag_min_show;
|
||||
extern struct t_config_option *jabber_config_network_lag_disconnect;
|
||||
extern struct t_config_option *jabber_config_network_anti_flood;
|
||||
extern struct t_config_option *jabber_config_network_colors_receive;
|
||||
extern struct t_config_option *jabber_config_network_colors_send;
|
||||
|
||||
extern struct t_config_option *jabber_config_server_default[];
|
||||
|
||||
extern void jabber_config_server_change_cb (void *data,
|
||||
struct t_config_option *option);
|
||||
struct t_config_option *jabber_config_server_new_option (struct t_config_file *config_file,
|
||||
struct t_config_section *section,
|
||||
int index_option,
|
||||
const char *option_name,
|
||||
const char *default_value,
|
||||
const char *value,
|
||||
int null_value_allowed,
|
||||
void *callback_change,
|
||||
void *callback_change_data);
|
||||
extern int jabber_config_init ();
|
||||
extern int jabber_config_read ();
|
||||
extern int jabber_config_write (int write_temp_servers);
|
||||
extern void jabber_config_free ();
|
||||
|
||||
#endif /* jabber-config.h */
|
||||
@@ -1,176 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-debug.c: debug functions for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-debug.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
struct t_gui_buffer *jabber_debug_buffer = NULL;
|
||||
|
||||
|
||||
/*
|
||||
* jabber_debug_buffer_close_cb: callback called when Jabber debug buffer is
|
||||
* closed
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_debug_buffer_close_cb (void *data, struct t_gui_buffer *buffer)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) buffer;
|
||||
|
||||
jabber_debug_buffer = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_debug_printf: print a message on Jabber debug buffer
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_debug_printf (struct t_jabber_server *server, int send, int modified,
|
||||
const char *message)
|
||||
{
|
||||
char *buf, *buf2;
|
||||
const char *ptr_buf;
|
||||
int pos_buf, pos_buf2, char_size, i;
|
||||
|
||||
if (!weechat_jabber_plugin->debug || !message)
|
||||
return;
|
||||
|
||||
if (!jabber_debug_buffer)
|
||||
{
|
||||
jabber_debug_buffer = weechat_buffer_search (JABBER_PLUGIN_NAME,
|
||||
JABBER_DEBUG_BUFFER_NAME);
|
||||
if (!jabber_debug_buffer)
|
||||
{
|
||||
jabber_debug_buffer = weechat_buffer_new (JABBER_DEBUG_BUFFER_NAME,
|
||||
NULL, NULL,
|
||||
&jabber_debug_buffer_close_cb, NULL);
|
||||
|
||||
/* failed to create buffer ? then return */
|
||||
if (!jabber_debug_buffer)
|
||||
return;
|
||||
|
||||
weechat_buffer_set (jabber_debug_buffer,
|
||||
"title", _("Jabber debug messages"));
|
||||
|
||||
weechat_buffer_set (jabber_debug_buffer, "short_name", JABBER_DEBUG_BUFFER_NAME);
|
||||
weechat_buffer_set (jabber_debug_buffer, "localvar_set_type", "debug");
|
||||
weechat_buffer_set (jabber_debug_buffer, "localvar_set_server", JABBER_DEBUG_BUFFER_NAME);
|
||||
weechat_buffer_set (jabber_debug_buffer, "localvar_set_muc", JABBER_DEBUG_BUFFER_NAME);
|
||||
weechat_buffer_set (jabber_debug_buffer, "localvar_set_no_log", "1");
|
||||
|
||||
/* disable all highlights on this debug buffer */
|
||||
weechat_buffer_set (jabber_debug_buffer, "highlight_words", "-");
|
||||
}
|
||||
}
|
||||
|
||||
buf = weechat_iconv_to_internal (NULL, message);
|
||||
buf2 = malloc ((strlen (buf) * 3) + 1);
|
||||
if (buf2)
|
||||
{
|
||||
ptr_buf = (buf) ? buf : message;
|
||||
pos_buf = 0;
|
||||
pos_buf2 = 0;
|
||||
while (ptr_buf[pos_buf])
|
||||
{
|
||||
if (ptr_buf[pos_buf] < 32)
|
||||
{
|
||||
buf2[pos_buf2++] = '\\';
|
||||
buf2[pos_buf2++] = (ptr_buf[pos_buf] / 10) + '0';
|
||||
buf2[pos_buf2++] = (ptr_buf[pos_buf] % 10) + '0';
|
||||
pos_buf++;
|
||||
}
|
||||
else
|
||||
{
|
||||
char_size = weechat_utf8_char_size (ptr_buf + pos_buf);
|
||||
for (i = 0; i < char_size; i++)
|
||||
{
|
||||
buf2[pos_buf2++] = ptr_buf[pos_buf++];
|
||||
}
|
||||
}
|
||||
}
|
||||
buf2[pos_buf2] = '\0';
|
||||
}
|
||||
|
||||
weechat_printf (jabber_debug_buffer,
|
||||
"%s%s%s%s%s%s\t%s",
|
||||
(server) ? weechat_color ("chat_server") : "",
|
||||
(iks_is_secure (server->iks_parser)) ? "[S]" : "",
|
||||
(server) ? server->name : "",
|
||||
(server) ? " " : "",
|
||||
(send) ?
|
||||
weechat_color ("chat_prefix_quit") :
|
||||
weechat_color ("chat_prefix_join"),
|
||||
(send) ?
|
||||
((modified) ? JABBER_DEBUG_PREFIX_SEND_MOD : JABBER_DEBUG_PREFIX_SEND) :
|
||||
((modified) ? JABBER_DEBUG_PREFIX_RECV_MOD : JABBER_DEBUG_PREFIX_RECV),
|
||||
(buf2) ? buf2 : ((buf) ? buf : message));
|
||||
if (buf)
|
||||
free (buf);
|
||||
if (buf2)
|
||||
free (buf2);
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_debug_signal_debug_dump_cb: dump Jabber data in WeeChat log file
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_debug_signal_debug_dump_cb (void *data, const char *signal,
|
||||
const char *type_data, void *signal_data)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) signal;
|
||||
(void) type_data;
|
||||
(void) signal_data;
|
||||
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf ("***** \"%s\" plugin dump *****",
|
||||
weechat_plugin->name);
|
||||
|
||||
jabber_server_print_log ();
|
||||
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf ("***** End of \"%s\" plugin dump *****",
|
||||
weechat_plugin->name);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_debug_init: initialize debug for Jabber plugin
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_debug_init ()
|
||||
{
|
||||
weechat_hook_signal ("debug_dump", &jabber_debug_signal_debug_dump_cb, NULL);
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_DEBUG_H
|
||||
#define __WEECHAT_JABBER_DEBUG_H 1
|
||||
|
||||
#define JABBER_DEBUG_BUFFER_NAME "jabber_debug"
|
||||
|
||||
#define JABBER_DEBUG_PREFIX_RECV "-->"
|
||||
#define JABBER_DEBUG_PREFIX_RECV_MOD "==>"
|
||||
#define JABBER_DEBUG_PREFIX_SEND "<--"
|
||||
#define JABBER_DEBUG_PREFIX_SEND_MOD "<=="
|
||||
|
||||
struct t_jabber_server;
|
||||
|
||||
extern void jabber_debug_printf (struct t_jabber_server *server, int send,
|
||||
int modified, const char *message);
|
||||
extern void jabber_debug_init ();
|
||||
|
||||
#endif /* jabber-debug.h */
|
||||
@@ -1,224 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-display.c: display functions for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-command.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_display_server: display server infos
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_display_server (struct t_jabber_server *server, int with_detail)
|
||||
{
|
||||
int num_mucs, num_pv;
|
||||
|
||||
if (with_detail)
|
||||
{
|
||||
weechat_printf (NULL, "");
|
||||
weechat_printf (NULL, _("%sServer: %s%s %s[%s%s%s]%s%s"),
|
||||
JABBER_COLOR_CHAT,
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
server->name,
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT,
|
||||
(server->is_connected) ?
|
||||
_("connected") : _("not connected"),
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT,
|
||||
(server->temp_server) ? _(" (temporary)") : "");
|
||||
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_USERNAME]))
|
||||
weechat_printf (NULL, " username . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_USERNAME));
|
||||
else
|
||||
weechat_printf (NULL, " username . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_USERNAME]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_SERVER]))
|
||||
weechat_printf (NULL, " server . . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_SERVER));
|
||||
else
|
||||
weechat_printf (NULL, " server . . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_SERVER]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_PROXY]))
|
||||
weechat_printf (NULL, " proxy. . . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_PROXY));
|
||||
else
|
||||
weechat_printf (NULL, " proxy. . . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_PROXY]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_IPV6]))
|
||||
weechat_printf (NULL, " ipv6 . . . . . . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_IPV6)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " ipv6 . . . . . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_IPV6]) ?
|
||||
_("on") : _("off"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_TLS]))
|
||||
weechat_printf (NULL, " tls. . . . . . . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_TLS)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " tls. . . . . . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_TLS]) ?
|
||||
_("on") : _("off"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_SASL]))
|
||||
weechat_printf (NULL, " sasl . . . . . . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_SASL)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " sasl . . . . . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_SASL]) ?
|
||||
_("on") : _("off"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_RESOURCE]))
|
||||
weechat_printf (NULL, " resource . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_RESOURCE));
|
||||
else
|
||||
weechat_printf (NULL, " resource . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_RESOURCE]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_PASSWORD]))
|
||||
weechat_printf (NULL, " password . . . . . . : %s",
|
||||
_("(hidden)"));
|
||||
else
|
||||
weechat_printf (NULL, " password . . . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
_("(hidden)"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_LOCAL_ALIAS]))
|
||||
weechat_printf (NULL, " local_alias. . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_LOCAL_ALIAS));
|
||||
else
|
||||
weechat_printf (NULL, " local_alias. . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_LOCAL_ALIAS]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_AUTOCONNECT]))
|
||||
weechat_printf (NULL, " autoconnect. . . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_AUTOCONNECT)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " autoconnect. . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_AUTOCONNECT]) ?
|
||||
_("on") : _("off"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_AUTORECONNECT]))
|
||||
weechat_printf (NULL, " autoreconnect. . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_AUTORECONNECT)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " autoreconnect. . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_AUTORECONNECT]) ?
|
||||
_("on") : _("off"));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_AUTORECONNECT_DELAY]))
|
||||
weechat_printf (NULL, " autoreconnect_delay. : (%d %s)",
|
||||
JABBER_SERVER_OPTION_INTEGER(server, JABBER_SERVER_OPTION_AUTORECONNECT_DELAY),
|
||||
NG_("second", "seconds", JABBER_SERVER_OPTION_INTEGER(server, JABBER_SERVER_OPTION_AUTORECONNECT_DELAY)));
|
||||
else
|
||||
weechat_printf (NULL, " autoreconnect_delay. : %s%d %s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_integer (server->options[JABBER_SERVER_OPTION_AUTORECONNECT_DELAY]),
|
||||
NG_("second", "seconds", weechat_config_integer (server->options[JABBER_SERVER_OPTION_AUTORECONNECT_DELAY])));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_LOCAL_HOSTNAME]))
|
||||
weechat_printf (NULL, " local_hostname . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_LOCAL_HOSTNAME));
|
||||
else
|
||||
weechat_printf (NULL, " local_hostname . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_LOCAL_HOSTNAME]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_COMMAND]))
|
||||
weechat_printf (NULL, " command. . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_COMMAND));
|
||||
else
|
||||
weechat_printf (NULL, " command. . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_COMMAND]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_COMMAND_DELAY]))
|
||||
weechat_printf (NULL, " command_delay. . . . : (%d %s)",
|
||||
JABBER_SERVER_OPTION_INTEGER(server, JABBER_SERVER_OPTION_COMMAND_DELAY),
|
||||
NG_("second", "seconds", JABBER_SERVER_OPTION_INTEGER(server, JABBER_SERVER_OPTION_COMMAND_DELAY)));
|
||||
else
|
||||
weechat_printf (NULL, " command_delay. . . . : %s%d %s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_integer (server->options[JABBER_SERVER_OPTION_COMMAND_DELAY]),
|
||||
NG_("second", "seconds", weechat_config_integer (server->options[JABBER_SERVER_OPTION_COMMAND_DELAY])));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_AUTOJOIN]))
|
||||
weechat_printf (NULL, " autojoin . . . . . . : ('%s')",
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_AUTOJOIN));
|
||||
else
|
||||
weechat_printf (NULL, " autojoin . . . . . . : %s'%s'",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_string (server->options[JABBER_SERVER_OPTION_AUTOJOIN]));
|
||||
if (weechat_config_option_is_null (server->options[JABBER_SERVER_OPTION_AUTOREJOIN]))
|
||||
weechat_printf (NULL, " autorejoin . . . . . : (%s)",
|
||||
(JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_AUTOREJOIN)) ?
|
||||
_("on") : _("off"));
|
||||
else
|
||||
weechat_printf (NULL, " autorejoin . . . . . : %s%s",
|
||||
JABBER_COLOR_CHAT_VALUE,
|
||||
weechat_config_boolean (server->options[JABBER_SERVER_OPTION_AUTOREJOIN]) ?
|
||||
_("on") : _("off"));
|
||||
}
|
||||
else
|
||||
{
|
||||
if (server->is_connected)
|
||||
{
|
||||
num_mucs = jabber_server_get_muc_count (server);
|
||||
num_pv = jabber_server_get_pv_count (server);
|
||||
weechat_printf (NULL, " %s %s%s %s[%s%s%s]%s%s, %d %s, %d pv",
|
||||
(server->is_connected) ? "*" : " ",
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
server->name,
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT,
|
||||
(server->is_connected) ?
|
||||
_("connected") : _("not connected"),
|
||||
JABBER_COLOR_CHAT_DELIMITERS,
|
||||
JABBER_COLOR_CHAT,
|
||||
(server->temp_server) ? _(" (temporary)") : "",
|
||||
num_mucs,
|
||||
NG_("MUC", "MUCs", num_mucs),
|
||||
num_pv);
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (NULL, " %s%s%s%s",
|
||||
JABBER_COLOR_CHAT_SERVER,
|
||||
server->name,
|
||||
JABBER_COLOR_CHAT,
|
||||
(server->temp_server) ? _(" (temporary)") : "");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_DISPLAY_H
|
||||
#define __WEECHAT_JABBER_DISPLAY_H 1
|
||||
|
||||
extern void jabber_display_server (struct t_jabber_server *server,
|
||||
int with_detail);
|
||||
|
||||
#endif /* jabber-display.h */
|
||||
@@ -1,357 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-info.c: info and infolist hooks for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_info_create_string_with_pointer: create a string with a pointer inside
|
||||
* a Jabber structure
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_info_create_string_with_pointer (char **string, void *pointer)
|
||||
{
|
||||
if (*string)
|
||||
{
|
||||
free (*string);
|
||||
*string = NULL;
|
||||
}
|
||||
if (pointer)
|
||||
{
|
||||
*string = malloc (64);
|
||||
if (*string)
|
||||
{
|
||||
snprintf (*string, 64 - 1, "0x%lx", (long unsigned int)pointer);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_info_get_info_cb: callback called when Jabber info is asked
|
||||
*/
|
||||
|
||||
const char *
|
||||
jabber_info_get_info_cb (void *data, const char *info_name,
|
||||
const char *arguments)
|
||||
{
|
||||
char *pos_comma, *pos_comma2, *server, *muc, *host;
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
if (weechat_strcasecmp (info_name, "jabber_buffer") == 0)
|
||||
{
|
||||
if (arguments && arguments[0])
|
||||
{
|
||||
server = NULL;
|
||||
muc = NULL;
|
||||
host = NULL;
|
||||
ptr_server = NULL;
|
||||
ptr_muc = NULL;
|
||||
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
{
|
||||
server = weechat_strndup (arguments, pos_comma - arguments);
|
||||
pos_comma2 = strchr (pos_comma + 1, ',');
|
||||
if (pos_comma2)
|
||||
{
|
||||
muc = weechat_strndup (pos_comma + 1,
|
||||
pos_comma2 - pos_comma - 1);
|
||||
host = strdup (pos_comma2 + 1);
|
||||
}
|
||||
else
|
||||
muc = strdup (pos_comma + 1);
|
||||
}
|
||||
|
||||
/* replace MUC by buddy in host if MUC is not a MUC (private ?) */
|
||||
if (muc && host)
|
||||
{
|
||||
//if (!jabber_muc_is_muc (muc))
|
||||
//{
|
||||
// free (muc);
|
||||
// muc = NULL;
|
||||
// buddy = jabber_xmpp_get_buddy_from_host (host);
|
||||
// if (buddy)
|
||||
// muc = strdup (buddy);
|
||||
//}
|
||||
}
|
||||
|
||||
/* search for server or MUC buffer */
|
||||
if (server)
|
||||
{
|
||||
ptr_server = jabber_server_search (server);
|
||||
if (ptr_server && muc)
|
||||
ptr_muc = jabber_muc_search (ptr_server, muc);
|
||||
}
|
||||
|
||||
if (server)
|
||||
free (server);
|
||||
if (muc)
|
||||
free (muc);
|
||||
if (host)
|
||||
free (host);
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
jabber_info_create_string_with_pointer (&ptr_muc->buffer_as_string,
|
||||
ptr_muc->buffer);
|
||||
return ptr_muc->buffer_as_string;
|
||||
}
|
||||
if (ptr_server)
|
||||
{
|
||||
jabber_info_create_string_with_pointer (&ptr_server->buffer_as_string,
|
||||
ptr_server->buffer);
|
||||
return ptr_server->buffer_as_string;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_info_get_infolist_cb: callback called when Jabber infolist is asked
|
||||
*/
|
||||
|
||||
struct t_infolist *
|
||||
jabber_info_get_infolist_cb (void *data, const char *infolist_name,
|
||||
void *pointer, const char *arguments)
|
||||
{
|
||||
struct t_infolist *ptr_infolist;
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
char *pos_comma, *server_name;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
if (!infolist_name || !infolist_name[0])
|
||||
return NULL;
|
||||
|
||||
if (weechat_strcasecmp (infolist_name, "jabber_server") == 0)
|
||||
{
|
||||
if (pointer && !jabber_server_valid (pointer))
|
||||
return NULL;
|
||||
|
||||
ptr_infolist = weechat_infolist_new ();
|
||||
if (ptr_infolist)
|
||||
{
|
||||
if (pointer)
|
||||
{
|
||||
/* build list with only one server */
|
||||
if (!jabber_server_add_to_infolist (ptr_infolist, pointer))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* build list with all servers */
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
if (!jabber_server_add_to_infolist (ptr_infolist, ptr_server))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (weechat_strcasecmp (infolist_name, "jabber_muc") == 0)
|
||||
{
|
||||
if (arguments && arguments[0])
|
||||
{
|
||||
ptr_server = jabber_server_search (arguments);
|
||||
if (ptr_server)
|
||||
{
|
||||
if (pointer && !jabber_muc_valid (ptr_server, pointer))
|
||||
return NULL;
|
||||
|
||||
ptr_infolist = weechat_infolist_new ();
|
||||
if (ptr_infolist)
|
||||
{
|
||||
if (pointer)
|
||||
{
|
||||
/* build list with only one MUC */
|
||||
if (!jabber_muc_add_to_infolist (ptr_infolist, pointer))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* build list with all MUCs of server */
|
||||
for (ptr_muc = ptr_server->mucs; ptr_muc;
|
||||
ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
if (!jabber_muc_add_to_infolist (ptr_infolist,
|
||||
ptr_muc))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (weechat_strcasecmp (infolist_name, "jabber_buddy") == 0)
|
||||
{
|
||||
if (arguments && arguments[0])
|
||||
{
|
||||
ptr_server = NULL;
|
||||
ptr_muc = NULL;
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
{
|
||||
server_name = weechat_strndup (arguments, pos_comma - arguments);
|
||||
if (server_name)
|
||||
{
|
||||
ptr_server = jabber_server_search (server_name);
|
||||
if (ptr_server)
|
||||
{
|
||||
ptr_muc = jabber_muc_search (ptr_server,
|
||||
pos_comma + 1);
|
||||
}
|
||||
free (server_name);
|
||||
}
|
||||
}
|
||||
if (ptr_muc)
|
||||
{
|
||||
if (pointer && !jabber_buddy_valid (NULL, ptr_muc, pointer))
|
||||
return NULL;
|
||||
|
||||
ptr_infolist = weechat_infolist_new ();
|
||||
if (ptr_infolist)
|
||||
{
|
||||
if (pointer)
|
||||
{
|
||||
/* build list with only one buddy */
|
||||
if (!jabber_buddy_add_to_infolist (ptr_infolist, pointer))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* build list with all buddies of MUC */
|
||||
for (ptr_buddy = ptr_muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (!jabber_buddy_add_to_infolist (ptr_infolist,
|
||||
ptr_buddy))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (ptr_server)
|
||||
{
|
||||
if (pointer && !jabber_buddy_valid (ptr_server, NULL, pointer))
|
||||
return NULL;
|
||||
|
||||
ptr_infolist = weechat_infolist_new ();
|
||||
if (ptr_infolist)
|
||||
{
|
||||
if (pointer)
|
||||
{
|
||||
/* build list with only one buddy */
|
||||
if (!jabber_buddy_add_to_infolist (ptr_infolist, pointer))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* build list with all buddies of server */
|
||||
for (ptr_buddy = ptr_server->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (!jabber_buddy_add_to_infolist (ptr_infolist,
|
||||
ptr_buddy))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_info_init: initialize info and infolist hooks for Jabber plugin
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_info_init ()
|
||||
{
|
||||
/* info hooks */
|
||||
weechat_hook_info ("jabber_buffer",
|
||||
N_("get buffer pointer for a Jabber server/MUC"),
|
||||
&jabber_info_get_info_cb, NULL);
|
||||
|
||||
/* infolist hooks */
|
||||
weechat_hook_infolist ("jabber_server",
|
||||
N_("list of Jabber servers"),
|
||||
&jabber_info_get_infolist_cb, NULL);
|
||||
weechat_hook_infolist ("jabber_muc",
|
||||
N_("list of MUCs for a Jabber server"),
|
||||
&jabber_info_get_infolist_cb, NULL);
|
||||
weechat_hook_infolist ("jabber_buddy",
|
||||
N_("list of buddies for a Jabber server or MUC"),
|
||||
&jabber_info_get_infolist_cb, NULL);
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_INFO_H
|
||||
#define __WEECHAT_JABBER_INFO_H 1
|
||||
|
||||
extern void jabber_info_init ();
|
||||
|
||||
#endif /* jabber-info.h */
|
||||
@@ -1,104 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-input.c: Jabber input data (read from user) */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-xmpp.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_input_user_message_display: display user message
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_input_user_message_display (struct t_gui_buffer *buffer,
|
||||
const char *text)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
const char *local_name;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
local_name = jabber_server_get_local_name (ptr_server);
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
if (ptr_muc->type == JABBER_MUC_TYPE_MUC)
|
||||
ptr_buddy = jabber_buddy_search (NULL, ptr_muc, local_name);
|
||||
else
|
||||
ptr_buddy = NULL;
|
||||
|
||||
weechat_printf_tags (buffer,
|
||||
jabber_xmpp_tags ("chat_msg", "no_highlight"),
|
||||
"%s%s",
|
||||
jabber_buddy_as_prefix ((ptr_buddy) ? ptr_buddy : NULL,
|
||||
(ptr_buddy) ? NULL : local_name,
|
||||
JABBER_COLOR_CHAT_NICK_SELF),
|
||||
text);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_input_data_cb: callback for input data in a buffer
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_input_data_cb (void *data, struct t_gui_buffer *buffer,
|
||||
const char *input_data)
|
||||
{
|
||||
const char *ptr_data;
|
||||
char *msg;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
JABBER_GET_SERVER_MUC(buffer);
|
||||
|
||||
if (ptr_muc)
|
||||
{
|
||||
ptr_data = ((input_data[0] == '/') && (input_data[1] == '/')) ?
|
||||
input_data + 1 : input_data;
|
||||
|
||||
msg = strdup (ptr_data);
|
||||
if (msg)
|
||||
{
|
||||
jabber_xmpp_send_chat_message (ptr_server, ptr_muc, msg);
|
||||
jabber_input_user_message_display (buffer, msg);
|
||||
free (msg);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (buffer,
|
||||
_("%s: this buffer is not a MUC!"),
|
||||
JABBER_PLUGIN_NAME);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_INPUT_H
|
||||
#define __WEECHAT_JABBER_INPUT_H 1
|
||||
|
||||
struct t_gui_buffer;
|
||||
|
||||
extern void jabber_input_user_message_display (struct t_gui_buffer *buffer,
|
||||
const char *text);
|
||||
extern int jabber_input_data_cb (void *data, struct t_gui_buffer *buffer,
|
||||
const char *input_data);
|
||||
|
||||
#endif /* jabber-input.h */
|
||||
@@ -1,683 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-muc.c: jabber MUC management */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-input.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_muc_valid: check if a MUC pointer exists for a server
|
||||
* return 1 if MUC exists
|
||||
* 0 if MUC is not found
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_muc_valid (struct t_jabber_server *server, struct t_jabber_muc *muc)
|
||||
{
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
if (!server)
|
||||
return 0;
|
||||
|
||||
for (ptr_muc = server->mucs; ptr_muc; ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
if (ptr_muc == muc)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* MUC not found */
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_new: allocate a new MUC for a server and add it to MUC list
|
||||
*/
|
||||
|
||||
struct t_jabber_muc *
|
||||
jabber_muc_new (struct t_jabber_server *server, int muc_type,
|
||||
const char *muc_name, int switch_to_muc, int auto_switch)
|
||||
{
|
||||
struct t_jabber_muc *new_muc;
|
||||
struct t_gui_buffer *new_buffer;
|
||||
int buffer_created;
|
||||
char *buffer_name;
|
||||
|
||||
/* alloc memory for new MUCl */
|
||||
if ((new_muc = malloc (sizeof (*new_muc))) == NULL)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: cannot allocate new MUC"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* create buffer for MUC (or use existing one) */
|
||||
buffer_created = 0;
|
||||
buffer_name = jabber_buffer_build_name (server->name, muc_name);
|
||||
new_buffer = weechat_buffer_search (JABBER_PLUGIN_NAME, buffer_name);
|
||||
if (new_buffer)
|
||||
weechat_nicklist_remove_all (new_buffer);
|
||||
else
|
||||
{
|
||||
new_buffer = weechat_buffer_new (buffer_name,
|
||||
&jabber_input_data_cb, NULL,
|
||||
&jabber_buffer_close_cb, NULL);
|
||||
if (!new_buffer)
|
||||
{
|
||||
free (new_muc);
|
||||
return NULL;
|
||||
}
|
||||
buffer_created = 1;
|
||||
}
|
||||
|
||||
weechat_buffer_set (new_buffer, "short_name", muc_name);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_type",
|
||||
(muc_type == JABBER_MUC_TYPE_MUC) ? "channel" : "private");
|
||||
weechat_buffer_set (new_buffer, "localvar_set_nick",
|
||||
jabber_server_get_local_name (server));
|
||||
weechat_buffer_set (new_buffer, "localvar_set_server", server->name);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_muc", muc_name);
|
||||
|
||||
if (buffer_created)
|
||||
{
|
||||
weechat_hook_signal_send ("logger_backlog",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER, new_buffer);
|
||||
}
|
||||
|
||||
if (muc_type == JABBER_MUC_TYPE_MUC)
|
||||
{
|
||||
weechat_buffer_set (new_buffer, "nicklist", "1");
|
||||
weechat_buffer_set (new_buffer, "nicklist_display_groups", "0");
|
||||
weechat_nicklist_add_group (new_buffer, NULL, JABBER_BUDDY_GROUP_OP,
|
||||
"weechat.color.nicklist_group", 1);
|
||||
weechat_nicklist_add_group (new_buffer, NULL, JABBER_BUDDY_GROUP_HALFOP,
|
||||
"weechat.color.nicklist_group", 1);
|
||||
weechat_nicklist_add_group (new_buffer, NULL, JABBER_BUDDY_GROUP_VOICE,
|
||||
"weechat.color.nicklist_group", 1);
|
||||
weechat_nicklist_add_group (new_buffer, NULL, JABBER_BUDDY_GROUP_CHANUSER,
|
||||
"weechat.color.nicklist_group", 1);
|
||||
weechat_nicklist_add_group (new_buffer, NULL, JABBER_BUDDY_GROUP_NORMAL,
|
||||
"weechat.color.nicklist_group", 1);
|
||||
}
|
||||
|
||||
/* set highlights settings on MUC buffer */
|
||||
weechat_buffer_set (new_buffer, "highlight_words",
|
||||
jabber_server_get_local_name (server));
|
||||
if (weechat_config_string (jabber_config_look_highlight_tags)
|
||||
&& weechat_config_string (jabber_config_look_highlight_tags)[0])
|
||||
{
|
||||
weechat_buffer_set (new_buffer, "highlight_tags",
|
||||
weechat_config_string (jabber_config_look_highlight_tags));
|
||||
}
|
||||
|
||||
/* initialize new MUC */
|
||||
new_muc->type = muc_type;
|
||||
new_muc->name = strdup (muc_name);
|
||||
new_muc->topic = NULL;
|
||||
new_muc->modes = NULL;
|
||||
new_muc->limit = 0;
|
||||
new_muc->key = NULL;
|
||||
new_muc->away_message = NULL;
|
||||
new_muc->nick_completion_reset = 0;
|
||||
new_muc->buddies_count = 0;
|
||||
new_muc->buddies = NULL;
|
||||
new_muc->last_buddy = NULL;
|
||||
new_muc->buddies_speaking[0] = NULL;
|
||||
new_muc->buddies_speaking[1] = NULL;
|
||||
new_muc->buddies_speaking_time = NULL;
|
||||
new_muc->last_buddy_speaking_time = NULL;
|
||||
new_muc->buffer = new_buffer;
|
||||
new_muc->buffer_as_string = NULL;
|
||||
|
||||
/* add new MUC to MUCs list */
|
||||
new_muc->prev_muc = server->last_muc;
|
||||
new_muc->next_muc = NULL;
|
||||
if (server->mucs)
|
||||
(server->last_muc)->next_muc = new_muc;
|
||||
else
|
||||
server->mucs = new_muc;
|
||||
server->last_muc = new_muc;
|
||||
|
||||
if (switch_to_muc)
|
||||
{
|
||||
weechat_buffer_set (new_buffer, "display",
|
||||
(auto_switch) ? "auto" : "1");
|
||||
}
|
||||
|
||||
/* all is ok, return address of new muc */
|
||||
return new_muc;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_set_topic: set topic for a muc
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_set_topic (struct t_jabber_muc *muc, const char *topic)
|
||||
{
|
||||
if (muc->topic)
|
||||
free (muc->topic);
|
||||
|
||||
muc->topic = (topic) ? strdup (topic) : NULL;
|
||||
weechat_buffer_set (muc->buffer, "title", (muc->topic) ? muc->topic : "");
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_search: returns pointer on a muc with name
|
||||
*/
|
||||
|
||||
struct t_jabber_muc *
|
||||
jabber_muc_search (struct t_jabber_server *server, const char *muc_name)
|
||||
{
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
if (!server || !muc_name)
|
||||
return NULL;
|
||||
|
||||
for (ptr_muc = server->mucs; ptr_muc;
|
||||
ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
if (weechat_strcasecmp (ptr_muc->name, muc_name) == 0)
|
||||
return ptr_muc;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_remove_away: remove away for all buddies in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_remove_away (struct t_jabber_muc *muc)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
if (muc->type == JABBER_MUC_TYPE_MUC)
|
||||
{
|
||||
for (ptr_buddy = muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
jabber_buddy_set (NULL, muc, ptr_buddy, 0, JABBER_BUDDY_AWAY);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_set_away: set/unset away status for a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_set_away (struct t_jabber_muc *muc, const char *buddy_name,
|
||||
int is_away)
|
||||
{
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
if (muc->type == JABBER_MUC_TYPE_MUC)
|
||||
{
|
||||
ptr_buddy = jabber_buddy_search (NULL, muc, buddy_name);
|
||||
if (ptr_buddy)
|
||||
jabber_buddy_set_away (NULL, muc, ptr_buddy, is_away);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_add: add a buddy speaking in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_add (struct t_jabber_muc *muc, const char *buddy_name,
|
||||
int highlight)
|
||||
{
|
||||
int size, to_remove, i;
|
||||
struct t_weelist_item *ptr_item;
|
||||
|
||||
if (highlight < 0)
|
||||
highlight = 0;
|
||||
if (highlight > 1)
|
||||
highlight = 1;
|
||||
|
||||
/* create list if it does not exist */
|
||||
if (!muc->buddies_speaking[highlight])
|
||||
muc->buddies_speaking[highlight] = weechat_list_new ();
|
||||
|
||||
/* remove item if it was already in list */
|
||||
ptr_item = weechat_list_casesearch (muc->buddies_speaking[highlight],
|
||||
buddy_name);
|
||||
if (ptr_item)
|
||||
weechat_list_remove (muc->buddies_speaking[highlight], ptr_item);
|
||||
|
||||
/* add buddy in list */
|
||||
weechat_list_add (muc->buddies_speaking[highlight], buddy_name,
|
||||
WEECHAT_LIST_POS_END, NULL);
|
||||
|
||||
/* reduce list size if it's too big */
|
||||
size = weechat_list_size (muc->buddies_speaking[highlight]);
|
||||
if (size > JABBER_MUC_BUDDIES_SPEAKING_LIMIT)
|
||||
{
|
||||
to_remove = size - JABBER_MUC_BUDDIES_SPEAKING_LIMIT;
|
||||
for (i = 0; i < to_remove; i++)
|
||||
{
|
||||
weechat_list_remove (muc->buddies_speaking[highlight],
|
||||
weechat_list_get (muc->buddies_speaking[highlight], 0));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_rename: rename a buddy speaking in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_rename (struct t_jabber_muc *muc,
|
||||
const char *old_nick,
|
||||
const char *new_nick)
|
||||
{
|
||||
struct t_weelist_item *ptr_item;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (muc->buddies_speaking[i])
|
||||
{
|
||||
ptr_item = weechat_list_search (muc->buddies_speaking[i], old_nick);
|
||||
if (ptr_item)
|
||||
weechat_list_set (ptr_item, new_nick);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_search: search a buddy speaking time in a MUC
|
||||
*/
|
||||
|
||||
struct t_jabber_muc_speaking *
|
||||
jabber_muc_buddy_speaking_time_search (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
int check_time)
|
||||
{
|
||||
struct t_jabber_muc_speaking *ptr_buddy;
|
||||
time_t time_limit;
|
||||
|
||||
time_limit = time (NULL) -
|
||||
(weechat_config_integer (jabber_config_look_smart_filter_delay) * 60);
|
||||
|
||||
for (ptr_buddy = muc->buddies_speaking_time; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
if (strcmp (ptr_buddy->buddy, buddy_name) == 0)
|
||||
{
|
||||
if (check_time && (ptr_buddy->time_last_message < time_limit))
|
||||
return NULL;
|
||||
return ptr_buddy;
|
||||
}
|
||||
}
|
||||
|
||||
/* buddy speaking time not found */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_free: free a buddy speaking in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_time_free (struct t_jabber_muc *muc,
|
||||
struct t_jabber_muc_speaking *buddy_speaking)
|
||||
{
|
||||
/* free data */
|
||||
if (buddy_speaking->buddy)
|
||||
free (buddy_speaking->buddy);
|
||||
|
||||
/* remove buddy from list */
|
||||
if (buddy_speaking->prev_buddy)
|
||||
(buddy_speaking->prev_buddy)->next_buddy = buddy_speaking->next_buddy;
|
||||
if (buddy_speaking->next_buddy)
|
||||
(buddy_speaking->next_buddy)->prev_buddy = buddy_speaking->prev_buddy;
|
||||
if (muc->buddies_speaking_time == buddy_speaking)
|
||||
muc->buddies_speaking_time = buddy_speaking->next_buddy;
|
||||
if (muc->last_buddy_speaking_time == buddy_speaking)
|
||||
muc->last_buddy_speaking_time = buddy_speaking->prev_buddy;
|
||||
|
||||
free (buddy_speaking);
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_free_all: free all buddies speaking in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_time_free_all (struct t_jabber_muc *muc)
|
||||
{
|
||||
while (muc->buddies_speaking_time)
|
||||
{
|
||||
jabber_muc_buddy_speaking_time_free (muc,
|
||||
muc->buddies_speaking_time);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_remove_old: remove old buddies speaking
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_time_remove_old (struct t_jabber_muc *muc)
|
||||
{
|
||||
time_t time_limit;
|
||||
|
||||
time_limit = time (NULL) -
|
||||
(weechat_config_integer (jabber_config_look_smart_filter_delay) * 60);
|
||||
|
||||
while (muc->last_buddy_speaking_time)
|
||||
{
|
||||
if (muc->last_buddy_speaking_time->time_last_message >= time_limit)
|
||||
break;
|
||||
|
||||
jabber_muc_buddy_speaking_time_free (muc,
|
||||
muc->last_buddy_speaking_time);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_add: add a buddy speaking time in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_time_add (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
time_t time_last_message)
|
||||
{
|
||||
struct t_jabber_muc_speaking *ptr_buddy, *new_buddy;
|
||||
|
||||
ptr_buddy = jabber_muc_buddy_speaking_time_search (muc, buddy_name, 0);
|
||||
if (ptr_buddy)
|
||||
jabber_muc_buddy_speaking_time_free (muc, ptr_buddy);
|
||||
|
||||
new_buddy = malloc (sizeof (*new_buddy));
|
||||
if (new_buddy)
|
||||
{
|
||||
new_buddy->buddy = strdup (buddy_name);
|
||||
new_buddy->time_last_message = time_last_message;
|
||||
|
||||
/* insert buddy at beginning of list */
|
||||
new_buddy->prev_buddy = NULL;
|
||||
new_buddy->next_buddy = muc->buddies_speaking_time;
|
||||
if (muc->buddies_speaking_time)
|
||||
muc->buddies_speaking_time->prev_buddy = new_buddy;
|
||||
else
|
||||
muc->last_buddy_speaking_time = new_buddy;
|
||||
muc->buddies_speaking_time = new_buddy;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_buddy_speaking_time_rename: rename a buddy speaking time in a MUC
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_buddy_speaking_time_rename (struct t_jabber_muc *muc,
|
||||
const char *old_buddy,
|
||||
const char *new_buddy)
|
||||
{
|
||||
struct t_jabber_muc_speaking *ptr_buddy;
|
||||
|
||||
if (muc->buddies_speaking_time)
|
||||
{
|
||||
ptr_buddy = jabber_muc_buddy_speaking_time_search (muc, old_buddy, 0);
|
||||
if (ptr_buddy)
|
||||
{
|
||||
free (ptr_buddy->buddy);
|
||||
ptr_buddy->buddy = strdup (new_buddy);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_free: free a muc and remove it from MUCs list
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_free (struct t_jabber_server *server, struct t_jabber_muc *muc)
|
||||
{
|
||||
struct t_jabber_muc *new_mucs;
|
||||
|
||||
if (!server || !muc)
|
||||
return;
|
||||
|
||||
/* remove muc from MUCs list */
|
||||
if (server->last_muc == muc)
|
||||
server->last_muc = muc->prev_muc;
|
||||
if (muc->prev_muc)
|
||||
{
|
||||
(muc->prev_muc)->next_muc = muc->next_muc;
|
||||
new_mucs = server->mucs;
|
||||
}
|
||||
else
|
||||
new_mucs = muc->next_muc;
|
||||
|
||||
if (muc->next_muc)
|
||||
(muc->next_muc)->prev_muc = muc->prev_muc;
|
||||
|
||||
/* free data */
|
||||
if (muc->name)
|
||||
free (muc->name);
|
||||
if (muc->topic)
|
||||
free (muc->topic);
|
||||
if (muc->modes)
|
||||
free (muc->modes);
|
||||
if (muc->key)
|
||||
free (muc->key);
|
||||
jabber_buddy_free_all (NULL, muc);
|
||||
if (muc->away_message)
|
||||
free (muc->away_message);
|
||||
if (muc->buddies_speaking[0])
|
||||
weechat_list_free (muc->buddies_speaking[0]);
|
||||
if (muc->buddies_speaking[1])
|
||||
weechat_list_free (muc->buddies_speaking[1]);
|
||||
jabber_muc_buddy_speaking_time_free_all (muc);
|
||||
if (muc->buffer_as_string)
|
||||
free (muc->buffer_as_string);
|
||||
|
||||
free (muc);
|
||||
|
||||
server->mucs = new_mucs;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_free_all: free all allocated MUCs for a server
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_free_all (struct t_jabber_server *server)
|
||||
{
|
||||
while (server->mucs)
|
||||
{
|
||||
jabber_muc_free (server, server->mucs);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_add_to_infolist: add a muc in an infolist
|
||||
* return 1 if ok, 0 if error
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_muc_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_jabber_muc *muc)
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
struct t_weelist_item *ptr_list_item;
|
||||
struct t_jabber_muc_speaking *ptr_buddy;
|
||||
char option_name[64];
|
||||
int i, index;
|
||||
|
||||
if (!infolist || !muc)
|
||||
return 0;
|
||||
|
||||
ptr_item = weechat_infolist_new_item (infolist);
|
||||
if (!ptr_item)
|
||||
return 0;
|
||||
|
||||
if (!weechat_infolist_new_var_pointer (ptr_item, "buffer", muc->buffer))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_name",
|
||||
(muc->buffer) ?
|
||||
weechat_buffer_get_string (muc->buffer, "name") : ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "buffer_short_name",
|
||||
(muc->buffer) ?
|
||||
weechat_buffer_get_string (muc->buffer, "short_name") : ""))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "type", muc->type))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "name", muc->name))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "topic", muc->topic))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "modes", muc->modes))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "limit", muc->limit))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "key", muc->key))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "buddies_count", muc->buddies_count))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "away_message", muc->away_message))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "nick_completion_reset", muc->nick_completion_reset))
|
||||
return 0;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (muc->buddies_speaking[i])
|
||||
{
|
||||
index = 0;
|
||||
for (ptr_list_item = weechat_list_get (muc->buddies_speaking[i], 0);
|
||||
ptr_list_item;
|
||||
ptr_list_item = weechat_list_next (ptr_list_item))
|
||||
{
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking%d_%05d", i, index);
|
||||
if (!weechat_infolist_new_var_string (ptr_item, option_name,
|
||||
weechat_list_string (ptr_list_item)))
|
||||
return 0;
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (muc->buddies_speaking_time)
|
||||
{
|
||||
i = 0;
|
||||
for (ptr_buddy = muc->last_buddy_speaking_time; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->prev_buddy)
|
||||
{
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking_time_buddy_%05d", i);
|
||||
if (!weechat_infolist_new_var_string (ptr_item, option_name,
|
||||
ptr_buddy->buddy))
|
||||
return 0;
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking_time_time_%05d", i);
|
||||
if (!weechat_infolist_new_var_time (ptr_item, option_name,
|
||||
ptr_buddy->time_last_message))
|
||||
return 0;
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_muc_print_log: print muc infos in log (usually for crash dump)
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_muc_print_log (struct t_jabber_muc *muc)
|
||||
{
|
||||
struct t_weelist_item *ptr_item;
|
||||
struct t_jabber_muc_speaking *ptr_buddy_speaking;
|
||||
int i, index;
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf (" => muc %s (addr:0x%lx)]", muc->name, muc);
|
||||
weechat_log_printf (" type . . . . . . . . . . : %d", muc->type);
|
||||
weechat_log_printf (" topic. . . . . . . . . . : '%s'", muc->topic);
|
||||
weechat_log_printf (" modes. . . . . . . . . . : '%s'", muc->modes);
|
||||
weechat_log_printf (" limit. . . . . . . . . . : %d", muc->limit);
|
||||
weechat_log_printf (" key. . . . . . . . . . . : '%s'", muc->key);
|
||||
weechat_log_printf (" away_message . . . . . . : '%s'", muc->away_message);
|
||||
weechat_log_printf (" nick_completion_reset. . : %d", muc->nick_completion_reset);
|
||||
weechat_log_printf (" buddies_count. . . . . . : %d", muc->buddies_count);
|
||||
weechat_log_printf (" buddies. . . . . . . . . : 0x%lx", muc->buddies);
|
||||
weechat_log_printf (" last_buddy . . . . . . . : 0x%lx", muc->last_buddy);
|
||||
weechat_log_printf (" buddies_speaking[0]. . . : 0x%lx", muc->buddies_speaking[0]);
|
||||
weechat_log_printf (" buddies_speaking[1]. . . : 0x%lx", muc->buddies_speaking[1]);
|
||||
weechat_log_printf (" buddies_speaking_time. . : 0x%lx", muc->buddies_speaking_time);
|
||||
weechat_log_printf (" last_buddy_speaking_time.: 0x%lx", muc->last_buddy_speaking_time);
|
||||
weechat_log_printf (" buffer . . . . . . . . . : 0x%lx", muc->buffer);
|
||||
weechat_log_printf (" buffer_as_string . . . . : '%s'", muc->buffer_as_string);
|
||||
weechat_log_printf (" prev_muc . . . . . . . . : 0x%lx", muc->prev_muc);
|
||||
weechat_log_printf (" next_muc . . . . . . . . : 0x%lx", muc->next_muc);
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (muc->buddies_speaking[i])
|
||||
{
|
||||
weechat_log_printf ("");
|
||||
index = 0;
|
||||
for (ptr_item = weechat_list_get (muc->buddies_speaking[i], 0);
|
||||
ptr_item; ptr_item = weechat_list_next (ptr_item))
|
||||
{
|
||||
weechat_log_printf (" buddy speaking[%d][%d]: '%s'",
|
||||
i, index, weechat_list_string (ptr_item));
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (muc->buddies_speaking_time)
|
||||
{
|
||||
weechat_log_printf ("");
|
||||
for (ptr_buddy_speaking = muc->buddies_speaking_time;
|
||||
ptr_buddy_speaking;
|
||||
ptr_buddy_speaking = ptr_buddy_speaking->next_buddy)
|
||||
{
|
||||
weechat_log_printf (" buddy speaking time: '%s', time: %ld",
|
||||
ptr_buddy_speaking->buddy,
|
||||
ptr_buddy_speaking->time_last_message);
|
||||
}
|
||||
}
|
||||
for (ptr_buddy = muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
jabber_buddy_print_log (ptr_buddy);
|
||||
}
|
||||
}
|
||||
@@ -1,107 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_MUC_H
|
||||
#define __WEECHAT_JABBER_MUC_H 1
|
||||
|
||||
/* MUC types */
|
||||
#define JABBER_MUC_TYPE_UNKNOWN -1
|
||||
#define JABBER_MUC_TYPE_MUC 0
|
||||
#define JABBER_MUC_TYPE_PRIVATE 1
|
||||
|
||||
#define JABBER_MUC_BUDDIES_SPEAKING_LIMIT 128
|
||||
|
||||
struct t_jabber_server;
|
||||
|
||||
struct t_jabber_muc_speaking
|
||||
{
|
||||
char *buddy; /* buddy speaking */
|
||||
time_t time_last_message; /* time */
|
||||
struct t_jabber_muc_speaking *prev_buddy; /* pointer to previous buddy */
|
||||
struct t_jabber_muc_speaking *next_buddy; /* pointer to next buddy */
|
||||
};
|
||||
|
||||
struct t_jabber_muc
|
||||
{
|
||||
int type; /* MUC type */
|
||||
char *name; /* name of MUC (exemple: "test") */
|
||||
char *topic; /* topic of MUC (host for pv) */
|
||||
char *modes; /* MUC modes */
|
||||
int limit; /* user limit (0 is limit not set) */
|
||||
char *key; /* MUC key (NULL if no key set) */
|
||||
char *away_message; /* to display away only once in pv */
|
||||
int nick_completion_reset; /* 1 for resetting nick completion */
|
||||
/* there was some join/part on chan */
|
||||
int buddies_count; /* # buddies in MUC (0 if pv) */
|
||||
struct t_jabber_buddy *buddies; /* buddies in MUC */
|
||||
struct t_jabber_buddy *last_buddy; /* last buddy in MUC */
|
||||
struct t_weelist *buddies_speaking[2]; /* for smart completion: first */
|
||||
/* list is buddy speaking, second is */
|
||||
/* speaking to me (highlight) */
|
||||
struct t_jabber_muc_speaking *buddies_speaking_time; /* for smart filter*/
|
||||
/* of join/quit messages */
|
||||
struct t_jabber_muc_speaking *last_buddy_speaking_time;
|
||||
struct t_gui_buffer *buffer; /* buffer allocated for MUC */
|
||||
char *buffer_as_string; /* used to return buffer info */
|
||||
struct t_jabber_muc *prev_muc; /* link to previous MUC */
|
||||
struct t_jabber_muc *next_muc; /* link to next MUC */
|
||||
};
|
||||
|
||||
extern int jabber_muc_valid (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc);
|
||||
extern struct t_jabber_muc *jabber_muc_new (struct t_jabber_server *server,
|
||||
int muc_type,
|
||||
const char *muc_name,
|
||||
int switch_to_muc,
|
||||
int auto_switch);
|
||||
extern void jabber_muc_set_topic (struct t_jabber_muc *muc,
|
||||
const char *topic);
|
||||
extern void jabber_muc_free (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc);
|
||||
extern void jabber_muc_free_all (struct t_jabber_server *server);
|
||||
extern struct t_jabber_muc *jabber_muc_search (struct t_jabber_server *server,
|
||||
const char *muc_name);
|
||||
extern int jabber_muc_is_muc (const char *string);
|
||||
extern void jabber_muc_remove_away (struct t_jabber_muc *muc);
|
||||
extern void jabber_muc_check_away (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc, int force);
|
||||
extern void jabber_muc_set_away (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
int is_away);
|
||||
extern void jabber_muc_buddy_speaking_add (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
int highlight);
|
||||
extern void jabber_muc_buddy_speaking_rename (struct t_jabber_muc *muc,
|
||||
const char *old_buddy,
|
||||
const char *new_buddy);
|
||||
extern struct t_jabber_muc_speaking *jabber_muc_buddy_speaking_time_search (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
int check_time);
|
||||
extern void jabber_muc_buddy_speaking_time_remove_old (struct t_jabber_muc *muc);
|
||||
extern void jabber_muc_buddy_speaking_time_add (struct t_jabber_muc *muc,
|
||||
const char *buddy_name,
|
||||
time_t time_last_message);
|
||||
extern void jabber_muc_buddy_speaking_time_rename (struct t_jabber_muc *muc,
|
||||
const char *old_buddy,
|
||||
const char *new_buddy);
|
||||
extern int jabber_muc_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_jabber_muc *muc);
|
||||
extern void jabber_muc_print_log (struct t_jabber_muc *muc);
|
||||
|
||||
#endif /* jabber-muc.h */
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,205 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_SERVER_H
|
||||
#define __WEECHAT_JABBER_SERVER_H 1
|
||||
|
||||
#include <sys/time.h>
|
||||
#include <regex.h>
|
||||
|
||||
#ifdef HAVE_GNUTLS
|
||||
#include <gnutls/gnutls.h>
|
||||
#endif
|
||||
|
||||
#include <iksemel.h>
|
||||
|
||||
enum t_jabber_server_option
|
||||
{
|
||||
JABBER_SERVER_OPTION_USERNAME = 0, /* username on server */
|
||||
JABBER_SERVER_OPTION_SERVER, /* server hostname/IP */
|
||||
JABBER_SERVER_OPTION_PROXY, /* proxy used for server (optional) */
|
||||
JABBER_SERVER_OPTION_IPV6, /* use IPv6 protocol */
|
||||
JABBER_SERVER_OPTION_TLS, /* use TLS cryptographic protocol */
|
||||
JABBER_SERVER_OPTION_SASL, /* use SASL for auth */
|
||||
JABBER_SERVER_OPTION_RESOURCE, /* resource */
|
||||
JABBER_SERVER_OPTION_PASSWORD, /* password */
|
||||
JABBER_SERVER_OPTION_LOCAL_ALIAS, /* local alias */
|
||||
JABBER_SERVER_OPTION_AUTOCONNECT, /* autoconnect to server at startup */
|
||||
JABBER_SERVER_OPTION_AUTORECONNECT, /* autoreconnect when disconnected */
|
||||
JABBER_SERVER_OPTION_AUTORECONNECT_DELAY, /* delay before next reconnect */
|
||||
JABBER_SERVER_OPTION_LOCAL_HOSTNAME,/* custom local hostname */
|
||||
JABBER_SERVER_OPTION_COMMAND, /* command to run once connected */
|
||||
JABBER_SERVER_OPTION_COMMAND_DELAY, /* delay after execution of command */
|
||||
JABBER_SERVER_OPTION_AUTOJOIN, /* MUCs to automatically join */
|
||||
JABBER_SERVER_OPTION_AUTOREJOIN, /* auto rejoin MUCs when kicked */
|
||||
/* number of server options */
|
||||
JABBER_SERVER_NUM_OPTIONS,
|
||||
};
|
||||
|
||||
#define JABBER_SERVER_OPTION_BOOLEAN(__server, __index) \
|
||||
((!weechat_config_option_is_null(__server->options[__index])) ? \
|
||||
weechat_config_boolean(__server->options[__index]) : \
|
||||
((!weechat_config_option_is_null(jabber_config_server_default[__index])) ? \
|
||||
weechat_config_boolean(jabber_config_server_default[__index]) \
|
||||
: weechat_config_boolean_default(jabber_config_server_default[__index])))
|
||||
|
||||
#define JABBER_SERVER_OPTION_INTEGER(__server, __index) \
|
||||
((!weechat_config_option_is_null(__server->options[__index])) ? \
|
||||
weechat_config_integer(__server->options[__index]) : \
|
||||
((!weechat_config_option_is_null(jabber_config_server_default[__index])) ? \
|
||||
weechat_config_integer(jabber_config_server_default[__index]) \
|
||||
: weechat_config_integer_default(jabber_config_server_default[__index])))
|
||||
|
||||
#define JABBER_SERVER_OPTION_STRING(__server, __index) \
|
||||
((!weechat_config_option_is_null(__server->options[__index])) ? \
|
||||
weechat_config_string(__server->options[__index]) : \
|
||||
((!weechat_config_option_is_null(jabber_config_server_default[__index])) ? \
|
||||
weechat_config_string(jabber_config_server_default[__index]) \
|
||||
: weechat_config_string_default(jabber_config_server_default[__index])))
|
||||
|
||||
#define JABBER_SERVER_DEFAULT_PORT 5222
|
||||
#define JABBER_SERVER_DEFAULT_RESOURCE "WeeChat"
|
||||
|
||||
#define jabber_server_sendf_queued(server, fmt, argz...) \
|
||||
if (server) \
|
||||
{ \
|
||||
server->queue_msg = 1; \
|
||||
jabber_server_sendf (server, fmt, ##argz); \
|
||||
server->queue_msg = 0; \
|
||||
}
|
||||
|
||||
struct t_jabber_server
|
||||
{
|
||||
/* user choices */
|
||||
char *name; /* internal name of server */
|
||||
struct t_config_option *options[JABBER_SERVER_NUM_OPTIONS];
|
||||
|
||||
/* internal vars */
|
||||
int temp_server; /* temporary server (not saved) */
|
||||
int reloading_from_config; /* 1 if reloading from config file */
|
||||
int reloaded_from_config; /* 1 if reloaded from config file */
|
||||
char *address; /* address from "server" option */
|
||||
int port; /* port from "server" option */
|
||||
char *current_ip; /* current IP address */
|
||||
int sock; /* socket for server (IPv4 or IPv6) */
|
||||
iksparser *iks_parser; /* parser for libiksemel */
|
||||
char *iks_id_string; /* string with id (user@server/resource) */
|
||||
iksid *iks_id; /* id for libiksemel */
|
||||
char *iks_server_name; /* server name for libiksemel */
|
||||
char *iks_password; /* password for libiksemel */
|
||||
iksfilter *iks_filter; /* filter for libiksemel */
|
||||
iks *iks_roster; /* jabber roster (buddy list) */
|
||||
int iks_features; /* stream features */
|
||||
int iks_authorized; /* authorized by jabber server */
|
||||
struct t_hook *hook_connect; /* connection hook */
|
||||
struct t_hook *hook_fd; /* hook for server socket */
|
||||
int is_connected; /* 1 if WeeChat is connected to server */
|
||||
int tls_connected; /* = 1 if connected with TLS */
|
||||
#ifdef HAVE_GNUTLS
|
||||
gnutls_session_t gnutls_sess; /* gnutls session (only if TLS is used) */
|
||||
#endif
|
||||
time_t reconnect_start; /* this time + delay = reconnect time */
|
||||
time_t command_time; /* this time + command_delay = time to */
|
||||
/* autojoin MUCs */
|
||||
int reconnect_join; /* 1 if opened MUCs to rejoin */
|
||||
int disable_autojoin; /* 1 if user asked to not autojoin MUCs */
|
||||
int is_away; /* 1 is user is marked as away */
|
||||
char *away_message; /* away message, NULL if not away */
|
||||
time_t away_time; /* time() when user marking as away */
|
||||
int lag; /* lag (in milliseconds) */
|
||||
struct timeval lag_check_time; /* last time lag was checked (ping sent) */
|
||||
time_t lag_next_check; /* time for next check */
|
||||
struct t_gui_buffer *buffer; /* GUI buffer allocated for server */
|
||||
char *buffer_as_string; /* used to return buffer info */
|
||||
int buddies_count; /* # buddies in roster */
|
||||
struct t_jabber_buddy *buddies; /* buddies in roster */
|
||||
struct t_jabber_buddy *last_buddy; /* last buddy in roster */
|
||||
struct t_jabber_muc *mucs; /* MUCs opened on server */
|
||||
struct t_jabber_muc *last_muc; /* last opened MUC on server */
|
||||
struct t_jabber_server *prev_server; /* link to previous server */
|
||||
struct t_jabber_server *next_server; /* link to next server */
|
||||
};
|
||||
|
||||
/* Jabber messages */
|
||||
|
||||
struct t_jabber_message
|
||||
{
|
||||
struct t_jabber_server *server; /* server pointer for received msg */
|
||||
char *data; /* message content */
|
||||
struct t_jabber_message *next_message; /* link to next message */
|
||||
};
|
||||
|
||||
extern struct t_jabber_server *jabber_servers;
|
||||
extern struct t_jabber_server *jabber_current_server;
|
||||
#ifdef HAVE_GNUTLS
|
||||
extern const int gnutls_cert_type_prio[];
|
||||
extern const int gnutls_prot_prio[];
|
||||
#endif
|
||||
extern struct t_jabber_message *jabber_recv_msgq, *jabber_msgq_last_msg;
|
||||
extern char *jabber_server_option_string[];
|
||||
extern char *jabber_server_option_default[];
|
||||
|
||||
extern int jabber_server_valid (struct t_jabber_server *server);
|
||||
extern int jabber_server_search_option (const char *option_name);
|
||||
extern struct t_jabber_server *jabber_server_search (const char *server_name);
|
||||
extern int jabber_server_get_muc_count (struct t_jabber_server *server);
|
||||
extern int jabber_server_get_pv_count (struct t_jabber_server *server);
|
||||
extern char *jabber_server_get_name_without_port (const char *name);
|
||||
extern const char *jabber_server_get_local_name (struct t_jabber_server *server);
|
||||
extern void jabber_server_set_server (struct t_jabber_server *server,
|
||||
const char *address);
|
||||
extern void jabber_server_set_nicks (struct t_jabber_server *server,
|
||||
const char *nicks);
|
||||
extern void jabber_server_buffer_set_highlight_words (struct t_gui_buffer *buffer);
|
||||
extern struct t_jabber_server *jabber_server_alloc (const char *name);
|
||||
extern void jabber_server_set_buffer_title (struct t_jabber_server *server);
|
||||
extern struct t_gui_buffer *jabber_server_create_buffer (struct t_jabber_server *server,
|
||||
int all_servers);
|
||||
extern void jabber_server_set_current_server (struct t_jabber_server *server);
|
||||
extern int jabber_server_iks_transport_connect_async (iksparser *parser,
|
||||
void **socketptr,
|
||||
const char *server,
|
||||
const char *server_name,
|
||||
int port,
|
||||
void *notify_data,
|
||||
iksAsyncNotify *notify_func);
|
||||
extern int jabber_server_iks_transport_send (void *socket, const char *data,
|
||||
size_t len);
|
||||
extern int jabber_server_iks_transport_recv (void *socket, char *buffer,
|
||||
size_t buf_len, int timeout);
|
||||
extern void jabber_server_iks_transport_close (void *socket);
|
||||
extern int jabber_server_connect (struct t_jabber_server *server);
|
||||
extern void jabber_server_auto_connect ();
|
||||
extern void jabber_server_disconnect (struct t_jabber_server *server,
|
||||
int reconnect);
|
||||
extern void jabber_server_disconnect_all ();
|
||||
extern void jabber_server_free_data (struct t_jabber_server *server);
|
||||
extern void jabber_server_free (struct t_jabber_server *server);
|
||||
extern void jabber_server_free_all ();
|
||||
extern struct t_jabber_server *jabber_server_copy (struct t_jabber_server *server,
|
||||
const char *new_name);
|
||||
extern int jabber_server_rename (struct t_jabber_server *server,
|
||||
const char *new_server_name);
|
||||
extern int jabber_server_recv_cb (void *arg_server, int fd);
|
||||
extern int jabber_server_timer_cb (void *data, int remaining_calls);
|
||||
extern int jabber_server_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_jabber_server *server);
|
||||
extern void jabber_server_print_log ();
|
||||
|
||||
#endif /* jabber-server.h */
|
||||
@@ -1,335 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-upgrade.c: save/restore Jabber plugin data */
|
||||
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-upgrade.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-input.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
struct t_jabber_server *jabber_upgrade_current_server = NULL;
|
||||
struct t_jabber_muc *jabber_upgrade_current_muc = NULL;
|
||||
|
||||
|
||||
/*
|
||||
* jabber_upgrade_save_all_data: save servers/MUCs/buddies info to upgrade
|
||||
* file
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_upgrade_save_all_data (struct t_upgrade_file *upgrade_file)
|
||||
{
|
||||
struct t_infolist *infolist;
|
||||
struct t_jabber_server *ptr_server;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
int rc;
|
||||
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
/* save server */
|
||||
infolist = weechat_infolist_new ();
|
||||
if (!infolist)
|
||||
return 0;
|
||||
if (!jabber_server_add_to_infolist (infolist, ptr_server))
|
||||
{
|
||||
weechat_infolist_free (infolist);
|
||||
return 0;
|
||||
}
|
||||
rc = weechat_upgrade_write_object (upgrade_file,
|
||||
JABBER_UPGRADE_TYPE_SERVER,
|
||||
infolist);
|
||||
weechat_infolist_free (infolist);
|
||||
if (!rc)
|
||||
return 0;
|
||||
|
||||
for (ptr_muc = ptr_server->mucs; ptr_muc;
|
||||
ptr_muc = ptr_muc->next_muc)
|
||||
{
|
||||
/* save MUC */
|
||||
infolist = weechat_infolist_new ();
|
||||
if (!infolist)
|
||||
return 0;
|
||||
if (!jabber_muc_add_to_infolist (infolist, ptr_muc))
|
||||
{
|
||||
weechat_infolist_free (infolist);
|
||||
return 0;
|
||||
}
|
||||
rc = weechat_upgrade_write_object (upgrade_file,
|
||||
JABBER_UPGRADE_TYPE_MUC,
|
||||
infolist);
|
||||
weechat_infolist_free (infolist);
|
||||
if (!rc)
|
||||
return 0;
|
||||
|
||||
for (ptr_buddy = ptr_muc->buddies; ptr_buddy;
|
||||
ptr_buddy = ptr_buddy->next_buddy)
|
||||
{
|
||||
/* save buddy */
|
||||
infolist = weechat_infolist_new ();
|
||||
if (!infolist)
|
||||
return 0;
|
||||
if (!jabber_buddy_add_to_infolist (infolist, ptr_buddy))
|
||||
{
|
||||
weechat_infolist_free (infolist);
|
||||
return 0;
|
||||
}
|
||||
rc = weechat_upgrade_write_object (upgrade_file,
|
||||
JABBER_UPGRADE_TYPE_BUDDY,
|
||||
infolist);
|
||||
weechat_infolist_free (infolist);
|
||||
if (!rc)
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_upgrade_save: save upgrade file
|
||||
* return 1 if ok, 0 if error
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_upgrade_save ()
|
||||
{
|
||||
int rc;
|
||||
struct t_upgrade_file *upgrade_file;
|
||||
|
||||
upgrade_file = weechat_upgrade_new (JABBER_UPGRADE_FILENAME, 1);
|
||||
if (!upgrade_file)
|
||||
return 0;
|
||||
|
||||
rc = jabber_upgrade_save_all_data (upgrade_file);
|
||||
|
||||
weechat_upgrade_close (upgrade_file);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_upgrade_set_buffer_callbacks: restore buffers callbacks (input and
|
||||
* close) for buffers created by Jabber
|
||||
* plugin
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_upgrade_set_buffer_callbacks ()
|
||||
{
|
||||
struct t_infolist *infolist;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
|
||||
infolist = weechat_infolist_get ("buffer", NULL, NULL);
|
||||
if (infolist)
|
||||
{
|
||||
while (weechat_infolist_next (infolist))
|
||||
{
|
||||
if (weechat_infolist_pointer (infolist, "plugin") == weechat_jabber_plugin)
|
||||
{
|
||||
ptr_buffer = weechat_infolist_pointer (infolist, "pointer");
|
||||
weechat_buffer_set_pointer (ptr_buffer, "close_callback", &jabber_buffer_close_cb);
|
||||
weechat_buffer_set_pointer (ptr_buffer, "input_callback", &jabber_input_data_cb);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_upgrade_read_cb: read callback for upgrade
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_upgrade_read_cb (void *data,
|
||||
struct t_upgrade_file *upgrade_file,
|
||||
int object_id,
|
||||
struct t_infolist *infolist)
|
||||
{
|
||||
int flags, size, i, index;
|
||||
char *buf, option_name[64];
|
||||
const char *buffer_name, *str, *buddy;
|
||||
struct t_jabber_buddy *ptr_buddy;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) upgrade_file;
|
||||
|
||||
weechat_infolist_reset_item_cursor (infolist);
|
||||
while (weechat_infolist_next (infolist))
|
||||
{
|
||||
switch (object_id)
|
||||
{
|
||||
case JABBER_UPGRADE_TYPE_SERVER:
|
||||
jabber_upgrade_current_server = jabber_server_search (weechat_infolist_string (infolist, "name"));
|
||||
if (jabber_upgrade_current_server)
|
||||
{
|
||||
jabber_upgrade_current_server->temp_server =
|
||||
weechat_infolist_integer (infolist, "temp_server");
|
||||
jabber_upgrade_current_server->buffer = NULL;
|
||||
buffer_name = weechat_infolist_string (infolist, "buffer_name");
|
||||
if (buffer_name && buffer_name[0])
|
||||
{
|
||||
ptr_buffer = weechat_buffer_search (JABBER_PLUGIN_NAME,
|
||||
buffer_name);
|
||||
if (ptr_buffer)
|
||||
{
|
||||
jabber_upgrade_current_server->buffer = ptr_buffer;
|
||||
if (weechat_config_boolean (jabber_config_look_one_server_buffer)
|
||||
&& !jabber_buffer_servers)
|
||||
{
|
||||
jabber_buffer_servers = ptr_buffer;
|
||||
}
|
||||
if (weechat_infolist_integer (infolist, "selected"))
|
||||
jabber_current_server = jabber_upgrade_current_server;
|
||||
}
|
||||
}
|
||||
jabber_upgrade_current_server->reconnect_start = weechat_infolist_time (infolist, "reconnect_start");
|
||||
jabber_upgrade_current_server->command_time = weechat_infolist_time (infolist, "command_time");
|
||||
jabber_upgrade_current_server->reconnect_join = weechat_infolist_integer (infolist, "reconnect_join");
|
||||
jabber_upgrade_current_server->disable_autojoin = weechat_infolist_integer (infolist, "disable_autojoin");
|
||||
jabber_upgrade_current_server->is_away = weechat_infolist_integer (infolist, "is_away");
|
||||
str = weechat_infolist_string (infolist, "away_message");
|
||||
if (str)
|
||||
jabber_upgrade_current_server->away_message = strdup (str);
|
||||
jabber_upgrade_current_server->away_time = weechat_infolist_time (infolist, "away_time");
|
||||
jabber_upgrade_current_server->lag = weechat_infolist_integer (infolist, "lag");
|
||||
buf = weechat_infolist_buffer (infolist, "lag_check_time", &size);
|
||||
if (buf)
|
||||
memcpy (&(jabber_upgrade_current_server->lag_check_time), buf, size);
|
||||
jabber_upgrade_current_server->lag_next_check = weechat_infolist_time (infolist, "lag_next_check");
|
||||
}
|
||||
break;
|
||||
case JABBER_UPGRADE_TYPE_MUC:
|
||||
if (jabber_upgrade_current_server)
|
||||
{
|
||||
jabber_upgrade_current_muc = jabber_muc_new (jabber_upgrade_current_server,
|
||||
weechat_infolist_integer (infolist, "type"),
|
||||
weechat_infolist_string (infolist, "name"),
|
||||
0, 0);
|
||||
if (jabber_upgrade_current_muc)
|
||||
{
|
||||
str = weechat_infolist_string (infolist, "topic");
|
||||
if (str)
|
||||
jabber_muc_set_topic (jabber_upgrade_current_muc, str);
|
||||
str = weechat_infolist_string (infolist, "modes");
|
||||
if (str)
|
||||
jabber_upgrade_current_muc->modes = strdup (str);
|
||||
jabber_upgrade_current_muc->limit = weechat_infolist_integer (infolist, "limit");
|
||||
str = weechat_infolist_string (infolist, "key");
|
||||
if (str)
|
||||
jabber_upgrade_current_muc->key = strdup (str);
|
||||
str = weechat_infolist_string (infolist, "away_message");
|
||||
if (str)
|
||||
jabber_upgrade_current_muc->away_message = strdup (str);
|
||||
jabber_upgrade_current_muc->nick_completion_reset = weechat_infolist_integer (infolist, "nick_completion_reset");
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
index = 0;
|
||||
while (1)
|
||||
{
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking%d_%05d", i, index);
|
||||
buddy = weechat_infolist_string (infolist, option_name);
|
||||
if (!buddy)
|
||||
break;
|
||||
jabber_muc_buddy_speaking_add (jabber_upgrade_current_muc,
|
||||
buddy,
|
||||
i);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
index = 0;
|
||||
while (1)
|
||||
{
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking_time_buddy_%05d", index);
|
||||
buddy = weechat_infolist_string (infolist, option_name);
|
||||
if (!buddy)
|
||||
break;
|
||||
snprintf (option_name, sizeof (option_name),
|
||||
"buddy_speaking_time_time_%05d", index);
|
||||
jabber_muc_buddy_speaking_time_add (jabber_upgrade_current_muc,
|
||||
buddy,
|
||||
weechat_infolist_time (infolist,
|
||||
option_name));
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case JABBER_UPGRADE_TYPE_BUDDY:
|
||||
if (jabber_upgrade_current_server)
|
||||
{
|
||||
flags = weechat_infolist_integer (infolist, "flags");
|
||||
ptr_buddy = jabber_buddy_new (jabber_upgrade_current_server,
|
||||
jabber_upgrade_current_muc,
|
||||
weechat_infolist_string (infolist, "name"),
|
||||
flags & JABBER_BUDDY_CHANOWNER,
|
||||
flags & JABBER_BUDDY_CHANADMIN,
|
||||
flags & JABBER_BUDDY_CHANADMIN2,
|
||||
flags & JABBER_BUDDY_OP,
|
||||
flags & JABBER_BUDDY_HALFOP,
|
||||
flags & JABBER_BUDDY_VOICE,
|
||||
flags & JABBER_BUDDY_CHANUSER,
|
||||
flags & JABBER_BUDDY_AWAY);
|
||||
if (ptr_buddy)
|
||||
{
|
||||
str = weechat_infolist_string (infolist, "host");
|
||||
if (str)
|
||||
ptr_buddy->host = strdup (str);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_upgrade_load: load upgrade file
|
||||
* return 1 if ok, 0 if error
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_upgrade_load ()
|
||||
{
|
||||
int rc;
|
||||
struct t_upgrade_file *upgrade_file;
|
||||
|
||||
jabber_upgrade_set_buffer_callbacks ();
|
||||
|
||||
upgrade_file = weechat_upgrade_new (JABBER_UPGRADE_FILENAME, 0);
|
||||
rc = weechat_upgrade_read (upgrade_file, &jabber_upgrade_read_cb, NULL);
|
||||
|
||||
return rc;
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_UPGRADE_H
|
||||
#define __WEECHAT_JABBER_UPGRADE_H 1
|
||||
|
||||
#define JABBER_UPGRADE_FILENAME "jabber"
|
||||
|
||||
/* For developers: please add new values ONLY AT THE END of enums */
|
||||
|
||||
enum t_jabber_upgrade_type
|
||||
{
|
||||
JABBER_UPGRADE_TYPE_SERVER = 0,
|
||||
JABBER_UPGRADE_TYPE_MUC,
|
||||
JABBER_UPGRADE_TYPE_BUDDY,
|
||||
};
|
||||
|
||||
extern int jabber_upgrade_save ();
|
||||
extern int jabber_upgrade_load ();
|
||||
|
||||
#endif /* jabber-upgrade.h */
|
||||
@@ -1,424 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber-xmpp.c: XMPP protocol for Jabber plugin */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <iksemel.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-xmpp.h"
|
||||
#include "jabber-buddy.h"
|
||||
#include "jabber-buffer.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-debug.h"
|
||||
#include "jabber-muc.h"
|
||||
#include "jabber-server.h"
|
||||
|
||||
|
||||
/*
|
||||
* jabber_xmpp_log_level_for_command: get log level for Jabber command
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_log_level_for_command (const char *command)
|
||||
{
|
||||
if (!command || !command[0])
|
||||
return 0;
|
||||
|
||||
if (strcmp (command, "chat_msg") == 0)
|
||||
return 1;
|
||||
|
||||
return 3;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_tags: build tags list with Jabber command and/or tags
|
||||
*/
|
||||
|
||||
const char *
|
||||
jabber_xmpp_tags (const char *command, const char *tags)
|
||||
{
|
||||
static char string[512];
|
||||
int log_level;
|
||||
char str_log_level[32];
|
||||
|
||||
log_level = 0;
|
||||
str_log_level[0] = '\0';
|
||||
|
||||
if (command && command[0])
|
||||
{
|
||||
log_level = jabber_xmpp_log_level_for_command (command);
|
||||
if (log_level > 0)
|
||||
{
|
||||
snprintf (str_log_level, sizeof (str_log_level),
|
||||
",log%d", log_level);
|
||||
}
|
||||
}
|
||||
|
||||
if (command && command[0] && tags && tags[0])
|
||||
{
|
||||
snprintf (string, sizeof (string),
|
||||
"jabber_%s,%s%s", command, tags, str_log_level);
|
||||
return string;
|
||||
}
|
||||
|
||||
if (command && command[0])
|
||||
{
|
||||
snprintf (string, sizeof (string),
|
||||
"jabber_%s%s", command, str_log_level);
|
||||
return string;
|
||||
}
|
||||
|
||||
if (tags && tags[0])
|
||||
{
|
||||
snprintf (string, sizeof (string), "%s", tags);
|
||||
return string;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_recv_chat_message: receive a message
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_recv_chat_message (struct t_jabber_server *server,
|
||||
iks *node)
|
||||
{
|
||||
char *attrib_from, *from, *pos;
|
||||
char *body;
|
||||
struct t_jabber_muc *ptr_muc;
|
||||
|
||||
attrib_from = iks_find_attrib (node, "from");
|
||||
if (!attrib_from || !attrib_from[0])
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
body = iks_find_cdata (node, "body");
|
||||
if (!body)
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
pos = strchr (attrib_from, '/');
|
||||
from = (pos) ?
|
||||
weechat_strndup (attrib_from, pos - attrib_from) : strdup (attrib_from);
|
||||
if (from)
|
||||
{
|
||||
ptr_muc = jabber_muc_search (server, from);
|
||||
if (!ptr_muc)
|
||||
{
|
||||
ptr_muc = jabber_muc_new (server,
|
||||
JABBER_MUC_TYPE_PRIVATE,
|
||||
from, 0, 0);
|
||||
if (!ptr_muc)
|
||||
{
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: cannot create new "
|
||||
"private buffer \"%s\""),
|
||||
jabber_buffer_get_server_prefix (server,
|
||||
"error"),
|
||||
JABBER_PLUGIN_NAME, from);
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
}
|
||||
//jabber_muc_set_topic (ptr_channel, address);
|
||||
|
||||
weechat_printf_tags (ptr_muc->buffer,
|
||||
jabber_xmpp_tags ("chat_msg", "notify_private"),
|
||||
"%s%s",
|
||||
jabber_buddy_as_prefix (NULL,
|
||||
from,
|
||||
JABBER_COLOR_CHAT_NICK_OTHER),
|
||||
body);
|
||||
|
||||
weechat_hook_signal_send ("jabber_pv",
|
||||
WEECHAT_HOOK_SIGNAL_STRING,
|
||||
body);
|
||||
free (from);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_send_chat_message: send a message to MUC or buddy
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_xmpp_send_chat_message (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
const char *message)
|
||||
{
|
||||
iks *msg;
|
||||
|
||||
if (muc->type == JABBER_MUC_TYPE_PRIVATE)
|
||||
{
|
||||
msg = iks_make_msg (IKS_TYPE_CHAT, muc->name, message);
|
||||
if (msg)
|
||||
{
|
||||
iks_send (server->iks_parser, msg);
|
||||
iks_delete (msg);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// TODO: send message to MUC
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_iks_stream_hook: iksemel stream hook
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_iks_stream_hook (void *user_data, int type, iks *node)
|
||||
{
|
||||
struct t_jabber_server *server;
|
||||
iks *x, *t;
|
||||
ikspak *pak;
|
||||
|
||||
server = (struct t_jabber_server *)user_data;
|
||||
|
||||
switch (type)
|
||||
{
|
||||
case IKS_NODE_START:
|
||||
if (JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_TLS)
|
||||
&& !iks_is_secure (server->iks_parser))
|
||||
{
|
||||
iks_start_tls (server->iks_parser);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_SASL))
|
||||
{
|
||||
x = iks_make_auth (server->iks_id,
|
||||
JABBER_SERVER_OPTION_STRING(server, JABBER_SERVER_OPTION_PASSWORD),
|
||||
iks_find_attrib (node, "id"));
|
||||
iks_insert_attrib (x, "id", "auth");
|
||||
iks_send (server->iks_parser, x);
|
||||
iks_delete (x);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case IKS_NODE_NORMAL:
|
||||
if (strcmp ("stream:features", iks_name (node)) == 0)
|
||||
{
|
||||
server->iks_features = iks_stream_features (node);
|
||||
if (JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_SASL))
|
||||
{
|
||||
if (!JABBER_SERVER_OPTION_BOOLEAN(server, JABBER_SERVER_OPTION_TLS)
|
||||
|| iks_is_secure (server->iks_parser))
|
||||
{
|
||||
if (server->iks_authorized)
|
||||
{
|
||||
if (server->iks_features & IKS_STREAM_BIND)
|
||||
{
|
||||
t = iks_make_resource_bind (server->iks_id);
|
||||
iks_send (server->iks_parser, t);
|
||||
iks_delete (t);
|
||||
}
|
||||
if (server->iks_features & IKS_STREAM_SESSION)
|
||||
{
|
||||
t = iks_make_session ();
|
||||
iks_insert_attrib (t, "id", "auth");
|
||||
iks_send (server->iks_parser, t);
|
||||
iks_delete (t);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (server->iks_features & IKS_STREAM_SASL_MD5)
|
||||
{
|
||||
iks_start_sasl (server->iks_parser,
|
||||
IKS_SASL_DIGEST_MD5,
|
||||
server->iks_id->user,
|
||||
server->iks_password);
|
||||
}
|
||||
else if (server->iks_features & IKS_STREAM_SASL_PLAIN)
|
||||
{
|
||||
iks_start_sasl (server->iks_parser,
|
||||
IKS_SASL_PLAIN,
|
||||
server->iks_id->user,
|
||||
server->iks_password);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (strcmp ("failure", iks_name (node)) == 0)
|
||||
{
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: SASL authentication failed (check "
|
||||
"SASL option and password)"),
|
||||
jabber_buffer_get_server_prefix (server,
|
||||
"error"),
|
||||
JABBER_PLUGIN_NAME);
|
||||
jabber_server_disconnect (server, 0);
|
||||
}
|
||||
else if (strcmp ("success", iks_name (node)) == 0)
|
||||
{
|
||||
server->iks_authorized = 1;
|
||||
iks_send_header (server->iks_parser, server->iks_id->server);
|
||||
}
|
||||
else if (strcmp ("message", iks_name (node)) == 0)
|
||||
{
|
||||
jabber_xmpp_recv_chat_message (server, node);
|
||||
}
|
||||
else
|
||||
{
|
||||
pak = iks_packet (node);
|
||||
iks_filter_packet (server->iks_filter, pak);
|
||||
}
|
||||
break;
|
||||
case IKS_NODE_STOP:
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: server disconnected"),
|
||||
jabber_buffer_get_server_prefix (server, "network"),
|
||||
JABBER_PLUGIN_NAME);
|
||||
jabber_server_disconnect (server, 1);
|
||||
break;
|
||||
case IKS_NODE_ERROR:
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: stream error"),
|
||||
jabber_buffer_get_server_prefix (server,
|
||||
"error"),
|
||||
JABBER_PLUGIN_NAME);
|
||||
break;
|
||||
}
|
||||
|
||||
if (node)
|
||||
iks_delete (node);
|
||||
|
||||
return IKS_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_iks_log: log
|
||||
*/
|
||||
|
||||
void
|
||||
jabber_xmpp_iks_log (void *user_data, const char *data, size_t size,
|
||||
int is_incoming)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) size;
|
||||
|
||||
jabber_debug_printf ((struct t_jabber_server *)user_data,
|
||||
!is_incoming, 0,
|
||||
data);
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_iks_result: iks result
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_iks_result (void *user_data, ikspak *pak)
|
||||
{
|
||||
iks *x;
|
||||
struct t_jabber_server *server;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pak;
|
||||
|
||||
server = (struct t_jabber_server *)user_data;
|
||||
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: login ok"),
|
||||
jabber_buffer_get_server_prefix (server, NULL),
|
||||
JABBER_PLUGIN_NAME);
|
||||
|
||||
x = iks_make_iq (IKS_TYPE_GET, IKS_NS_ROSTER);
|
||||
iks_insert_attrib (x, "id", "roster");
|
||||
iks_send (server->iks_parser, x);
|
||||
iks_delete (x);
|
||||
|
||||
return IKS_FILTER_EAT;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_iks_error: iks error
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_iks_error (void *user_data, ikspak *pak)
|
||||
{
|
||||
struct t_jabber_server *server;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pak;
|
||||
|
||||
server = (struct t_jabber_server *)user_data;
|
||||
|
||||
weechat_printf (server->buffer,
|
||||
_("%s%s: authentication failed (check SASL option and "
|
||||
"password)"),
|
||||
jabber_buffer_get_server_prefix (server, "error"),
|
||||
JABBER_PLUGIN_NAME);
|
||||
|
||||
jabber_server_disconnect (server, 0);
|
||||
|
||||
return IKS_FILTER_EAT;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_xmpp_iks_roster: iks roster
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_xmpp_iks_roster (void *user_data, ikspak *pak)
|
||||
{
|
||||
struct t_jabber_server *server;
|
||||
char *jid, *id, *pos;
|
||||
iks *x;
|
||||
|
||||
server = (struct t_jabber_server *)user_data;
|
||||
|
||||
server->iks_roster = pak->x;
|
||||
|
||||
x = iks_child(pak->query);
|
||||
while (x)
|
||||
{
|
||||
if (iks_strcmp (iks_name(x), "item") == 0)
|
||||
{
|
||||
jid = iks_find_attrib (x, "jid");
|
||||
if (jid)
|
||||
{
|
||||
pos = strchr (jid, '@');
|
||||
//id = (pos) ? weechat_strndup (jid, pos - jid) : strdup (jid);
|
||||
id = strdup (jid);
|
||||
if (id)
|
||||
{
|
||||
jabber_buddy_new (server, NULL, id, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||
free (id);
|
||||
}
|
||||
}
|
||||
}
|
||||
x = iks_next (x);
|
||||
}
|
||||
if (x)
|
||||
iks_delete (x);
|
||||
|
||||
return IKS_FILTER_EAT;
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_XMPP_H
|
||||
#define __WEECHAT_JABBER_XMPP_H 1
|
||||
|
||||
#include <iksemel.h>
|
||||
|
||||
struct t_jabber_server;
|
||||
struct t_jabber_muc;
|
||||
|
||||
extern const char *jabber_xmpp_tags (const char *command, const char *tags);
|
||||
extern void jabber_xmpp_send_chat_message (struct t_jabber_server *server,
|
||||
struct t_jabber_muc *muc,
|
||||
const char *message);
|
||||
extern int jabber_xmpp_iks_stream_hook (void *user_data, int type, iks *node);
|
||||
extern void jabber_xmpp_iks_log (void *user_data, const char *data,
|
||||
size_t size, int is_incoming);
|
||||
extern int jabber_xmpp_iks_result (void *user_data, ikspak *pak);
|
||||
extern int jabber_xmpp_iks_error (void *user_data, ikspak *pak);
|
||||
extern int jabber_xmpp_iks_roster (void *user_data, ikspak *pak);
|
||||
|
||||
#endif /* jabber-xmpp.h */
|
||||
@@ -1,211 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/* jabber.c: Jabber plugin for WeeChat */
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "jabber.h"
|
||||
#include "jabber-bar-item.h"
|
||||
#include "jabber-command.h"
|
||||
#include "jabber-completion.h"
|
||||
#include "jabber-config.h"
|
||||
#include "jabber-debug.h"
|
||||
#include "jabber-info.h"
|
||||
#include "jabber-server.h"
|
||||
#include "jabber-upgrade.h"
|
||||
|
||||
|
||||
WEECHAT_PLUGIN_NAME(JABBER_PLUGIN_NAME);
|
||||
WEECHAT_PLUGIN_DESCRIPTION("Jabber plugin for WeeChat");
|
||||
WEECHAT_PLUGIN_AUTHOR("FlashCode <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE("GPL3");
|
||||
|
||||
struct t_weechat_plugin *weechat_jabber_plugin = NULL;
|
||||
|
||||
struct t_hook *jabber_hook_timer = NULL;
|
||||
|
||||
int jabber_signal_upgrade_received = 0; /* signal "upgrade" received ? */
|
||||
|
||||
|
||||
/*
|
||||
* jabber_signal_quit_cb: callback for "quit" signal
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_signal_quit_cb (void *data, const char *signal, const char *type_data,
|
||||
void *signal_data)
|
||||
{
|
||||
struct t_jabber_server *ptr_server;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) signal;
|
||||
|
||||
if (strcmp (type_data, WEECHAT_HOOK_SIGNAL_STRING) == 0)
|
||||
{
|
||||
for (ptr_server = jabber_servers; ptr_server;
|
||||
ptr_server = ptr_server->next_server)
|
||||
{
|
||||
jabber_command_quit_server (ptr_server,
|
||||
(signal_data) ? (char *)signal_data : NULL);
|
||||
}
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* jabber_signal_upgrade_cb: callback for "upgrade" signal
|
||||
*/
|
||||
|
||||
int
|
||||
jabber_signal_upgrade_cb (void *data, const char *signal, const char *type_data,
|
||||
void *signal_data)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) signal;
|
||||
(void) type_data;
|
||||
(void) signal_data;
|
||||
|
||||
jabber_signal_upgrade_received = 1;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* weechat_plugin_init: initialize Jabber plugin
|
||||
*/
|
||||
|
||||
int
|
||||
weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
{
|
||||
int i, auto_connect, upgrading;
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
if (!jabber_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
if (jabber_config_read () < 0)
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
jabber_command_init ();
|
||||
|
||||
jabber_info_init ();
|
||||
|
||||
/* hook some signals */
|
||||
jabber_debug_init ();
|
||||
weechat_hook_signal ("quit", &jabber_signal_quit_cb, NULL);
|
||||
weechat_hook_signal ("upgrade", &jabber_signal_upgrade_cb, NULL);
|
||||
//weechat_hook_signal ("xfer_send_ready", &jabber_server_xfer_send_ready_cb, NULL);
|
||||
//weechat_hook_signal ("xfer_resume_ready", &jabber_server_xfer_resume_ready_cb, NULL);
|
||||
//weechat_hook_signal ("xfer_send_accept_resume", &jabber_server_xfer_send_accept_resume_cb, NULL);
|
||||
|
||||
/* hook completions */
|
||||
jabber_completion_init ();
|
||||
|
||||
jabber_bar_item_init ();
|
||||
|
||||
/* look at arguments */
|
||||
auto_connect = 1;
|
||||
upgrading = 0;
|
||||
for (i = 0; i < argc; i++)
|
||||
{
|
||||
if ((weechat_strcasecmp (argv[i], "-a") == 0)
|
||||
|| (weechat_strcasecmp (argv[i], "--no-connect") == 0))
|
||||
{
|
||||
auto_connect = 0;
|
||||
}
|
||||
else if ((weechat_strncasecmp (argv[i], JABBER_PLUGIN_NAME, 3) == 0))
|
||||
{
|
||||
/*
|
||||
if (!jabber_server_alloc_with_url (argv[i]))
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: error with server from URL "
|
||||
"(\"%s\"), ignored"),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME,
|
||||
argv[i]);
|
||||
}
|
||||
*/
|
||||
}
|
||||
else if (weechat_strcasecmp (argv[i], "--upgrade") == 0)
|
||||
{
|
||||
upgrading = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (upgrading)
|
||||
{
|
||||
if (!jabber_upgrade_load ())
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: WARNING: some network connections may "
|
||||
"still be opened and not visible, you should "
|
||||
"restart WeeChat now (with /quit)."),
|
||||
weechat_prefix ("error"), JABBER_PLUGIN_NAME);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (auto_connect)
|
||||
jabber_server_auto_connect ();
|
||||
}
|
||||
|
||||
jabber_hook_timer = weechat_hook_timer (1 * 1000, 0, 0,
|
||||
&jabber_server_timer_cb, NULL);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* weechat_plugin_end: end Jabber plugin
|
||||
*/
|
||||
|
||||
int
|
||||
weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) plugin;
|
||||
|
||||
if (jabber_hook_timer)
|
||||
weechat_unhook (jabber_hook_timer);
|
||||
|
||||
if (jabber_signal_upgrade_received)
|
||||
{
|
||||
jabber_config_write (1);
|
||||
jabber_upgrade_save ();
|
||||
}
|
||||
else
|
||||
{
|
||||
jabber_config_write (0);
|
||||
jabber_server_disconnect_all ();
|
||||
}
|
||||
|
||||
jabber_server_free_all ();
|
||||
|
||||
jabber_config_free ();
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
@@ -1,71 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2009 by FlashCode <flashcode@flashtux.org>
|
||||
* See README for License detail, AUTHORS for developers list.
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __WEECHAT_JABBER_H
|
||||
#define __WEECHAT_JABBER_H 1
|
||||
|
||||
#define weechat_plugin weechat_jabber_plugin
|
||||
#define JABBER_PLUGIN_NAME "jabber"
|
||||
|
||||
#define JABBER_GET_SERVER(__buffer) \
|
||||
struct t_weechat_plugin *buffer_plugin = NULL; \
|
||||
struct t_jabber_server *ptr_server = NULL; \
|
||||
buffer_plugin = weechat_buffer_get_pointer (__buffer, "plugin"); \
|
||||
if (buffer_plugin == weechat_jabber_plugin) \
|
||||
jabber_buffer_get_server_muc (__buffer, &ptr_server, NULL);
|
||||
|
||||
#define JABBER_GET_SERVER_MUC(__buffer) \
|
||||
struct t_weechat_plugin *buffer_plugin = NULL; \
|
||||
struct t_jabber_server *ptr_server = NULL; \
|
||||
struct t_jabber_muc *ptr_muc = NULL; \
|
||||
buffer_plugin = weechat_buffer_get_pointer (__buffer, "plugin"); \
|
||||
if (buffer_plugin == weechat_jabber_plugin) \
|
||||
{ \
|
||||
jabber_buffer_get_server_muc (__buffer, &ptr_server, &ptr_muc); \
|
||||
}
|
||||
|
||||
#define JABBER_COLOR_CHAT weechat_color("chat")
|
||||
#define JABBER_COLOR_CHAT_CHANNEL weechat_color("chat_channel")
|
||||
#define JABBER_COLOR_CHAT_DELIMITERS weechat_color("chat_delimiters")
|
||||
#define JABBER_COLOR_CHAT_HOST weechat_color("chat_host")
|
||||
#define JABBER_COLOR_CHAT_NICK weechat_color("chat_nick")
|
||||
#define JABBER_COLOR_CHAT_NICK_SELF weechat_color("chat_nick_self")
|
||||
#define JABBER_COLOR_CHAT_NICK_OTHER weechat_color("chat_nick_other")
|
||||
#define JABBER_COLOR_CHAT_SERVER weechat_color("chat_server")
|
||||
#define JABBER_COLOR_CHAT_VALUE weechat_color("chat_value")
|
||||
#define JABBER_COLOR_NICKLIST_PREFIX1 weechat_color("nicklist_prefix1")
|
||||
#define JABBER_COLOR_NICKLIST_PREFIX2 weechat_color("nicklist_prefix2")
|
||||
#define JABBER_COLOR_NICKLIST_PREFIX3 weechat_color("nicklist_prefix3")
|
||||
#define JABBER_COLOR_NICKLIST_PREFIX4 weechat_color("nicklist_prefix4")
|
||||
#define JABBER_COLOR_NICKLIST_PREFIX5 weechat_color("nicklist_prefix5")
|
||||
#define JABBER_COLOR_BAR_FG weechat_color("bar_fg")
|
||||
#define JABBER_COLOR_BAR_BG weechat_color("bar_bg")
|
||||
#define JABBER_COLOR_BAR_DELIM weechat_color("bar_delim")
|
||||
#define JABBER_COLOR_STATUS_NUMBER weechat_color(weechat_config_string(weechat_config_get("weechat.color.status_number")))
|
||||
#define JABBER_COLOR_STATUS_NAME weechat_color(weechat_config_string(weechat_config_get("weechat.color.status_name")))
|
||||
#define JABBER_COLOR_MESSAGE_JOIN weechat_color(weechat_config_string(jabber_config_color_message_join))
|
||||
#define JABBER_COLOR_MESSAGE_QUIT weechat_color(weechat_config_string(jabber_config_color_message_quit))
|
||||
#define JABBER_COLOR_INPUT_NICK weechat_color(weechat_config_string(jabber_config_color_input_nick))
|
||||
#define JABBER_COLOR_NICK_IN_SERVER_MESSAGE(nick) \
|
||||
((nick && weechat_config_boolean(jabber_config_look_color_nicks_in_server_messages)) ? \
|
||||
nick->color : JABBER_COLOR_CHAT_NICK)
|
||||
|
||||
extern struct t_weechat_plugin *weechat_jabber_plugin;
|
||||
|
||||
#endif /* jabber.h */
|
||||
@@ -33,7 +33,7 @@ struct t_infolist;
|
||||
struct t_weelist;
|
||||
|
||||
/* API version (used to check that plugin has same API and can be loaded) */
|
||||
#define WEECHAT_PLUGIN_API_VERSION "20090612-01"
|
||||
#define WEECHAT_PLUGIN_API_VERSION "20090614-01"
|
||||
|
||||
/* macros for defining plugin infos */
|
||||
#define WEECHAT_PLUGIN_NAME(__name) \
|
||||
|
||||
Reference in New Issue
Block a user