我目前在 MacBook Air M1 上使用 Asahi Linux,但遇到了一个似乎无法解决的问题。在我的环境中,特别是在像 Firefox 这样的应用程序中,我无法使用 将光标移动到文本的开头Ctrl + a
或使用 移动到文本的结尾Ctrl + e
。这些命令不是移动光标,而是选择所有文本。
此行为仅出现在图形应用程序中,而不出现在快捷方式按预期工作的终端中。
以下是有关我的环境的基本信息:
OS: Asahi Linux(Arch)
Desktop: KDE Plasma
Machine: MacBook Air M1 (aach64)
Affected Applications: Firefox (possibly others)
我检查了系统设置中的按键绑定,但遗憾的是找不到可以正确更改设置的位置。
有其他人经历过这个问题或者对可能导致这种行为的原因有任何见解吗?任何有关如何解决或解决此问题的建议将不胜感激。
答案1
为什么这是热键行为?
标准默认行为Ctrl+a
是选择图形应用程序中的所有文本,并由应用程序的默认热键确定。 Afaik,没有默认行为Ctrl+e
。
在图形应用程序中编辑文本时,我个人使用Ctrl+a
左箭头键转到文本开头,使用Ctrl+a
右箭头键转到文本末尾。
例如,在文本框列表中编辑文本时,Firefox 的默认热键Ctrl+a
为“全选”:https://support.mozilla.org/en-US/kb/keyboard-shortcuts-perform-firefox-tasks-quickly#w_editing
他们还列出了编辑文本时的以下默认热键:
Ctrl+Home
到“转到文本开头”Ctrl+End
到“转到文本末尾”Home
到“转到行首”End
到“转到行首”
这些可能是图形应用程序的标准默认值。我不知道,因为我通常不使用它们。
如何更改热键?
如果您想要您想要的确切行为怎么办?这可以做到吗?也许可以在编辑文本时更改单个应用程序的热键。
值得注意的是,有关“键盘快捷键”的 Firefox 链接页面在开头段落中指出:
如果您在 GNOME 中启用了 Emacs 风格的文本编辑快捷方式,它们也可以在 Firefox 中使用。
我使用 vim,所以我不熟悉 Emacs 风格的快捷方式,但也许 KDE 有类似的东西?
值得注意的是,KDE 的默认文档编辑与 Firefox 相同:https://docs.kde.org/trunk5/en/khelpcenter/fundamentals/kbd.html#kbd-modifying
使用文档和获取帮助中描述的快捷方式是由各个程序设置的。大多数 KDE 程序允许您使用通用快捷方式编辑对话框来修改它们。使用文件中描述的快捷方式可以以相同的方式进行编辑......强调我的。
KDE 有关于使用和自定义快捷方式的文档: https://docs.kde.org/trunk5/en/khelpcenter/fundamentals/shortcuts.html
最糟糕的情况是您必须修改每个单独应用程序的热键才能获得您想要的行为。
在这些文档中值得注意的是,如果您有朋友使用您的计算机并且他们不熟悉您的热键,您可以设置“方案”,这些方案似乎可以作为不同热键行为的配置文件。
要打开 KDE 快捷方式配置面板:Settings
->Configure Shortcuts...
系统设置下有“标准快捷方式”,KDE 中的快捷方式(与全局快捷方式不同),并且您似乎可以编辑它们,这样就可以避免将它们单独应用于每个应用程序。这篇博文中对此进行了说明(我是不是作者,我没有可用的 KDE 来测试这一点):https://www.maketecheasier.com/assign-remap-keyboard-shortcuts-in-linux/
这些 KDE 文档在此处讨论标准快捷方式和全局快捷方式:https://docs.kde.org/stable5/en/plasma-desktop/kcontrol/keys/index.html#key-bindings-use-globapp
他们指出,如果应用程序覆盖它们,它们可能不适用于所有应用程序,这意味着您可能必须为此类应用程序单独指定它。