ZOC Online Hilfe Thema:

ANHANG → Erweiterte Escape-Sequenzen

Die folgenden Escape-Sequenzen erweitern den normalen Bereich von Sequenzen (die normalen Sequenzen definieren das Verhalten von ZOC je nach der gewählten Emulation).

Der Hauptzweck der erweiterten Sequenzen besteht darin, einem Host zu ermöglichen, bestimmte Funktionen zu steuern oder bestimmte Aktionen über ZOC aufzurufen.

Die Sequenzen beginnen in der Regel mit ESC ] (hex 1B 5D) oder ESC [ (hex 1B 5B), gefolgt von einem variablen Teil und einem Abschlusszeichen wie ^G (hex 07) oder CR (hex 0D).

Andere Zeichen in den syntaktischen Beispielen unten sind selbsterklärend, abgesehen von Leerzeichen (die ignoriert werden sollten) und Text in Klammern (der als Platzhalter für einen variablen Teil deiner eigenen Wahl dient).

Beispielsweise ist eine gültige Implementierung der Sequenz ESC ] 0 ; <title> ^G die Byte-Folge hex 1B 5D 30 3B 5A 4F 43 07 (Titel des Fensters auf "ZOC" setzen).

Auf den meisten Linux-Systemen könntest du die Sequenz aus dem obigen Beispiel über echo -e "\e]0;ZOC\a" ausgeben. In Programmiersprachen, die C-ähnliche Zeichenketten verwenden (C, C++, Perl, PHP, usw.), könntest du etwas Ähnliches verwenden wie print "\033]0;ZOC\007";.

       
Fenstertitel ändern: ESC ] 0 ; <Titel> ^G
 

Die Sequenz ermöglicht es dem entfernten Programm, den Titel des Fensters (oder Tabs), in dem die Sitzung läuft, zu ändern.

Fenstertitel ändern (alternativ): ESC [ | $ t = <title> CR
 

Die Sequenz ist eine alternative Version der oben genannten und ermöglicht es ebenfalls dem entfernten Programm, den Fenstertitel zu ändern.

Bildschirm löschen und Emulation zurücksetzen: ESC ] R
 

Eine Byte-Folge von hex 1B 5D 52 wird einen Bildschirmlöschvorgang und einen Emulationsreset durchführen (identisch mit der Auswahl von "Bildschirm löschen" im Ansicht-Menü).

Fenstertitel ändern: ESC ] 52 ; c ; <base64-data> ^G
 

Die OSC52-Sequenz ermöglicht es dem entfernten Programm, Text gemäß dem OSC-52-Protokoll in die Zwischenablage zu setzen (erfordert die Aktivierung von 'Lokalen Befehl starten', siehe unten).

