mirror of
https://github.com/leafOfTree/vim-vue-plugin.git
synced 2026-03-16 03:25:05 +08:00
feat: support syntax in $HOME/.vim
This commit is contained in:
@@ -16,7 +16,6 @@ Vim syntax and indent plugin for `.vue` and `.wpy` files. Mainly inspired by [mx
|
||||
- Or manually, clone this plugin, drop it in custom `path/to/this_plugin`, and add it to `rtp` in vimrc
|
||||
|
||||
set rpt+=path/to/this_plugin
|
||||
|
||||
|
||||
Plugin works if filetype is set to `javascript.vue`. Please stay up to date. Any issue or pull request is welcome.
|
||||
|
||||
@@ -34,16 +33,16 @@ Set global variable to `1` to enable or `0` to disable.
|
||||
|
||||
Ex:
|
||||
|
||||
let g:vim_vue_plugin_has_init_indent = 1
|
||||
let g:vim_uue_plugin_load_full_syntax = 1
|
||||
|
||||
| variable | description | default |
|
||||
|---------------------------------------|--------------------------------------------------------------------------------------------------------------------------------|----------------------------|
|
||||
| `g:vim_vue_plugin_has_init_indent` | initially indent one tab inside `style/script` tags. | 0 for `.vue`. 1 for `.wpy` |
|
||||
| `g:vim_uue_plugin_load_full_syntax`\* | enable: load all syntax files in `runtimepath`. disable: only in `syntax` and `vimfiles/syntax` | 0 |
|
||||
| `g:vim_uue_plugin_load_full_syntax`\* | enable: load all syntax files in `runtimepath`. disable: only in `syntax`, `~/.vim/syntax` and `$VIM/vimfiles/syntax` | 0 |
|
||||
| `g:vim_uue_plugin_use_pug`\* | enable `vim-pug` pug syntax for `<template lang="pug">`. | 0 |
|
||||
| `g:vim_vue_plugin_debug` | echo debug message in `messages` list. Useful to debug if indent errors occur. | 0 |
|
||||
| `g:vim_vue_plugin_has_init_indent` | initially indent one tab inside `style/script` tags. | 0 for `.vue`. 1 for `.wpy` |
|
||||
|
||||
\*: May be slow if enabled. Find balance between syntax highlight and speed. Anyway, Custom syntax could be added in `vimfiles/syntax/*.vim`.
|
||||
\*: May be slow if enabled. Find balance between syntax highlight and speed. By the way, custom syntax could be added in `~/.vim/syntax` or `$VIM/vimfiles/syntax`.
|
||||
|
||||
## Screenshot
|
||||
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
" Language: Vue (Wepy)
|
||||
" Maintainer: leafOfTree <leafvocation@gmail.com>
|
||||
"
|
||||
" CREDITS: Inspired by mxw/vim-jsx.
|
||||
"
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
se sw=2 ts=2
|
||||
|
||||
|
||||
@@ -3,42 +3,45 @@
|
||||
"
|
||||
" Language: Vue (Wepy)
|
||||
" Maintainer: leaf <leafvocation@gmail.com>
|
||||
" Depends: pangloss/vim-javascript
|
||||
"
|
||||
" CREDITS: Inspired by mxw/vim-jsx.
|
||||
"
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
function! s:LoadDefaultSyntax(group, type)
|
||||
unlet! b:current_syntax
|
||||
exec 'syn include '.a:group.' $VIMRUNTIME/syntax/'.a:type.'.vim'
|
||||
exec 'silent! syn include '.a:group.' $VIM/vimfiles/syntax/'.a:type.'.vim'
|
||||
exec 'silent! syn include '.a:group.' $HOME/.vim/syntax/'.a:type.'.vim'
|
||||
endfunction
|
||||
|
||||
function! s:LoadFullSyntax(group, type)
|
||||
unlet! b:current_syntax
|
||||
exec 'syn include '.a:group.' syntax/'.a:type.'.vim'
|
||||
endfunction
|
||||
|
||||
" Load syntax/*.vim to syntax group
|
||||
if exists("g:vim_vue_plugin_load_full_syntax")
|
||||
\ && g:vim_vue_plugin_load_full_syntax == 1
|
||||
unlet! b:current_syntax
|
||||
syn include @HTMLSyntax syntax/html.vim
|
||||
call s:LoadFullSyntax('@HTMLSyntax', 'html')
|
||||
call s:LoadFullSyntax('@CSSSyntax', 'css')
|
||||
|
||||
unlet! b:current_syntax
|
||||
syn include @CSSSyntax syntax/css.vim
|
||||
" Load javascript syntax file as syntax group if
|
||||
" pangloss/vim-javascript is not used
|
||||
if hlexists('jsNoise') == 0
|
||||
call s:LoadFullSyntax('@jsAll', 'javascript')
|
||||
endif
|
||||
else
|
||||
unlet! b:current_syntax
|
||||
syn include @HTMLSyntax $VIMRUNTIME/syntax/html.vim
|
||||
silent! syn include @HTMLSyntax $VIMRUNTIME/../vimfiles/syntax/html.vim
|
||||
|
||||
unlet! b:current_syntax
|
||||
syn include @CSSSyntax $VIMRUNTIME/syntax/css.vim
|
||||
silent! syn include @HTMLSyntax $VIMRUNTIME/../vimfiles/syntax/css.vim
|
||||
endif
|
||||
|
||||
" Load default javascript syntax file as syntax group if
|
||||
" pangloss/vim-javascript is not used
|
||||
|
||||
if hlexists('jsNoise') == 0
|
||||
unlet! b:current_syntax
|
||||
syn include @jsAll $VIMRUNTIME/syntax/javascript.vim
|
||||
silent! syn include @jsAll $VIMRUNTIME/../vimfiles/syntax/javascript.vim
|
||||
call s:LoadDefaultSyntax('@HTMLSyntax', 'html')
|
||||
call s:LoadDefaultSyntax('@CSSSyntax', 'css')
|
||||
if hlexists('jsNoise') == 0
|
||||
call s:LoadDefaultSyntax('@jsAll', 'javascript')
|
||||
endif
|
||||
endif
|
||||
|
||||
" Load vim-pug syntax if pug support is enabled
|
||||
if exists("g:vim_vue_plugin_use_pug")
|
||||
\ && g:vim_vue_plugin_use_pug == 1
|
||||
unlet! b:current_syntax
|
||||
syn include @PugSyntax syntax/pug.vim
|
||||
call s:LoadFullSyntax('@PugSyntax', 'pug')
|
||||
endif
|
||||
|
||||
let b:current_syntax = 'vue'
|
||||
|
||||
Reference in New Issue
Block a user