A busca pela resposta
Depois de algum tempo mexendo com os controles, eu encontrei um post no fórum do i3 FAQ: link
Ele diz para colar o seguinte no arquivo .config do i3 (abaixo está uma versão levemente modificada, com algumas linhas removidas, que não são relevantes para esta questão específica):
# 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
bindsym XF86AudioPause exec playerctl pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
E também não funcionou, mas o processo de encontrar a resposta está correto.
A resposta real
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 podem ser um pouco diferentes, usando amixer
em vez de pactl
do PulseAudio.
No final, ficaram 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 foram um pouco mais complicadas. Eu deduzi que o .config informa qual comando é executado para executar a ação. Então eu continuei a tentar playerctl play-pause
no meu terminal. Claro que não funcionou, porque playerctl não foi instalado . Depois de instalá-lo (usando sudo pacman -S playerctl
), esses comandos do teclado funcionaram bem também.