将大写锁定设置为更高级别

Posted

技术标签:

【中文标题】将大写锁定设置为更高级别【英文标题】:Setting Caps Lock to a higher level 【发布时间】:2013-01-10 19:49:56 【问题描述】:

我正在运行 Linux,并使用了调用 xmodmap 的脚本(以及其他一些东西)将我的 Caps_Lock 重新映射为 BackSpace,这受到 Colemak 布局的启发。

不过,有时,当我切换布局时,锁会打开。为了帮助解决此问题并允许我在需要时使用锁,我想将其移至第 3 级 (Caps Lock = BackSpace; ISOLevel3Shift/AltGr+Caps Lock=Caps_Lock)。

但看起来没有任何简单的方法可以做到这一点——除非我包含remove Lock = Caps_Lock,即使它也设置为 BackSpace,密钥也会更改锁,而且看起来并不就像有任何方法可以在add Lock 中指定修饰符一样,至少我已经找到了。

我想知道我是否遗漏了其中的某些内容,或者是否有任何其他方法可以使其工作(不必在 xmodmap 文件中,我可以在脚本中调用其他命令)。

编辑:我找到了setxkbmap -option caps:backspace 来解决问题,-option shift:both_capslock 也可以在我确实想要大写锁定的情况下使用。

【问题讨论】:

大写锁定只有一层:它被称为大写锁定。 【参考方案1】:

大写锁定是一种二元操作。它不可能有第三种状态。

【讨论】:

您混淆了与 Caps_Lock 键符号 (<CAPS>) 关联的键的 Lock 函数。所要求的完全合乎逻辑且可能:将<CAPS> 键的第一级映射到BackSpace 键符,将第三级映射到Caps_Lock 键符。

以上是关于将大写锁定设置为更高级别的主要内容,如果未能解决你的问题,请参考以下文章

静态代码分析工具(如 CppCheck)与将编译器警告设置为更严格的级别 [关闭]

以编程方式将键盘大写锁定按钮设置为 ON? [复制]

使用 PHP 将图像大小调整为更高分辨率 [重复]

如何将多个 Stream 合并为更高级别的 Stream?

自动为更高种类参数的数据生成映射函数

Linux Shell高级技巧