sxhkd:タイル型WMユーザー必見の軽量ホットキーデーモン

sxhkd

sxhkd(Simple X HotKey Daemon)についての概要と詳細

sxhkdとは

sxhkd(Simple X HotKey Daemon)は、X11環境で動作する軽量なホットキー管理デーモンです。主にbspwmherbstluftwmなどのタイル型ウィンドウマネージャと組み合わせて使われ、キーボードショートカットからコマンドを実行する仕組みを提供します。設定は1つのシンプルなテキストファイルに書かれ、Xmodmapやxbindkeysよりも直感的かつ柔軟な運用が可能です。

主な用途

  • ウィンドウ操作やアプリ起動のショートカット作成
  • 音量調整や画面輝度のキーバインド設定
  • タイル型WMと連携したレイアウト管理
  • 任意のシェルコマンドをホットキーに割り当て

特徴

  • 非常に軽量で高速
  • 設定ファイルが簡潔・柔軟・再読込可能
  • コマンドの前後にプリフィックスキーやモードの切替も可能
  • 複雑な修飾キーの組み合わせにも対応

インストール方法

Debian/Ubuntu系 
$ sudo apt install sxhkd

Fedora系 
$ sudo dnf install sxhkd

基本的な構成ファイル(~/.config/sxhkd/sxhkdrc)

sxhkd の設定ファイルはシンプルな「ホットキー → 実行コマンド」のペアで構成されます。

# アプリ起動例
super + Return
    alacritty

super + b
    firefox

# ウィンドウ移動例(bspwm向け)
super + {h,j,k,l}
    bspc node -f {west,south,north,east}

# 音量調整
XF86AudioRaiseVolume
    pamixer -i 5

XF86AudioLowerVolume
    pamixer -d 5

XF86AudioMute
    pamixer -t

構文の特徴

  • super, alt, control などの修飾キーを記述可能
  • {a,b,c} 形式で複数キーの一括指定が可能
  • 行頭がキー定義、次のインデント付き行が実行コマンド

起動方法

セッションやウィンドウマネージャの起動スクリプト(例:~/.xinitrc~/.config/bspwm/bspwmrc)に以下を記述します:

sxhkd &

設定の再読み込み

設定ファイルを変更した後は、次のコマンドで再読込できます:

pkill -USR1 -x sxhkd

よく使われる活用例

  • プリフィックスキー対応: super + ctrl + {h,j,k,l} など
  • モード切替式キーバインド: sxhkdを拡張して一時的に別モードへ移行可能
  • メディアキー制御: 音量・輝度・再生/一時停止など
  • クリップボード操作: xclipやwl-copy/wl-pasteと併用

他ツールとの違い

ツール特徴
sxhkd軽量・設定がシンプル。タイル型WMに最適
xbindkeysGUIツールあり、設定がやや煩雑
xmodmap低レベルのキーリマッピング。用途が異なる

まとめ

sxhkdは、軽量なX11環境やタイル型ウィンドウマネージャと非常に相性の良いホットキーデーモンです。設定は非常にシンプルでありながら、複雑なキーバインドやモード切替も可能です。最小限のリソースで最大限の操作性を引き出す、Linux上級者にとっては必携のツールと言えるでしょう。