feat: change vue AttrKey highlight link to 'Type'

This commit is contained in:
yemai
2019-06-14 12:21:20 +08:00
parent c822a02305
commit 011169653d
3 changed files with 16 additions and 10 deletions

View File

@@ -90,13 +90,14 @@ setlocal indentexpr=GetVueIndent()
" "
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
function! GetVueIndent() function! GetVueIndent()
let curline = getline(v:lnum)
let prevline = getline(v:lnum - 1) let prevline = getline(v:lnum - 1)
let cursyns = s:SynsEOL(v:lnum)
let prevsyns = s:SynsEOL(v:lnum - 1) let prevsyns = s:SynsEOL(v:lnum - 1)
let cursyn = get(cursyns, 0)
let prevsyn = get(prevsyns, 0) let prevsyn = get(prevsyns, 0)
let curline = getline(v:lnum)
let cursyns = s:SynsEOL(v:lnum)
let cursyn = get(cursyns, 0)
if s:SynPug(prevsyn) if s:SynPug(prevsyn)
call LogMsg('syntax: pug') call LogMsg('syntax: pug')
let ind = GetPugIndent() let ind = GetPugIndent()

View File

@@ -1,10 +1,12 @@
syntax match VueComponentName containedin=htmlTagN '\v<[a-zA-Z0-9]+(-[a-zA-Z0-9]+)+>' syntax match VueComponentName containedin=htmlTagN '\v<[a-zA-Z0-9]+(-[a-zA-Z0-9]+)+>'
syntax match VueAttr '\v(\S)@<![v:\@][^\=]+(\=\"[^"]*\")?' syntax match VueAttr '\v(\S)@<![v:\@][^\=]*(\=\"[^"]*\")?'
\ containedin=htmlTag \ containedin=htmlTag
\ contains=VueKey,VueValue,VueInject \ contains=VueKey,VueValue
syntax match VueKey contained '\v[v:\@][^\=]+' keepend
syntax match VueValue contained '\v\"\zs[^"]*\ze\"'
\ contains=VueInject,javaScriptStringS,javaScriptRepeat
syntax match VueKey contained '\v[v:\@][^\=]+'
syntax match VueValue contains=VueInject contained '\v\"\zs[^"]*\ze\"'
syntax match VueInject contained '\v\$\w*' syntax match VueInject contained '\v\$\w*'
syntax region VueExpression syntax region VueExpression
@@ -15,7 +17,8 @@ syntax region VueExpression
\ end="}}" \ end="}}"
syntax region VueExpression syntax region VueExpression
\ containedin=vueTemplate,vueValue,htmlString \ containedin=vueTemplate,VueValue,htmlString,htmlValue
\ contains=@jsAll
\ matchgroup=VueBrace \ matchgroup=VueBrace
\ start="{{" \ start="{{"
\ end="}}" \ end="}}"
@@ -28,7 +31,7 @@ syntax match VueAttr '\v(\S)@<!wx[^\=]+(\=\"[^"]*\")?'
syntax match VueKey contained '\vwx[^\=]+' syntax match VueKey contained '\vwx[^\=]+'
highlight link VueAttr Comment highlight link VueAttr Comment
highlight link VueKey PreProc highlight link VueKey Type
highlight link VueInject Constant highlight link VueInject Constant
highlight link VueBrace PreProc highlight link VueBrace Type
highlight link VueComponentName Statement highlight link VueComponentName Statement

View File

@@ -60,6 +60,8 @@ endfunction
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Load syntax/*.vim to syntax group " Load syntax/*.vim to syntax group
call s:LoadSyntax('@HTMLSyntax', 'html') call s:LoadSyntax('@HTMLSyntax', 'html')
" Load vue-html syntax
runtime syntax/vue-html.vim runtime syntax/vue-html.vim
" Avoid overload " Avoid overload