Os itens de sintaxe nos quais o Vim destacará erros de ortografia são definidos usando os clusters @Spell
e @NoSpell
. Consulte :help spell-syntax
(e o restante dos arquivos :help spell
e :help syntax
) para obter detalhes completos.
A solução rápida e suja para obter o resultado desejado é criar um novo arquivo no diretório de configuração do Vim: .vim/after/syntax/html.vim
com o conteúdo:
syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,@Spell
syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,@Spell
Essas linhas definem o destaque da sintaxe dos atributos HTML e foram copiadas do arquivo html.vim incluído nos arquivos de sintaxe padrão do Vim. Em seguida, adicionei o @Spell
cluster ao contains
campo para ativar a verificação ortográfica em cada item de sintaxe.
Para aplicar isso apenas aos atributos "title" e "data- *", é necessário ajustar a expressão regular usada para corresponder os itens e editar um pouco mais extensamente a maneira como o destaque HTML funciona. Aqui está uma solução que funciona apenas para os atributos "title":
syn region htmlStringSpell contained start=+title=["']+hs=s+6 end=+["']+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc,@Spell containedin=htmlTag,ScriptTag
hi def link htmlStringSpell String
NB
- A expressão regular agora inclui o nome do
title
atributo e um deslocamento para que essa parte do item de sintaxe não seja incluída no destaque. (Veja :help syn-pattern-offset
)
- O item de sintaxe agora tem seu próprio nome e, portanto, precisa (i) ser
containedin
todos os itens de sintaxe em que htmlStrings estão contidos por meio de suas respectivas contains
configurações. (ii) ter seu próprio destaque aplicado.