TCC Enthält Unterstützung für ANSI Std Diese Sequenzen werden „ANSI-Befehle“ genannt. (Eine allgemeine Beschreibung dieser Funktion finden Sie unter ANSI-Unterstützung.) Aufgrund des Designs von Windows, TCC kann externen Anwendungen keine ANSI X3.64-Unterstützung bieten. (Wenn Sie Windows 10 Creators Update oder höher ausführen, TCC aktiviert die in die Konsole integrierte ANSI-Unterstützung.)

 

TCC unterstützt die meisten gängigen ANSI X3.64-Bildschirmbefehle, bietet jedoch nicht den vollständigen Satz an Optionen, die von den ANSI TCC enthält keine ANSI X3.64-Schlüsselersetzungen; Diese Funktionalität ist bereits vorhanden Schlüsselaliase). Dieser Abschnitt ist eine Kurzreferenz zu den ANSI X3.64-Befehlen, die von unterstützt werden TCC.

 

ANSI X3.64-Unterstützung innerhalb TCC kann mit aktiviert oder deaktiviert werden ANSI-Farben Konfigurationsoption oder die SETDOS /Ein Kommando. Sie können testen, ob die ANSI X3.64-Unterstützung mit aktiviert ist _ANSI interne Variable.

 

Eine ANSI X3.64-Befehlszeichenfolge besteht aus drei Teilen:

 