Lokalen Befehl starten: ESC [ | <Befehl> CR
 

Ein Host kann diese Sequenz senden, um einen Befehl lokal über ZOC auszuführen.


Lokalen Befehl starten: ESC [ | <Befehl> CR
 

Ein Host kann diese Sequenz senden, um einen Befehl lokal über ZOC auszuführen.

Wichtig: Da dies ein potenzielles Sicherheitsrisiko darstellt, wird die Sequenz ignoriert, es sei denn, die Option zur Aktivierung ist unter Optionen→Verbindungsprofil→Erweitert gesetzt. Alternativ wird die Sequenz auch verarbeitet, wenn eine Datei mit dem Namen remoterun.flg im ZOC-Programmordner (Windows) existiert oder wenn eine Datei mit dem Namen .zoc9_remoterunflag im Benutzer-Heimatordner (macOS) existiert.

Der Befehl wird über die CreateProcess-API an Windows übergeben und kann optionale Parameter enthalten, z.B. notepad.exe newfile.txt oder über cmd.exe C:\Windows\system32\cmd.exe /c dir >out.txt. Unter macOS können Programme direkt ausgeführt werden (/bin/touch /tmp/didit.txt). Aufgaben, die Shell-Funktionen erfordern (z.B. Ausgabeumleitung), müssen über eine Shell ausgeführt werden, z.B. /bin/bash -c ls ~/Downloads >/tmp/out.dir oder über eine Shell als Shell-Skript /bin/bash /Users/you/thetask.sh

Wenn der Befehlsparameter mit https://, https:// oder ftp:// beginnt, wird die URL an den Standard-Webbrowser des Benutzers weitergeleitet.

Wenn der Befehl mit dem Text %SHELLOPEN% gefolgt von einem Leerzeichen und einem Dateinamen beginnt, wird die Datei über das Betriebssystem mit dem vom Benutzer gewählten Standardprogramm geöffnet, z.B. %SHELLOPEN% C:\ZOC\piechart.jpg.

Es gibt auch einige Platzhalter: DOWNLOADDIR, LASTDOWNLOADEDFILE, LASTSPOOLFILE.
Wenn diese zwischen Prozentzeichen erscheinen (z.B. %LASTDOWNLOADEDFILE%) oder in Klammern nach einem Dollarzeichen (z.B. $(LASTSPOOLFILE)), werden sie durch ihre jeweiligen Werte ersetzt, bevor der Befehl ausgeführt wird. Ein typisches Beispiel könnte sein, dass ein Host einen Bericht an den Benutzer über Zmodem sendet und ihn dann über %SHELLOPEN% "%DOWNLOADDIR%\thereport.pdf" oder %SHELLOPEN% "%LASTDOWNLOADEDFILE%" öffnet.

NetTerm-Kompatibilität: ESC [ ] <parameter> ESC [ <n> *
 

ZOC unterstützt eine Reihe von Sequenzen von NetTerm, um Operationen auf dem lokalen Computer, auf dem das Terminal ausgeführt wird, durchzuführen.

Der Parameter <n> ist eine Dezimalzahl, die die auszuführende Funktion bestimmt. Die Bedeutung von <parameter> hängt also von <n> ab, wie unten beschrieben:

0 - URL, die im lokalen Browser geöffnet werden soll, z.B. ESC [ ] https://www.emtec.com/ ESC [ 0 *.
1 - Befehl, der lokal ausgeführt werden soll (gleich wie die Sequenz 'Lokalen Befehl starten' oben).
2 - Führe eine ZOC-Aktion aus (dies ist eine Aktionsdefinition, ähnlich wie Aktionen, die du finden wirst, wenn du eine ZOC-Verbindungsprofil-Datei mit einem Editor öffnest, und zum Abschnitt der Benutzertasten gehst).
6 - Verzeichnis, das als Download-Verzeichnis verwendet werden soll.
7 - Verzeichnis, das als Upload-Verzeichnis verwendet werden soll.
8 - Name und Pfad der Datei, die beim nächsten Upload übertragen werden soll.
11 - Text, der in die lokale Zwischenablage geschrieben werden soll.
12 - Vollständiger Pfad und Name einer Datei, die mit dem zugehörigen Standardprogramm für den Dateityp der Datei geöffnet werden soll. Der Platzhalter %LASTDOWNLOADEDFILE% kann verwendet werden, um auf die zuletzt empfangene Datei zu verweisen.
17 - Der Text NOWAIT. In diesem Fall wird die zuletzt heruntergeladene Datei auf dem lokalen Computer geöffnet (mit dem Standardprogramm für den Dateityp der Datei).
17 - Der Text PRINT. Die zuletzt heruntergeladene Datei wird an den im Programmeinstellungen→Drucker konfigurierten Drucker gesendet.

17 - Der Text DELETE. Die zuletzt heruntergeladene Datei wird gelöscht.

Beispiel: ESC [ ] C:\DOWNLOADS ESC [ 6 * (hex 1B 5B 5D 43 3A 5C 44 4F 57 4E 4C 4F 41 44 53 1B 5B 36 2A wird anschließend (nur für diese Sitzung) heruntergeladene Dateien im Ordner C:\DOWNLOADS\ speichern.

Beispiel: ESC [ ] C:\DOWNLOADS\REPORT.PDF ESC [ 12 * wird die Datei REPORT.PDF auf dem lokalen Computer mit der Standardverknüpfung für PDF-Dateien öffnen.

Beispiel: ESC [ ] ^RUN=postprocess.zrx ESC [ 2 * wird das REXX-Skript postprocess.zrx ausführen.

Beispiel: ESC [ ] NOWAIT ESC [ 12 * wird die zuletzt heruntergeladene Datei (z.B. MYREPORT.PDF) auf dem lokalen Computer mit der Standardverknüpfung für PDF-Dateien öffnen.


Wichtig: Diese Sequenzen werden nur verarbeitet, wenn remoterun.flg auf dem System vorhanden ist oder wenn sie unter Optionen→Verbindungsprofile→Erweitert aktiviert sind (siehe 'Lokalen Befehl starten' oben). Wenn du deine Verwendung dieser Sequenzen debuggen möchtest, kannst du den Hex-Modus oder ASCII-Trace unter Optionen→Verbindungsprofile→Trace/Debug aktivieren.

 

 
← Zurück zu ANHANG