summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/de/weechat_scripting.de.adoc71
-rw-r--r--doc/en/weechat_scripting.en.adoc69
-rw-r--r--doc/fr/weechat_scripting.fr.adoc69
-rw-r--r--doc/it/weechat_scripting.it.adoc69
-rw-r--r--doc/ja/weechat_scripting.ja.adoc69
-rw-r--r--doc/pl/weechat_scripting.pl.adoc71
-rw-r--r--doc/sr/weechat_scripting.sr.adoc69
7 files changed, 343 insertions, 144 deletions
diff --git a/doc/de/weechat_scripting.de.adoc b/doc/de/weechat_scripting.de.adoc
index 0060eabba..647ad6e1f 100644
--- a/doc/de/weechat_scripting.de.adoc
+++ b/doc/de/weechat_scripting.de.adoc
@@ -1073,26 +1073,54 @@ Mit der Funktion `+hook_process+` kann ein Hintergrundprozess gestartet werden.
Der Callback wird aufgerufen sobald der Hintergrundprozess abgearbeitet wurde.
Dies kann auch mehrfach der Fall sein.
-Für den letzten Aufruf des Callback wird _rc_ auf 0 oder einen positiven Wert
-gesetzt. Dies ist der Return Code des Befehls.
+Für den letzten Aufruf des Callback wird _return_code_ auf 0 oder einen positiven
+Wert gesetzt. Dies ist der Return Code des Befehls.
Beispiele:
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+// TRANSLATION MISSING
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== URL Übertragung
@@ -1105,17 +1133,18 @@ einen URL Transfer, kommt die Funktion `+hook_process_hashtable+` zum Einsatz.
Beispiel eines URL Transfers, ohne zusätzliche Optionen: Die HTML Seite wird
dabei in der Callback-Variable "out" gesichert (Standardausgabe des Prozesses):
+// TRANSLATION MISSING
[source,python]
----
-# Zeigt die aktuelle stabile Version von WeeChat an.
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "aktuelle stabile WeeChat-Version: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1130,9 +1159,9 @@ WeeChat Entwicklerpaket in die Datei _/tmp/weechat-devel.tar.gz_ gesichert:
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "End of transfer (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "End of transfer (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/en/weechat_scripting.en.adoc b/doc/en/weechat_scripting.en.adoc
index ffdf378de..8cea11500 100644
--- a/doc/en/weechat_scripting.en.adoc
+++ b/doc/en/weechat_scripting.en.adoc
@@ -1049,26 +1049,53 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
You can run a background process with `+hook_process+`. Your callback will be
called when data is ready. It may be called many times.
-For the last call to your callback, _rc_ is set to 0 or positive value, it's
-return code of command.
+For the last call to your callback, _return_code_ is set to 0 or positive value,
+it is the return code of command.
Example:
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== URL transfer
@@ -1082,15 +1109,15 @@ in callback (standard output of process):
[source,python]
----
-# Display current stable version of WeeChat.
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "Current WeeChat stable is: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1105,9 +1132,9 @@ package in file _/tmp/weechat-devel.tar.gz_:
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "End of transfer (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "End of transfer (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/fr/weechat_scripting.fr.adoc b/doc/fr/weechat_scripting.fr.adoc
index 16b21902d..14f6f1833 100644
--- a/doc/fr/weechat_scripting.fr.adoc
+++ b/doc/fr/weechat_scripting.fr.adoc
@@ -1077,26 +1077,53 @@ Vous pouvez lancer un processus en tâche de fond avec `+hook_process+`. Votre
fonction de rappel sera appelée quand des données seront prêtes. Elle peut être
appelée plusieurs fois.
-Pour le dernier appel à votre fonction de rappel, _rc_ est positionné à 0 ou
-une valeur positive, c'est le code retour de la commande.
+Pour le dernier appel à votre fonction de rappel, _return_code_ est positionné
+à 0 ou une valeur positive, il s'agit du code retour de la commande.
Exemple :
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Erreur avec la commande '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+Vous pouvez aussi appeler directement une fonction du script qui fait un appel
+bloquant, au lieu d'une commande externe :
+
+[source,python]
+----
+def get_status(data):
+ # faire quelque chose de bloquant...
+ # ...
+ return "ceci est le résultat"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== Transfert d'URL
@@ -1111,15 +1138,15 @@ dans la fonction de rappel (sortie standard du processus) :
[source,python]
----
-# Afficher la version stable courante de WeeChat.
-weechat_version = ""
+# Afficher la dernière version stable de WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "La version stable courante de WeeChat est : %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Dernière version de WeeChat : %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1135,9 +1162,9 @@ développement WeeChat dans le fichier _/tmp/weechat-devel.tar.gz_ :
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "Fin du transfert (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "Fin du transfert (code retour = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/it/weechat_scripting.it.adoc b/doc/it/weechat_scripting.it.adoc
index 2a1b96a66..68c9976c0 100644
--- a/doc/it/weechat_scripting.it.adoc
+++ b/doc/it/weechat_scripting.it.adoc
@@ -1097,26 +1097,54 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
callback verrà chiamata quando i dati sono pronti. Può essere chiamata
più volte.
-Per l'ultima chiamata alla callback, _rc_ è impostato a zero o su un
+Per l'ultima chiamata alla callback, _return_code_ è impostato a zero o su un
valore positivo, è il codice restituito dal comando.
Esempio:
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+// TRANSLATION MISSING
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== Trasferimento URL
@@ -1129,17 +1157,18 @@ delle opzioni per il trasferimento dell'URL.
Esempio di trasferimento di un URL senza opzioni: la pagina HTML verrà
ricevuta come "out" nella callback (output standard di un processo):
+// TRANSLATION MISSING
[source,python]
----
-# Mostra la versione stabile corrente di WeeChat.
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "Current WeeChat stable is: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1155,9 +1184,9 @@ di sviluppo di WeeChat nel file _/tmp/weechat-devel.tar.gz_:
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "End of transfer (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "End of transfer (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/ja/weechat_scripting.ja.adoc b/doc/ja/weechat_scripting.ja.adoc
index ef4a28172..bc3987b45 100644
--- a/doc/ja/weechat_scripting.ja.adoc
+++ b/doc/ja/weechat_scripting.ja.adoc
@@ -1078,26 +1078,54 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
バックグラウンドプロセスを実行するには `+hook_process+`
を使います。コールバックはデータの準備が整った時点で呼び出されます。複数回呼び出されることもあります。
-コールバックの最後の呼び出しでは _rc_ が 0
+コールバックの最後の呼び出しでは _return_code_ が 0
か正の値に設定されています。これはコマンドのリターンコードになります。
例:
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+// TRANSLATION MISSING
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== URL 転送
@@ -1109,17 +1137,18 @@ URL をダウンロードする (または URL にポストする) には、関
オプション無しの URL 転送の例: HTML ページの内容はコールバックの
"out" 引数 (プロセスの標準出力) を通して渡されます。
+// TRANSLATION MISSING
[source,python]
----
-# 現在の WeeChat 安定版のバージョンを表示。
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "Current WeeChat stable is: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1134,9 +1163,9 @@ _/tmp/weechat-devel.tar.gz_ にダウンロード:
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "End of transfer (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "End of transfer (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/pl/weechat_scripting.pl.adoc b/doc/pl/weechat_scripting.pl.adoc
index 100ac1ecb..ec7668082 100644
--- a/doc/pl/weechat_scripting.pl.adoc
+++ b/doc/pl/weechat_scripting.pl.adoc
@@ -1054,26 +1054,54 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
Do wykonywania procesów w tle służy `+hook_process+`. Twoje callbacki zostaną
wywołane, kiedy dane będą gotowe. Może zostać wywołane wiele razy.
-Dla ostatniego wykonania Twojego callbacku _rc_ jest ustawiane na 0, lub wartość
-dodatnią, jest to kod zwracany przez komendę.
+Dla ostatniego wykonania Twojego callbacku _return_code_ jest ustawiane na 0,
+lub wartość dodatnią, jest to kod zwracany przez komendę.
Przykład:
[source,python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+// TRANSLATION MISSING
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== Transfer URL
@@ -1085,17 +1113,18 @@ Aby pobrać URL (albo wysłać do URL), należy użyć funkcji `+hook_process+`,
Przykład transferu URL bez opcji: strona HTML jest otrzymywana jako "out"
(standardowe wyjście procesu):
+// TRANSLATION MISSING
[source,python]
----
-# Wyświetla aktualną stabilną wersję WeeChat.
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "Obecna wersja stabilna WeeChat: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1110,9 +1139,9 @@ do pliku _/tmp/weechat-devel.tar.gz_:
[source,python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "End of transfer (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "End of transfer (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
diff --git a/doc/sr/weechat_scripting.sr.adoc b/doc/sr/weechat_scripting.sr.adoc
index 3c3149e9e..53d06377c 100644
--- a/doc/sr/weechat_scripting.sr.adoc
+++ b/doc/sr/weechat_scripting.sr.adoc
@@ -999,25 +999,53 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
Процес можете да покренете у позадини са `+hook_process+`. Ваша функција повратног позива ће се позвати онда када подаци буду спремни. Може да се позива више пута.
-У последњем позиву ваше функције повратног позива, _rc_ се поставља на 0 или позитивну вредност, то је повратни кôд команде.
+У последњем позиву ваше функције повратног позива, _return_code_ се поставља на 0 или позитивну вредност, то је повратни кôд команде.
Пример:
[source, python]
----
-process_output = ""
-
-def my_process_cb(data, command, rc, out, err):
- global process_output
- if out != "":
- process_output += out
- if int(rc) >= 0:
- weechat.prnt("", process_output)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
return weechat.WEECHAT_RC_OK
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
----
+// TRANSLATION MISSING
+You can also call directly a script function that does something blocking,
+instead of an external command:
+
+[source,python]
+----
+def get_status(data):
+ # do something blocking...
+ # ...
+ return "this is the result"
+
+def my_process_cb(data, command, return_code, out, err):
+ if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
+ weechat.prnt("", "Error with command '%s'" % command)
+ return weechat.WEECHAT_RC_OK
+ if return_code >= 0:
+ weechat.prnt("", "return_code = %d" % return_code)
+ if out:
+ weechat.prnt("", "stdout: %s" % out)
+ if err:
+ weechat.prnt("", "stderr: %s" % err)
+ return weechat.WEECHAT_RC_OK
+
+hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
+----
+
[[url_transfer]]
==== URL пренос
@@ -1027,17 +1055,18 @@ _Ново у верзији 0.3.7._
Пример URL преноса без опције: HTML страница ће се примити као „out” у функцији повратног позива (стандардни излаз процеса):
+// TRANSLATION MISSING
[source, python]
----
-# Приказ тренутне стабилне верзије програма WeeChat.
-weechat_version = ""
+# Display latest stable version of WeeChat.
+weechat_latest_version = ""
-def weechat_process_cb(data, command, rc, out, err):
- global weechat_version
- if out != "":
- weechat_version += out
- if int(rc) >= 0:
- weechat.prnt("", "Тренутна стабилна WeeChat верзија је: %s" % weechat_version)
+def weechat_process_cb(data, command, return_code, out, err):
+ global weechat_latest_version
+ if out:
+ weechat_latest_version += out
+ if return_code >= 0:
+ weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
return weechat.WEECHAT_RC_OK
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
@@ -1051,9 +1080,9 @@ weechat.hook_process("url:https://weechat.org/dev/info/stable/",
[source, python]
----
-def my_process_cb(data, command, rc, out, err):
- if int(rc) >= 0:
- weechat.prnt("", "Крај преноса (rc=%s)" % rc)
+def my_process_cb(data, command, return_code, out, err):
+ if return_code >= 0:
+ weechat.prnt("", "Крај преноса (return code = %d)" % return_code)
return weechat.WEECHAT_RC_OK
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",