mirror of
https://github.com/leafOfTree/vim-vue-plugin.git
synced 2026-03-16 03:25:05 +08:00
37 lines
1.6 KiB
VimL
37 lines
1.6 KiB
VimL
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"
|
|
" Config {{{
|
|
"
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
let s:highlight_vue_keyword = exists("g:vim_vue_plugin_highlight_vue_keyword")
|
|
\ && g:vim_vue_plugin_highlight_vue_keyword == 1
|
|
|
|
if !s:highlight_vue_keyword | finish | endif
|
|
"}}}
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
"
|
|
" Syntax highlight {{{
|
|
"
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
let s:vue_keywords = 'name parent functional delimiters comments components directives filters extends mixins inheritAttrs model props propsData data computed watch methods template render renderError inject provide beforeCreate created beforeMount mounted beforeUpdate updated activated deactivated beforeDestroy destroyed'
|
|
|
|
let s:vue_keywords_regexp = join(split(s:vue_keywords, ' '), '|')
|
|
execute 'syntax match vueObjectKey /\v<('.s:vue_keywords_regexp.')\ze\s*:/'
|
|
\.' containedin=jsObject,javascriptVueScript'
|
|
\.' skipwhite skipempty nextgroup=jsObjectValue'
|
|
|
|
execute 'syntax match vueObjectFuncName /\v<('.s:vue_keywords_regexp.')\ze\_s*\(/'
|
|
\.' containedin=jsObject,javascriptVueScript'
|
|
\.' skipwhite skipempty nextgroup=jsFuncArgs'
|
|
|
|
execute 'syntax match vueObjectFuncKey /\v<('.s:vue_keywords_regexp.')\ze\s*:\s*function>/'
|
|
\.' containedin=jsObject,javascriptVueScript'
|
|
\.' skipwhite skipempty nextgroup=jsFuncArgs'
|
|
|
|
highlight default link vueObjectKey Constant
|
|
highlight default link vueObjectFuncName Constant
|
|
highlight default link vueObjectFuncKey Constant
|
|
"}}}
|
|
" vim: fdm=marker
|