将 AltGr-[a..z] 和 Shift-AltGr-[A..Z] 映射到希腊字母

Ale*_*aly 6 keyboard keyboard-layout shortcut-keys

我在 Ubuntu 上可信赖,我使用希腊字母表示代数。我希望能够使用AltGr-快速输入它们letterKey

例如,将 alpha 映射到AltGr- A,将 beta 映射到AltGr- B,将 theta 映射到AltGr-T等。

页解释了如何做到这一点在Ubuntu的早期版本。当我尝试跟随它时,我可以转到系统设置 -> 键盘 -> 打字 -> 编写键。

但是当我到达 Compose Key 时,它说它已“禁用”。当我单击行并按住新键时没有任何反应,当我按退格键清除时也没有任何反应。即使它确实有效,我也不明白这将如何让我重新分配AltGr- [A..Z]

任何人都可以帮忙吗?

Rma*_*ano 9

这是一个很长的答案。如果你想有一个TL; DR版本---xmodmap排序的弃用; 布局开关将重置它;转到最后称为“最后,我做到了”的部分以获取我的解决方案。

我想你已经有你的 AltGr 了。激活与否取决于您的键盘配置。在我的 PC 上,它适用于西班牙语和美国国际,但不适用于普通的美式键盘。

我使用的方法是 with xmodmap,但它只能部分工作:它是否有效将取决于您的布局,即使如此,每次更改布局时都会重置。有关“真实”(但复杂)的解决方案,请参见稍后。

您可以xmodmap按照以下步骤使用:

1) 在终端问题中

xmodmap -pke > mykeydefs.lst
Run Code Online (Sandbox Code Playgroud)

(扩展名和名称免费 --- 使用你喜欢的)

2) 编辑文件;你会看到一堆像......

keycode   8 =
keycode   9 = Escape NoSymbol Escape
keycode  10 = 1 exclam 1 exclam bar exclamdown
keycode  11 = 2 quotedbl 2 at at oneeighth
keycode  12 = 3 periodcentered 3 numbersign numbersign sterling
Run Code Online (Sandbox Code Playgroud)

这些是您的键盘定义。查找例如条目A

keycode  38 = a A a A ae AE
Run Code Online (Sandbox Code Playgroud)

这意味着按下这个键你有“a”、shift+键“A”等等……有趣的是第 5 和第 6 (1) 个,它们通常与 ALtGr 和 Shift+AltGR 相关联。按 AltGR + A 你应该有符号“æ”。

如果您有 6 个以上的条目,请尝试查看您的 AltGR 组合激活了哪些条目:例如,如果您有

keycode  38 = a A a A ae AE aring Aring
Run Code Online (Sandbox Code Playgroud)

并且在按下 AltGr-A 时出现 å,要修改的条目将是第 7 和第 8 个...

3)将行更改为

keycode  38 = a A a A Greek_alpha Greek_ALPHA
Run Code Online (Sandbox Code Playgroud)

(大写很重要)。您可以编辑您想要的所有行;最好删除所有未触及的行。所有符号的列表都在这里,但要考虑到它们是否可见也取决于您使用的字体。保存文件。

4) 重新加载新映射

xmodmap mykeydefs.lst
Run Code Online (Sandbox Code Playgroud)

此命令必须是静默的 --- 如果它显示任何错误,则不会加载地图。

5)测试一下。现在按 AltGr + a 应该给出符号 alpha(嗯,Unicode 中的字母希腊字母,真的)。

6)如果有效,您可以在启动命令列表中设置该命令。

真正的解决方案(至少提示一下)

如果该xmodmap方法不起作用,则需要编辑键盘布局。我发现了一些有趣的链接:

  1. 一个HOWTO线程创建自己的键盘布局。

  2. 一个相当完整的 XKB 系统指南

  3. 关于对布局进行本地修改的博客条目。

最后,我做到了:

  1. 直接修改系统文件的一个小例子(我在你的本地~/.xkb目录中找不到如何做到这一点)。

  2. 一个很好的配置,让所有希腊字母都带有一个修饰符


脚注

(1) 顺便说一句,在所有手册说明中都说“mode_shift”字符应该是第三个和第四个。Ubuntu 上没有,我真的找不到任何包含详细信息的文档。如果有人能指点我,我将不胜感激。


Sea*_*ean 4

启用 Compose Key 输入dconf-editor进行设置AltGr

\n\n

dconf-editor前往org>gnome>desktop>input sources. 编辑条目xkb-options以设置您想要的撰写​​键,例如[\'compose:ralt\']

\n\n

这个早期的答案也包括终端命令:Make "super/window" as compose key in Ubuntub

\n\n

使用撰写键将快速为您提供许多附加字符,但如果没有额外的击键,则不会包含希腊字母。

\n\n

要快速访问希腊字母,请使用IBus在常用键盘布局和希腊字母之间切换。IBus可能会在您的主菜单中显示为“键盘输入法”。您可以使用 来安装它sudo apt-get install ibus

\n\n

开始后,IBus在“输入法”选项卡下添加“希腊,现代”布局。在“常规”选项卡中,您将找到快速切换键盘布局的方法。就我而言,它是Win+ Space。通过按下该组合,您将立即切换到希腊布局并按下a给出\xce\xb1(alpha)。

\n\n

Win通过这种方法,您可以继续使用 Greek,直到您使用+切换回主布局Space

\n