読者です 読者をやめる 読者になる 読者になる

Folioscope

プログラミング/Unix系/デザイン/CG などのメモがもりもり

ターミナルのANSIカラーの分布

ターミナルとANSIエスケープコードについて調べてみると,どうやら最近の進んだターミナルエミュレータは,256色も出せるらしい. そこでターミナルの16色モード,256色モードのカラーパレットをまとめた. なお,16色/256色のモードを,それぞれxterm16/xterm256などとと見聞するが,正式名称は不明.

xterm16

ターミナルで色を付けるためにANSIで規定されている16色. ナウくないターミナルでも,とりあえずの16色は出せるはずだ.

おそらく色の決め方は,白と黒,そして色の三原色・光の三原色の計8色を,さらにNormalとLightに分けて,全部で16色. 色の決め方は真っ当であるが,なぜこのような並びになっているかは不明.

Black Red Green Yellow Blue Magenta Cyan White
Normal 0 1 2 3 4 5 6 7
Bright 8 9 10 11 12 13 14 15

xterm256

ちょっと進んだxtermは256色だっておてのもの. 色の割り当ては次のとおりだ.

0-15 ANSI Colors互換のカラーパレットの領域
16-231 R,G,Bをそれぞれ6段階を表した,6x6x6=216 色の領域
232-255 グレースケールを24段階で表した,24色の領域

おわりに

xterm16/xterm256のsvgカラーチャートと,カラーテーブルをYAML形式でまとめ親切な人がいました. https://gist.github.com/jasonm23/2868981

なお,ANSIのエスケープコードを組み合わせて,ターミナル上にイラストや色彩豊かな文字を表示することを, ANSI Artなどと言ったりするらしいです.