とけろぐ

Arch LinuxでThinkPadの音量調節ボタンを有効化

環境

ThinkPad X201i

Arch Linux

alsamixer,amixer,pulseaudio導入済み

WM(ウィンドウマネージャー)はspectrwm

TPB(ThinkPad Buttons)

とりあえずAURからtpbをyaourtでインストールしてみたが、音量調節ボタンはウンともスンともいわなかった。

ウィンドウマネージャーの設定ファイルにキーバインド追加

ウィンドウマネージャー:spectrwmの設定ファイル(/etc/spectrwm.conf)に以下のような文を追加した。ウィンドウマネージャーによって書き方は違うと思う。

program[RaiseVolume]    = amixer -q set Master 2dB+ unmu$
program[LowerVolume]    = amixer -q set Master 2dB- unmu$
program[Mute]           = pactl set-sink-mute 0 toggle
bind[RaiseVolume]       = XF86AudioRaiseVolume
bind[LowerVolume]       = XF86AudioLowerVolume
bind[Mute]              = XF86AudioMute

spectrwmの場合キーバインドは

1.プログラムhogeの定義

program[hoge]=どのような動作をするか(コマンド)

2.プログラムhogeのキーバインドの定義

bind[hoge]=そのプログラムに割り当てるキーバインド

というようにして設定する。

補足

・"XF86Audio?"という部分はThinkPadの音量調節ボタンの名前である。そこそこ最近のThinkPad Xシリーズであれば同じ名前なのではないかと思う。

・Raise/LowerVolume(音量上げ下げ)はamixerを、Mute(ミュート)はpulseaudioを使っている。これは私の設定の仕方では?、amixerの場合1度ミュートボタンを押した後は何度ミュートボタンを押してもミュートのまま変わらなくなってしまったのに対し、pulseaudioの場合ミュートボタンを押すたびにミュートのオンオフを切り替えられたからだ。ならばすべてpulseaudioを使えば良かったのではないかという気もするが、そこは気にしない。

この後spectrwmを再起動したらThinkPadの音量調節ボタンが使えるようになった。めでたしめでたし。