Qtileでキーバインディングの設定をする
最近個人PCのデスクトップマネージャーをQtileに切り替えたので、
キーバインディングの設定を xmonad
のものから引っ越した。
その際にマルチメディアキーをきちんと拾ってくれるので、 こちらでも変わらずにキーボード経由でミュートのオン/オフなどを行っている。
その際の、 config.py
がこちら(一部抜粋)
from libqtile.command import lazy
from libqtile.config import Key
keys = [
# 既存のものは省略
# ミュートの切り替え
Key([], "XF86AudioMute", lazy.spawn("pactl set-sink-mute 0 toggle")),
# ボリュームを上げ下げする
Key([], "XF86AudioLowerVolume", lazy.spawn("pactl set-sink-volume 0 -5%")),
Key([], "XF86AudioRaiseVolume", lazy.spawn("pactl set-sink-volume 0 +5%")),
# 明るさを上げ下げする
Key([], "XF86MonBrightnessUp", lazy.spawn("light -A 5")),
Key([], "XF86MonBrightnessDown", lazy.spawn("light -U 5")),
]
修飾キーは不要なのだが、Key
生成の際にはデフォルト引数が無いため、
「一切使わない」ことを示すように []
を指定している。
そこから先は、「どのマルチメディアキーを押したら」「どんな動作をするか」を順に定義。
自機には、 PulseAudio
と light
をインストールしており、コマンドを直接実行している。