A busca pela resposta
Depois de algum tempo brincando com os controles, encontrei uma postagem no antigo quadro de perguntas frequentes do i3: https://faq.i3wm.org/question/3747/enabled-multimedia-keys.1.html
Ele diz para colar o seguinte no arquivo .config do i3 (abaixo é uma versão levemente modificada, com algumas linhas removidas, que não são relevantes para essa pergunta em particular):
# 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
E também não funcionou, no entanto, o processo de encontrar a resposta está correto.
A verdadeira resposta
Para mim, pelo menos, o problema era que, depois de copiar essas linhas, as chaves não funcionavam. Depois de mais algumas pesquisas, descobri que os comandos de volume poderiam ser um pouco diferentes, usando os amixer
do PulseAudio pactl
.
No final, esses foram deixados assim:
# Media volume controls
bindsym XF86AudioMute exec amixer sset 'Master' toggle
bindsym XF86AudioLowerVolume exec amixer sset 'Master' 5%-
bindsym XF86AudioRaiseVolume exec amixer sset 'Master' 5%+
e eles começaram a trabalhar.
As teclas de reprodução eram um pouco mais complicadas. Deduzi que o .config informa qual comando é executado para executar a ação. Então eu tentei playerctl play-pause
no meu terminal. Claro que não funcionou, porque o playerctl não estava instalado . Depois de instalá-lo (usando sudo pacman -S playerctl
) esses comandos do teclado também funcionaram muito bem.
xev
comando era totalmente inútil. Se essa foi a saída do xev quando você pressionou essas teclas, sua resposta funcionaria. Tente de novo. Seu estado deve dizer algoXF86AudioNext
assim.