カーソルテーマ
ディスプレイサーバーには GUI のナビゲーションや操作を楽にするカーソルテーマが付属しています。ディスプレイサーバーにカーソルテーマは含まれていますが、他のカーソルテーマをインストールして選択することもできます。
目次
インストール
パッケージを使ってインストールするか、適当なディレクトリにダウンロード・解凍してインストールします。
パッケージ
カーソルテーマは公式リポジトリと AUR からインストールできます:
- 公式リポジトリ — "xcursor-" 検索。
- AUR — "cursor" 検索。
手動
カーソルテーマが公式リポジトリや AUR にない場合、手動で追加することができます。カーソルテーマをダウンロードすることができるウェブサイトは星の数ほどあります。ダウンロードしたら、icons ディレクトリに配置して下さい (カーソルはアイコンテーマと一緒に配布されていることがあります)。
カーソルテーマを入手できるウェブサイト:
ユーザー個別にインストールする場合、~/.icons/
ディレクトリを使います。次のコマンドを使えば大抵のアーカイブを展開できます:
$ bsdtar xvf foobar-cursor-theme.tar.gz --directory ~/.icons
カーソルテーマのディレクトリは theme-name/cursors
です。例: ~/.icons/theme/cursors/
。展開したファイルがこのディレクトリを含んでいることを確認して下さい。
インストールしたカーソルテーマは次のコマンドで確認できます:
find /usr/share/icons ~/.icons -type d -name "cursors"
パッケージに index.theme ファイルが含まれているときは、そのファイルの中に "Inherits" 行があるかどうか確認してください。もしその行があれば、システムにその名前で継承されるテーマが存在しているか確認してください (必要なら名前を変更してください)。
設定
カーソルテーマを設定する方法は複数あります。
XDG の仕様
この方法は X11 と Wayland 両方のカーソルテーマに適用されます。
ユーザー個別に設定する場合、~/.icons/default/index.theme
を作成・編集してください。システム全体に設定する場合、/usr/share/icons/default/index.theme
を編集します。
テーマのディレクトリ名を定義:
~/.icons/default/index.theme
[icon theme] Inherits=theme-name
次に、カーソルディレクトリにシンボリックリンクを作成します (システム全体のテーマの場合):
ln -s /usr/share/icons/theme-name/cursors ~/.icons/default/cursors
再ログインすると変更が適用されます。
LXAppearance
LXAppearance は #XDG の仕様 で指定されている index.theme
ファイルを作成することでデフォルトカーソルを設定します。
デスクトップ環境
デスクトップ環境は XSETTINGS プロトコル を使います。通常は設定デーモンによって実装されます。オンザフライでカーソルを変更することができますが、適用されるテーマがアプリケーションによって異なってしまう可能性があります。手動でカーソルテーマを変更する方法は #XDG の仕様 を見て下さい。
GNOME
GNOME でテーマを変更するには gnome-tweak-tool[リンク切れ: 置換パッケージ: gnome-tweaks] を使用するか、次のコマンドで直接設定します:
gsettings set org.gnome.desktop.interface cursor-theme theme-name
カーソルのサイズを変更するには (テーマによりますが選べるサイズは 24, 32, 48, 64 です):
gsettings set org.gnome.desktop.interface cursor-size theme-size
MATE
MATE では mate-control-center または gsettings を使います。テーマを変更するには:
gsettings set org.mate.peripherals-mouse cursor-theme theme-name
サイズを変更するには:
gsettings set org.mate.peripherals-mouse theme-size
X resources
ローカルでカーソルテーマに名前を付けるには、~/.Xresources
ファイルに以下を加えて下さい:
Xcursor.theme: cursor-theme
カーソルテーマを正しくロードするには ~/.Xresources
がウィンドウマネージャによって呼び出される必要があります。呼び出されない場合、次のコマンドを ~/.xinitrc
か .xprofile に置くことで強制的にロードするようにできます:
$ xrdb ~/.Xresources
カーソルテーマが複数のサイズをサポートしている場合、任意で次の行を ~/.Xresources
に追加できます:
Xcursor.size: 16
サポートされているカーソルサイズがわからない場合は、この設定を使わずに X を起動してカーソルサイズを自動的に選ばせるようにしてください。詳しくはウィンドウマネージャのドキュメントを参照してください。
環境変数
環境変数を使って単一のアプリケーションでテーマを設定して、一時的に試してみることができます:
$ XCURSOR_THEME=SomeThemeName xclock
カーソルテーマが複数のサイズをサポートしている場合は XCURSOR_SIZE は任意です。
ディスプレイマネージャ
ディスプレイマネージャの中でもカーソルテーマを設定することはできますが、ユーザーセッションにはカーソルテーマが持ち越されないことがあるので注意してください。
GDM
GDM#カーソルテーマの変更を見てください。
トラブルシューティング
欠けているカーソルへのリンクを作成
テーマにカーソルが欠けているとき、アプリケーションがデフォルトのカーソルを使いつづけるかもしれません。こういった場合は、欠けているカーソルへのリンクを追加して修正できます。例:
$ cd ~/.icons/foobar/cursors/ $ ln -s right_ptr arrow $ ln -s cross crosshair $ ln -s right_ptr draft_large $ ln -s right_ptr draft_small $ ln -s cross plus $ ln -s left_ptr top_left_arrow $ ln -s cross tcross $ ln -s hand hand1 $ ln -s hand hand2 $ ln -s left_side left_tee $ ln -s left_ptr ul_angle $ ln -s left_ptr ur_angle $ ln -s left_ptr_watch 08e8e1c95fe2fc01f976f1e063a24ccd
上のリンクが問題を解決しないときは、テーマに欠けているカーソルを /usr/share/icons/whiteglass/cursors
で探して、同じようにリンクを作成してください。
欠けているカーソルを補う
プログラムによってはカスタムカーソルを設定するものがあります。例えば、rdesktop は Microsoft Windows コンピュータに接続してリモートマシンから取得したカーソルを使います。プロトコルの制限によって変換品質が悪く、それによってカーソルが見づらいことが多々あります。
カーソルを同一 (または他の) カーソルテーマで置き換えることで解決できます。それには、画像のハッシュを取得する必要があります。アプリケーションを起動する前に XCURSOR_DISCOVER
環境変数を設定してください:
$ XCURSOR_DISCOVER=1 rdesktop ...
カーソルが設定されると、以下のような表示がされます:
Cursor image name: 24020000002800000528000084810000 ... Cursor image name: 7bf1cc07d310bf080118007e08fc30ff ... Cursor hash 24020000002800000528000084810000 returns 0x0
Xcursor が欠けているカーソルを探すとき、検索パスには ~/.icons/default/cursors
が含まれています。まず、このディレクトリを作成します (存在しない場合):
$ mkdir -p ~/.icons/default/cursors
次にハッシュから画像にリンクを作成します。Vanilla-DMZ
カーソルテーマの left_ptr
画像を使用する例:
$ ln -s /usr/share/icons/Vanilla-DMZ/cursors/left_ptr ~/.icons/default/cursors/24020000002800000528000084810000
アプリケーションを再起動するとすぐに変更が適用されます。アプリケーションを起動するときに特別な操作は必要ありません。
rdesktop
以下は Windows 7 を動かしているリモートマシンに接続するときに rdesktop が使用する Microsoft Windows の一般的なカーソルです。残念ながら、アニメーションカーソルは毎フレーム送信されるため上書きするのが難しく、毎フレームごとにマッピングが必要になります。
$ ln -s /usr/share/icons/$THEME/cursors/00000000017e000002fc000000000000 ~/.icons/default/cursors/xterm $ ln -s /usr/share/icons/$THEME/cursors/00000093000010860000631100006609 ~/.icons/default/cursors/right_ptr $ ln -s /usr/share/icons/$THEME/cursors/01e00000201c00004038000080300000 ~/.icons/default/cursors/plus $ ln -s /usr/share/icons/$THEME/cursors/24020000002800000528000084810000 ~/.icons/default/cursors/left_ptr $ ln -s /usr/share/icons/$THEME/cursors/6ce0180090108e0005814700a0021400 ~/.icons/default/cursors/left_ptr_watch $ ln -s /usr/share/icons/$THEME/cursors/d2201000a2c622004385440041308800 ~/.icons/default/cursors/hand $ ln -s /usr/share/icons/$THEME/cursors/fc618c00da110f0034fd0e004e082400 ~/.icons/default/cursors/watch
形が X のデフォルトカーソルの変更
デフォルトカーソルを left_ptr に設定しないウィンドウマネージャや、Xlib の代わりに XCB が使われるウィンドウマネージャ (awesome など) では X の形をしたカーソルが表示されます。
以下を ~/.xinitrc
や xsession あるいはウィンドウマネージャのスタートアップ設定に追加することで修正できます (例えば bspwm の bspwmrc):
$ xsetroot -cursor_name left_ptr
詳しくは Awesome wiki を見てください。
参照
- man Xcursor — X のカーソルに関する詳細情報 (サポートされているディレクトリ、フォーマット、互換性など)。