在 Sublime Text 3 中使用拼写检查时,可以右键单击拼写错误/带下划线的单词,然后从上下文菜单中将其添加到词典中。有没有办法使用键盘而不使用鼠标来执行此操作?
这官方文档提到了该add_word
命令,但没有使用它的默认键绑定,并且它要求将要添加的单词指定为参数 - 即它不会在插入符号下添加单词。
答案1
一个简单的答案是使用键盘打开上下文菜单(有些键盘有专门的按钮,例如在 和Alt Gr右键之间Ctrl。或者,您可以在 Windows 上按Shift+ F10。然后只需使用箭头键选择添加单词菜单项并按下 即可Enter。
显然,这可以通过使用自定义键绑定以更少的按键来完成,这是add_word
文档中提到的命令派上用场的地方。
但是,由于键绑定不能使用光标下的文本或选择作为参数,因此需要为此创建一个小型 Python 插件。(执行的命令支持此功能的情况除外,例如insert_snippet
支持参数$SELECTION
中的占位符contents
。)
下面介绍了如何创建一个 Python 脚本,将光标处的单词添加到字典中:
- 从
Tools
菜单 ->Developer
->New Plugin
粘贴以下内容:
import sublime import sublime_plugin class AddWordsAtCursorsToDictionaryCommand(sublime_plugin.TextCommand): def run(self, edit): for sel in self.view.sel(): region = None if sel.empty(): region = self.view.word(sel.begin()) else: region = sel word = self.view.substr(region) self.view.run_command('add_word', { 'word': word })
将其保存在它建议的默认文件夹中,类似于
add_word.py
- 文件扩展名非常重要,但基本名称本身并不重要。- 转到
Preferences
->Key Bindings - User
或Key Bindings
取决于您拥有的 ST3 版本。 输入以下内容:
{ "keys": ["f8"], "command": "add_words_at_cursors_to_dictionary" }
如果文件之前是空的,请确保上面的文本被方括号括起来。即
[
和]
。基本上,它需要是一个有效的 JSON 文件,包含一个键绑定数组。- 保存
- 按 将F8文本插入符号处的单词添加到词典中。(显然,您可以在相关步骤中将其更改为您想要的任何键。)