Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.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_Spell Checking - Fatal编程技术网

Vim拼写检查不适用于文本文件

Vim拼写检查不适用于文本文件,vim,spell-checking,Vim,Spell Checking,我试图通过将该文本文件添加到我的vimrc中来检查文本文件的拼写 augroup set_spell autocmd! autocmd FileType text :setlocal spell spelllang=en_us augroup END nnoremap <F10> :setlocal spell! spelllang=en_us<CR> augroupset\u拼写 自动驾驶! autocmd文件类型text:setlocal拼写spel

我试图通过将该文本文件添加到我的vimrc中来检查文本文件的拼写

augroup set_spell
    autocmd!
    autocmd FileType text :setlocal spell spelllang=en_us
augroup END
nnoremap <F10> :setlocal spell! spelllang=en_us<CR>
augroupset\u拼写
自动驾驶!
autocmd文件类型text:setlocal拼写spelllang=en_us
螺旋端
nnoremap:设置本地法术!斯佩尔朗=恩尤斯
但它不起作用
我尝试了
:设置拼写
,但什么也没发生
出于某些原因,当我运行
:source$MYVIMRC
(仍在该窗口中)时,它工作了。虽然我可以将寻源命令添加到我的vimrc中,但我不喜欢它的油嘴滑舌的感觉
我该怎么办

编辑:我找到了解决方案

这就是vim rainbow插件的问题所在

因此,我卸载了它,安装了它,打开文件,立即执行
:set ft?
:set spell?
。确保它们分别返回
文本
拼写
。如果未返回
text
,则未检测到文件类型。如果返回了
文本
,但
拼写
未返回,则自动命令不起作用

此外,还应将AUT命令包装在
augroup
中。请参见
:h autocmd组
。可能是这样的:

augroup set_spell
    autocmd!
    autocmd FileType text setlocal spell
augroup END

因为这是一个文件类型的自动命令,所以您最好跳过augroup和autocommands,将行
setlocal-spell
放在一个ftplugin文件中。它通常会进入
~/vim/ftplugin/text.vim
打开文件,并立即执行
:set ft?
:set spell?
。确保它们分别返回
文本
拼写
。如果未返回
text
,则未检测到文件类型。如果返回了
文本
,但
拼写
未返回,则自动命令不起作用

此外,还应将AUT命令包装在
augroup
中。请参见
:h autocmd组
。可能是这样的:

augroup set_spell
    autocmd!
    autocmd FileType text setlocal spell
augroup END

因为这是一个文件类型的自动命令,所以您最好跳过augroup和autocommands,将行
setlocal-spell
放在一个ftplugin文件中。它通常会进入
~/vim/ftplugin/text.vim

作为一个更通用的解决方案:有时主题插件会覆盖拼写错误突出显示组(这是gui与终端之间的问题之一)。即使拼写检查有效,它也不会突出显示。在不删除主题的情况下,您可以根据需要向SpellBad highlight组添加更多样式:

只需将其添加到.vimrc:

"underline spell errors in terminals
hi SpellBad cterm=underline
或者任何其他风格,真的:

hi SpellBad ctermfg=Cyan cterm=bold 
请注意,这些样式不会覆盖所有现有样式。要真正覆盖它,您可能需要先使用
hi clear SpellBad


有关所有详细信息,请参见
:h突出显示
。对于其他拼写组,请参见
:h hl SpellBad

作为更通用的解决方案:有时主题插件会覆盖SpellBad突出显示组(这是gui与终端问题之一)。即使拼写检查有效,它也不会突出显示。在不删除主题的情况下,您可以根据需要向SpellBad highlight组添加更多样式:

只需将其添加到.vimrc:

"underline spell errors in terminals
hi SpellBad cterm=underline
或者任何其他风格,真的:

hi SpellBad ctermfg=Cyan cterm=bold 
请注意,这些样式不会覆盖所有现有样式。要真正覆盖它,您可能需要先使用
hi clear SpellBad


有关所有详细信息,请参见
:h突出显示
。有关其他拼写组,请参见
:h hl SpellBad

谢谢您的回答。我运行这两个命令,它们返回“文本”和“拼写”。问题是拼写检查不起作用。我想我没有清楚地描述我在这里的情况。我已经更新了。如果你有任何想法,请告诉我你在拼写检查不起作用的时候运行了这两个程序,对吗?你没有先找到你的vimrc?试着做
:详细设置拼写?
,看看它说什么;它告诉你最后一件开启咒语的事情。您的vimrc中还有其他内容吗?这里是“~/.config/nvim/init.vim的最后一组”。我将我的vimrc拼写检查部分添加到我的问题中。您可能希望检查vim和neovim在
拼写
选项方面的差异。除此之外,我没有更多的信息给你。谢谢你的回答。我运行这两个命令,它们返回“文本”和“拼写”。问题是拼写检查不起作用。我想我没有清楚地描述我在这里的情况。我已经更新了。如果你有任何想法,请告诉我你在拼写检查不起作用的时候运行了这两个程序,对吗?你没有先找到你的vimrc?试着做
:详细设置拼写?
,看看它说什么;它告诉你最后一件开启咒语的事情。您的vimrc中还有其他内容吗?这里是“~/.config/nvim/init.vim的最后一组”。我将我的vimrc拼写检查部分添加到我的问题中。您可能希望检查vim和neovim在
拼写
选项方面的差异。除此之外,我没有更多的信息给你。什么是不工作?什么是不工作?