Ubuntu 中的英语键盘布局与 macOS 非常接近,但允许使用 Compose 键

Ubuntu 中的英语键盘布局与 macOS 非常接近,但允许使用 Compose 键

我在工作时使用 Ubuntu 22.04,在家使用 macOS。两台计算机都有国际键盘。这意味着左 Shift 和 Z 按钮之间有一个额外的按钮。

但是,我遇到了以下问题。我想使用这个额外的按钮,就像在 macOS 中一样:用于输入反引号`~字符,因为我在两个操作系统中都广泛使用它们。

问题是,当我在 Ubuntu 中选择“英语(英国,Macintosh)”键盘布局时,它不允许使用 Compose 键轻松输入 ü 和 ä 等字符。我选择了另一种布局“英语(英国,Macintosh,国际)”,但它在反引号、波浪号和双引号方面表现非常奇怪,因为它希望我直接输入一些内容(例如 ~n 变成 ñ),这使得在 Markdown 中书写或编程代码成为一种折磨。

Ubuntu 22.04 中是否有一个好的英文键盘布局:1)在左 Shift 和 Z 按钮之间有反引号和波浪号;2)允许“撰写”按钮输入特殊的欧洲字符,如 ü?

谢谢!

答案1

英语(英国,Macintosh)布局,反引号和波浪符号实际上映射到 Z 键左侧的键。

然而...

在某些 Apple 设备上,出于某种原因,该键与数字 1 键左侧的键互换。因此,我认为您的情况与某些 Apple 硬件有关。

在 Ubuntu 20.04 中有一个简单的方法可以解决这个问题:

MacBookPro 键盘上的“@”(键码 49)和“<”(键码 94)键颠倒了

但是 Debian 的特定功能在 Ubuntu 22.04 中被删除

将密钥切换回其预期状态的一种更笨拙的方法是直接编辑相关文件。这是文件/usr/share/X11/xkb/symbols/gb,此 diff 显示了可以执行的操作:

--- gb.orig
+++ gb
@@ -188,8 +188,8 @@
 
     key <AE02> {   [               2,              at,         EuroSign    ]   };
     key <AE03> {   [               3,        sterling,       numbersign    ]   };
-    key <TLDE> {   [         section,       plusminus ]    };
-    key <LSGT> {   [           grave,      asciitilde ]    };
+    key <LSGT> {   [         section,       plusminus ]    };
+    key <TLDE> {   [           grave,      asciitilde ]    };
 
     include "level3(ralt_switch)"
     include "level3(enter_switch)"

答案2

这是通过 为我工作的方法xmodmap

  1. 在终端中执行xev并按下左 Shift 和 Z 键之间的键。终端中将显示有关密钥代码的信息,这是下一步所需的。对我来说,密钥代码是 94。

  2. ~/.Xmodmap使用以下行添加文件

    keycode 94 = grave asciitilde
    
  3. 在终端执行

    xmodmap ~/.Xmodmap
    

相关内容