如何在Vim文本编辑器中使用拼写检查功能

时间:2020-03-21 11:48:38  来源:igfitidea点击:

Vim是最好,最受欢迎,功能丰富且功能强大的文本编辑器之一。
毫无疑问。
它具有很多功能。
例如,可以通过在Terminal中运行“ vimtutor”命令从内置的帮助部分轻松地学习Vim的基础知识。
学习Vim是值得的。
今天,在本教程中,我们将讨论Vim编辑器中使用最广泛的功能之一,即“拼写检查”。
如果我们是编辑大量文本的程序员,则“拼写检查”功能可能会非常有用。
使用Vim编辑文本文件时,它可以避免令人尴尬的拼写错误/错别字。

在Vim文本编辑器中使用拼写检查功能

启用拼写检查

要在Vim中启用拼写检查功能,请在命令模式下将其打开并键入以下内容:

:set spell

请记住,我们需要在Vim会话中而不是在Terminal窗口中键入以上命令。

查找并纠正拼写错误,错别字

现在,转到“插入模式”(键入“ i”以从命令模式切换到插入模式),然后键入所有拼写错误的字母。
Vim会立即突出显示拼写错误的单词。

如我们在上面的输出中看到的,我键入了“ Welcome to Linux learning session”而不是“ Welcome to Linux learning session”,并且vim用红色突出显示了拼写错误的单词“ learng”和“ sesion”。

现在,只需按ESC键即可返回到命令模式。

我们可以通过键入以下任一字母来浏览拼写错误的单词:

  • ] s-在光标后找到拼写错误的单词(正向搜索)。
  • [s-在光标之前找到拼写错误的单词(向后搜索)。
  • ] S(注意大写字母“ S”)-与“] s”相似,但只停留在不好的词上,而不是在稀有词或者其他地区的词上。
  • [S-与“ [s”类似,但向后搜索。

找到拼写错误的单词后,键入z =以查找该特定单词的建议。
其中Vim向我显示了拼写错误的单词“ learng”的建议列表。
通过键入相应的数字从列表中选择正确的单词,然后按Enter键以使用正确的单词更新拼写错误的单词。

从上面的 Screen快照中可以看到,我输入了13号,以正确的单词“ learning”替换了拼写错误的单词“ learng”。
在按Enter键后,Vim立即更新了输入中的正确单词。

同样,如上所述,更正文本中的所有拼写错误。
纠正所有错误后,输入:wq保存更改并退出Vim编辑器。

请记住,我们只能检查拼写错误,不能检查语法错误。

设置拼写语言

默认情况下,Vim使用“ en”(英语的所有区域)检查拼写错误。
我们还可以选择自己的拼写语言。
例如,要设置美国地区的英语,请在Vim编辑器的“命令”模式下键入以下内容:

:set spell spelllang=en_us

英语可用的所有区域的列表是:

  • zh-所有地区
  • en_au-澳大利亚
  • en_ca-加拿大
  • en_gb-英国
  • en_nz-新西兰
  • zh_CN –美国

在Spellfile中添加单词

有时我们可能想添加一些单词作为例外,例如姓名,命令,电子邮件等。
在这种情况下,我们可以将这些特定的单词添加到Spellefile中。
该文件包含所有异常。

确保系统中有~/.vim/spell /目录。
如果不是,请创建一个:

$mkdir -p ~/.vim/spell/

然后,使用以下命令设置拼写文件:

:set spellfile=~/.vim/spell/en.utf-8.add

现在,使用[s或者]定位拼写错误的单词,然后键入zg。
它将光标下的单词作为拼写文件中的好单词添加。
例如:将单词添加到我们自己的字典中。

要撤消此添加操作(从咒语文件中删除单词),只需使用zug。
要标记拼写错误的单词,请键入zw。
要撤消此操作,请使用zuw。

禁用Vim中的拼写检查

Vim将突出显示所有在词典中不可用的拼写错误和单词。
有时,我们在编写代码或者自述文件时会发现这很烦人,该文件或者自述文件包含很多在词典中不可用的单词。
在这种情况下,我们只需输入以下命令即可禁用“拼写检查”功能:

:set nospell

现在,Vim不会突出显示任何内容。
我们可以随时通过在Vim的命令模式下运行“:set spell”来启用拼写检查功能。

Vim具有更多内置的帮助页面,用于“拼写检查”功能。
要了解有关拼写检查功能的更多信息,请运行:

:help spell

我们还可以参考各个选项的个别帮助部分,例如:

:help ]s
:help [s
:help z=
:help zg
:help zug
:help zw
:help zuw
:help spelllang
:help spellfile
:help spellfile-cleanup