XF86MonBrightnessUp / XF86MonBrightnessDown特殊键不起作用


12

我正在尝试启用一些多媒体键,而那些音量键确实起作用。F5F6,增加/减少的选项不起作用,我不知道为什么。当我在终端中运行时:

xbacklight +10

我可以看到效果。当我尝试绑定的特殊键(设置为~/.config/i3/config)时:

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

显然,媒体密钥必须与fn密钥结合使用。但是,我看不到效果。有什么办法吗?


1
您确定关键符号是XF86MonBrightness(Up|Down)吗?如:“您检查过xev吗?” 虽然这些关键符号确实存在,但也有XF86KbdBrightness(Up|Down)
阿达芬

1
我也有这个问题,可能是您打算使用发现密钥xmodmap -pke,然后以某种方式将其应用到i3配置中。
warsong

Answers:


7

这是一个古老的问题,但答案可能会帮助其他人。我在i3wm笔记本电脑上重新安装新系统时遇到了问题,无论出于何种原因,XF86MonBrightnessUp/Down都没有注册我的密钥(我已通过进行了检查xev)。我最终要做的是创建acpi与按下的键相对应的动作和事件。

以下是我/etc/acpi/actions/etc/acpi/events中分别定义的动作/事件:

动作

/etc/acpi/actions/bl-down.sh

#!/bin/sh

bl_device=/sys/class/backlight/acpi_video0/brightness
echo $(($(cat $bl_device)-1)) | sudo tee $bl_device

/etc/acpi/actions/bl-up.sh

#!/bin/sh

bl_device=/sys/class/backlight/acpi_video0/brightness
echo $(($(cat $bl_device)+1)) | sudo tee $bl_device

大事记

/ etc / acpi / events / bl-down

event=video/brightnessdown BRTDN 00000087 00000000
action=/etc/acpi/actions/bl-down.sh

/ etc / acpi / events / bl-up

event=video/brightnessup BRTUP 00000086 00000000
action=/etc/acpi/actions/bl-up.sh

您可以通过acpi_listen在终端中使用,然后按相关的组合键(例如,对于我来说,使用Fn +向下箭头键来降低亮度)来验证您的亮度上/下acpi事件代码。

最后,不要忘记重启acpidsudo /etc/init.d/acpid reload

注意:您的背光设备可能被定义在与我不同的位置/sys/class/backlight/acpi_video0。做一些戳。


1
这有帮助!如果有其他人遇到此问题并正在使用SELinux运行安装程序,则需要通过audit2allow或其他工具允许给定脚本。
Sheena Artrip '19年

1

我在Dell XPS上遇到了与Arch相同的问题。安装xf86-video-intel软件包将其固定。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.