1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-28 22:06:38 +02:00

script: add option "script.look.display_source" (display source code with detail of script, enabled by default)

This commit is contained in:
Sebastien Helleu
2012-08-28 16:11:51 +02:00
parent 5073048428
commit df7b14e41c
21 changed files with 460 additions and 41 deletions
+5
View File
@@ -133,6 +133,11 @@
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette (Standardwert: `"%s %n %V %v %u | %d | %t"`)
* [[option_script.look.display_source]] *script.look.display_source*
** Beschreibung: `display source code of script on buffer with detail on a script (script is downloaded in a temporary file when detail on script is displayed)`
** Typ: boolesch
** Werte: on, off (Standardwert: `on`)
* [[option_script.look.quiet_actions]] *script.look.quiet_actions*
** Beschreibung: `quiet actions on script buffer: do not display messages on core buffer when scripts are installed/removed/loaded/unloaded (only errors are displayed)`
** Typ: boolesch
+5
View File
@@ -133,6 +133,11 @@
** type: string
** values: any string (default value: `"%s %n %V %v %u | %d | %t"`)
* [[option_script.look.display_source]] *script.look.display_source*
** description: `display source code of script on buffer with detail on a script (script is downloaded in a temporary file when detail on script is displayed)`
** type: boolean
** values: on, off (default value: `on`)
* [[option_script.look.quiet_actions]] *script.look.quiet_actions*
** description: `quiet actions on script buffer: do not display messages on core buffer when scripts are installed/removed/loaded/unloaded (only errors are displayed)`
** type: boolean
+5
View File
@@ -133,6 +133,11 @@
** type: chaîne
** valeurs: toute chaîne (valeur par défaut: `"%s %n %V %v %u | %d | %t"`)
* [[option_script.look.display_source]] *script.look.display_source*
** description: `afficher le code source du script sur le tampon avec le détail sur le script (le script est téléchargé dans un fichier temporaire lorsque le détail du script est affiché)`
** type: booléen
** valeurs: on, off (valeur par défaut: `on`)
* [[option_script.look.quiet_actions]] *script.look.quiet_actions*
** description: `actions silencieuses sur le tampon script: ne pas afficher de messages sur le tampon "core" quand les scripts sont installés/supprimés/chargés/déchargés (seules les erreurs sont affichées)`
** type: booléen
+5
View File
@@ -133,6 +133,11 @@
** tipo: stringa
** valori: qualsiasi stringa (valore predefinito: `"%s %n %V %v %u | %d | %t"`)
* [[option_script.look.display_source]] *script.look.display_source*
** descrizione: `display source code of script on buffer with detail on a script (script is downloaded in a temporary file when detail on script is displayed)`
** tipo: bool
** valori: on, off (valore predefinito: `on`)
* [[option_script.look.quiet_actions]] *script.look.quiet_actions*
** descrizione: `quiet actions on script buffer: do not display messages on core buffer when scripts are installed/removed/loaded/unloaded (only errors are displayed)`
** tipo: bool
+5
View File
@@ -133,6 +133,11 @@
** タイプ: 文字列
** 値: 未制約文字列 (デフォルト値: `"%s %n %V %v %u | %d | %t"`)
* [[option_script.look.display_source]] *script.look.display_source*
** 説明: `display source code of script on buffer with detail on a script (script is downloaded in a temporary file when detail on script is displayed)`
** タイプ: ブール
** 値: on, off (デフォルト値: `on`)
* [[option_script.look.quiet_actions]] *script.look.quiet_actions*
** 説明: `quiet actions on script buffer: do not display messages on core buffer when scripts are installed/removed/loaded/unloaded (only errors are displayed)`
** タイプ: ブール
+21 -1
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -8229,6 +8229,17 @@ msgstr "%s%s: skript \"%s\" nenalezen"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: skript \"%s\" nenačten"
#, fuzzy
msgid "Error: file not found"
msgstr "%sChyba: filtr \"%s\" nenalezen"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: odebírám skript \"%s\""
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s%s: server \"%s\" již existuje, nemohu jej vytvořít!"
@@ -8243,6 +8254,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Načtené pluginy:"
msgid "Author"
msgstr ""
@@ -8416,6 +8431,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -23,7 +23,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
"Language-Team: German <weechatter@arcor.de>\n"
@@ -8799,6 +8799,17 @@ msgstr "%s%s: Skript \"%s\" wurde nicht gefunden"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: Das Skript \"%s\" wurde nicht installiert"
#, fuzzy
msgid "Error: file not found"
msgstr "%sFehler: Buffer nicht gefunden"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: Deinstalliere das Skript \"%s\""
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr ""
@@ -8815,6 +8826,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Installierte Erweiterungen:"
msgid "Author"
msgstr ""
@@ -8988,6 +9003,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -8502,6 +8502,17 @@ msgstr "%s%s: script \"%s\" no encontrado"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: el script \"%s\" no está cargado"
#, fuzzy
msgid "Error: file not found"
msgstr "%sError: filtro \"%s\" no encontrado"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: descargando el script \"%s\""
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s%s: el servidor \"%s\" ya existe, ¡no se puede crear!"
@@ -8516,6 +8527,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Plugins cargados:"
msgid "Author"
msgstr ""
@@ -8689,6 +8704,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+22 -2
View File
@@ -21,8 +21,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"PO-Revision-Date: 2012-08-25 16:14+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-28 15:43+0200\n"
"Last-Translator: Sebastien Helleu <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"Language: French\n"
@@ -8580,6 +8580,15 @@ msgstr "%s: script \"%s\" non trouvé"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s: le script \"%s\" n'est plus figé"
msgid "Error: file not found"
msgstr "Erreur: fichier non trouvé"
msgid "Source code:"
msgstr "Code source :"
msgid "Downloading script..."
msgstr "Téléchargement du script..."
#, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s: le script \"%s\" est déjà installé et à jour"
@@ -8594,6 +8603,9 @@ msgstr "Script"
msgid "Version"
msgstr "Version"
msgid "Version loaded"
msgstr "Version chargée"
msgid "Author"
msgstr "Auteur"
@@ -8838,6 +8850,14 @@ msgstr ""
"%u=date de mise à jour, %v=version, %V=version chargée, %w=min_weechat, "
"%W=max_weechat"
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
"afficher le code source du script sur le tampon avec le détail sur le script "
"(le script est téléchargé dans un fichier temporaire lorsque le détail du "
"script est affiché)"
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -7707,6 +7707,17 @@ msgstr "%s a \"%s\" szerver nem található\n"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s a \"%s\" szerver nem található\n"
#, fuzzy
msgid "Error: file not found"
msgstr "%s a \"%s\" modul nem található\n"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "folyamat: \"%s\" szerver betöltése\n"
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s a \"%s\" szerver már létezik, nem hozhatja létre!\n"
@@ -7721,6 +7732,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Betöltött modulok:\n"
msgid "Author"
msgstr ""
@@ -7895,6 +7910,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -8492,6 +8492,17 @@ msgstr "%s%s: script \"%s\" non trovato"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: script \"%s\" non caricato"
#, fuzzy
msgid "Error: file not found"
msgstr "%sErrore: buffer non trovato"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: scaricamento dello script \"%s\""
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s%s: script \"%s\" già registrato (funzione register ignorata)"
@@ -8506,6 +8517,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Plugin caricati:"
msgid "Author"
msgstr ""
@@ -8679,6 +8694,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
"Language-Team: Japanese <https://github.com/l/WeeChat>\n"
@@ -8291,6 +8291,17 @@ msgstr "%s%s: スクリプト \"%s\" が見つかりません"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: スクリプト \"%s\" はロードされていません"
#, fuzzy
msgid "Error: file not found"
msgstr "%sエラー: バッファが見つかりません"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: スクリプト \"%s\" のアンロード中"
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s%s: サーバ \"%s\" は既に登録済みです (登録しませんでした)"
@@ -8305,6 +8316,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "ロード済みプラグイン:"
msgid "Author"
msgstr ""
@@ -8478,6 +8493,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -8425,6 +8425,17 @@ msgstr "%s%s: nie znaleziono skryptu \"%s\""
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: skrypt \"%s\" nie załadowany"
#, fuzzy
msgid "Error: file not found"
msgstr "%sBłąd: nie odnaleziono filtru \"%s\""
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: wyładowuję skrypt \"%s\""
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s%s: serwer \"%s\" już istnieje, nie mogę go utworzyć!"
@@ -8439,6 +8450,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Załadowane wtyczki:"
msgid "Author"
msgstr ""
@@ -8612,6 +8627,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Sergio Durigan Junior <sergiosdj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -7859,6 +7859,17 @@ msgstr "%s%s: script \"%s\" não encontrado"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s%s: script \"%s\" não carregado"
#, fuzzy
msgid "Error: file not found"
msgstr "%sErro: filtro \"%s\" não encontrado"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "%s: descarregando script \"%s\""
#, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr ""
@@ -7873,6 +7884,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Plugins carregados:"
msgid "Author"
msgstr ""
@@ -8046,6 +8061,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+21 -1
View File
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.3.9-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+0200\n"
"PO-Revision-Date: 2012-08-20 15:20+0200\n"
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -7730,6 +7730,17 @@ msgstr "%s сервер \"%s\" не найден\n"
msgid "%s: script \"%s\" is not held any more"
msgstr "%s сервер \"%s\" не найден\n"
#, fuzzy
msgid "Error: file not found"
msgstr "%s plugin \"%s\" не найден\n"
msgid "Source code:"
msgstr ""
#, fuzzy
msgid "Downloading script..."
msgstr "сессия: загружаю сервер \"%s\"\n"
#, fuzzy, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr "%s сервер \"%s\" уже существует, не могу создать его!\n"
@@ -7744,6 +7755,10 @@ msgstr ""
msgid "Version"
msgstr ""
#, fuzzy
msgid "Version loaded"
msgstr "Загруженные plugin'ы\n"
msgid "Author"
msgstr ""
@@ -7918,6 +7933,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+18 -1
View File
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2012-08-25 19:27+0200\n"
"POT-Creation-Date: 2012-08-28 16:10+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"
@@ -6787,6 +6787,15 @@ msgstr ""
msgid "%s: script \"%s\" is not held any more"
msgstr ""
msgid "Error: file not found"
msgstr ""
msgid "Source code:"
msgstr ""
msgid "Downloading script..."
msgstr ""
#, c-format
msgid "%s: script \"%s\" is already installed and up-to-date"
msgstr ""
@@ -6801,6 +6810,9 @@ msgstr ""
msgid "Version"
msgstr ""
msgid "Version loaded"
msgstr ""
msgid "Author"
msgstr ""
@@ -6968,6 +6980,11 @@ msgid ""
"loaded, %w=min_weechat, %W=max_weechat)"
msgstr ""
msgid ""
"display source code of script on buffer with detail on a script (script is "
"downloaded in a temporary file when detail on script is displayed)"
msgstr ""
msgid ""
"quiet actions on script buffer: do not display messages on core buffer when "
"scripts are installed/removed/loaded/unloaded (only errors are displayed)"
+142 -2
View File
@@ -22,6 +22,7 @@
*/
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>
#include <libgen.h>
@@ -413,6 +414,7 @@ script_action_installnext_timer_cb (void *data, int remaining_calls)
/*
* script_action_install_process_cb: callback called when script is downloaded
* (for installing it)
*/
int
@@ -446,7 +448,8 @@ script_action_install_process_cb (void *data, const char *command,
ptr_script = script_repo_search_by_name_ext (pos + 1);
if (ptr_script)
{
filename = script_config_get_script_download_filename (ptr_script);
filename = script_config_get_script_download_filename (ptr_script,
NULL);
if (filename)
{
length = 3 + strlen (filename) + 1;
@@ -506,7 +509,8 @@ script_action_install (int quiet)
if (ptr_script_to_install)
{
filename = script_config_get_script_download_filename (ptr_script_to_install);
filename = script_config_get_script_download_filename (ptr_script_to_install,
NULL);
if (filename)
{
options = weechat_hashtable_new (8,
@@ -656,6 +660,94 @@ script_action_hold (const char *name, int quiet)
return 0;
}
/*
* script_action_show_process_cb: callback called when script is downloaded
* (for showing source code below script detail)
*/
int
script_action_show_process_cb (void *data, const char *command,
int return_code, const char *out,
const char *err)
{
char *pos, *filename, line[4096], *ptr_line;
struct t_repo_script *ptr_script;
FILE *file;
int line_y;
/* make C compiler happy */
(void) data;
if (return_code >= 0)
{
pos = strrchr (command, '/');
if ((err && err[0]) || (out && (strncmp (out, "error:", 6) == 0)))
{
weechat_printf (NULL,
_("%s%s: error downloading script \"%s\": %s"),
weechat_prefix ("error"),
SCRIPT_PLUGIN_NAME,
(pos) ? pos + 1 : "?",
(err && err[0]) ? err : out + 6);
return WEECHAT_RC_OK;
}
if (pos)
{
ptr_script = script_repo_search_by_name_ext (pos + 1);
if (ptr_script)
{
filename = script_config_get_script_download_filename (ptr_script,
".tmp");
if (filename)
{
/*
* read file and display content on script buffer
* (only if script buffer is still displaying detail of
* this script)
*/
if (script_buffer && script_buffer_detail_script
&& (script_buffer_detail_script == ptr_script))
{
line_y = script_buffer_detail_script_line_source + 2;
file = fopen (filename, "r");
if (file)
{
while (!feof (file))
{
ptr_line = fgets (line, sizeof (line) - 1, file);
if (ptr_line)
{
weechat_printf_y (script_buffer, line_y,
"%s", ptr_line);
line_y++;
}
}
fclose (file);
}
else
{
weechat_printf_y (script_buffer, line_y,
_("Error: file not found"));
line_y++;
}
weechat_printf_y (script_buffer, line_y,
"%s----------------------------------------"
"----------------------------------------",
weechat_color ("green"));
line_y++;
}
unlink (filename);
free (filename);
}
}
}
}
return WEECHAT_RC_OK;
}
/*
* script_action_show: show detailed info on a script
*/
@@ -664,6 +756,9 @@ void
script_action_show (const char *name, int quiet)
{
struct t_repo_script *ptr_script;
char *filename, *url;
int length;
struct t_hashtable *options;
if (name)
{
@@ -671,6 +766,51 @@ script_action_show (const char *name, int quiet)
if (ptr_script)
{
script_buffer_show_detail_script (ptr_script);
if (weechat_config_boolean (script_config_look_display_source))
{
weechat_printf_y (script_buffer,
script_buffer_detail_script_line_source,
_("Source code:"));
weechat_printf_y (script_buffer,
script_buffer_detail_script_line_source + 1,
"%s----------------------------------------"
"----------------------------------------",
weechat_color ("green"));
weechat_printf_y (script_buffer,
script_buffer_detail_script_line_source + 2,
_("Downloading script..."));
weechat_printf_y (script_buffer,
script_buffer_detail_script_line_source + 3,
"%s----------------------------------------"
"----------------------------------------",
weechat_color ("green"));
filename = script_config_get_script_download_filename (ptr_script,
".tmp");
if (filename)
{
options = weechat_hashtable_new (8,
WEECHAT_HASHTABLE_STRING,
WEECHAT_HASHTABLE_STRING,
NULL,
NULL);
if (options)
{
length = 4 + strlen (ptr_script->url) + 1;
url = malloc (length);
if (url)
{
snprintf (url, length, "url:%s", ptr_script->url);
weechat_hashtable_set (options, "file_out", filename);
weechat_hook_process_hashtable (url, options, 30000,
&script_action_show_process_cb,
NULL);
free (url);
}
weechat_hashtable_free (options);
}
free (filename);
}
}
}
else
{
+38 -23
View File
@@ -36,6 +36,7 @@
struct t_gui_buffer *script_buffer = NULL;
int script_buffer_selected_line = 0;
struct t_repo_script *script_buffer_detail_script = NULL;
int script_buffer_detail_script_line_source = 0;
/*
@@ -361,11 +362,12 @@ script_buffer_display_detail_script (struct t_repo_script *script)
{
struct tm *tm;
char str_time[1024];
char *labels[] = { N_("Script"), N_("Version"), N_("Author"),
N_("License"), N_("Description"), N_("Tags"),
N_("Status"), N_("Date added"), N_("Date updated"),
N_("URL"), N_("MD5"), N_("Requires"), N_("Min WeeChat"),
N_("Max WeeChat"), NULL };
char *labels[] = { N_("Script"), N_("Version"), N_("Version loaded"),
N_("Author"), N_("License"), N_("Description"),
N_("Tags"), N_("Status"), N_("Date added"),
N_("Date updated"), N_("URL"), N_("MD5"), N_("Requires"),
N_("Min WeeChat"), N_("Max WeeChat"),
NULL };
int i, length, max_length, line;
max_length = 0;
@@ -386,10 +388,16 @@ script_buffer_display_detail_script (struct t_repo_script *script)
weechat_color (weechat_config_string (script_config_color_text_extension)),
script_extension[script->language]);
line++;
weechat_printf_y (script_buffer, line + 1, "%s: %s",
weechat_printf_y (script_buffer, line + 1, "%s: %s%s",
script_buffer_detail_label (_(labels[line]), max_length),
weechat_color (weechat_config_string (script_config_color_text_version)),
script->version);
line++;
weechat_printf_y (script_buffer, line + 1, "%s: %s%s",
script_buffer_detail_label (_(labels[line]), max_length),
weechat_color (weechat_config_string (script_config_color_text_version_loaded)),
(script->version_loaded) ? script->version_loaded : "-");
line++;
weechat_printf_y (script_buffer, line + 1,
"%s: %s <%s>",
script_buffer_detail_label (_(labels[line]), max_length),
@@ -481,6 +489,9 @@ script_buffer_display_detail_script (struct t_repo_script *script)
"%s: %s",
script_buffer_detail_label (_(labels[line]), max_length),
(script->max_weechat) ? script->max_weechat : "-");
line++;
script_buffer_detail_script_line_source = line + 2;
}
/*
@@ -730,24 +741,27 @@ script_buffer_input_cb (void *data, struct t_gui_buffer *buffer,
return WEECHAT_RC_OK;
}
/* change sort keys on buffer */
if (strncmp (input_data, "s:", 2) == 0)
if (!script_buffer_detail_script)
{
if (input_data[2])
weechat_config_option_set (script_config_look_sort, input_data + 2, 1);
else
weechat_config_option_reset (script_config_look_sort, 1);
return WEECHAT_RC_OK;
}
/* change sort keys on buffer */
if (strncmp (input_data, "s:", 2) == 0)
{
if (input_data[2])
weechat_config_option_set (script_config_look_sort, input_data + 2, 1);
else
weechat_config_option_reset (script_config_look_sort, 1);
return WEECHAT_RC_OK;
}
/* refresh buffer */
if (strcmp (input_data, "$") == 0)
{
script_get_loaded_scripts ();
script_repo_remove_all ();
script_repo_file_read (1);
script_buffer_refresh (1);
return WEECHAT_RC_OK;
/* refresh buffer */
if (strcmp (input_data, "$") == 0)
{
script_get_loaded_scripts ();
script_repo_remove_all ();
script_repo_file_read (1);
script_buffer_refresh (1);
return WEECHAT_RC_OK;
}
}
/* execute action on a script */
@@ -763,7 +777,8 @@ script_buffer_input_cb (void *data, struct t_gui_buffer *buffer,
}
/* filter scripts with given text */
script_repo_filter_scripts (input_data);
if (!script_buffer_detail_script)
script_repo_filter_scripts (input_data);
return WEECHAT_RC_OK;
}
+1
View File
@@ -27,6 +27,7 @@ struct t_repo_script;
extern struct t_gui_buffer *script_buffer;
extern int script_buffer_selected_line;
extern struct t_repo_script *script_buffer_detail_script;
extern int script_buffer_detail_script_line_source;
extern void script_buffer_refresh (int clear);
extern void script_buffer_set_current_line (int line);
+22 -3
View File
@@ -40,6 +40,7 @@ struct t_config_section *script_config_section_scripts = NULL;
/* script config, look section */
struct t_config_option *script_config_look_columns;
struct t_config_option *script_config_look_display_source;
struct t_config_option *script_config_look_quiet_actions;
struct t_config_option *script_config_look_sort;
struct t_config_option *script_config_look_translate_description;
@@ -138,21 +139,31 @@ script_config_get_xml_filename ()
* script_config_get_script_download_filename: get filename for a script to
* download, for eample:
* "/home/xxx/.weechat/script/iset.pl"
* (if suffix is not NULL, it is
* added to filename)
* Note: result must be freed after
* use
*/
char *
script_config_get_script_download_filename (struct t_repo_script *script)
script_config_get_script_download_filename (struct t_repo_script *script,
const char *suffix)
{
char *path, *filename;
int length;
path = script_config_get_dir ();
length = strlen (path) + 1 + strlen (script->name_with_extension) + 1;
length = strlen (path) + 1 + strlen (script->name_with_extension)
+ ((suffix) ? strlen (suffix) : 0) + 1;
filename = malloc (length);
if (filename)
snprintf (filename, length, "%s/%s", path, script->name_with_extension);
{
snprintf (filename, length,
"%s/%s%s",
path,
script->name_with_extension,
(suffix) ? suffix : "");
}
free (path);
return filename;
}
@@ -359,6 +370,14 @@ script_config_init ()
"%W=max_weechat)"),
NULL, 0, 0, "%s %n %V %v %u | %d | %t", NULL, 0,
NULL, NULL, &script_config_refresh_cb, NULL, NULL, NULL);
script_config_look_display_source = weechat_config_new_option (
script_config_file, ptr_section,
"display_source", "boolean",
N_("display source code of script on buffer with detail on a script "
"(script is downloaded in a temporary file when detail on script "
"is displayed)"),
NULL, 0, 0, "on", NULL, 0,
NULL, NULL, NULL, NULL, NULL, NULL);
script_config_look_quiet_actions = weechat_config_new_option (
script_config_file, ptr_section,
"quiet_actions", "boolean",
+3 -1
View File
@@ -25,6 +25,7 @@
struct t_repo_script;
extern struct t_config_option *script_config_look_columns;
extern struct t_config_option *script_config_look_display_source;
extern struct t_config_option *script_config_look_quiet_actions;
extern struct t_config_option *script_config_look_sort;
extern struct t_config_option *script_config_look_translate_description;
@@ -64,7 +65,8 @@ extern struct t_config_option *script_config_scripts_url;
extern char *script_config_get_dir ();
extern char *script_config_get_xml_filename ();
extern char *script_config_get_script_download_filename (struct t_repo_script *script);
extern char *script_config_get_script_download_filename (struct t_repo_script *script,
const char *suffix);
extern void script_config_hold (const char *name_with_extension);
extern void script_config_unhold (const char *name_with_extension);
extern int script_config_init ();