色名とは、色を指定するテキスト(通常は文字列)のことです。‘black’、‘white’、‘red’などの記号名も使用可能です。定義済みの名前の一覧を確認するには M-x list-colors-display を使用してください。また、‘#rgb’や‘RGB:r/g/b’のような形式で色を数値指定することもできます。ここで r は赤成分を、g は緑成分を、b は青成分を指定します。r には1桁、2桁、3桁、または4桁の16進数を使用できます。その場合、すべての g および b にも同数の16進数を使用する必要があり、合計で3桁、6桁、9桁、または12桁の16進数となります。(色の数値RGB指定に関する詳細については、X Window Systemのドキュメントを参照してください。)
これらの関数を使用すると、どの色名が有効であるか、またそれらがどのような見た目であるかを確認できます。場合によっては、値は後述するように選択中のフレームに依存します。「選択中のフレーム」という用語の意味については、入力フォーカスを参照してください。
色名のユーザー入力を補完付きで読み取るには、read-color を使用してください(read-color を参照)。
この関数は、色名に意味があるかどうかを判定します。意味がある場合は t を、そうでない場合は
nil を返します。引数 frame
はどのフレームの表示について問い合わせるかを指定し、frame が省略されているか、あるいは nil が指定されている場合は、選択中のフレームが使用されます。
なお、これだけでは、使用しているディスプレイが実際にその色をサポートしているかどうかは分かりません。Xを使用している場合、あらゆる種類のディスプレイで定義済みの任意の色を指定でき、何らかの結果が得られます—通常は、それに最も近い色が表示されます。フレームが特定の色を実際に表示できるかどうかを確認するには、color-supported-pを使用してください(後述)。
この関数は、フレーム frame(デフォルト、選択中のフレーム)で定義され、サポートされている色名のリストを返します。frame が色をサポートしていない場合、値は nil
となります。
frame が実際に色 color(あるいは少なくともそれに近い色)を表示できる場合は、t が返されます。frame が省略されているか、あるいは
nil の場合は、この判定は選択されたフレームに適用されます。
端末によっては、前景色と背景色に異なる色セットをサポートしているものがあります。background-p
が nil でない場合は、color
を背景色として使用できるかを問い合わせていることになり、そうでない場合は、前景色として使用できるかを問い合わせていることになります。
引数 color は有効な色名である必要があります。
color が frame
のディスプレイで定義されたグレーの階調である場合、t を返します。frame が省略されているか、または nil
である場合、この問いは選択されたフレームに適用されます。color が有効な色名でない場合、この関数は
nil を返します。
この関数は、frame 上で color が理想的にどのような見た目であるべきかを示す値を返します。color が定義されている場合、その値は赤、緑、青の量を表す3つの整数のリストとなります。各整数は原則として 0 から 65535 までの範囲ですが、ディスプレイによってはこの全範囲を使用しない場合があります。この3要素のリストは、その色の RGB値 と呼ばれます。
color が定義されていない場合、値は nil
となります。
(color-values "black")
⇒ (0 0 0)
(color-values "white")
⇒ (65535 65535 65535)
(color-values "red")
⇒ (65535 0 0)
(color-values "pink")
⇒ (65535 49344 52171)
(color-values "hungry")
⇒ nil
frameの表示に対する色値が返されます。frameが省略されているか、またはnilの場合は、選択されたフレームの表示に対する情報が返されます。フレームが色を表示できない場合は、値はnilとなります。
この関数は color-values と同じ動作をしますが、色値を 0.0 以上 1.0
以下の浮動小数点数として返します。
この関数は、RGBトリプレット rgb で指定された色が、暗い背景よりも白い背景に対して視認性が高い場合に
non-nil を返します。引数 rgb は
(r g b)
形式のリストである必要があり、各要素は 0.0 から 1.0 までの範囲(両端を含む)の浮動小数点数である必要があります。color-name-to-rgb を使用すると、色名をこのようなリストに変換できます。