根据:help spell
中的文档,Vim的内置拼写检查程序检测到4种类型的拼写错误:SpellBad,SpellCap,SpellRare,SpellLocal
我想保留SpellBad& SpellLocal但我想禁用SpellCap& SpellRare。关闭它们的突出显示很容易。但是当尝试使用]s
&尝试前进或后退到下一个/上一个拼写错误的单词时[s
,SpellCap&包含SpellRare单词。
我设法通过将set spellcapcheck=
放入我的.vimrc来禁用SpellCap,但我似乎无法找到任何方法为SpellRare做类似的事情。
使用[S
& ]S
代替[s
& ]s
将是一个很好的解决方案,但这只会让你转到下一个/上一个SpellBad单词。我希望它包括SpellBad&拼写单词。
现在有人怎么做?
答案 0 :(得分:2)
好的,所以对于任何有兴趣的人来说,这里是我如何做到这一点的确切指令集。
set spellcapcheck=
添加到您的vimrc中。这将禁用拼写检查,这些拼写检查是在句点之后没有大写的。这是一个可选步骤,如果你想要这个,你可以自己决定。 :mkspell xxxxx en_AU en_CA en_GB en_NZ en_US
(只需将xxxxx替换为您要为字典提供的名称) set spelllang=xxxxx_yy
放入您的vimrc,其中yy是您所需区域的2个字母小写缩写(au,ca,gb,nz或us)NB有些人可能已经注意到,在制作字典时,我没有包含连字词典(hyph_en_GB& hyph_en_US)。这是b / c I当我试图包含它们时,spl文件没有生成。也许其他人可以解释为什么会出现这种情况& /或如何修复它。
答案 1 :(得分:1)
您可以覆盖]s
映射以跳过罕见的拼写错误(例如通过检查语法),但最干净的方法是构建排除稀有单词的自定义拼写文件。
由于这些是由?
标志(:help spell-RARE
)标识的,因此过滤它们应该是微不足道的。构建它们(:help Myspell
)可能更复杂;到目前为止我还没有完成。