エスケープシーケンス
エスケープシーケンスは ESC 文字 '\033' で始まり何文字かで完結する制御コードです。
本ライブラリが動作するプログラム上や、シリアルポートの先にあるマイコンから制御文字をターミナルに投入することで、様々な画面制御(画面のクリア、カーソルの移動、色などの表示属性の変更)を行うことが出来ます。
以下に対応するエスケープシーケンスを記述します。表中の ESC はエスケープ文字 '\033'、イタリックの n や m は数字の入力です。
ITerm
で対応するエスケープシーケンスは、ANSIターミナル互換を目的としたものではありません。解釈や仕様には違いがあります。
エスケープシーケンス
意味
ESC [ n A
カーソルをn行上に移動する。(n省略時は1行)
ESC [ n B
カーソルをn行下に移動する。(n省略時は1行)
ESC [ n C
カーソルをn列右に移動する。(n省略時は1列)
ESC [ n D
カーソルをn列左に移動する。(n省略時は1列)
ESC [ n G
カーソルのカラムnの位置に移動する (n省略時は1カラム目=行頭)
ESC [ n ; m H
カーソル位置を行n列mに移動する。先頭位置の場合は1を指定します。n;mを省略した場合は左上ホームポジションにカーソルを移動します。
ESC [ n ; m f
ESC [ n ; m Hに同じ。
ESC [ 2 J
画面をクリアしてカーソルをホームポジションに移動する。
ESC [ n K
n=0 または省略 カーソル行より後ろを削除する
n=1 カーソル行より前を削除する
n=2 行全体を削除する
ESC [ n1 ; n2 ; ...; n4 m
描画属性の設定を行う。n1 .. n4 は任意数指定できる。
1 → 太字
7 → 反転
30 .. 37 → 文字色
40 .. 47 → 背景色
0 → 属性抹消