功能键更改了我的 Acer Aspire One 上的错误背光文件

功能键更改了我的 Acer Aspire One 上的错误背光文件

每当我按下功能键来更改笔记本电脑的屏幕亮度时,它都会修改文件中存储的值/sys/class/backlight/acer-wmi/brightness,但我的屏幕保持不变。经过一些实验,我发现手动修改存储在中的值/sys/class/backlight/psb-bl/brightness会立即改变我的屏幕亮度。

我怎样才能让功能键改变acer-wmi文件,或者让背光从psb-bl文件中获取亮度?

一些可能有用的细节:

  • 我正在运行 Lubuntu 15.10。
  • 我的笔记本电脑是 Acer Aspire One。
  • 我的/etc/default/grub

    GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=Linux acpi_backlight=vendor"
    GRUB_CMDLINE_LINUX=""
    

    如果我删除acpi_osi=Linux acpi_backlight=vendor,同样的问题仍然存在(有一个小小的区别:acer-wmi中的链接/sys/class/backlight被更改为不同的名称 - 我认为是acpi_video0)。

  • xbacklight在终端运行结果为No outputs have backlight property
  • 当尝试使用功能键改变亮度时,屏幕角落会出现一个条,显示acer-wmi文件的当前值。
  • acer-wmi范围是0到9,psb-bl范围是0到100。

答案1

在 lubuntu 中你可以使用开箱窗口管理器创建按键和动作之间的绑定,例如执行编辑您的 shell 脚本/sys/class/backlight/psb-bl/brightness。在 rc.xml 文件中创建一个新绑定,其中包含按键绑定的映射:

<keybind key="key code">
      <action name="Execute">
        <execute>~/brightnessDown.sh</execute>
      </action>
 </keybind>

showkeys您可以使用或等工具来验证密钥代码xev。文件内容brightnessDown.sh应如下所示:

backlight=`cat /sys/class/backlight/psb-bl/brightness`;
if [ $backlight -gt 1 ]; then
       backlight=$((backlight - 1));
       echo $backlight > /sys/class/backlight/psb-bl/brightness;
fi

相关内容