Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在vim中打开文本文件时自动高亮显示字典单词_Vim_Vim Syntax Highlighting - Fatal编程技术网

在vim中打开文本文件时自动高亮显示字典单词

在vim中打开文本文件时自动高亮显示字典单词,vim,vim-syntax-highlighting,Vim,Vim Syntax Highlighting,在打开文本文件时(启动时),如何使vim突出显示字典中的所有单词 我更喜欢的方法是在我的vimrc中添加一些2行或3行设置/fun/autocmd,但是如果不可能的话,到底是什么插件提供了这个字典单词高亮显示功能? 提前谢谢。我尝试了各种方法,比如创建自定义词典,然后 重新定义Normal和SpellBad单词的突出显示。我也试过了 将所需单词标记为“稀有”(因为Vim使用不同的 但这些想法并没有奏效。这是最好的 我可以想出: 定义突出显示 首先,定义要如何突出显示单词。在这个例子中,我 想要突

在打开文本文件时(启动时),如何使vim突出显示字典中的所有单词

我更喜欢的方法是在我的vimrc中添加一些2行或3行设置/fun/autocmd,但是如果不可能的话,到底是什么插件提供了这个字典单词高亮显示功能?
提前谢谢。

我尝试了各种方法,比如创建自定义词典,然后 重新定义
Normal
SpellBad
单词的突出显示。我也试过了 将所需单词标记为“稀有”(因为Vim使用不同的 但这些想法并没有奏效。这是最好的 我可以想出:

定义突出显示 首先,定义要如何突出显示单词。在这个例子中,我 想要突出显示从1到10的所有数字,所以我打电话给我的小组, “数字”并告诉Vim,我希望这些单词以红色显示,并且 终端或GUI版本

highlight Numbers ctermfg=red guifg=red
选项1:语法 如果有很多单词,请使用
语法
命令定义关键字 要强调的是:

syntax on
syntax keyword Numbers one two three four five six seven eight nine ten One Two Three Four Five Six Seven Eight Nine Ten 
选项2:匹配 注意,使用syntax选项,您需要包括 大写和小写。如果您不想这样做,可以使用
match
关键字,它对正则表达式模式而不是 单词表。使用
\c
选项忽略大小写

match Numbers /\c\<one\>\|\<two\>\|\<three\>\|\<four\>\|\<five\>\|\<six\>\|\<seven\>\|\<eight\>\|\<nine\>\|\<ten\>/
匹配数字/\c\\|\\|\\|\\|\\|\\|\\|\\|\\|\/
使用
match
的缺点是Vim必须不断评估匹配 文本更改的模式。如果 正则表达式模式太长(单词太多)。这将导致
Vim变得太慢。

拼写检查的作用相反,并突出显示拼写错误的单词(
设置拼写
)也许您可以查看此Vim脚本,它允许您一次突出显示多个搜索(可能基于字典文件填充)。谢谢你的努力,安东尼。我将选择语法选项。在某些情况下,我的dict单词有几百个。因此,我想我必须创建一个语法vim文件,就像它是一种语言(.vim/syntax/mine.vim)。很高兴认识到,在编辑相关的(文件类型)缓冲区时,语法文件可以吸收4000多个关键字而不会减慢速度。我的语法文件现在是150kB大。哇!真令人印象深刻。很有意思的是Vim能处理这么多。谢谢你的反馈。