diff --git a/ChangeLog.adoc b/ChangeLog.adoc index 8329d301f..91038a0d6 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -20,6 +20,7 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] New features:: + * core: add option `-save` in command `/upgrade` (issue #1630) * core: add option weechat.look.highlight_disable_regex and buffer property "highlight_disable_regex" (issue #1798) * api: rename function string_build_with_split_string to string_rebuild_split_string, add arguments "index_start" and "index_end" * api: add info "uptime_current" diff --git a/doc/de/includes/autogen_user_commands.de.adoc b/doc/de/includes/autogen_user_commands.de.adoc index 4bc00e05a..d5b7c739d 100644 --- a/doc/de/includes/autogen_user_commands.de.adoc +++ b/doc/de/includes/autogen_user_commands.de.adoc @@ -2122,35 +2122,42 @@ Beispiele: ---- [[command_weechat_upgrade]] -* `+upgrade+`: WeeChat Binärdatei neu laden, ohne die Verbindung zum Server zu trennen +* `+upgrade+`: save WeeChat session and reload the WeeChat binary without disconnecting from servers ---- -/upgrade [-yes] [|-quit] +/upgrade [-yes] [|-save|-quit] - -yes: wird benötigt, sobald Option "weechat.look.confirm_upgrade" aktiviert ist -path_to_binary: Pfad zu einer ausführbaren WeeChat Binärdatei (Standardeinstellung ist die aktuell ausführbare Datei) - -dummy: ohne Funktion (dient lediglich dazu, um nicht versehentlich die "-quit" Funktion auszuführen) - -quit: trennt *ALLE* Verbindungen, speichert die aktuelle Sitzung und beendet WeeChat, um den aktuellen Zustand später wiederherstellen (siehe unten) + -yes: required if option "weechat.look.confirm_upgrade" is enabled +path_to_binary: path to WeeChat binary (default is current binary) + -dummy: do nothing (option used to prevent accidental completion with "-quit") + -save: only save the session, do not quit nor reload WeeChat; the configuration files are not saved (if needed you can use /save before this command) + -quit: close *ALL* connections, save session and quit WeeChat, which makes possible a delayed restoration (see below) -Dieser Befehl führt ein Upgrade von WeeChat durch und startet die laufende Sitzung neu. Bevor dieser Befehl ausgeführt wird, sollte eine neue Version von WeeChat entweder vorab kompiliert, oder mit einem Paketmanager installiert worden sein. +This command upgrades and reloads a running WeeChat session. The new WeeChat binary must have been compiled or installed with a package manager before running this command. -Hinweis: SSL Verbindungen werden während eines Upgrades unterbrochen, da diese Verbindungen zur Zeit nicht mit GnuTLS gehalten werden können. Nach einem erfolgten Upgrade findet eine automatische Verbindung zu diesen Servern statt. +Note: SSL connections are lost during upgrade (except with -save), because the reload of SSL sessions is currently not possible with GnuTLS. There is automatic reconnection after upgrade. -Der Upgrade Vorgang besteht aus vier Schritten: - 1. Sicherung der Sitzung, in Dateien für Core und Erweiterungen (buffers, history, ..) - 2. alle Erweiterungen werden ausgeschaltet (Konfigurationen *.conf werden gesichert) - 3. Sicherung der WeeChat Konfiguration (weechat.conf) - 4. ausführen der neuen Version von WeeChat und wiederherstellen der Sitzung. +Important: use of option -save can be dangerous, it is recommended to use only /upgrade (or with -quit) for a standard upgrade and a restart; the option -save can be used to save the session regularly and restore it in case of after abnormal exit (power outage, crash, etc.) -Nutzt man die "-quit" Funktion ist die Abfolge geringfügig anders: - 1. es werden *ALLE* Verbindungen getrennt (irc,xfer,relay, ...) - 2. die Sitzung wird in Dateien gesichert (*.upgrade) - 3. alle Erweiterungen werden ausgeschaltet - 4. die WeeChat Konfiguration wird gesichert - 5. WeeChat wird beendet -Die Sitzung kann zu einem späteren Zeitpunkt wiederhergestellt werden: weechat --upgrade -WICHTIG: Die Sitzung muss mit exakt den selben Konfigurationsdateien wiederhergestellt werden (*.conf) -Es ist möglich, die WeeChat-Sitzung auf einem anderen Computer wiederherzustellen, wenn Sie den Inhalt der WeeChat Verzeichnisse kopieren (siehe / debug dirs). +Upgrade process has 4 steps: + 1. save session into files for core and plugins (buffers, history, ..) + 2. unload all plugins (configuration files (*.conf) are written on disk) + 3. save WeeChat configuration (weechat.conf) + 4. execute new WeeChat binary and reload session. + +With option "-quit", the process is: + 1. close *ALL* connections (irc, xfer, relay, ...) + 2. save session into files (*.upgrade) + 3. unload all plugins + 4. save WeeChat configuration + 5. quit WeeChat + +With option "-save", the process is: + 1. save session into files (*.upgrade) with a disconnected state for IRC servers and Relay clients (but no disconnection is made) + +With -quit or -save, you can restore the session later with this command: weechat --upgrade +IMPORTANT: you must restore the session with exactly same configuration (files *.conf) and if possible the same WeeChat version (or a more recent one). +It is possible to restore WeeChat session on another machine if you copy the content of WeeChat home directories (see /debug dirs). ---- [[command_weechat_uptime]] @@ -3130,70 +3137,72 @@ Ohne Angabe eines Argumentes listet dieser Befehl alle geladenen Skripten auf. default -yes monitor [] - list: zeigt eine Liste aller Trigger (ohne Angabe von Argumente wird diese Liste standardmäßig ausgegeben) - listfull: zeigt eine detaillierte Liste, mit zusätzlichen Informationen, aller Trigger an -listdefault: zeigt die standardmäßig genutzten Trigger an - add: fügt einen Trigger hinzu - addoff: fügt einen Trigger hinzu (deaktiviert) - addreplace: erzeugt neuen Trigger oder ersetzt einen schon existierenden Trigger - name: Name des Trigger + list: list triggers (without argument, this list is displayed) + listfull: list triggers with detailed info for each trigger +listdefault: list default triggers + add: add a trigger + addoff: add a trigger (disabled) + addreplace: add or replace an existing trigger + name: name of trigger hook: signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable - arguments: Argumente für den Hook, abhängig vom genutzten Hook (getrennt durch Semikolon): - signal: Name(en) des signals (erforderlich) - hsignal: Name(en) des hsignal (erforderlich) - modifier: Name(en) des modifier (erforderlich) - line: Buffertyp ("formatted", "free" oder "*"), Liste von Buffermasken, Tags - print: Buffer, Tags, Nachricht, Farben entfernen - command: Befehl (erforderlich), Beschreibung, Argumente, Beschreibung der Argumente, Vervollständigung (alle Argumente, außer dem Befehl werden ausgewertet, "${tg_trigger_name}" wird durch den Triggernamen ersetzt, siehe /help eval) - command_run: Befehl(e) (erforderlich) - timer: Intervall (erforderlich), Anpassung an Sekunden (erforderlich), maximale Anzahl an Aufrufen - config: Name der Einstellung (erforderlich) - focus: Name(n) für sichtbaren Bereich (erforderlich) (z.B. "chat" für Chatbereich) - info: Name(n) der Information (erforderlich) - info_hashtable: Name(n) der Information (erforderlich) - conditions: evaluierte Bedingungen für den Trigger - regex: einer oder mehrere reguläre Ausdrücke um Zeichenketten in Variablen zu ersetzen - command: Befehl welcher ausgeführt werden soll (mehrere Befehle müssen durch ";" voneinander getrennt werden) -return_code: Rückgabewert für Callback (ok (standard), ok_eat, error) -post_action: Aktion welche nach der Abarbeitung des Triggers ausgeführt werden soll (none (Standardwert), disable, delete) - addinput: erstellt einen Trigger mit einer standardmäßigen Mustervorlage - input: kopiert den kompletten Trigger-Befehl in die Eingabezeile - output: schickt den Trigger-Befehl als Text in den Buffer - recreate: wie "input", allerdings wird die Einstellung "addreplace" anstelle von "add" genutzt - set: definiert, innerhalb eines Triggers, eine Einstellung neu - option: Name einer Einstellung: name, hook, arguments, conditions, regex, command, return_code - (um Hilfe über eine Einstellung zu erhalten: /help trigger.trigger..