如何使用xset点亮Caps Lock指示灯?

use*_*115 9 keyboard xserver capslock

我写了一个小fetchmail脚本来检查远程服务器并在我收到新邮件时播放音频文件.当邮件可用时我还想点亮我的一个键盘灯,但我遇到了问题.我可以点亮滚动锁定灯:

/usr/bin/xset led named "Scroll Lock"
Run Code Online (Sandbox Code Playgroud)

但我不能以同样的方式点亮Caps Lock:

/usr/bin/xset led named "Caps Lock"
Run Code Online (Sandbox Code Playgroud)

我尝试用数字(1-6)指定键,但尽管改变了神秘的'LED掩码'(用'xset q'可见),我看到灯没有变化.

这是否因为我将Caps Lock键映射为另一个Ctrl而被打破?

在〜/ .Xmodmap中我得到了:

keycode 66 = Control_L
clear Lock
add Control = Control_L
Run Code Online (Sandbox Code Playgroud)

我不想切换大写锁,只是光.有没有办法做到这一点?

进一步说明

这是在x86 kubuntu清晰机器上,但我稍后将迁移到debian.我在python守护程序中以非特权用户身份运行脚本.以root身份运行相同的脚本将不起作用,因为fetchmail是为我自己配置​​为用户的.最后,这都是在tmux会话中运行的.

当我开始这个过程时,我读到了关于setleds但它似乎仅限于非x会话中的终端.

以root身份登录并运行'setleds -D + caps </ dev/tty7'可以正常工作,但运行'sudo setleds -D + caps </ dev/tty7'会给我一个权限被拒绝错误.

xset命令似乎非常适合我的应用程序,它只是拒绝更改Caps Lock指示灯.

dra*_*oot 12

在root下执行:

setleds -D +caps < /dev/console

哈金,但对我有用:)