X Window Systemのマウスカーソルについて
X Window Systemのマウスカーソルの名前のつけ方や、カーソルテーマについてはよくわからないことが多いので一通り調べてみた。
まず、XcursorのManpageのThemeセクションにXcursorライブラリがマウスカーソルを取得する方法が書かれている。
Xcursorライブラリは「~/.icons/カーソルテーマ名/cursors/」や「/usr/share/icons/カーソルテーマ名/cursors/」以下を調べて、決め打ちされたファイル名でカーソルを取得する。*1ファイル名は、libXcursor-1.1.9/src/library.cに一覧がある。対応するカーソル画像の見本はGDK Cursorsで見られる。
また、上記の基本的なカーソルに加えて、GTK+ 2.8以降で追加されたドラッグアンドドロップ関係のカーソル、CSSで追加されたカーソルもある。CSSで必要になるカーソルは当然ブラウザ上で表示されるが、Mozilla Firefoxはこれらの一部を取得するのに、CSSで示された名前ではなく、謎の16進数の羅列(hash)を使う。これについては後述する。
これらのカーソルの内の一部は、freedesktop.orgのCursor conventions specificationに、どの様な場面で使われるべきか文章に表されている。(ただしこの文書は非常に古く、D&D関係やCSSのカーソルのすべてはカバーできていない。というか、こちらが進まないので、やむなく無秩序に規格が建て増しされ、現在の混沌状態にあると思われる。)
実際にカーソルテーマを作る際に、どういった名前のカーソルを用意し、リンクをどうはればよいかは、ComixCursorsのソースに含まれるlink-cursors.bashを読むと良い。ただしVersion 0.5.1では、Mozilla関係は一部間違ったり記述が足りない部分がある。
次回に続く。