9

在我用于 vim 的主题中,字符串显示为红色,但问题是我打开了拼写检查,拼写错误的单词也显示为红色。

这使得在您转到该单词并删除任何字符之前很难看出错误是什么。

我想让拼写错误的单词的突出显示比现在更轻。说#ff2929。

                                                       你看不到拼错的词是什么

4

3 回答 3

15

hi您可以:help highlight~/.vimrc. 一般结构是:

hi SpellBad    ctermfg=015      ctermbg=000     cterm=none      guifg=#FFFFFF   guibg=#000000   gui=none

cterm用于终端 vim,用于guigVim。fg代表前景,是字母的颜色,代表bg背景,是字母后面的颜色。

对于标准终端颜色(8 个正常和 8 个明亮),终端颜色可以是 0-15,对于支持 256 种颜色的术语,终端颜色可以是 0-255,例如 xterm-256colors。gui 颜色采用十六进制格式。xterm-color-table是 256 和十六进制颜色的有用参考。最后一个选项可用于指定粗体斜体或无(两者都不)。

在您的情况下,将前景设置为黑色以使字母突出可能是最简单的。首先,找到一个拼写错误的单词,:set spell然后输入 asdflkjasldf 或其他内容。然后输入:hi SpellBad ctermfg=000 guifg=#000并查看这是否是您喜欢的解决方案。如果没有,请使用 xterm-color-table 或其他颜色参考来查找您喜欢的颜色。

于 2012-07-17T05:13:27.990 回答
6

尝试这个:

 :hi SpellBad guibg=#ff2929 ctermbg=224
  • guibg用于图形用户界面
  • ctermbg是 TERM
于 2012-07-01T04:02:42.503 回答
0

我发现对于一个涉及 .vimrc 的更复杂的例子来说,下面的方法可以完成一半的工作colorscheme,但它对 .vimrc 命令的顺序很敏感。我用 Cygwin/mintty 和 Git Bash、vim 8.0 进行了测试,结果相似。我在标题和段落中编辑了一个带有“拼写错误”的单词的 markdown 文件,因此另一个因素是 vim 为 markdown 所做的自动格式化。如果 .vimrc 的顺序是spell, colorscheme, 然后hi(尝试在红色背景上使用白色文本),则拼写错误的单词的结果是黑色背景上的白色前景(下图),无论是在 markdown 标题还是段落中。这没关系,但我希望拼错单词的背景更醒目,这就是我指定红色背景的原因。

嗨之前的配色方案

但是,如果顺序是spellhicolorscheme,则段落中的结果是可以的,但标题中的红色是不受欢迎的粉红色(下图)。这实际上是没有 的原始行为hi,这是有道理的,因为colorscheme可能正在踩hi设置。基于其他测试, 和 的相对位置hicolorscheme重要的。

嗨之后的colorschme

我想我会选择第一个选项,因为至少亮点似乎在所有内容中,但如果使用红色背景会很好。以下是第一种情况的 .vimrc 行。任何解决此问题的指导将不胜感激。

" Turn on spell-checker
set spell

" Color scheme
" To pick from available list do:
" :colorscheme _space_ Tab
" Reasonable options seem to be:  koehler, murphy, elford
colorscheme koehler

" Using the colorscheme with spellchecking results in highlights with
" pink text on red background, which is hard to read, so change the highlight color.
" Color table:  https://github.com/guns/xterm-color-table.vim
" Use white text on red background for misspelled words.
hi SpellBad ctermfg=015 ctermbg=009 cterm=bold guibg=#ff0000 guifg=#000000 gui=bold
于 2020-04-19T07:55:37.713 回答