♡现在,拼写检查器会将所有大写单词(例如 JRE)标记为拼写错误。对我来说,有时我会在 Markdown 文件中使用 java 风格的名称。例如像tableFan。这些也被标记为拼写错误。这是有问题的,因为我在插入模式下使用键盘映射来纠正之前拼写错误的单词。如果有些单词被错误地标记为拼写错误,则无法使用该键绑定。而且总是有一种挥之不去的感觉,“拼写检查将正确的单词标记为错误,就像人名一样”。
一种方法是告诉 vim 仅进行由全小写字母组成的拼写检查。但我找不到任何方法给 vim 这个指令。
任何方法都是遵循此问题中发布的答案如何从 Vim 中的拼写检查中排除大写单词?
尽管我对这些答案有一些疑问,但我仍然盲目地尝试了这些答案,但它们不起作用。我尝试先对标有绿色勾号的答案发表评论。但我没有50个声望。所以我发布了一个新问题。 我对这些答案的问题是为什么在模式的开头和结尾需要“+”。现在我知道 Patter 中“+”的含义是代表 1 个或多个先前的匹配项。但那个“+”需要转义,对吧?除非它非常神奇,而对于一个非常神奇的东西,模式内部需要有一个地方。假设“+”在没有转义的情况下工作,但是它在模式的开头匹配什么,开头什么也没有。例如,
c\+
将匹配字符 c 的 1 次或多次出现。但如果模式是 +c
那么“+”的目的是什么?才刚开始呢
好吧,这是我关于该链接中答案的问题。 留下问题我尝试应用答案但它也不起作用。 假设我使用
:syn match myExCapitalWords +\<\w*[A-Z]\S*\>+ contains=@NoSpell
并进入。
然后结果是没有单词,即使拼写错误的所有小写单词也没有拼写错误。
请让我知道我应该如何实现这一目标。 如果可能的话,也请让我知道我的问题的答案。
此模式将匹配至少有一个小写字母后跟一个大写字母并被 0-n 个小写字母包围的单词:
/\v\<[a-z]*[A-Z][a-z]*\>
要排除这些单词,您可以将
:v
命令与此模式结合使用。例如
:v/\v\<[a-z]*[A-Z][a-z]*\>
此命令将选择所有不包含单个大写字母单词的行。