2008/07/03 (Thu)
端末の256色拡張の色(パレット)について
http://www.frexx.de/xterm-256-notes/
から入手できるテストスクリプト256colors2.plを(256色拡張に対応した)色々な端末エミュレータ上で実行してみたところ、システムカラー(16色部分)を除いた部分(カラーキューブ色(216色)とグレイスケール色(24色))は、どの端末エミュレータを使用しても同じ色になっている*1ことが分かったように見えた。
256色パレット上の色の変更と既定のパレットに関する追記(いわもとこういち氏に感謝)
(2010/9/14)256色パレット上の色(番号と色の対応)は可変で、その色はパレット色変更のためのシーケンスによって色番号ごとに行えるということが分かった。指定できる色は24bitカラー(16,777,216色)の任意の色で、この中から240色(16番-255番)が自由に選択できることになる。
パレット上のそれぞれの色の変更は以下のいずれかの形によって行い、即座に画面表示に反映される。下はコマンドによる方法だが、256colors2.plの前半のようにスクリプトの中で変更することもできる。
色を変更した後に256colors2.plを実行するとxtermの既定のパレットと同じものにパレットが書き換えられてしまうため、これを用いて色の確認をしたい場合は先頭の行と「display the colors」のコメントから後ろの行を別ファイルに保存してそれを実行するとよい。
(色成分ごとの指定) bash/zsh$ echo -e "\e]4;[色番号(16-255)];rgb:[赤成分の16進表記]/[緑成分の16進表記]/[青成分の16進表記]\a" (#付きの16進表記による指定) bash/zsh$ echo -e "\e]4;[色番号(16-255)];#[赤成分の16進表記][緑成分の16進表記][青成分の16進表記]\a"
bash,zsh以外のシェル(dash含む)では外部コマンド(/bin/echo)に置き換えると同様に処理することができる。
例として、パレットの17番の色を#FECCF0にしたい場合は
bash/zsh$ echo -e "\e]4;17;rgb:fe/cc/f0\a" (もしくは) bash/zsh$ echo -e "\e]4;17;#feccf0\a"
となる。
256色対応端末の既定のパレットは本記事の冒頭に書いたように一般的には端末によらずxtermの既定のパレットと同じものだが、異なる可能性はある。その場合は256colors2.plを実行するとこれに合わせることができる。
以下は以前の内容となるが、これはxtermの既定のパレットに関する内容となる。
色の段階について
カラーキューブ色
「端末の256色拡張の覚え書き」で書いたように、赤/緑/青の各成分がそれぞれ6段階で変更できる形となっているのだが、その色成分は、
- 0x00
- 0x5F
- 0x87
- 0xAF
- 0xD7
- 0xFF
の6段階となっている。重要なのは、間隔が赤/緑/青の成分に対して均等ではないこと(もし均等なら「0x00」「0x33」「0x66」...「0xFF」となるはず)。
例えば、「#5FAFD7」という色は存在するが「#99CC33」という色は存在しない。
グレイスケール色
赤/緑/青の各成分は同じ値をとり、その値は、低いものから順に
0x08 0x12 0x1C 0x26 0x30 0x3A 0x44 0x4E 0x58 0x62 0x6C 0x76 0x80 0x8A 0x94 0x9E 0xA8 0xB2 0xBC 0xC6 0xD0 0xDA 0xE4 0xEE
となっている。実際のグレイスケール色は、上記24色とカラーキューブから赤/緑/青の成分が同じ6色*2とを合わせたものとなる。
256colors2.plの出力に合わせた色一覧
レイアウトを上の出力に合わせた16進表記の色コードの一覧表を作成した。カラーキューブ色は左のものから順に1つのテーブルにまとめている(後ろ/右のテーブルほど赤成分が強い)。
カラーキューブに含まれるグレイスケール色(無彩色)は強調表示にした。
グレイスケール色は、都合により、6色ずつで折り返している。
カラーキューブ色
グレイスケール色(6色ずつで折り返し)
関連記事:
- 端末の256色拡張の覚え書き
- 256色拡張の端末で色変更を比較的簡単に行うための変数を定義するスクリプトを作成
- lsコマンドのカラー出力で256色拡張の色を使用する
- 端末の256色パレットをGTK+のGUI上で表示できるツールを作成
- 端末の256色パレットをGUI上で確認できるツールを更新(ボタンを改善・クリップボードに色の情報を記憶)
まとめドキュメント:
関連URL:
- http://www.frexx.de/xterm-256-notes/ - 256色拡張に関する情報(英語)
- wikipedia:RGB
- 163 http://d.hatena.ne.jp/goth_wrist_cut/20090812/1250063695
- 89 http://nippondanji.blogspot.com/2011/11/less.html
- 74 http://d.hatena.ne.jp/namutaka/20091229/1262086043
- 70 http://kakurasan.ehoh.net/summary/palette.color256.term.html
- 19 http://d.hatena.ne.jp/
- 18 http://b.hatena.ne.jp/entry/d.hatena.ne.jp/kakurasan/20080703/p1
- 15 http://nippondanji.blogspot.com/2011/11/less.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/xUmE+(漢(オトコ)のコンピュータ道)&utm_conte
- 12 http://wp.serpere.info/archives/2470
- 11 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&hs=Wyy&q=C言語 色一覧&btnG=検索&lr=lang_ja
- 10 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=DBJP,DBJP:2006-40,DBJP:ja&q=C#+色一覧









