macos - 在 macOS 中自定义 Option-Delete(和其他与单词相关的快捷方式)的单词边界?
问题描述
是否可以更改⌥⌫(选项+删除)的行为以包含某些字符,例如句点,作为单词边界?
例如,在 中some.variable
,我希望 ⌥⌫ 删除句号,但它当前删除了整个字符串。下面的截屏视频显示了使用 ⌥⇧← 的行为。
解决方案
自 Cocoa 时代以来,我一直在寻找解决这个问题的方法,据我所知,没有办法自定义“Option-Delete”字分隔符(字边界)列表。除了我自己的实验之外,我的这个结论主要基于可以在以下 3 个 URL(从最旧到最近更新)中找到的大量 MacOS 键绑定修改:
- 自定义 Cocoa 文本系统(大约 2006 年)
- DefaultKeybinding.dict(大约在 2016 年,之前在 URL “lri.me”上的一些信息)
- 键绑定——BrettTerpstra.com(最后更新于 2018 年)
AFAIK,MacOS 上的单词边界默认为空格,无法更改。[如果最近对 MacOS 文本输入系统进行了根本性更改,则此结论无效]。
众所周知,许多 MacOS 键盘快捷键都基于 eMacs 风格的“键盘和弦”,而不是 Vim 风格的“模态编辑”。实际上,上面引用的大部分 Keybinding 工作都涉及重新映射这些和弦。Vim 当然以具有可自定义的分隔符列表而闻名,它是 (例如) 和 and (参见 vimhelp.org ) 之间差异w
词W
移动的基础。b
B
已经有一些扩展试图将“Vim 风格”编辑带入 MacOS,其中之一是 Karabiner。Karabiner(现在重新编写/更新为Karabiner-Elements)曾经有一种称为“Ubiquitous_Vim”的模式。但是,如果没有操作系统级别的“钩子”个人测试,则表明(例如)向后移动b
并且工作方式相同(即 Vim和 VimB
之间没有区别,请参阅此 StackOverflow 帖子)。word
WORD
虽然我无法找到修改 MacOS 默认“单词边界”列表的方法,但如果 Vim 风格的编辑确实吸引您,那么您可以尝试安装Vim-Anywhere之类的项目,它使您能够 1.当您需要输入文本时,使用 MacOS 键盘快捷键打开 Vim 窗口,并且 2. 当您关闭 Vim 窗口时,会自动将您的文本复制到 MacOS 系统剪贴板。有关详细信息,请参阅此 OSTechNix 文章:“如何使用 Vim 编辑器在任何地方输入文本”。
推荐阅读
- swift - Realm Swift 在离线模式下失败
- javascript - 为什么单击按钮后图像不显示?
- c# - C#进程退出事件
- mysql - 隐藏此特定值下的所有行 [MYSQL]
- python - Matplotlib:手动设置后出现未指定的刻度标签
- android - 创建一个没有 Typescript 的 React Native 应用程序?(无法获取 BatchedBridge)
- python - 带有复选框的 Kivy MDList。选择具有活动复选框的正确项目
- javascript - 无法打开通过 Google 应用脚本上传的文件
- node.js - 如何组合没有相互引用的 MongoDB 集合?
- bash - 关于正则表达式和通配符和 grep 的问题