打开 Caps Lock LED,同时保持 Caps Lock 状态关闭

tra*_*tor 2 keyboard capslock

我现在有一个magicforce smart 68 kb,如果 Caps Lock LED 也能发光,它看起来会更好。

我什至在那个按钮上没有 Caps Lock 功能,因为我已经用左边的 Control 切换了它,并使它成为国际布局的组合键。我正在搜索并尝试一些东西,但到目前为止没有任何效果。

tl;dr:如何在不启用 Caps Lock 的情况下打开 Caps Lock LED?

Byt*_*der 7

您可以通过检查虚拟目录的内容来获取所有可控 LED 的列表/sys/class/leds

$ ls /sys/class/leds/
input5::capslock  input5::numlock  input5::scrolllock
Run Code Online (Sandbox Code Playgroud)

在我的系统上,只有三个键盘 LED。如果您的输出看起来不同,请确保在下面使用正确的名称!

每个文件都是一个指向包含该 LED 多个属性的目录的符号链接:

$ ls '/sys/class/leds/input5::capslock'
brightness  device  max_brightness  power  subsystem  trigger  uevent
Run Code Online (Sandbox Code Playgroud)

对我们来说唯一重要的是brightness文件内容。

  • 0 表示 LED 熄灭。
  • 1表示 LED 亮起。(假设max_brightness文件的值为 1 - 在特殊键盘上,LED 可能支持多个亮度值?)

我们通过检查brightness文件的内容(当前处于关闭状态)来获取当前 LED 状态:

$ cat '/sys/class/leds/input5::capslock/brightness' 
0
Run Code Online (Sandbox Code Playgroud)

要打开 LED,我们必须将该文件的内容设置为1

$ echo 1 | sudo tee '/sys/class/leds/input5::capslock/brightness'
1
Run Code Online (Sandbox Code Playgroud)

要在每次启动期间打开 LED,您可能需要将以下命令附加到您的/etc/rc.local脚本中。它将以 root 身份执行,因此我们不需要sudo tee但可以使用 Bash 输出重定向:

$ echo 1 > '/sys/class/leds/input5::capslock/brightness'
Run Code Online (Sandbox Code Playgroud)