mirror of
https://github.com/weechat/weechat.git
synced 2026-06-12 14:14:48 +02:00
irc: add option "-noswitch" for command /join (task #12275)
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
WeeChat ChangeLog
|
||||
=================
|
||||
Sébastien Helleu <flashcode@flashtux.org>
|
||||
v0.4.0-dev, 2012-10-06
|
||||
v0.4.0-dev, 2012-10-09
|
||||
|
||||
|
||||
Version 0.4.0 (under dev!)
|
||||
--------------------------
|
||||
|
||||
* aspell: add bar item "aspell_dict" (dictionary used on current buffer)
|
||||
* irc: add option "-noswitch" for command /join (task #12275)
|
||||
* irc: fix crash when message 352 has too few arguments (bug #37513)
|
||||
* irc: remove unneeded server disconnect when server buffer is closed and server
|
||||
is already disconnected
|
||||
|
||||
@@ -189,8 +189,9 @@
|
||||
'last_redirect' (pointer, hdata: "irc_redirect") +
|
||||
'notify_list' (pointer, hdata: "irc_notify") +
|
||||
'last_notify' (pointer, hdata: "irc_notify") +
|
||||
'manual_joins' (hashtable) +
|
||||
'channel_join_key' (hashtable) +
|
||||
'join_manual' (hashtable) +
|
||||
'join_channel_key' (hashtable) +
|
||||
'join_noswitch' (hashtable) +
|
||||
'buffer' (pointer, hdata: "buffer") +
|
||||
'buffer_as_string' (string) +
|
||||
'channels' (pointer, hdata: "irc_channel") +
|
||||
|
||||
@@ -212,16 +212,18 @@ nick: Nickname
|
||||
[[command_irc_join]]
|
||||
[command]*`join`* einen Channel betreten::
|
||||
........................................
|
||||
/join [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
|
||||
server: Verbindung zu diesem Server (interner Name)
|
||||
channel: Name des Channels der betreten werden soll
|
||||
key: Zugriffsschlüssel für einen Channel (Channels die einen Zugriffsschlüssel benötigen müssen zuerst aufgeführt werden)
|
||||
-noswitch: do not switch to new buffer
|
||||
server: send to this server (internal name)
|
||||
channel: channel name to join
|
||||
key: key to join the channel (channels with a key must be the first in list)
|
||||
|
||||
Beispiele:
|
||||
Examples:
|
||||
/join #weechat
|
||||
/join #geschützter_Channel,#weechat Zugriffsschlüssel
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -noswitch #weechat
|
||||
........................................
|
||||
|
||||
[[command_irc_kick]]
|
||||
|
||||
@@ -189,8 +189,9 @@
|
||||
'last_redirect' (pointer, hdata: "irc_redirect") +
|
||||
'notify_list' (pointer, hdata: "irc_notify") +
|
||||
'last_notify' (pointer, hdata: "irc_notify") +
|
||||
'manual_joins' (hashtable) +
|
||||
'channel_join_key' (hashtable) +
|
||||
'join_manual' (hashtable) +
|
||||
'join_channel_key' (hashtable) +
|
||||
'join_noswitch' (hashtable) +
|
||||
'buffer' (pointer, hdata: "buffer") +
|
||||
'buffer_as_string' (string) +
|
||||
'channels' (pointer, hdata: "irc_channel") +
|
||||
|
||||
@@ -212,16 +212,18 @@ nick: nick
|
||||
[[command_irc_join]]
|
||||
[command]*`join`* join a channel::
|
||||
........................................
|
||||
/join [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
|
||||
server: send to this server (internal name)
|
||||
channel: channel name to join
|
||||
key: key to join the channel (channels with a key must be the first in list)
|
||||
-noswitch: do not switch to new buffer
|
||||
server: send to this server (internal name)
|
||||
channel: channel name to join
|
||||
key: key to join the channel (channels with a key must be the first in list)
|
||||
|
||||
Examples:
|
||||
/join #weechat
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -noswitch #weechat
|
||||
........................................
|
||||
|
||||
[[command_irc_kick]]
|
||||
|
||||
@@ -189,8 +189,9 @@
|
||||
'last_redirect' (pointer, hdata: "irc_redirect") +
|
||||
'notify_list' (pointer, hdata: "irc_notify") +
|
||||
'last_notify' (pointer, hdata: "irc_notify") +
|
||||
'manual_joins' (hashtable) +
|
||||
'channel_join_key' (hashtable) +
|
||||
'join_manual' (hashtable) +
|
||||
'join_channel_key' (hashtable) +
|
||||
'join_noswitch' (hashtable) +
|
||||
'buffer' (pointer, hdata: "buffer") +
|
||||
'buffer_as_string' (string) +
|
||||
'channels' (pointer, hdata: "irc_channel") +
|
||||
|
||||
@@ -212,16 +212,18 @@ pseudo: pseudo
|
||||
[[command_irc_join]]
|
||||
[command]*`join`* rejoindre un canal::
|
||||
........................................
|
||||
/join [-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]
|
||||
/join [-noswitch] [-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]
|
||||
|
||||
serveur: envoyer à ce serveur (nom interne)
|
||||
canal: nom du canal à rejoindre
|
||||
clé: clé pour rejoindre le canal (les canaux avec une clé doivent être les premiers dans la liste)
|
||||
-noswitch: ne pas basculer sur le nouveau tampon
|
||||
serveur: envoyer à ce serveur (nom interne)
|
||||
canal: nom du canal à rejoindre
|
||||
clé: clé pour rejoindre le canal (les canaux avec une clé doivent être les premiers dans la liste)
|
||||
|
||||
Exemples:
|
||||
/join #weechat
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -noswitch #weechat
|
||||
........................................
|
||||
|
||||
[[command_irc_kick]]
|
||||
|
||||
@@ -189,8 +189,9 @@
|
||||
'last_redirect' (pointer, hdata: "irc_redirect") +
|
||||
'notify_list' (pointer, hdata: "irc_notify") +
|
||||
'last_notify' (pointer, hdata: "irc_notify") +
|
||||
'manual_joins' (hashtable) +
|
||||
'channel_join_key' (hashtable) +
|
||||
'join_manual' (hashtable) +
|
||||
'join_channel_key' (hashtable) +
|
||||
'join_noswitch' (hashtable) +
|
||||
'buffer' (pointer, hdata: "buffer") +
|
||||
'buffer_as_string' (string) +
|
||||
'channels' (pointer, hdata: "irc_channel") +
|
||||
|
||||
@@ -212,16 +212,18 @@ nick: nick
|
||||
[[command_irc_join]]
|
||||
[command]*`join`* entra in un canale::
|
||||
........................................
|
||||
/join [-server <server>] [<canale1>[,<canale2>...]] [<chiave1>[,<chiave2>...]]
|
||||
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
|
||||
server: invia a questo server (nome interno)
|
||||
canale: nome del canale in cui entrare
|
||||
chiave: chiave per entrare nel canale (i canali con una chiave devono essere primi nella lista)
|
||||
-noswitch: do not switch to new buffer
|
||||
server: send to this server (internal name)
|
||||
channel: channel name to join
|
||||
key: key to join the channel (channels with a key must be the first in list)
|
||||
|
||||
Esempi:
|
||||
Examples:
|
||||
/join #weechat
|
||||
/join #canaleprotetto,#weechat chiave
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -noswitch #weechat
|
||||
........................................
|
||||
|
||||
[[command_irc_kick]]
|
||||
|
||||
@@ -189,8 +189,9 @@
|
||||
'last_redirect' (pointer, hdata: "irc_redirect") +
|
||||
'notify_list' (pointer, hdata: "irc_notify") +
|
||||
'last_notify' (pointer, hdata: "irc_notify") +
|
||||
'manual_joins' (hashtable) +
|
||||
'channel_join_key' (hashtable) +
|
||||
'join_manual' (hashtable) +
|
||||
'join_channel_key' (hashtable) +
|
||||
'join_noswitch' (hashtable) +
|
||||
'buffer' (pointer, hdata: "buffer") +
|
||||
'buffer_as_string' (string) +
|
||||
'channels' (pointer, hdata: "irc_channel") +
|
||||
|
||||
@@ -212,16 +212,18 @@ nick: nick
|
||||
[[command_irc_join]]
|
||||
[command]*`join`* チャンネルに参加::
|
||||
........................................
|
||||
/join [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
|
||||
|
||||
server: 送信先サーバ (内部サーバ名)
|
||||
channel: 参加するチャンネルの名前
|
||||
key: チャンネルに参加するためのキー (キーが必要なチャンネルは最初に置くこと)
|
||||
-noswitch: do not switch to new buffer
|
||||
server: send to this server (internal name)
|
||||
channel: channel name to join
|
||||
key: key to join the channel (channels with a key must be the first in list)
|
||||
|
||||
例:
|
||||
Examples:
|
||||
/join #weechat
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -noswitch #weechat
|
||||
........................................
|
||||
|
||||
[[command_irc_kick]]
|
||||
|
||||
@@ -20,7 +20,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4590,19 +4590,25 @@ msgstr "přezdívka: přezdívka"
|
||||
msgid "join a channel"
|
||||
msgstr "připojit se ke kanálu"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "[-server <server>] [<kanál1>[,<kanál2>...]] [<klíč1>[,<klíč2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
"server: poslat na tento server (interní jméno)\n"
|
||||
" kanál: jméno kanálu pro připojení\n"
|
||||
|
||||
@@ -23,7 +23,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
|
||||
"Language-Team: German <weechatter@arcor.de>\n"
|
||||
@@ -5007,19 +5007,25 @@ msgstr "nick: Nickname"
|
||||
msgid "join a channel"
|
||||
msgstr "einen Channel betreten"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
" server: Verbindung zu diesem Server (interner Name)\n"
|
||||
"channel: Name des Channels der betreten werden soll\n"
|
||||
|
||||
@@ -22,7 +22,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4795,19 +4795,25 @@ msgstr "apodo: apodo"
|
||||
msgid "join a channel"
|
||||
msgstr "unirse a un canal"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "[-server <servidor>] [<canal1>[,<canal2>...]] [<clave1>[,<clave2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
" servidor: enviar a este servidor (nombre interno)\n"
|
||||
" canal: nombre del canal a unirse\n"
|
||||
|
||||
@@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"PO-Revision-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-10-09 21:22+0200\n"
|
||||
"Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: French\n"
|
||||
@@ -4864,29 +4864,36 @@ msgstr "pseudo: pseudo"
|
||||
msgid "join a channel"
|
||||
msgstr "rejoindre un canal"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
msgstr "[-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]"
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr ""
|
||||
"[-noswitch] [-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]"
|
||||
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
"serveur: envoyer à ce serveur (nom interne)\n"
|
||||
" canal: nom du canal à rejoindre\n"
|
||||
" clé: clé pour rejoindre le canal (les canaux avec une clé doivent être "
|
||||
"-noswitch: ne pas basculer sur le nouveau tampon\n"
|
||||
" serveur: envoyer à ce serveur (nom interne)\n"
|
||||
" canal: nom du canal à rejoindre\n"
|
||||
" clé: clé pour rejoindre le canal (les canaux avec une clé doivent être "
|
||||
"les premiers dans la liste)\n"
|
||||
"\n"
|
||||
"Exemples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
|
||||
msgid "forcibly remove a user from a channel"
|
||||
msgstr "retirer par la force un utilisateur d'un canal"
|
||||
|
||||
@@ -20,7 +20,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4175,19 +4175,23 @@ msgid "join a channel"
|
||||
msgstr "belépés egy szobába"
|
||||
|
||||
#, fuzzy
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "szoba[,szoba] [kulcs[,kulcs]]"
|
||||
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
|
||||
msgid "forcibly remove a user from a channel"
|
||||
|
||||
@@ -20,7 +20,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4792,20 +4792,26 @@ msgstr "nick: nick"
|
||||
msgid "join a channel"
|
||||
msgstr "entra in un canale"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr ""
|
||||
"[-server <server>] [<canale1>[,<canale2>...]] [<chiave1>[,<chiave2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
"server: invia a questo server (nome interno)\n"
|
||||
"canale: nome del canale in cui entrare\n"
|
||||
|
||||
@@ -20,7 +20,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
|
||||
"Language-Team: Japanese <https://github.com/l/WeeChat>\n"
|
||||
@@ -4692,19 +4692,25 @@ msgstr "nick: nick"
|
||||
msgid "join a channel"
|
||||
msgstr "チャンネルに参加"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
" server: 送信先サーバ (内部サーバ名)\n"
|
||||
"channel: 参加するチャンネルの名前\n"
|
||||
|
||||
@@ -21,7 +21,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:42+0200\n"
|
||||
"Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4773,19 +4773,25 @@ msgstr "nick: nazwa użytkownika"
|
||||
msgid "join a channel"
|
||||
msgstr "wchodzi na kanał"
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "[-server <serwer>] [<kanał1>[,<kanał2>...]] [<klucz>[,<klucz2>...]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
" serwer: wyślij na ten serwer (nazwa wewnętrzna)\n"
|
||||
"kanał: nazwa kanału do wejścia\n"
|
||||
|
||||
+10
-6
@@ -21,7 +21,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:43+0200\n"
|
||||
"Last-Translator: Sergio Durigan Junior <sergiosdj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4529,19 +4529,23 @@ msgstr ""
|
||||
msgid "join a channel"
|
||||
msgstr ""
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
|
||||
msgid "forcibly remove a user from a channel"
|
||||
|
||||
@@ -21,7 +21,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.0-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+0200\n"
|
||||
"PO-Revision-Date: 2012-09-29 11:43+0200\n"
|
||||
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -4204,19 +4204,23 @@ msgid "join a channel"
|
||||
msgstr "зайти на канал"
|
||||
|
||||
#, fuzzy
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr "канал[,канал] [ключ[,ключ]]"
|
||||
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
|
||||
msgid "forcibly remove a user from a channel"
|
||||
|
||||
+10
-6
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2012-10-05 15:20+0200\n"
|
||||
"POT-Creation-Date: 2012-10-09 21:22+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"
|
||||
@@ -3699,19 +3699,23 @@ msgstr ""
|
||||
msgid "join a channel"
|
||||
msgstr ""
|
||||
|
||||
msgid "[-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"
|
||||
msgid ""
|
||||
"[-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,"
|
||||
"<key2>...]]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with a key must be the first in "
|
||||
"list)\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"
|
||||
msgstr ""
|
||||
|
||||
msgid "forcibly remove a user from a channel"
|
||||
|
||||
@@ -152,6 +152,7 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
struct t_irc_channel *new_channel;
|
||||
struct t_gui_buffer *new_buffer;
|
||||
int i, buffer_created, current_buffer_number, buffer_position, manual_join;
|
||||
int noswitch;
|
||||
char *buffer_name, str_number[32], str_group[32], *channel_name_lower;
|
||||
const char *prefix_modes;
|
||||
|
||||
@@ -265,11 +266,11 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
new_channel->topic = NULL;
|
||||
new_channel->modes = NULL;
|
||||
new_channel->limit = 0;
|
||||
if (weechat_hashtable_has_key (server->channel_join_key, channel_name))
|
||||
if (weechat_hashtable_has_key (server->join_channel_key, channel_name))
|
||||
{
|
||||
new_channel->key = strdup (weechat_hashtable_get (server->channel_join_key,
|
||||
new_channel->key = strdup (weechat_hashtable_get (server->join_channel_key,
|
||||
channel_name));
|
||||
weechat_hashtable_remove (server->channel_join_key, channel_name);
|
||||
weechat_hashtable_remove (server->join_channel_key, channel_name);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -304,6 +305,7 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
server->last_channel = new_channel;
|
||||
|
||||
manual_join = 0;
|
||||
noswitch = 0;
|
||||
channel_name_lower = NULL;
|
||||
if (channel_type == IRC_CHANNEL_TYPE_CHANNEL)
|
||||
{
|
||||
@@ -311,8 +313,10 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
if (channel_name_lower)
|
||||
{
|
||||
weechat_string_tolower (channel_name_lower);
|
||||
manual_join = weechat_hashtable_has_key (server->manual_joins,
|
||||
manual_join = weechat_hashtable_has_key (server->join_manual,
|
||||
channel_name_lower);
|
||||
noswitch = weechat_hashtable_has_key (server->join_noswitch,
|
||||
channel_name_lower);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -320,7 +324,8 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
{
|
||||
if (channel_type == IRC_CHANNEL_TYPE_CHANNEL)
|
||||
{
|
||||
if ((manual_join && !weechat_config_boolean (irc_config_look_buffer_switch_join))
|
||||
if (noswitch
|
||||
|| (manual_join && !weechat_config_boolean (irc_config_look_buffer_switch_join))
|
||||
|| (!manual_join && !weechat_config_boolean (irc_config_look_buffer_switch_autojoin)))
|
||||
switch_to_channel = 0;
|
||||
}
|
||||
@@ -332,10 +337,12 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
}
|
||||
}
|
||||
|
||||
if (manual_join)
|
||||
weechat_hashtable_remove (server->manual_joins, channel_name_lower);
|
||||
if (channel_name_lower)
|
||||
{
|
||||
weechat_hashtable_remove (server->join_manual, channel_name_lower);
|
||||
weechat_hashtable_remove (server->join_noswitch, channel_name_lower);
|
||||
free (channel_name_lower);
|
||||
}
|
||||
|
||||
weechat_hook_signal_send ((channel_type == IRC_CHANNEL_TYPE_CHANNEL) ?
|
||||
"irc_channel_opened" : "irc_pv_opened",
|
||||
@@ -720,7 +727,7 @@ irc_channel_rejoin (struct t_irc_server *server, struct t_irc_channel *channel)
|
||||
(channel->key) ? " " : "",
|
||||
(channel->key) ? channel->key : "");
|
||||
|
||||
irc_command_join_server (server, join_args, 0);
|
||||
irc_command_join_server (server, join_args, 0, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -1856,7 +1856,7 @@ irc_command_ison (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
|
||||
void
|
||||
irc_command_join_server (struct t_irc_server *server, const char *arguments,
|
||||
int manual_join)
|
||||
int manual_join, int noswitch)
|
||||
{
|
||||
char *new_args, **channels, **keys, *pos_space, *pos_keys, *pos_channel;
|
||||
int i, num_channels, num_keys, length;
|
||||
@@ -1920,8 +1920,11 @@ irc_command_join_server (struct t_irc_server *server, const char *arguments,
|
||||
ptr_channel = irc_channel_search (server, new_args);
|
||||
if (ptr_channel)
|
||||
{
|
||||
weechat_buffer_set (ptr_channel->buffer,
|
||||
"display", "1");
|
||||
if (!noswitch)
|
||||
{
|
||||
weechat_buffer_set (ptr_channel->buffer,
|
||||
"display", "1");
|
||||
}
|
||||
}
|
||||
}
|
||||
new_args[0] = '\0';
|
||||
@@ -1937,12 +1940,21 @@ irc_command_join_server (struct t_irc_server *server, const char *arguments,
|
||||
strcat (new_args, "#");
|
||||
}
|
||||
strcat (new_args, channels[i]);
|
||||
if (manual_join)
|
||||
if (manual_join || noswitch)
|
||||
{
|
||||
weechat_string_tolower (channels[i]);
|
||||
weechat_hashtable_set (server->manual_joins,
|
||||
channels[i],
|
||||
&time_now);
|
||||
if (manual_join)
|
||||
{
|
||||
weechat_hashtable_set (server->join_manual,
|
||||
channels[i],
|
||||
&time_now);
|
||||
}
|
||||
if (noswitch)
|
||||
{
|
||||
weechat_hashtable_set (server->join_noswitch,
|
||||
channels[i],
|
||||
&time_now);
|
||||
}
|
||||
}
|
||||
if (keys && (i < num_keys))
|
||||
{
|
||||
@@ -1955,7 +1967,7 @@ irc_command_join_server (struct t_irc_server *server, const char *arguments,
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_hashtable_set (server->channel_join_key,
|
||||
weechat_hashtable_set (server->join_channel_key,
|
||||
pos_channel, keys[i]);
|
||||
}
|
||||
}
|
||||
@@ -1980,33 +1992,57 @@ int
|
||||
irc_command_join (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
int i, arg_channels, noswitch;
|
||||
|
||||
IRC_BUFFER_GET_SERVER_CHANNEL(buffer);
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
if (argc > 1)
|
||||
noswitch = 0;
|
||||
arg_channels = 1;
|
||||
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if ((argc >= 4) && (weechat_strcasecmp (argv[1], "-server") == 0))
|
||||
if (weechat_strcasecmp (argv[i], "-server") == 0)
|
||||
{
|
||||
ptr_server = irc_server_search (argv[2]);
|
||||
if (argc <= i + 1)
|
||||
{
|
||||
IRC_COMMAND_TOO_FEW_ARGUMENTS((ptr_server) ? ptr_server->buffer : NULL,
|
||||
"join");
|
||||
}
|
||||
ptr_server = irc_server_search (argv[i + 1]);
|
||||
if (!ptr_server)
|
||||
return WEECHAT_RC_ERROR;
|
||||
irc_command_join_server (ptr_server, argv_eol[3], 1);
|
||||
arg_channels = i + 2;
|
||||
i++;
|
||||
}
|
||||
else if (weechat_strcasecmp (argv[i], "-noswitch") == 0)
|
||||
{
|
||||
noswitch = 1;
|
||||
arg_channels = i + 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
IRC_COMMAND_CHECK_SERVER("join", 1);
|
||||
irc_command_join_server (ptr_server, argv_eol[1], 1);
|
||||
arg_channels = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
IRC_COMMAND_CHECK_SERVER("join", 1);
|
||||
|
||||
if (arg_channels < argc)
|
||||
{
|
||||
irc_command_join_server (ptr_server, argv_eol[arg_channels],
|
||||
1, noswitch);
|
||||
}
|
||||
else
|
||||
{
|
||||
IRC_COMMAND_CHECK_SERVER("join", 1);
|
||||
if (ptr_channel && (ptr_channel->type == IRC_CHANNEL_TYPE_CHANNEL)
|
||||
&& !ptr_channel->nicks)
|
||||
{
|
||||
irc_command_join_server (ptr_server, ptr_channel->name, 1);
|
||||
irc_command_join_server (ptr_server, ptr_channel->name,
|
||||
1, noswitch);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -5121,18 +5157,20 @@ irc_command_init ()
|
||||
"%(nicks)|%*", &irc_command_ison, NULL);
|
||||
weechat_hook_command ("join",
|
||||
N_("join a channel"),
|
||||
N_("[-server <server>] [<channel1>[,<channel2>...]] "
|
||||
"[<key1>[,<key2>...]]"),
|
||||
N_(" server: send to this server (internal name)\n"
|
||||
"channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with "
|
||||
N_("[-noswitch] [-server <server>] "
|
||||
"[<channel1>[,<channel2>...]] [<key1>[,<key2>...]]"),
|
||||
N_("-noswitch: do not switch to new buffer\n"
|
||||
" server: send to this server (internal name)\n"
|
||||
" channel: channel name to join\n"
|
||||
" key: key to join the channel (channels with "
|
||||
"a key must be the first in list)\n\n"
|
||||
"Examples:\n"
|
||||
" /join #weechat\n"
|
||||
" /join #protectedchan,#weechat key\n"
|
||||
" /join -server freenode #weechat"),
|
||||
"-server %(irc_servers)"
|
||||
" || %(irc_channels)", &irc_command_join, NULL);
|
||||
" /join -server freenode #weechat\n"
|
||||
" /join -noswitch #weechat"),
|
||||
"%(irc_channels)|-noswitch|-server|%(irc_servers)|%*",
|
||||
&irc_command_join, NULL);
|
||||
weechat_hook_command ("kick",
|
||||
N_("forcibly remove a user from a channel"),
|
||||
N_("[<channel>] <nick> [<reason>]"),
|
||||
|
||||
@@ -55,7 +55,8 @@ extern void irc_command_away_server (struct t_irc_server *server,
|
||||
int reset_unread_marker);
|
||||
extern void irc_command_join_server (struct t_irc_server *server,
|
||||
const char *arguments,
|
||||
int manual_join);
|
||||
int manual_join,
|
||||
int noswitch);
|
||||
extern void irc_command_mode_server (struct t_irc_server *server,
|
||||
struct t_irc_channel *channel,
|
||||
const char *arguments,
|
||||
|
||||
@@ -1343,14 +1343,14 @@ IRC_PROTOCOL_CALLBACK(part)
|
||||
snprintf (join_string, join_length, "%s %s",
|
||||
ptr_channel->name,
|
||||
ptr_channel->key);
|
||||
irc_command_join_server (server, join_string, 1);
|
||||
irc_command_join_server (server, join_string, 1, 1);
|
||||
free (join_string);
|
||||
}
|
||||
else
|
||||
irc_command_join_server (server, ptr_channel->name, 1);
|
||||
irc_command_join_server (server, ptr_channel->name, 1, 1);
|
||||
}
|
||||
else
|
||||
irc_command_join_server (server, ptr_channel->name, 1);
|
||||
irc_command_join_server (server, ptr_channel->name, 1, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -106,7 +106,7 @@ char *irc_server_chanmodes_default = "beI,k,l";
|
||||
const char *irc_server_send_default_tags = NULL; /* default tags when */
|
||||
/* sending a message */
|
||||
|
||||
time_t irc_server_last_check_manual_joins = 0;
|
||||
time_t irc_server_last_check_join_channels = 0;
|
||||
|
||||
|
||||
void irc_server_reconnect (struct t_irc_server *server);
|
||||
@@ -912,16 +912,21 @@ irc_server_alloc (const char *name)
|
||||
new_server->last_redirect = NULL;
|
||||
new_server->notify_list = NULL;
|
||||
new_server->last_notify = NULL;
|
||||
new_server->manual_joins = weechat_hashtable_new (4,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
WEECHAT_HASHTABLE_INTEGER,
|
||||
NULL,
|
||||
NULL);
|
||||
new_server->channel_join_key = weechat_hashtable_new (4,
|
||||
new_server->join_manual = weechat_hashtable_new (4,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
WEECHAT_HASHTABLE_INTEGER,
|
||||
NULL,
|
||||
NULL);
|
||||
new_server->join_channel_key = weechat_hashtable_new (4,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
NULL,
|
||||
NULL);
|
||||
new_server->join_noswitch = weechat_hashtable_new (4,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
WEECHAT_HASHTABLE_STRING,
|
||||
NULL,
|
||||
NULL);
|
||||
new_server->buffer = NULL;
|
||||
new_server->buffer_as_string = NULL;
|
||||
new_server->channels = NULL;
|
||||
@@ -1368,8 +1373,9 @@ irc_server_free_data (struct t_irc_server *server)
|
||||
irc_server_outqueue_free_all (server, i);
|
||||
}
|
||||
irc_notify_free_all (server);
|
||||
weechat_hashtable_free (server->manual_joins);
|
||||
weechat_hashtable_free (server->channel_join_key);
|
||||
weechat_hashtable_free (server->join_manual);
|
||||
weechat_hashtable_free (server->join_channel_key);
|
||||
weechat_hashtable_free (server->join_noswitch);
|
||||
irc_redirect_free_all (server);
|
||||
if (server->channels)
|
||||
irc_channel_free_all (server);
|
||||
@@ -2605,21 +2611,41 @@ irc_server_timer_sasl_cb (void *data, int remaining_calls)
|
||||
}
|
||||
|
||||
/*
|
||||
* irc_server_check_manual_joins_cb: callback called for each manual join of a
|
||||
* server, it will delete old channels in
|
||||
* this hashtable
|
||||
* irc_server_check_join_manual_cb: callback called for each manual join of a
|
||||
* server, it will delete old channels in
|
||||
* this hashtable
|
||||
*/
|
||||
|
||||
void
|
||||
irc_server_check_manual_joins_cb (void *data, struct t_hashtable *hashtable,
|
||||
const void *key, const void *value)
|
||||
irc_server_check_join_manual_cb (void *data, struct t_hashtable *hashtable,
|
||||
const void *key, const void *value)
|
||||
{
|
||||
struct t_irc_server *server;
|
||||
|
||||
server = (struct t_irc_server *)data;
|
||||
if (server)
|
||||
{
|
||||
if (*((int *)value) + 60 < time (NULL))
|
||||
if (*((int *)value) + (60 * 5) < time (NULL))
|
||||
weechat_hashtable_remove (hashtable, key);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* irc_server_check_join_noswitch_cb: callback called for each join without
|
||||
* switch of a server, it will delete old
|
||||
* channels in this hashtable
|
||||
*/
|
||||
|
||||
void
|
||||
irc_server_check_join_noswitch_cb (void *data, struct t_hashtable *hashtable,
|
||||
const void *key, const void *value)
|
||||
{
|
||||
struct t_irc_server *server;
|
||||
|
||||
server = (struct t_irc_server *)data;
|
||||
if (server)
|
||||
{
|
||||
if (*((int *)value) + (60 * 5) < time (NULL))
|
||||
weechat_hashtable_remove (hashtable, key);
|
||||
}
|
||||
}
|
||||
@@ -2738,12 +2764,19 @@ irc_server_timer_cb (void *data, int remaining_calls)
|
||||
ptr_redirect = ptr_next_redirect;
|
||||
}
|
||||
|
||||
/* remove old channels in "manual_joins" (each 60 seconds) */
|
||||
if (current_time > irc_server_last_check_manual_joins + 60)
|
||||
/*
|
||||
* remove old channels in "join_manual" and "join_noswitch"
|
||||
* (every 5 minutes)
|
||||
*/
|
||||
if (current_time > irc_server_last_check_join_channels + (60 * 5))
|
||||
{
|
||||
weechat_hashtable_map (ptr_server->manual_joins,
|
||||
&irc_server_check_manual_joins_cb,
|
||||
weechat_hashtable_map (ptr_server->join_manual,
|
||||
&irc_server_check_join_manual_cb,
|
||||
ptr_server);
|
||||
weechat_hashtable_map (ptr_server->join_noswitch,
|
||||
&irc_server_check_join_noswitch_cb,
|
||||
ptr_server);
|
||||
irc_server_last_check_join_channels = current_time;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2822,10 +2855,13 @@ irc_server_close_connection (struct t_irc_server *server)
|
||||
irc_redirect_free_all (server);
|
||||
|
||||
/* remove all manual joins */
|
||||
weechat_hashtable_remove_all (server->manual_joins);
|
||||
weechat_hashtable_remove_all (server->join_manual);
|
||||
|
||||
/* remove all keys for pending joins */
|
||||
weechat_hashtable_remove_all (server->channel_join_key);
|
||||
weechat_hashtable_remove_all (server->join_channel_key);
|
||||
|
||||
/* remove all keys for joins without switch */
|
||||
weechat_hashtable_remove_all (server->join_noswitch);
|
||||
|
||||
/* server is now disconnected */
|
||||
server->is_connected = 0;
|
||||
@@ -4030,7 +4066,7 @@ irc_server_autojoin_channels (struct t_irc_server *server)
|
||||
/* auto-join when connecting to server for first time */
|
||||
autojoin = IRC_SERVER_OPTION_STRING(server, IRC_SERVER_OPTION_AUTOJOIN);
|
||||
if (!server->disable_autojoin && autojoin && autojoin[0])
|
||||
irc_command_join_server (server, autojoin, 0);
|
||||
irc_command_join_server (server, autojoin, 0, 0);
|
||||
}
|
||||
|
||||
server->disable_autojoin = 0;
|
||||
@@ -4460,8 +4496,9 @@ irc_server_hdata_server_cb (void *data, const char *hdata_name)
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, last_redirect, POINTER, 0, NULL, "irc_redirect");
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, notify_list, POINTER, 0, NULL, "irc_notify");
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, last_notify, POINTER, 0, NULL, "irc_notify");
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, manual_joins, HASHTABLE, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, channel_join_key, HASHTABLE, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, join_manual, HASHTABLE, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, join_channel_key, HASHTABLE, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, join_noswitch, HASHTABLE, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, buffer, POINTER, 0, NULL, "buffer");
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, buffer_as_string, STRING, 0, NULL, NULL);
|
||||
WEECHAT_HDATA_VAR(struct t_irc_server, channels, POINTER, 0, NULL, "irc_channel");
|
||||
@@ -4982,12 +5019,15 @@ irc_server_print_log ()
|
||||
weechat_log_printf (" last_redirect. . . . : 0x%lx", ptr_server->last_redirect);
|
||||
weechat_log_printf (" notify_list. . . . . : 0x%lx", ptr_server->notify_list);
|
||||
weechat_log_printf (" last_notify. . . . . : 0x%lx", ptr_server->last_notify);
|
||||
weechat_log_printf (" manual_joins . . . . : 0x%lx (hashtable: '%s')",
|
||||
ptr_server->manual_joins,
|
||||
weechat_hashtable_get_string (ptr_server->manual_joins, "keys_values"));
|
||||
weechat_log_printf (" channel_join_key . . : 0x%lx (hashtable: '%s')",
|
||||
ptr_server->channel_join_key,
|
||||
weechat_hashtable_get_string (ptr_server->channel_join_key, "keys_values"));
|
||||
weechat_log_printf (" join_manual. . . . . : 0x%lx (hashtable: '%s')",
|
||||
ptr_server->join_manual,
|
||||
weechat_hashtable_get_string (ptr_server->join_manual, "keys_values"));
|
||||
weechat_log_printf (" join_channel_key . . : 0x%lx (hashtable: '%s')",
|
||||
ptr_server->join_channel_key,
|
||||
weechat_hashtable_get_string (ptr_server->join_channel_key, "keys_values"));
|
||||
weechat_log_printf (" join_noswitch. . . . : 0x%lx (hashtable: '%s')",
|
||||
ptr_server->join_noswitch,
|
||||
weechat_hashtable_get_string (ptr_server->join_noswitch, "keys_values"));
|
||||
weechat_log_printf (" buffer . . . . . . . : 0x%lx", ptr_server->buffer);
|
||||
weechat_log_printf (" buffer_as_string . . : 0x%lx", ptr_server->buffer_as_string);
|
||||
weechat_log_printf (" channels . . . . . . : 0x%lx", ptr_server->channels);
|
||||
|
||||
@@ -197,8 +197,9 @@ struct t_irc_server
|
||||
struct t_irc_redirect *last_redirect; /* last command redirection */
|
||||
struct t_irc_notify *notify_list; /* list of notify */
|
||||
struct t_irc_notify *last_notify; /* last notify */
|
||||
struct t_hashtable *manual_joins; /* manual joins pending */
|
||||
struct t_hashtable *channel_join_key; /* keys pending for joins */
|
||||
struct t_hashtable *join_manual; /* manual joins pending */
|
||||
struct t_hashtable *join_channel_key; /* keys pending for joins */
|
||||
struct t_hashtable *join_noswitch; /* joins w/o switch to buffer */
|
||||
struct t_gui_buffer *buffer; /* GUI buffer allocated for server */
|
||||
char *buffer_as_string; /* used to return buffer info */
|
||||
struct t_irc_channel *channels; /* opened channels on server */
|
||||
|
||||
Reference in New Issue
Block a user