X Window System 資料一覧
色が表示されない
2007/7/29更新
以下のような原因が考えられる。
原因1
色の指定をしていない。
対策
カラーディスプレイを使用していてもリソースファイル(.Xdefaults等)で色の指定をしていないと色は表示されない。
それぞれのファイルの設定をチェックすること。
原因2
色の名前を間違えている。
対策
色を名前で指定する場合はスペルミスに注意すること。
色の名前は/usr/X11R6/lib/X11/rgb.txtや/usr/lib/X11/rgb.txt等に定義されている。
たとえばxtermでは次のようなエラーが表示される。
% xterm -fg White -bg DrakSlateGray & Warning: Color name "DrakSlateGray" is not defined
この場合にはDarkSlateGrayが正しい綴りである。
原因3
Xサーバが扱える色数の上限を超えてしまった。
例えば次のようなメッセージを出して色が表示されない場合がある。
% xcolors Warning: Cannot allocate colormap entry for "DarkOrangell" xcolors: Not enough room in color map. To see colors after this, use the -start option to name a starting color.
対策
これはXサーバが扱える色の個数以上に色を使用しようとしたときに生じる。
一般的なXサーバは256色までしか同時に色を表示することができない。
256という数はカラーマップのエントリ数であり、Xサーバはクライアントから色表示の要求を受けるとカラーマップから1色につき1つのエントリを割り当てる。
エントリの割り当ては要求のあった順番であり、エントリがいっぱいになるとXサーバはそれ以上の色の割り当てを拒否する。
このため色が表示されなくなる。
このような場合には色を沢山使っているクライアントを終了させ、カラーマップのエントリを解放する必要がある。