Почему vim Drawing подчеркивает место вкладок и как этого избежать? - PullRequest
16 голосов
/ 07 января 2011

Без какой-либо определенной регулярности мой vim отображает подчеркивание на месте вкладок (см. Ниже).

Иногда это также происходит с текстом: я печатаю, и это подчеркивается.

Что может бытьпричина?

enter image description here

Ответы [ 3 ]

25 голосов
/ 07 января 2011

Вероятно, это связано с тем, что вы редактируете HTML-файл, а текст рядом с подчеркиванием находится внутри тега <a>.

Чтобы отключить это, вы можете добавить let html_no_rendering=1 к вашему ~/.vimrc. Однако этот параметр также отключает выделение жирным шрифтом и курсивом для HTML-файлов.

Если вы хотите отключить только подчеркивание, см. :help html.vim. Там он дает вам инструкции о том, какие группы подсветки нужно переопределить без underline.

8 голосов
/ 12 января 2013

Этот метод (добавленный в других ответах) включит подчеркивание только под текстовой частью ссылки без изменения файла полного синтаксиса html.vim.

  1. Создайте файл ~ / .vim / after/syntax/html.vim
  2. Вставьте в этот файл следующее:

    " 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
    
2 голосов
/ 07 января 2011

Возможно, это одна из двух вещей:

  • У вас есть 'list' set: (попробуйте :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>
...