web-dev-qa-db-ja.com

メディアキーをi3で使用するにはどうすればよいですか?

私はGnomeからManjaroのi3に移動しました。ウィンドウマネージャー、端末の色などの設定はほぼ完了です。しばらくして、音楽を聴くことに決めました。数分後、音量キーと再生キーが機能しないことに気付きました。

私はRazer Blackwidow Stealth 2014キーボードを持っているので、これらのメディアキーは実際にはファンクションキーと一緒になっています。例:再生/一時停止がオン F6、それを押したときにメディアキーとして機能します Fn のようなキー Fn + F6

8
Renato Oliveira

答えを探す

コントロールをいじくり回して、古いi3の投稿を見つけましたFAQ board: https://faq.i3wm.org/question/3747/enabling -multimedia-keys.1.html

次のコードをi3の.configファイルに貼り付けると表示されています(以下は、若干変更されたバージョンで、この特定の質問には関係のないいくつかの行が削除されています):

# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound

# Sreen brightness controls
bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness

# Media player controls
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioPause exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous

そして、それもうまくいきませんでしたが、答えを見つけるプロセスは正しいです。

本当の答え

少なくとも私にとっては、これらの行をコピーした後、キーが機能しないという問題がありました。さらに調査した結果、ボリュームコマンドが少し異なる可能性があることがわかりました。PulseAudioのamixerの代わりにpactlを使用します。

最後に、それらはこのように残されました:

# Media volume controls
bindsym XF86AudioMute exec amixer sset 'Master' toggle
bindsym XF86AudioLowerVolume exec amixer sset 'Master' 5%-
bindsym XF86AudioRaiseVolume exec amixer sset 'Master' 5%+

そして彼らは働き始めた。

再生キーはもう少しトリッキーでした。私は.configがアクションを実行するために実行されるcommandを指示していると推定しました。次に、端末でplayerctl play-pauseを試してみました。もちろん、playerctlがインストールされていなかったため、機能しませんでした。インストール後(Sudo pacman -S playerctlを使用)、これらのキーボードコマンドも問題なく動作しました。

9
Renato Oliveira

私は0を1つの例で置き換えました:

Pulse Audioコントロール

bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 1 + 5%#音量を上げるbindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 1 -5%#音量を下げるbindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 1 toggle#音を消す

オーディオデバイスの番号を確認するには、pavucontrolを開き、出力デバイスをクリックします。

1
help dude

pactl--から分離するにはset-sink-...が必要であり、ヘッドフォンを使用する場合は@DEFAULT_SINK@を使用するほうが一貫していることがわかりました。

# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl -- set-sink-volume @DEFAULT_SINK@ +5% #increase sound volume
bindsym XF86AudioLowerVolume exec --no-startup-id pactl -- set-sink-volume @DEFAULT_SINK@ -5% #decrease sound volume
bindsym XF86AudioMute exec --no-startup-id pactl -- set-sink-mute @DEFAULT_SINK@ toggle # mute sound
1
Luke Murray