我最近在笔记本电脑上切换到 Ubuntu,几乎让我切换回 Windows 的一件事是我无法使Ctrl+Alt表现得像Alt Gr.
我已经编程了好几年了,例如我习惯$
通过按Ctrl+ Alt+来制作符号4。在 Ubuntu 中我必须使用Alt Gr+4这几乎让我发疯......
有解决办法吗?
答案1
您可以添加全局快捷方式来写入特殊字符。我经常在 Ubuntu 上使用这个德语键盘布局(在 Windows 上这个功能是开箱即用的)。
我添加了以下快捷方式:
Shift+ Enter+7写信{
Shift+ Enter+0写信}
Shift+ Enter+8写信[
Shift+ Enter+9写信]
要添加这些快捷方式,您将xbindkeys
需要xvkbd
:
sudo apt-get install xbindkeys xvkbd
然后编辑配置文件:
vim ~/.xbindkeysrc
并添加以下行(根据您的喜好进行编辑):
"xvkbd -xsendevent -text '{'"
m:0xc + c:16
Control+Alt + 7
"xvkbd -xsendevent -text '['"
m:0xc + c:17
Control+Alt + 8
"xvkbd -xsendevent -text ']'"
m:0xc + c:18
Control+Alt + 9
"xvkbd -xsendevent -text '}'"
m:0xc + c:19
Control+Alt + 0
"xvkbd -xsendevent -text '\[backslash]'"
m:0xc + c:20
Control+Alt + ssharp
"xvkbd -xsendevent -text '\[asciitilde]'"
m:0xc + c:35
Control+Alt + plus
然后重新加载 xbindkeys:
xbindkeys -f ~/.xbindkeysrc
感谢高手分享这个(http://forum.ubuntuusers.de/topic/strg-%2B-alt-alt-gr-wie-in-windows/)。
答案2
在尝试让它与 xbindkeys 和 xvkbd/xte 的组合一起工作但失败后(我永远无法让某些字符 {、[、]、}、\ 等正常工作,可能是因为我使用斯堪的纳维亚键盘布局),我终于找到了一个简单实用的解决方案:Autokey。以下是使其正常工作的具体说明:
- 安装自动键通过 Ubuntu 软件(我使用的是 GTK 版本,而不是 KDE)或通过:“sudo apt-get install autokey-gtk”。
- 每个键配置一个脚本,例如 { 使用此代码:
keyboard.send_keys("<alt_gr>+7")
并将热键设置为 Ctrl+Alt+7(首先将热键设置为 7,然后添加 Ctrl 和 Alt 作为修饰符)。这至少适用于最重要的代码编写键: { [ ] } 。 - 将 autokey 添加到启动应用程序(搜索“start”即可找到它),然后添加一个以“autokey”作为命令的程序。
该解决方案适用于当前 X 会话中运行的任何内容(我认为),但如果您使用 Ctrl+Alt+(F2-F6) 启动新的终端会话,则该解决方案将不起作用。
答案3
尽管这仍然没有回答您的问题,但我发现这是比其他答案更简单的解决方案。
为了使R-ALT工作像这样AltGr,您可以将以下行添加到您的~/.xinitrc
:
setxkbmap -option lv3:ralt_switch
可以找到转移到第三级的其他方法(通常使用AltGr密钥实现),并且可以在 中定义新方法/usr/share/X11/xkb/symbols/level3
。
答案4
我只在编写代码时使用特殊符号,所以我设法通过 Sublime Text 解决这个问题。
在首选项 -> 键绑定 - 用户
插入以下内容:
[
{ "keys": ["ctrl+alt+2"], "command": "insert", "args": {"characters": "@"} },
{ "keys": ["ctrl+alt+3"], "command": "insert", "args": {"characters": "£"} },
{ "keys": ["ctrl+alt+4"], "command": "insert", "args": {"characters": "$"} },
{ "keys": ["ctrl+alt+5"], "command": "insert", "args": {"characters": "€"} },
{ "keys": ["ctrl+alt+7"], "command": "insert", "args": {"characters": "{"} },
{ "keys": ["ctrl+alt+8"], "command": "insert", "args": {"characters": "["} },
{ "keys": ["ctrl+alt+9"], "command": "insert", "args": {"characters": "]"} },
{ "keys": ["ctrl+alt+0"], "command": "insert", "args": {"characters": "}"} },
{ "keys": ["ctrl+alt++"], "command": "insert", "args": {"characters": "\\"} },
{ "keys": ["ctrl+alt+<"], "command": "insert", "args": {"characters": "|"} }
]