没有任何特定规律,我的 vim 在选项卡的位置显示下划线(见下文)。
有时文本也会发生这种情况:我输入并带有下划线。
可能是什么原因?
这可能是因为您正在编辑一个 html 文件并且下划线附近的文本位于<a>
标签内。
要禁用此功能,您可以添加let html_no_rendering=1
到您的~/.vimrc
. 但是,此设置也会禁用 html 文件的粗体和斜体样式。
如果您只想禁用下划线,请参阅:help html.vim
。在那里,它为您提供了有关您需要重新定义哪些突出显示组的说明underline
。
此方法(从其他响应拼凑而成)将仅在链接的文本部分下启用下划线,而无需修改完整的 html.vim 语法文件。
将以下内容粘贴到该文件中:
" disable the current htmlLink syntax
highlight link htmlLink text
" enable a new htmlLink syntax
syn region htmlLink start="<a\>\_[^>]*\<href\>" end="</a>"me=e-4 keepend contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLinkText,javaScript,@htmlPreproc
syn match htmlLinkText contained contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLinkText,javaScript,@htmlPreproc "^\s*\zs.\{-}\ze\s*$"
syn match htmlLinkText contained contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLinkText,javaScript,@htmlPreproc "\S.\{-}\ze\s*$"
" enable the new syntax
hi def link htmlLinkText Underlined
这可能是两件事之一:
'list'
设置了:(试试:set list?
,如果这说list
,试试:set nolist
)<F3>
。如果显示突出显示组,请键入hi GROUPNAME
以确认突出显示(将 GROUPNAME 替换为尖括号中最后命名的组)。然后调整您的配色方案以摆脱下划线。映射以识别高亮组:
map <F3> :echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<' . synIDattr(synID(line("."),col("."),0),"name") . "> lo<" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">" . " FG:" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"fg#") . " BG:" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"bg#")<CR>