[Das ASCII-Zeichen ESC, gefolgt von einer linken Klammer. Diese beiden Zeichen müssen in allen ANSI X3.64-Zeichenfolgen vorhanden sein.
ParameterOptionale Parameter für den Befehl, normalerweise numerisch. Bei mehreren Parametern werden diese durch Semikolons getrennt.
BefehlEin aus einem Buchstaben bestehender Befehl. (Groß- und Kleinschreibung beachten!)

 

Um den Cursor beispielsweise auf Zeile 7, Spalte 12 zu positionieren, lautet der ANSI X3.64-Befehl:

 

[7;12H

 

Der Parameter Teil dieses Befehls ist „7;12“ und der Befehl Teil ist „H“.

 

Um ANSI X3.64-Befehle auf den Bildschirm zu übertragen, können Sie die verwenden ECHO Befehl. Das ESC-Zeichen kann generiert werden, indem es direkt in die Zeichenfolge eingefügt wird (wenn Sie die Zeichenfolge in eine Batchdatei einfügen und Ihr Editor ein solches Zeichen einfügt) oder indem das interne Zeichen verwendet wird "Escape-Zeichen (Standard: Caret, [^]), gefolgt von einem kleinen „e“.

 

Die oben gezeigte Sequenz könnte beispielsweise mit einem dieser Befehle aus einer Batchdatei übertragen werden (der erste verwendet direkt ein ESC-Zeichen, unten dargestellt durch „“; der zweite verwendet ^e):

 

echo [7;12H

echo ^e[7;12H

 

Sie können auch ANSI X3.64-Befehle in Ihre einfügen Eingabeaufforderung, wobei $e zum Senden des -Zeichens verwendet wird.

 

Befehle

 

Das interne TCC ANSI X3.64-Interpreter unterstützt die unten aufgeführte Teilmenge der X3.64-Befehle. Variable Parameter werden in Kleinbuchstaben kursiv dargestellt, z. B. #. Reihe und attrund muss bei Verwendung der Befehle durch den entsprechenden dezimalen numerischen Wert ersetzt werden. Der Standardwert für Reihe, Reihen, col, und Spalten ist 1.

 

[rowsA

Cursor nach oben um Reihen (Standard ist 1)

[rowsB

Cursor nach unten um Reihen (Standard ist 1)

[b

Wiederholen Sie das vorherige Zeichen

[#b

Wiederholen Sie das vorherige Zeichen #-mal

[colsC

Cursor direkt daneben Spalten (Standard ist 1)

[colsD

Cursor links von Spalten (Standard ist 1)

[d

Bewegen Sie den Cursor in die erste Zeile

[Zeile

Bewegen Sie den Cursor auf Reihe

[E

Cursor eine Zeile nach unten und zur ersten Spalte

[rowsE

Cursor nach unten by Reihen und zur ersten Spalte

[F

Cursor eine Zeile nach oben und zur ersten Spalte

[rowsF

Cursor nach oben um Reihen und zur ersten Spalte

[Zeile;Spalte

Stellen Sie die Cursorposition ein, genau wie beim Befehl „H“.

[G

Bewegen Sie den Cursor auf Spalte 1

[colG

Bewegen Sie den Cursor zur Spalte

[H

Cursor nach links oben setzen

[Zeile;H

Bewegen Sie den Cursor in Zeile, Spalte 1

[row;colH

Cursorposition festlegen (oben links ist Zeile 1, Spalte 1)

[4h

Einfügemodus

[?25h

Cursor anzeigen

[J

Vom Cursor bis zum Ende der Anzeige löschen

[0J

Vom Cursor bis zum Ende der Anzeige löschen

[1J

Vom Anfang der Anzeige bis zum Cursor löschen

[2J

Den gesamten Bildschirm löschen

[K

Vom Cursor bis zum Zeilenende löschen

[1K

Vom Zeilenanfang bis zum Cursor löschen (einschließlich)

[2K

Zeile löschen

[L

Fügen Sie eine Leerzeile ein

[#L

Insert # leere Zeilen

[l

Bewegen Sie den Cursor eine Registerkarte nach vorne

[#l

Bewegen Sie den Cursor # Tabs vorwärts

[4l

Overstrike-Modus

[?25l

Cursor ausblenden

[M

Eine Zeile löschen

[#M

Löschen # von Linien

[attr1;attr2;...m

Anzeigeattribute festlegen; siehe Tabelle der Attributwerte unten

[L

Ein Zeichen löschen

[#L

Löschen # Zeichen

[s

Cursorposition speichern (darf nicht verschachtelt sein)

[#S

Hochscrollen

[#T

Runterscrollen

[u

Gespeicherte Cursorposition wiederherstellen (oder oben links, wenn nichts gespeichert wurde)

[?5W

Setzen Sie alle 8 Spalten einen Tabulator

[?5;#W

Setzen Sie bei jeder #-Spalte einen Tabulator

[X

Ein Zeichen löschen

[#X

Löschen # Zeichen

[Z

Bewegen Sie den Cursor eine Registerkarte zurück

[#Z

Bewegen Sie den Cursor zurück # Registerkarten

[?7h

Zeilen am Bildschirmrand umbrechen

[?7l

Zeilen am Bildschirmrand nicht umbrechen

[21t

Senden Sie „^e]lTitle^e\“ (den Fenstertitel der Konsole) an die Konsoleneingabe

]0;TitelBEL

Setzen Sie den Konsolentitel auf „Titel“. BEL ist das ASCII-Zeichen 7

]4;...BEL

Farbe(n) ändern

]104;...BEL

Farben zurücksetzen)

[@

Fügen Sie ein Leerzeichen ein

[#@

Insert # Leerzeichen

8

Cursor wiederherstellen

7

Cursor speichern

[#;#;#...,~

Ton abspielen

c

zurücksetzen

D

Index

E

Nächste Zeile

H

Horizontaler Tabulatorsatz

M

Reverse-Index

 

 

Anzeigeattribute

 

Der m Escape-Sequenzen legen Anzeigeattribute fest. AAttributwerte, die für verwendet werden m Befehl sind:

 

0Alle Attribute auf die Standardwerte zurücksetzen
1Helle (hohe Intensität) Vordergrundfarbe
2Vordergrundfarbe mit normaler Intensität
4Hell (hohe Intensität) Hintergrund
5Hell (hohe Intensität) Hintergrund
7Video umkehren
8Verborgen (Vordergrund wird zum Hintergrund)
22Fett gedruckt (Vordergrund ist nicht intensiv)
24Der Hintergrund ist nicht intensiv
25Der Hintergrund ist nicht intensiv
27Normales Video
28Versteckt
30..37Vordergrundfarbe
40..47Hintergrundfarbe
90..97Helle Vordergrundfarbe
100..107Helle Hintergrundfarbe

 

Vordergrundcode

Hintergrundcode

Farbe

30

40

Schwarz

31

41

Rot

32

42

Grün

33

43

Gelb

34

44

Blau

35

45

Magenta

36

46

Cyan

37

47

Weiß

90

100

Gray

91

101

Leuchtendes Rot

92

102

Hellgrün

93

103

Helles Gelb

94

104

Leuchtendes Blau

95

105

Helles Magenta

96

106

Helles Cyan

97

107

Reines Weiß

 

Wenn Sie mehrere Attribute festlegen, kombinieren Sie diese in einem einzigen Befehl (mithilfe von ; Verkettungsoperator). Die Attributeinstellungen sind kumulativ und unabhängig von der Reihenfolge (außer Code). 0, zurücksetzen).

 

Beispiele

 

Hellroten Vordergrund einstellen, ohne den Hintergrund zu ändern:

 

 echo ^e[31;1m

 

Stellen Sie die Anzeige auf helles Cyan auf Blau ein und löschen Sie den Bildschirm:

 

  echo ^e[44;36;1m^e[2J

 

Richten Sie eine Eingabeaufforderung ein, die die Cursorposition speichert, Datum und Uhrzeit in der oberen Zeile in hellem Weiß auf Magenta anzeigt, dann die Cursorposition wiederherstellt und die Farbe auf helles Cyan auf Blau setzt und die Standardeingabeaufforderung anzeigt:

 

  prompt $e[s$e[1;1f$e[45;37;1m$e[K$d $t$e[u$e[44;36;1m$p$g