mirror of
https://github.com/weechat/weechat.git
synced 2026-06-30 14:56:39 +02:00
Add local variables for buffers, fix alias creation, use of local variables $nick/$channel/$server in alias
This commit is contained in:
@@ -86,6 +86,22 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.display_channel_modes</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: display channel modes in "buffer_name" bar item</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: boolean</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>values: on, off</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>default value: on</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.highlight_tags</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -54,17 +54,18 @@ Examples:
|
||||
<programlisting>
|
||||
Puffer verwalten
|
||||
|
||||
action: action to do:
|
||||
clear: clear buffer content (-all for all buffers, number for a buffer, or nothing for current buffer)
|
||||
move: move buffer in the list (may be relative, for example -1)
|
||||
close: close buffer
|
||||
list: list buffers (no parameter implies this list)
|
||||
notify: display notify levels for all open buffers
|
||||
scroll: scroll in history (may be relative, and may end by a letter: s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll to beginning of this item
|
||||
action: action to do:
|
||||
clear: clear buffer content (-all for all buffers, number for a buffer, or nothing for current buffer)
|
||||
move: move buffer in the list (may be relative, for example -1)
|
||||
close: close buffer
|
||||
list: list buffers (no parameter implies this list)
|
||||
notify: display notify levels for all open buffers
|
||||
localvar: display local variables for current buffer
|
||||
scroll: scroll in history (may be relative, and may end by a letter: s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll to beginning of this item
|
||||
|
||||
number: jump to buffer by number
|
||||
number: jump to buffer by number
|
||||
server,
|
||||
channel: jump to buffer by server and/or channel name
|
||||
channel: jump to buffer by server and/or channel name
|
||||
|
||||
Examples:
|
||||
clear current buffer: /buffer clear
|
||||
|
||||
@@ -1462,22 +1462,6 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.input_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: Format der Eingabezeile ('%c' wird durch den Channel- oder Servernamen ersetzt, '%n' durch den Nicknamen und '%m' durch die Nick-Modi)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: string</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>values: any string</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>default value: '[%n(%m)] '</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.item_time_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -86,6 +86,22 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.display_channel_modes</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: display channel modes in "buffer_name" bar item</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: boolean</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>values: on, off</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>default value: on</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.highlight_tags</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -54,17 +54,18 @@ Examples:
|
||||
<programlisting>
|
||||
manage buffers
|
||||
|
||||
action: action to do:
|
||||
clear: clear buffer content (-all for all buffers, number for a buffer, or nothing for current buffer)
|
||||
move: move buffer in the list (may be relative, for example -1)
|
||||
close: close buffer
|
||||
list: list buffers (no parameter implies this list)
|
||||
notify: display notify levels for all open buffers
|
||||
scroll: scroll in history (may be relative, and may end by a letter: s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll to beginning of this item
|
||||
action: action to do:
|
||||
clear: clear buffer content (-all for all buffers, number for a buffer, or nothing for current buffer)
|
||||
move: move buffer in the list (may be relative, for example -1)
|
||||
close: close buffer
|
||||
list: list buffers (no parameter implies this list)
|
||||
notify: display notify levels for all open buffers
|
||||
localvar: display local variables for current buffer
|
||||
scroll: scroll in history (may be relative, and may end by a letter: s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll to beginning of this item
|
||||
|
||||
number: jump to buffer by number
|
||||
number: jump to buffer by number
|
||||
server,
|
||||
channel: jump to buffer by server and/or channel name
|
||||
channel: jump to buffer by server and/or channel name
|
||||
|
||||
Examples:
|
||||
clear current buffer: /buffer clear
|
||||
|
||||
@@ -1462,22 +1462,6 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.input_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: format for input prompt ('%c' is replaced by channel or server, '%n' by nick and '%m' by nick modes)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: string</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>values: any string</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>default value: '[%n(%m)] '</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.item_time_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -86,6 +86,22 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.display_channel_modes</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: affiche les modes du canal dans l'objet de barre "buffer_name"</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: booléen</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>valeurs: on, off</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>valeur par défaut: on</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>irc.look.highlight_tags</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -54,17 +54,18 @@ Exemples :
|
||||
<programlisting>
|
||||
gestion des tampons
|
||||
|
||||
action: action à effectuer:
|
||||
clear: efface le contenu du tampon (-all pour tous les tampons, un numéro pour un tampon, ou rien pour le tampon courant)
|
||||
move: déplace le tampon dans la liste (peut être relatif, par exemple -1)
|
||||
close: ferme le tampon
|
||||
list: liste les tampons ouverts (pas de paramètre affiche cette liste)
|
||||
notify: affiche les niveaux de notification pour tous les tampons ouverts
|
||||
scroll: fait défiler l'historique (peut être relatif, et peut se terminer par une lettre: s=sec, m=min, h=heure, d=jour, M=mois, y=année); s'il y a seulement une lettre, alors fait défiler jusqu'au début de cet élément
|
||||
action: action à effectuer:
|
||||
clear: efface le contenu du tampon (-all pour tous les tampons, un numéro pour un tampon, ou rien pour le tampon courant)
|
||||
move: déplace le tampon dans la liste (peut être relatif, par exemple -1)
|
||||
close: ferme le tampon
|
||||
list: liste les tampons ouverts (pas de paramètre affiche cette liste)
|
||||
notify: affiche les niveaux de notification pour tous les tampons ouverts
|
||||
localvar: affiche la liste des variables locales pour le tampon courant
|
||||
scroll: fait défiler l'historique (peut être relatif, et peut se terminer par une lettre: s=sec, m=min, h=heure, d=jour, M=mois, y=année); s'il y a seulement une lettre, alors fait défiler jusqu'au début de cet élément
|
||||
|
||||
nombre: saute au tampon qui a ce numéro
|
||||
nombre: saute au tampon qui a ce numéro
|
||||
serveur,
|
||||
canal: saute au tampon par serveur et/ou nom de canal
|
||||
canal: saute au tampon par serveur et/ou nom de canal
|
||||
|
||||
Exemples:
|
||||
déplacer tampon: /buffer move 5
|
||||
|
||||
@@ -1462,22 +1462,6 @@
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.input_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>description: format pour l'invite de la zone de saisie ('%c' est remplacé par le canal ou serveur, '%n' par le pseudo et '%m' par les modes du pseudo)</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>type: chaîne</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>valeurs: toute chaîne</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>valeur par défaut: '[%n(%m)] '</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<command>weechat.look.item_time_format</command>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2008-09-17 16:19+0200\n"
|
||||
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -214,6 +214,14 @@ msgstr "%sChyba: hlavní buffer WeeChat nemůže být zavřen"
|
||||
msgid "Notify levels:"
|
||||
msgstr "Level upozornění:"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "časová známka pro buffer"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%s adresa \"%s\" nenalezena\n"
|
||||
@@ -718,20 +726,21 @@ msgstr "[akce [args] | číslo | [[server] [kanál]]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
@@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2007-09-06 12:44+0200\n"
|
||||
"Last-Translator: Thomas Schuetz <i18n@internet-villa.de>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -219,6 +219,14 @@ msgstr ""
|
||||
msgid "Notify levels:"
|
||||
msgstr "Notify-Ebenen:"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "Timestamp für Puffer"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%s Adresse \"%s\" nicht gefunden\n"
|
||||
@@ -724,20 +732,21 @@ msgstr "[Aktion [Argumente] | Nummer | [[Server] [Channel]]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2007-09-19 12:09+0200\n"
|
||||
"Last-Translator: Roberto González Cardenete <robert.glez@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -215,6 +215,14 @@ msgstr ""
|
||||
msgid "Notify levels:"
|
||||
msgstr "Niveles de notificación:"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "fecha y hora para las búfers"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%s dirección \"%s\" no encontrada\n"
|
||||
@@ -720,20 +728,21 @@ msgstr "[acción [argumentos] | número | [[servidor] [canal]]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2008-10-23 18:38+0200\n"
|
||||
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -209,6 +209,14 @@ msgstr "%sErreur: le tampon principal de WeeChat ne peut pas être fermé"
|
||||
msgid "Notify levels:"
|
||||
msgstr "Niveaux de notification:"
|
||||
|
||||
#, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "Variables locales pour le tampon \"%s\" :"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr "Pas de variable locale définie pour le tampon \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%sExtension \"%s\" non trouvée"
|
||||
@@ -718,20 +726,21 @@ msgid "[action [args] | number | [[server] [channel]]]"
|
||||
msgstr "[action [args] | nombre | [[serveur] [canal]]]"
|
||||
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
@@ -746,21 +755,22 @@ msgid ""
|
||||
" scroll 20 msgs up: /buffer scroll -20\n"
|
||||
" jump to #weechat: /buffer #weechat"
|
||||
msgstr ""
|
||||
" action: action à effectuer:\n"
|
||||
" clear: efface le contenu du tampon (-all pour tous les tampons, un numéro "
|
||||
" action: action à effectuer:\n"
|
||||
" clear: efface le contenu du tampon (-all pour tous les tampons, un numéro "
|
||||
"pour un tampon, ou rien pour le tampon courant)\n"
|
||||
" move: déplace le tampon dans la liste (peut être relatif, par exemple -"
|
||||
" move: déplace le tampon dans la liste (peut être relatif, par exemple -"
|
||||
"1)\n"
|
||||
" close: ferme le tampon\n"
|
||||
" list: liste les tampons ouverts (pas de paramètre affiche cette liste)\n"
|
||||
" notify: affiche les niveaux de notification pour tous les tampons ouverts\n"
|
||||
" scroll: fait défiler l'historique (peut être relatif, et peut se terminer "
|
||||
" close: ferme le tampon\n"
|
||||
" list: liste les tampons ouverts (pas de paramètre affiche cette liste)\n"
|
||||
" notify: affiche les niveaux de notification pour tous les tampons ouverts\n"
|
||||
"localvar: affiche la liste des variables locales pour le tampon courant\n"
|
||||
" scroll: fait défiler l'historique (peut être relatif, et peut se terminer "
|
||||
"par une lettre: s=sec, m=min, h=heure, d=jour, M=mois, y=année); s'il y a "
|
||||
"seulement une lettre, alors fait défiler jusqu'au début de cet élément\n"
|
||||
"\n"
|
||||
" nombre: saute au tampon qui a ce numéro\n"
|
||||
" nombre: saute au tampon qui a ce numéro\n"
|
||||
"serveur,\n"
|
||||
" canal: saute au tampon par serveur et/ou nom de canal\n"
|
||||
" canal: saute au tampon par serveur et/ou nom de canal\n"
|
||||
"\n"
|
||||
"Exemples:\n"
|
||||
" déplacer tampon: /buffer move 5\n"
|
||||
|
||||
@@ -12,7 +12,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2007-10-10 18:07+0200\n"
|
||||
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -220,6 +220,14 @@ msgstr ""
|
||||
msgid "Notify levels:"
|
||||
msgstr "Értesítési szintek:"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "a pufferek időbélyege"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%s cím \"%s\" nem található\n"
|
||||
@@ -724,20 +732,21 @@ msgstr "[utasítás[argumentumok] | szám | [[szerver] [szoba]]]"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.2.7-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+0200\n"
|
||||
"PO-Revision-Date: 2007-09-06 12:44+0200\n"
|
||||
"Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@@ -216,6 +216,14 @@ msgstr ""
|
||||
msgid "Notify levels:"
|
||||
msgstr "Уровни уведомления:"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr "время в буферах"
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr "%s адрес \"%s\" не найден\n"
|
||||
@@ -718,20 +726,21 @@ msgstr "[действие [аргументы] | номер | [[сервер] [
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
+22
-13
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2008-10-23 18:35+0200\n"
|
||||
"POT-Creation-Date: 2008-10-24 12:58+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"
|
||||
@@ -190,6 +190,14 @@ msgstr ""
|
||||
msgid "Notify levels:"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Local variables for buffer \"%s\":"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "No local variable defined for buffer \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%sPlugin \"%s\" not found"
|
||||
msgstr ""
|
||||
@@ -636,20 +644,21 @@ msgid "[action [args] | number | [[server] [channel]]]"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, or "
|
||||
"nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: s=sec, "
|
||||
"m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll "
|
||||
"to beginning of this item\n"
|
||||
" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, number for a buffer, "
|
||||
"or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may end by a letter: "
|
||||
"s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then "
|
||||
"scroll to beginning of this item\n"
|
||||
"\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n"
|
||||
" channel: jump to buffer by server and/or channel name\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
|
||||
+39
-12
@@ -478,6 +478,7 @@ command_buffer (void *data, struct t_gui_buffer *buffer,
|
||||
int argc, char **argv, char **argv_eol)
|
||||
{
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
long number;
|
||||
char *error, *value;
|
||||
int i, target_buffer;
|
||||
@@ -594,7 +595,7 @@ command_buffer (void *data, struct t_gui_buffer *buffer,
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* display/change buffer notify */
|
||||
/* display buffer notify */
|
||||
if (string_strcasecmp (argv[1], "notify") == 0)
|
||||
{
|
||||
/* display notify level for all buffers */
|
||||
@@ -615,6 +616,31 @@ command_buffer (void *data, struct t_gui_buffer *buffer,
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* display local variables on buffer */
|
||||
if (string_strcasecmp (argv[1], "localvar") == 0)
|
||||
{
|
||||
if (buffer->local_variables)
|
||||
{
|
||||
gui_chat_printf (NULL, "");
|
||||
gui_chat_printf (NULL, _("Local variables for buffer \"%s\":"),
|
||||
buffer->name);
|
||||
for (ptr_local_var = buffer->local_variables; ptr_local_var;
|
||||
ptr_local_var = ptr_local_var->next_var)
|
||||
{
|
||||
gui_chat_printf (NULL,
|
||||
" %s: \"%s\"",
|
||||
ptr_local_var->name,
|
||||
ptr_local_var->value);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
gui_chat_printf (NULL, _("No local variable defined for buffer \"%s\""),
|
||||
buffer->name);
|
||||
}
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* set a property on buffer */
|
||||
if (string_strcasecmp (argv[1], "set") == 0)
|
||||
{
|
||||
@@ -634,7 +660,7 @@ command_buffer (void *data, struct t_gui_buffer *buffer,
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
|
||||
/* relative jump '-' */
|
||||
if (argv[1][0] == '-')
|
||||
{
|
||||
@@ -2931,21 +2957,22 @@ command_init ()
|
||||
hook_command (NULL, "buffer",
|
||||
N_("manage buffers"),
|
||||
N_("[action [args] | number | [[server] [channel]]]"),
|
||||
N_(" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, "
|
||||
N_(" action: action to do:\n"
|
||||
" clear: clear buffer content (-all for all buffers, "
|
||||
"number for a buffer, or nothing for current buffer)\n"
|
||||
" move: move buffer in the list (may be relative, for "
|
||||
" move: move buffer in the list (may be relative, for "
|
||||
"example -1)\n"
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
" scroll: scroll in history (may be relative, and may "
|
||||
" close: close buffer\n"
|
||||
" list: list buffers (no parameter implies this list)\n"
|
||||
" notify: display notify levels for all open buffers\n"
|
||||
"localvar: display local variables for current buffer\n"
|
||||
" scroll: scroll in history (may be relative, and may "
|
||||
"end by a letter: s=sec, m=min, h=hour, d=day, M=month, "
|
||||
"y=year); if there is only letter, then scroll to "
|
||||
"beginning of this item\n\n"
|
||||
" number: jump to buffer by number\n"
|
||||
" number: jump to buffer by number\n"
|
||||
"server,\n"
|
||||
"channel: jump to buffer by server and/or channel name\n\n"
|
||||
" channel: jump to buffer by server and/or channel name\n\n"
|
||||
"Examples:\n"
|
||||
"clear current buffer: /buffer clear\n"
|
||||
" clear all buffers: /buffer clear -all\n"
|
||||
@@ -2958,7 +2985,7 @@ command_init ()
|
||||
" scroll 15 min down: /buffer scroll +15m\n"
|
||||
" scroll 20 msgs up: /buffer scroll -20\n"
|
||||
" jump to #weechat: /buffer #weechat"),
|
||||
"clear|move|close|list|notify|scroll|set|%b %b",
|
||||
"clear|move|close|list|notify|localvar|scroll|set|%b %b",
|
||||
&command_buffer, NULL);
|
||||
hook_command (NULL, "command",
|
||||
N_("launch explicit WeeChat or plugin command"),
|
||||
|
||||
+256
-7
@@ -242,6 +242,10 @@ gui_buffer_new (struct t_weechat_plugin *plugin,
|
||||
new_buffer->keys = NULL;
|
||||
new_buffer->last_key = NULL;
|
||||
|
||||
/* local variables */
|
||||
new_buffer->local_variables = NULL;
|
||||
new_buffer->last_local_var = NULL;
|
||||
|
||||
/* add buffer to buffers list */
|
||||
gui_buffer_insert (new_buffer);
|
||||
|
||||
@@ -295,6 +299,195 @@ gui_buffer_valid (struct t_gui_buffer *buffer)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* gui_buffer_local_var_search: search a local variable with name
|
||||
*/
|
||||
|
||||
struct t_gui_buffer_local_var *
|
||||
gui_buffer_local_var_search (struct t_gui_buffer *buffer, const char *name)
|
||||
{
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
|
||||
if (!buffer || !name)
|
||||
return NULL;
|
||||
|
||||
for (ptr_local_var = buffer->local_variables; ptr_local_var;
|
||||
ptr_local_var = ptr_local_var->next_var)
|
||||
{
|
||||
if (strcmp (ptr_local_var->name, name) == 0)
|
||||
return ptr_local_var;
|
||||
}
|
||||
|
||||
/* local variable not found */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* gui_buffer_local_var_add: add a new local variable to a buffer
|
||||
*/
|
||||
|
||||
struct t_gui_buffer_local_var *
|
||||
gui_buffer_local_var_add (struct t_gui_buffer *buffer, const char *name,
|
||||
const char *value)
|
||||
{
|
||||
struct t_gui_buffer_local_var *new_local_var;
|
||||
|
||||
if (!buffer || !name || !value)
|
||||
return NULL;
|
||||
|
||||
new_local_var = gui_buffer_local_var_search (buffer, name);
|
||||
if (new_local_var)
|
||||
{
|
||||
if (new_local_var->name)
|
||||
free (new_local_var->name);
|
||||
if (new_local_var->value)
|
||||
free (new_local_var->value);
|
||||
new_local_var->name = strdup (name);
|
||||
new_local_var->value = strdup (value);
|
||||
}
|
||||
else
|
||||
{
|
||||
new_local_var = malloc (sizeof (*new_local_var));
|
||||
if (new_local_var)
|
||||
{
|
||||
new_local_var->name = strdup (name);
|
||||
new_local_var->value = strdup (value);
|
||||
|
||||
new_local_var->prev_var = buffer->last_local_var;
|
||||
new_local_var->next_var = NULL;
|
||||
if (buffer->local_variables)
|
||||
buffer->last_local_var->next_var = new_local_var;
|
||||
else
|
||||
buffer->local_variables = new_local_var;
|
||||
buffer->last_local_var = new_local_var;
|
||||
}
|
||||
}
|
||||
|
||||
return new_local_var;
|
||||
}
|
||||
|
||||
/*
|
||||
* gui_buffer_local_var_remove: remove a local variable in a buffer
|
||||
*/
|
||||
|
||||
void
|
||||
gui_buffer_local_var_remove (struct t_gui_buffer *buffer,
|
||||
struct t_gui_buffer_local_var *local_var)
|
||||
{
|
||||
if (!buffer || !local_var)
|
||||
return;
|
||||
|
||||
/* free data */
|
||||
if (local_var->name)
|
||||
free (local_var->name);
|
||||
if (local_var->value)
|
||||
free (local_var->value);
|
||||
|
||||
/* remove local variable from list */
|
||||
if (local_var->prev_var)
|
||||
(local_var->prev_var)->next_var = local_var->next_var;
|
||||
if (local_var->next_var)
|
||||
(local_var->next_var)->prev_var = local_var->prev_var;
|
||||
if (buffer->local_variables == local_var)
|
||||
buffer->local_variables = local_var->next_var;
|
||||
if (buffer->last_local_var == local_var)
|
||||
buffer->last_local_var = local_var->prev_var;
|
||||
}
|
||||
|
||||
/*
|
||||
* gui_buffer_local_var_remove_all: remove all local variables in a buffer
|
||||
*/
|
||||
|
||||
void
|
||||
gui_buffer_local_var_remove_all (struct t_gui_buffer *buffer)
|
||||
{
|
||||
if (buffer)
|
||||
{
|
||||
while (buffer->local_variables)
|
||||
{
|
||||
gui_buffer_local_var_remove (buffer, buffer->local_variables);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* gui_buffer_string_replace_local_var: replace local variables ($var) in a
|
||||
* string, using value of local variables
|
||||
*/
|
||||
|
||||
char *
|
||||
gui_buffer_string_replace_local_var (struct t_gui_buffer *buffer,
|
||||
const char *string)
|
||||
{
|
||||
int length, length_var, index_string, index_result;
|
||||
char *result, *local_var;
|
||||
const char *pos_end_name;
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
|
||||
length = strlen (string) + 1;
|
||||
result = malloc (length);
|
||||
if (result)
|
||||
{
|
||||
index_string = 0;
|
||||
index_result = 0;
|
||||
while (string[index_string])
|
||||
{
|
||||
if ((string[index_string] == '$')
|
||||
&& ((index_string == 0) || (string[index_string - 1] != '\\')))
|
||||
{
|
||||
pos_end_name = string + index_string + 1;
|
||||
while (pos_end_name[0])
|
||||
{
|
||||
if (isalnum (pos_end_name[0])
|
||||
&& (pos_end_name[0] != '_')
|
||||
&& (pos_end_name[0] != '$'))
|
||||
pos_end_name++;
|
||||
else
|
||||
break;
|
||||
}
|
||||
if (pos_end_name > string + index_string + 1)
|
||||
{
|
||||
local_var = string_strndup (string + index_string + 1,
|
||||
pos_end_name - (string + index_string + 1));
|
||||
if (local_var)
|
||||
{
|
||||
ptr_local_var = gui_buffer_local_var_search (buffer,
|
||||
local_var);
|
||||
if (ptr_local_var)
|
||||
{
|
||||
length_var = strlen (ptr_local_var->value);
|
||||
length += length_var;
|
||||
result = realloc (result, length);
|
||||
if (!result)
|
||||
{
|
||||
free (local_var);
|
||||
return NULL;
|
||||
}
|
||||
strcpy (result + index_result, ptr_local_var->value);
|
||||
index_result += length_var;
|
||||
index_string += strlen (local_var) + 1;
|
||||
}
|
||||
else
|
||||
result[index_result++] = string[index_string++];
|
||||
|
||||
free (local_var);
|
||||
}
|
||||
else
|
||||
result[index_result++] = string[index_string++];
|
||||
}
|
||||
else
|
||||
result[index_result++] = string[index_string++];
|
||||
}
|
||||
else
|
||||
result[index_result++] = string[index_string++];
|
||||
}
|
||||
result[index_result] = '\0';
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/*
|
||||
* gui_buffer_set_plugin_for_upgrade: set plugin pointer for buffers with a
|
||||
* given name (used after /upgrade)
|
||||
@@ -346,6 +539,8 @@ gui_buffer_get_integer (struct t_gui_buffer *buffer, const char *property)
|
||||
char *
|
||||
gui_buffer_get_string (struct t_gui_buffer *buffer, const char *property)
|
||||
{
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
|
||||
if (buffer && property)
|
||||
{
|
||||
if (string_strcasecmp (property, "plugin") == 0)
|
||||
@@ -356,6 +551,12 @@ gui_buffer_get_string (struct t_gui_buffer *buffer, const char *property)
|
||||
return buffer->short_name;
|
||||
else if (string_strcasecmp (property, "title") == 0)
|
||||
return buffer->title;
|
||||
else if (string_strncasecmp (property, "localvar_", 9) == 0)
|
||||
{
|
||||
ptr_local_var = gui_buffer_local_var_search (buffer, property + 9);
|
||||
if (ptr_local_var)
|
||||
return ptr_local_var->value;
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
@@ -575,6 +776,7 @@ gui_buffer_set (struct t_gui_buffer *buffer, const char *property,
|
||||
{
|
||||
long number;
|
||||
char *error;
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
|
||||
if (!property || !value)
|
||||
return;
|
||||
@@ -686,6 +888,17 @@ gui_buffer_set (struct t_gui_buffer *buffer, const char *property,
|
||||
gui_input_text_changed_signal ();
|
||||
gui_buffer_ask_input_refresh (buffer, 1);
|
||||
}
|
||||
else if (string_strncasecmp (property, "localvar_set_", 13) == 0)
|
||||
{
|
||||
if (value)
|
||||
gui_buffer_local_var_add (buffer, property + 13, value);
|
||||
}
|
||||
else if (string_strncasecmp (property, "localvar_del_", 13) == 0)
|
||||
{
|
||||
ptr_local_var = gui_buffer_local_var_search (buffer, property + 13);
|
||||
if (ptr_local_var)
|
||||
gui_buffer_local_var_remove (buffer, ptr_local_var);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1021,6 +1234,7 @@ gui_buffer_close (struct t_gui_buffer *buffer, int switch_to_another)
|
||||
if (buffer->highlight_tags_array)
|
||||
string_free_exploded (buffer->highlight_tags_array);
|
||||
gui_keyboard_free_all (&buffer->keys, &buffer->last_key);
|
||||
gui_buffer_local_var_remove_all (buffer);
|
||||
|
||||
/* remove buffer from buffers list */
|
||||
if (buffer->prev_buffer)
|
||||
@@ -1220,8 +1434,9 @@ gui_buffer_add_to_infolist (struct t_infolist *infolist,
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
struct t_gui_key *ptr_key;
|
||||
char option_name[32];
|
||||
int i;
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
char option_name[32], *var_name;
|
||||
int i, length;
|
||||
|
||||
if (!infolist || !buffer)
|
||||
return 0;
|
||||
@@ -1278,6 +1493,23 @@ gui_buffer_add_to_infolist (struct t_infolist *infolist,
|
||||
if (!infolist_new_var_string (ptr_item, option_name, ptr_key->command))
|
||||
return 0;
|
||||
}
|
||||
for (ptr_local_var = buffer->local_variables; ptr_local_var;
|
||||
ptr_local_var = ptr_local_var->next_var)
|
||||
{
|
||||
length = strlen (ptr_local_var->name) + 16 + 1;
|
||||
var_name = malloc (length);
|
||||
if (var_name)
|
||||
{
|
||||
snprintf (var_name, length, "localvar_%s", ptr_local_var->name);
|
||||
if (!infolist_new_var_string (ptr_item, var_name,
|
||||
ptr_local_var->value))
|
||||
{
|
||||
free (var_name);
|
||||
return 0;
|
||||
}
|
||||
free (var_name);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -1420,6 +1652,7 @@ void
|
||||
gui_buffer_print_log ()
|
||||
{
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
struct t_gui_buffer_local_var *ptr_local_var;
|
||||
struct t_gui_line *ptr_line;
|
||||
char *tags;
|
||||
int num;
|
||||
@@ -1481,11 +1714,7 @@ gui_buffer_print_log ()
|
||||
log_printf (" last_key . . . . . . . : 0x%x", ptr_buffer->last_key);
|
||||
log_printf (" prev_buffer. . . . . . : 0x%x", ptr_buffer->prev_buffer);
|
||||
log_printf (" next_buffer. . . . . . : 0x%x", ptr_buffer->next_buffer);
|
||||
|
||||
log_printf ("");
|
||||
log_printf (" => nicklist_root (addr:0x%x):", ptr_buffer->nicklist_root);
|
||||
gui_nicklist_print_log (ptr_buffer->nicklist_root, 0);
|
||||
|
||||
|
||||
if (ptr_buffer->keys)
|
||||
{
|
||||
log_printf ("");
|
||||
@@ -1493,6 +1722,26 @@ gui_buffer_print_log ()
|
||||
ptr_buffer->keys, ptr_buffer->last_key);
|
||||
gui_keyboard_print_log (ptr_buffer);
|
||||
}
|
||||
|
||||
if (ptr_buffer->local_variables)
|
||||
{
|
||||
log_printf ("");
|
||||
log_printf (" => local_variables = 0x%x, last_local_var = 0x%x:",
|
||||
ptr_buffer->local_variables, ptr_buffer->last_local_var);
|
||||
for (ptr_local_var = ptr_buffer->local_variables; ptr_local_var;
|
||||
ptr_local_var = ptr_local_var->next_var)
|
||||
{
|
||||
log_printf ("");
|
||||
log_printf (" [local variable (addr:0x%x)]",
|
||||
ptr_local_var);
|
||||
log_printf (" name . . . . . . . : '%s'", ptr_local_var->name);
|
||||
log_printf (" value. . . . . . . : '%s'", ptr_local_var->value);
|
||||
}
|
||||
}
|
||||
|
||||
log_printf ("");
|
||||
log_printf (" => nicklist_root (addr:0x%x):", ptr_buffer->nicklist_root);
|
||||
gui_nicklist_print_log (ptr_buffer->nicklist_root, 0);
|
||||
|
||||
log_printf ("");
|
||||
log_printf (" => last 100 lines:");
|
||||
|
||||
@@ -66,6 +66,14 @@ struct t_gui_line
|
||||
struct t_gui_line *next_line; /* link to next line */
|
||||
};
|
||||
|
||||
struct t_gui_buffer_local_var
|
||||
{
|
||||
char *name; /* variable name */
|
||||
char *value; /* value */
|
||||
struct t_gui_buffer_local_var *prev_var; /* link to previous variable */
|
||||
struct t_gui_buffer_local_var *next_var; /* link to next variable */
|
||||
};
|
||||
|
||||
struct t_gui_buffer
|
||||
{
|
||||
struct t_weechat_plugin *plugin; /* plugin which created this buffer */
|
||||
@@ -154,6 +162,10 @@ struct t_gui_buffer
|
||||
struct t_gui_key *keys; /* keys specific to buffer */
|
||||
struct t_gui_key *last_key; /* last key for buffer */
|
||||
|
||||
/* local variables */
|
||||
struct t_gui_buffer_local_var *local_variables; /* local variables */
|
||||
struct t_gui_buffer_local_var *last_local_var; /* last local variable */
|
||||
|
||||
/* link to previous/next buffer */
|
||||
struct t_gui_buffer *prev_buffer; /* link to previous buffer */
|
||||
struct t_gui_buffer *next_buffer; /* link to next buffer */
|
||||
@@ -178,6 +190,8 @@ extern struct t_gui_buffer *gui_buffer_new (struct t_weechat_plugin *plugin,
|
||||
struct t_gui_buffer *buffer),
|
||||
void *close_callback_data);
|
||||
extern int gui_buffer_valid (struct t_gui_buffer *buffer);
|
||||
extern char *gui_buffer_string_replace_local_var (struct t_gui_buffer *buffer,
|
||||
const char *string);
|
||||
extern void gui_buffer_set_plugin_for_upgrade (char *name,
|
||||
struct t_weechat_plugin *plugin);
|
||||
extern int gui_buffer_get_integer (struct t_gui_buffer *buffer,
|
||||
|
||||
@@ -212,6 +212,23 @@ alias_replace_args (const char *alias_args, const char *user_args)
|
||||
return res;
|
||||
}
|
||||
|
||||
/*
|
||||
* alias_run_command: replace local buffer variables in string, then run
|
||||
* command on buffer
|
||||
*/
|
||||
|
||||
void
|
||||
alias_run_command (struct t_gui_buffer *buffer, const char *command)
|
||||
{
|
||||
char *string;
|
||||
|
||||
string = weechat_buffer_string_replace_local_var (buffer, command);
|
||||
weechat_command (buffer,
|
||||
(string) ? string : command);
|
||||
if (string)
|
||||
free (string);
|
||||
}
|
||||
|
||||
/*
|
||||
* alias_cb: callback for alias (called when user uses an alias)
|
||||
*/
|
||||
@@ -226,7 +243,6 @@ alias_cb (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
|
||||
int some_args_replaced, length1, length2;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) buffer;
|
||||
(void) argc;
|
||||
(void) argv;
|
||||
|
||||
@@ -260,7 +276,7 @@ alias_cb (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
|
||||
{
|
||||
some_args_replaced = 1;
|
||||
if (*ptr_cmd[0] == '/')
|
||||
weechat_command (weechat_current_buffer, args_replaced);
|
||||
alias_run_command (buffer, args_replaced);
|
||||
else
|
||||
{
|
||||
alias_command = malloc (1 + strlen(args_replaced) + 1);
|
||||
@@ -268,7 +284,7 @@ alias_cb (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
|
||||
{
|
||||
strcpy (alias_command, "/");
|
||||
strcat (alias_command, args_replaced);
|
||||
weechat_command (weechat_current_buffer, alias_command);
|
||||
alias_run_command (buffer, alias_command);
|
||||
free (alias_command);
|
||||
}
|
||||
}
|
||||
@@ -295,16 +311,14 @@ alias_cb (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
|
||||
strcat (alias_command, " ");
|
||||
strcat (alias_command, argv_eol[1]);
|
||||
|
||||
weechat_command (weechat_current_buffer,
|
||||
alias_command);
|
||||
alias_run_command (buffer, alias_command);
|
||||
free (alias_command);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (*ptr_cmd[0] == '/')
|
||||
(void) weechat_command(weechat_current_buffer,
|
||||
*ptr_cmd);
|
||||
alias_run_command (buffer, *ptr_cmd);
|
||||
else
|
||||
{
|
||||
alias_command = malloc (1 + strlen (*ptr_cmd) + 1);
|
||||
@@ -312,8 +326,7 @@ alias_cb (void *data, struct t_gui_buffer *buffer, int argc, char **argv,
|
||||
{
|
||||
strcpy (alias_command, "/");
|
||||
strcat (alias_command, *ptr_cmd);
|
||||
weechat_command (weechat_current_buffer,
|
||||
alias_command);
|
||||
alias_run_command (buffer, alias_command);
|
||||
free (alias_command);
|
||||
}
|
||||
}
|
||||
@@ -706,6 +719,7 @@ alias_command_cb (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
{
|
||||
char *alias_name;
|
||||
struct t_alias *ptr_alias;
|
||||
struct t_config_option *ptr_option;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
@@ -728,6 +742,11 @@ alias_command_cb (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
}
|
||||
|
||||
/* create config option */
|
||||
ptr_option = weechat_config_search_option (alias_config_file,
|
||||
alias_config_section_cmd,
|
||||
alias_name);
|
||||
if (ptr_option)
|
||||
weechat_config_option_free (ptr_option);
|
||||
weechat_config_new_option (
|
||||
alias_config_file, alias_config_section_cmd,
|
||||
alias_name, "string", NULL,
|
||||
|
||||
@@ -97,6 +97,9 @@ irc_channel_new (struct t_irc_server *server, int channel_type,
|
||||
}
|
||||
|
||||
weechat_buffer_set (new_buffer, "short_name", channel_name);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_nick", server->nick);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_server", server->name);
|
||||
weechat_buffer_set (new_buffer, "localvar_set_channel", channel_name);
|
||||
|
||||
weechat_hook_signal_send ("logger_backlog",
|
||||
WEECHAT_HOOK_SIGNAL_POINTER, new_buffer);
|
||||
|
||||
@@ -3138,6 +3138,8 @@ irc_command_server (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
}
|
||||
weechat_buffer_set (irc_current_server->buffer, "short_name",
|
||||
irc_current_server->name);
|
||||
weechat_buffer_set (irc_current_server->buffer, "localvar_set_server",
|
||||
irc_current_server->name);
|
||||
weechat_bar_item_update ("buffer_name");
|
||||
weechat_bar_item_update ("input_prompt");
|
||||
return WEECHAT_RC_OK;
|
||||
|
||||
@@ -300,12 +300,22 @@ irc_server_set_with_option (struct t_irc_server *server,
|
||||
void
|
||||
irc_server_set_nick (struct t_irc_server *server, const char *nick)
|
||||
{
|
||||
struct t_irc_channel *ptr_channel;
|
||||
|
||||
if (server->nick)
|
||||
free (server->nick);
|
||||
server->nick = (nick) ? strdup (nick) : NULL;
|
||||
|
||||
weechat_buffer_set (server->buffer, "highlight_words", nick);
|
||||
|
||||
/* set local variable "nick" for server and all channels/pv */
|
||||
weechat_buffer_set (server->buffer, "localvar_set_nick", nick);
|
||||
for (ptr_channel = server->channels; ptr_channel;
|
||||
ptr_channel = ptr_channel->next_channel)
|
||||
{
|
||||
weechat_buffer_set (ptr_channel->buffer, "localvar_set_nick", nick);
|
||||
}
|
||||
|
||||
weechat_bar_item_update ("input_prompt");
|
||||
}
|
||||
|
||||
@@ -2180,6 +2190,7 @@ irc_server_connect (struct t_irc_server *server, int disable_autojoin)
|
||||
}
|
||||
|
||||
weechat_buffer_set (server->buffer, "short_name", server->name);
|
||||
weechat_buffer_set (server->buffer, "localvar_set_server", server->name);
|
||||
|
||||
weechat_buffer_set (server->buffer, "display", "1");
|
||||
|
||||
|
||||
@@ -415,6 +415,7 @@ plugin_load (const char *filename)
|
||||
new_plugin->buffer_get_pointer = &gui_buffer_get_pointer;
|
||||
new_plugin->buffer_set = &gui_buffer_set;
|
||||
new_plugin->buffer_set_pointer = &gui_buffer_set_pointer;
|
||||
new_plugin->buffer_string_replace_local_var = &gui_buffer_string_replace_local_var;
|
||||
|
||||
new_plugin->window_get_integer = &gui_window_get_integer;
|
||||
new_plugin->window_get_string = &gui_window_get_string;
|
||||
|
||||
@@ -423,6 +423,8 @@ struct t_weechat_plugin
|
||||
const char *value);
|
||||
void (*buffer_set_pointer) (struct t_gui_buffer *buffer,
|
||||
const char *property, void *pointer);
|
||||
char *(*buffer_string_replace_local_var) (struct t_gui_buffer *buffer,
|
||||
const char *string);
|
||||
|
||||
/* windows */
|
||||
int (*window_get_integer) (struct t_gui_window *window,
|
||||
@@ -912,6 +914,8 @@ extern int weechat_plugin_end (struct t_weechat_plugin *plugin);
|
||||
weechat_plugin->buffer_set(__buffer, __property, __value)
|
||||
#define weechat_buffer_set_pointer(__buffer, __property, __pointer) \
|
||||
weechat_plugin->buffer_set_pointer(__buffer, __property, __pointer)
|
||||
#define weechat_buffer_string_replace_local_var(__buffer, __string) \
|
||||
weechat_plugin->buffer_string_replace_local_var(__buffer, __string)
|
||||
|
||||
/* windows */
|
||||
#define weechat_window_get_integer(__window, __property) \
|
||||
|
||||
Reference in New Issue
Block a user