# エミュレーション

- DEC VT100 と VT200/300/400/500 の一部 [*1]
- VT100 では対応していない ANSI 制御シーケンス(カラー指定等)にも対応しています。
- xterm拡張の制御シーケンス(マウス対応や256色表示等)にも対応しています。
- Bold (強調)属性の文字に対して、bold スタイルのフォントの使用/不使用が選択でき、また色を付けて表示することができます。
- Blink (点滅)属性の文字は実際には点滅せず、色付き文字で表示されます。
- 倍角文字、VT52 モードには対応していません。
- Tektronix TEK4010 と上位機種の一部

[*1] DEC特殊フォント
LinuxのTUI(Text User Interface)などで使われる罫線は、DEC特殊フォント(Tera Special font)として処理します。 DEC特殊フォントは、<ESC>(0 という特殊なエスケープシーケンスで定義されており、 0140(0x60) 〜 0176(0x7f) に罫線でアサインされています。
参照: Q & A集

# 色

文字と背景の色について。

## 使用できる色モード

設定-ウィンドウの設定の次のチェックボックスで設定できます。 各モードは同時に使用することができます。

- 16 color mode (PC-Style) / 16色モード(PC形式)
- 16 color mode (aixterm) / 16色モード(aixterm形式)
- 256 color mode (xterm) / 256色モード(xterm形式)

すべてをdisableにすると8色モードとなります。

## 色の設定状態によって使用可不可が変化するシーケンス

### 8色モード

16色または256色モードのいずれかがenableの時は、1-7の色は少し暗い色となっています。

16色と256色モードのすべてがdisableの時に8色モードとなり、 1-7の色は明るい色(原色)となります。

- 文字色0-7 = SGR 30-37
- 背景色0-7 = SGR 40-47

### 16色モード(PC形式)

Blink属性はTera Term拡張です。

- 文字色0-7 = SGR 30-37
- 文字色8-15 = Bold属性 + SGR 30-37
- 背景色0-7 = SGR 40-47
- 背景色8-15 = Blink属性 + SGR 40-47

### 16色モード(aixterm形式)

16色モード(aixterm形式) が disalbe 時 SGR100 は 「文字色と背景色が デフォルトに戻る」となります。

- 文字色0-7,8-15 = SGR 30-37,90-97
- 背景色0-7,8-15 = SGR 40-47,100-107

### 256色モード(xterm形式)

- 文字色0-255 = SGR 38で色番号を指定
- 背景色0-255 = SGR 48で色番号を指定

## 16色モード(PC形式)詳細

Tera Termでは 文字色と背景色を同時に16色拡張するため、 文字色の拡張にBold属性、背景色の拡張にBlink属性を使用します。

背景色の拡張にもBold属性を使ってしまうと、 文字色15+背景色1のような指定が不可能になります。

TERMINFOに従って出力するアプリ(ncurses利用アプリ等)なら、 TERMINFOの端末エントリのsetabを次のようにすると利用可能となります。

      setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t5;4%p1%{8}%-%d%e48;5;%p1%d%;m,

## 色の変更について

16色のデフォルト値はTERATERM.INIで変更することができます。

カラーテーマを使って変更することもできます。

### デフォルト色の変更

- TERATERM.INI の [Tera Term] section
- ANSIColor key
- 最初から8色分が明るい色(原色,bright version)
- 次の8色分が最初の8色を少し暗くした色(黒は入れ替えない)

### 16/256色モード時

色番号0から15は、TERATERM.INIのANSIColorで設定した色の並びと異なっています。 前半7色と後半7色が入れ替わっています(黒とgrayは入れ替わりません)。

- 0は黒
- 1-7は少し暗い色
- 8はgray
- 9-15はBright(明るい)色、原色

### 8色モード時

色番号0から8は、TERATERM.INIのANSIColorで設定した最初の8色となります。

- 0-7は原色

### 色対応表

          TERATERM.INI            16/256 color              8 color
     0    "Black"                 "Black"                   "Black"
     1    "Bright Red"            "Red"                     "Bright Red"
     2    "Bright Green"          "Green"                   "Bright Green"
     3    "Bright Yellow"         "Yellow"                  "Bright Yellow"
     4    "Bright Blue"           "Blue"                    "Bright Blue"
     5    "Bright Magenta"        "Magenta"                 "Bright Magenta"
     6    "Bright Cyan"           "Cyan"                    "Bright Cyan"
     7    "Bright White"          "White"                   "Bright White"
     8    "Bright Black (Gray)"   "Bright Black (Gray)"
     9    "Red"                   "Bright Red"
    10    "Green"                 "Bright Green"
    11    "Yellow"                "Bright Yellow"
    12    "Blue"                  "Bright Blue"
    13    "Magenta"               "Bright Magenta"
    14    "Cyan"                  "Bright Cyan"
    15    "White"                 "Bright White"

## 反転表示

次のとき、反転表示となります。

- SGR 7
- DECSCNM set時
- マウス選択時

Tera Termでは前景色と背景色を入れ替えることで反転表示としています。 ((R,G,B)色の反転として(255-R,255-G,255-B)を使用している端末エミュレータもあります)

これは次のような理由からです

- Tera Termの主なエミュレーション対象はDEC VTシリーズ
- VTシリーズでカラーが扱えるVT525の動作と同じ
- VT525の動作になるべく合わせる