diff options
| author | Adam Stankiewicz <sheerun@sher.pl> | 2018-12-26 10:41:57 +0100 | 
|---|---|---|
| committer | Adam Stankiewicz <sheerun@sher.pl> | 2018-12-26 10:41:57 +0100 | 
| commit | d43b70d93987c94d15a352cf0026fb93d3317cc8 (patch) | |
| tree | 74470b6cc30ddb4ef8ceb2ec557bc32ccccb5ebb /ftplugin | |
| parent | ec1c94306953b678bb36572897bd218fe6c76506 (diff) | |
| download | vim-polyglot-d43b70d93987c94d15a352cf0026fb93d3317cc8.tar.gz vim-polyglot-d43b70d93987c94d15a352cf0026fb93d3317cc8.zip | |
Update
Diffstat (limited to '')
| -rw-r--r-- | ftplugin/julia.vim | 7 | ||||
| -rw-r--r-- | ftplugin/mustache.vim | 4 | ||||
| -rw-r--r-- | ftplugin/rust.vim | 276 | ||||
| -rw-r--r-- | ftplugin/terraform.vim | 4 | ||||
| -rw-r--r-- | ftplugin/vue.vim | 5 | 
5 files changed, 148 insertions, 148 deletions
| diff --git a/ftplugin/julia.vim b/ftplugin/julia.vim index caddabaf..bed55a8f 100644 --- a/ftplugin/julia.vim +++ b/ftplugin/julia.vim @@ -34,7 +34,10 @@ if exists("loaded_matchit")    " note: begin_keywords must contain all blocks in order    " for nested-structures-skipping to work properly    let b:julia_begin_keywords = '\%(\%(\.\s*\)\@<!\|\%(@\s*.\s*\)\@<=\)\<\%(\%(staged\)\?function\|macro\|begin\|mutable\s\+struct\|\%(mutable\s\+\)\@<!struct\|\%(abstract\|primitive\)\s\+type\|\%(\(abstract\|primitive\)\s\+\)\@<!type\|immutable\|let\|do\|\%(bare\)\?module\|quote\|if\|for\|while\|try\)\>' -  let s:macro_regex = '@\%(#\@!\S\)\+\s\+' +  " note: the following regex not only recognizes macros, but also local/global keywords. +  " the purpose is recognizing things like `@inline myfunction()` +  " or `global myfunction(...)` etc, for matchit and block movement functionality +  let s:macro_regex = '\%(@\%(#\@!\S\)\+\|\<\%(local\|global\)\)\s\+'    let s:nomacro = '\%(' . s:macro_regex . '\)\@<!'    let s:yesmacro = s:nomacro . '\%('. s:macro_regex . '\)\+'    let b:julia_begin_keywordsm = '\%(' . s:yesmacro . b:julia_begin_keywords . '\)\|' @@ -46,7 +49,7 @@ if exists("loaded_matchit")      let [l,c] = [line('.'),col('.')]      let attr = synIDattr(synID(l, c, 1),"name")      let c1 = c -    while attr == 'juliaMacro' +    while attr == 'juliaMacro' || expand('<cword>') =~# '\<\%(global\|local\)\>'        normal! W        if line('.') > l || col('.') == c1          call cursor(l, c) diff --git a/ftplugin/mustache.vim b/ftplugin/mustache.vim index 69b53620..a057c092 100644 --- a/ftplugin/mustache.vim +++ b/ftplugin/mustache.vim @@ -1,9 +1,9 @@  if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'handlebars') == -1 -if exists('g:loaded_mustache_handlebars') && g:loaded_mustache_handlebars +if exists('b:loaded_mustache_handlebars')    finish  endif -let g:loaded_mustache_handlebars = 1 +let b:loaded_mustache_handlebars = 1  let s:cpo_save = &cpo  set cpo&vim diff --git a/ftplugin/rust.vim b/ftplugin/rust.vim index ead86d13..cdc318f1 100644 --- a/ftplugin/rust.vim +++ b/ftplugin/rust.vim @@ -17,176 +17,178 @@ let s:save_cpo = &cpo  set cpo&vim  " vint: +ProhibitAbbreviationOption -augroup rust.vim -    autocmd! - -    if get(b:, 'current_compiler', '') ==# '' -        if strlen(findfile('Cargo.toml', '.;')) > 0 -            compiler cargo -        else -            compiler rustc -        endif -    endif - -    " Variables {{{1 - -    " The rust source code at present seems to typically omit a leader on /*! -    " comments, so we'll use that as our default, but make it easy to switch. -    " This does not affect indentation at all (I tested it with and without -    " leader), merely whether a leader is inserted by default or not. -    if get(g:, 'rust_bang_comment_leader', 0) -        " Why is the `,s0:/*,mb:\ ,ex:*/` there, you ask? I don't understand why, -        " but without it, */ gets indented one space even if there were no -        " leaders. I'm fairly sure that's a Vim bug. -        setlocal comments=s1:/*,mb:*,ex:*/,s0:/*,mb:\ ,ex:*/,:///,://!,:// +if get(b:, 'current_compiler', '') ==# '' +    if strlen(findfile('Cargo.toml', '.;')) > 0 +        compiler cargo      else -        setlocal comments=s0:/*!,m:\ ,ex:*/,s1:/*,mb:*,ex:*/,:///,://!,:// -    endif -    setlocal commentstring=//%s -    setlocal formatoptions-=t formatoptions+=croqnl -    " j was only added in 7.3.541, so stop complaints about its nonexistence -    silent! setlocal formatoptions+=j - -    " smartindent will be overridden by indentexpr if filetype indent is on, but -    " otherwise it's better than nothing. -    setlocal smartindent nocindent - -    if get(g:, 'rust_recommended_style', 1) -        let b:rust_set_style = 1 -        setlocal tabstop=8 shiftwidth=4 softtabstop=4 expandtab -        setlocal textwidth=99 +        compiler rustc      endif +endif -    " This includeexpr isn't perfect, but it's a good start -    setlocal includeexpr=substitute(v:fname,'::','/','g') +" Variables {{{1 + +" The rust source code at present seems to typically omit a leader on /*! +" comments, so we'll use that as our default, but make it easy to switch. +" This does not affect indentation at all (I tested it with and without +" leader), merely whether a leader is inserted by default or not. +if get(g:, 'rust_bang_comment_leader', 0) +    " Why is the `,s0:/*,mb:\ ,ex:*/` there, you ask? I don't understand why, +    " but without it, */ gets indented one space even if there were no +    " leaders. I'm fairly sure that's a Vim bug. +    setlocal comments=s1:/*,mb:*,ex:*/,s0:/*,mb:\ ,ex:*/,:///,://!,:// +else +    setlocal comments=s0:/*!,m:\ ,ex:*/,s1:/*,mb:*,ex:*/,:///,://!,:// +endif +setlocal commentstring=//%s +setlocal formatoptions-=t formatoptions+=croqnl +" j was only added in 7.3.541, so stop complaints about its nonexistence +silent! setlocal formatoptions+=j + +" smartindent will be overridden by indentexpr if filetype indent is on, but +" otherwise it's better than nothing. +setlocal smartindent nocindent + +if get(g:, 'rust_recommended_style', 1) +    let b:rust_set_style = 1 +    setlocal tabstop=8 shiftwidth=4 softtabstop=4 expandtab +    setlocal textwidth=99 +endif + +" This includeexpr isn't perfect, but it's a good start +setlocal includeexpr=substitute(v:fname,'::','/','g') -    setlocal suffixesadd=.rs +setlocal suffixesadd=.rs -    if exists("g:ftplugin_rust_source_path") -        let &l:path=g:ftplugin_rust_source_path . ',' . &l:path +if exists("g:ftplugin_rust_source_path") +    let &l:path=g:ftplugin_rust_source_path . ',' . &l:path +endif + +if exists("g:loaded_delimitMate") +    if exists("b:delimitMate_excluded_regions") +        let b:rust_original_delimitMate_excluded_regions = b:delimitMate_excluded_regions      endif -    if exists("g:loaded_delimitMate") -        if exists("b:delimitMate_excluded_regions") -            let b:rust_original_delimitMate_excluded_regions = b:delimitMate_excluded_regions -        endif +    augroup rust.vim.DelimitMate +        autocmd!          autocmd User delimitMate_map   :call rust#delimitmate#onMap()          autocmd User delimitMate_unmap :call rust#delimitmate#onUnmap() -    endif +    augroup END +endif -    " Integration with auto-pairs (https://github.com/jiangmiao/auto-pairs) -    if exists("g:AutoPairsLoaded") && !get(g:, 'rust_keep_autopairs_default', 0) -        let b:AutoPairs = {'(':')', '[':']', '{':'}','"':'"', '`':'`'} -    endif +" Integration with auto-pairs (https://github.com/jiangmiao/auto-pairs) +if exists("g:AutoPairsLoaded") && !get(g:, 'rust_keep_autopairs_default', 0) +    let b:AutoPairs = {'(':')', '[':']', '{':'}','"':'"', '`':'`'} +endif -    if has("folding") && get(g:, 'rust_fold', 0) -        let b:rust_set_foldmethod=1 -        setlocal foldmethod=syntax -        if g:rust_fold == 2 -            setlocal foldlevel< -        else -            setlocal foldlevel=99 -        endif +if has("folding") && get(g:, 'rust_fold', 0) +    let b:rust_set_foldmethod=1 +    setlocal foldmethod=syntax +    if g:rust_fold == 2 +        setlocal foldlevel< +    else +        setlocal foldlevel=99      endif +endif -    if has('conceal') && get(g:, 'rust_conceal', 0) -        let b:rust_set_conceallevel=1 -        setlocal conceallevel=2 -    endif +if has('conceal') && get(g:, 'rust_conceal', 0) +    let b:rust_set_conceallevel=1 +    setlocal conceallevel=2 +endif -    " Motion Commands {{{1 +" Motion Commands {{{1 -    " Bind motion commands to support hanging indents -    nnoremap <silent> <buffer> [[ :call rust#Jump('n', 'Back')<CR> -    nnoremap <silent> <buffer> ]] :call rust#Jump('n', 'Forward')<CR> -    xnoremap <silent> <buffer> [[ :call rust#Jump('v', 'Back')<CR> -    xnoremap <silent> <buffer> ]] :call rust#Jump('v', 'Forward')<CR> -    onoremap <silent> <buffer> [[ :call rust#Jump('o', 'Back')<CR> -    onoremap <silent> <buffer> ]] :call rust#Jump('o', 'Forward')<CR> +" Bind motion commands to support hanging indents +nnoremap <silent> <buffer> [[ :call rust#Jump('n', 'Back')<CR> +nnoremap <silent> <buffer> ]] :call rust#Jump('n', 'Forward')<CR> +xnoremap <silent> <buffer> [[ :call rust#Jump('v', 'Back')<CR> +xnoremap <silent> <buffer> ]] :call rust#Jump('v', 'Forward')<CR> +onoremap <silent> <buffer> [[ :call rust#Jump('o', 'Back')<CR> +onoremap <silent> <buffer> ]] :call rust#Jump('o', 'Forward')<CR> -    " Commands {{{1 +" Commands {{{1 -    " See |:RustRun| for docs -    command! -nargs=* -complete=file -bang -buffer RustRun call rust#Run(<bang>0, <q-args>) +" See |:RustRun| for docs +command! -nargs=* -complete=file -bang -buffer RustRun call rust#Run(<bang>0, <q-args>) -    " See |:RustExpand| for docs -    command! -nargs=* -complete=customlist,rust#CompleteExpand -bang -buffer RustExpand call rust#Expand(<bang>0, <q-args>) +" See |:RustExpand| for docs +command! -nargs=* -complete=customlist,rust#CompleteExpand -bang -buffer RustExpand call rust#Expand(<bang>0, <q-args>) -    " See |:RustEmitIr| for docs -    command! -nargs=* -buffer RustEmitIr call rust#Emit("llvm-ir", <q-args>) +" See |:RustEmitIr| for docs +command! -nargs=* -buffer RustEmitIr call rust#Emit("llvm-ir", <q-args>) -    " See |:RustEmitAsm| for docs -    command! -nargs=* -buffer RustEmitAsm call rust#Emit("asm", <q-args>) +" See |:RustEmitAsm| for docs +command! -nargs=* -buffer RustEmitAsm call rust#Emit("asm", <q-args>) -    " See |:RustPlay| for docs -    command! -range=% RustPlay :call rust#Play(<count>, <line1>, <line2>, <f-args>) +" See |:RustPlay| for docs +command! -range=% RustPlay :call rust#Play(<count>, <line1>, <line2>, <f-args>) -    " See |:RustFmt| for docs -    command! -buffer RustFmt call rustfmt#Format() +" See |:RustFmt| for docs +command! -buffer RustFmt call rustfmt#Format() -    " See |:RustFmtRange| for docs -    command! -range -buffer RustFmtRange call rustfmt#FormatRange(<line1>, <line2>) +" See |:RustFmtRange| for docs +command! -range -buffer RustFmtRange call rustfmt#FormatRange(<line1>, <line2>) -    " See |:RustInfo| for docs -    command! -bar RustInfo call rust#debugging#Info() +" See |:RustInfo| for docs +command! -bar RustInfo call rust#debugging#Info() -    " See |:RustInfoToClipboard| for docs -    command! -bar RustInfoToClipboard call rust#debugging#InfoToClipboard() +" See |:RustInfoToClipboard| for docs +command! -bar RustInfoToClipboard call rust#debugging#InfoToClipboard() -    " See |:RustInfoToFile| for docs -    command! -bar -nargs=1 RustInfoToFile call rust#debugging#InfoToFile(<f-args>) +" See |:RustInfoToFile| for docs +command! -bar -nargs=1 RustInfoToFile call rust#debugging#InfoToFile(<f-args>) -    " See |:RustTest| for docs -    command! -buffer -nargs=* -bang RustTest call rust#Test(<bang>0, <q-args>) +" See |:RustTest| for docs +command! -buffer -nargs=* -bang RustTest call rust#Test(<bang>0, <q-args>) -    if !exists("b:rust_last_rustc_args") || !exists("b:rust_last_args") -        let b:rust_last_rustc_args = [] -        let b:rust_last_args = [] -    endif +if !exists("b:rust_last_rustc_args") || !exists("b:rust_last_args") +    let b:rust_last_rustc_args = [] +    let b:rust_last_args = [] +endif -    " Cleanup {{{1 - -    let b:undo_ftplugin = " -                \ setlocal formatoptions< comments< commentstring< includeexpr< suffixesadd< -                \|if exists('b:rust_set_style') -                    \|setlocal tabstop< shiftwidth< softtabstop< expandtab< textwidth< -                    \|endif -                    \|if exists('b:rust_original_delimitMate_excluded_regions') -                        \|let b:delimitMate_excluded_regions = b:rust_original_delimitMate_excluded_regions -                        \|unlet b:rust_original_delimitMate_excluded_regions -                        \|else -                            \|unlet! b:delimitMate_excluded_regions +" Cleanup {{{1 + +let b:undo_ftplugin = " +            \ setlocal formatoptions< comments< commentstring< includeexpr< suffixesadd< +            \|if exists('b:rust_set_style') +                \|setlocal tabstop< shiftwidth< softtabstop< expandtab< textwidth< +                \|endif +                \|if exists('b:rust_original_delimitMate_excluded_regions') +                    \|let b:delimitMate_excluded_regions = b:rust_original_delimitMate_excluded_regions +                    \|unlet b:rust_original_delimitMate_excluded_regions +                    \|else +                        \|unlet! b:delimitMate_excluded_regions +                        \|endif +                        \|if exists('b:rust_set_foldmethod') +                            \|setlocal foldmethod< foldlevel< +                            \|unlet b:rust_set_foldmethod                              \|endif -                            \|if exists('b:rust_set_foldmethod') -                                \|setlocal foldmethod< foldlevel< -                                \|unlet b:rust_set_foldmethod +                            \|if exists('b:rust_set_conceallevel') +                                \|setlocal conceallevel< +                                \|unlet b:rust_set_conceallevel                                  \|endif -                                \|if exists('b:rust_set_conceallevel') -                                    \|setlocal conceallevel< -                                    \|unlet b:rust_set_conceallevel -                                    \|endif -                                    \|unlet! b:rust_last_rustc_args b:rust_last_args -                                    \|delcommand RustRun -                                    \|delcommand RustExpand -                                    \|delcommand RustEmitIr -                                    \|delcommand RustEmitAsm -                                    \|delcommand RustPlay -                                    \|nunmap <buffer> [[ -                                    \|nunmap <buffer> ]] -                                    \|xunmap <buffer> [[ -                                    \|xunmap <buffer> ]] -                                    \|ounmap <buffer> [[ -                                    \|ounmap <buffer> ]] -                                    \|setlocal matchpairs-=<:> -                                    \|unlet b:match_skip -                                    \" - -    " }}}1 - -    " Code formatting on save +                                \|unlet! b:rust_last_rustc_args b:rust_last_args +                                \|delcommand RustRun +                                \|delcommand RustExpand +                                \|delcommand RustEmitIr +                                \|delcommand RustEmitAsm +                                \|delcommand RustPlay +                                \|nunmap <buffer> [[ +                                \|nunmap <buffer> ]] +                                \|xunmap <buffer> [[ +                                \|xunmap <buffer> ]] +                                \|ounmap <buffer> [[ +                                \|ounmap <buffer> ]] +                                \|setlocal matchpairs-=<:> +                                \|unlet b:match_skip +                                \" + +" }}}1 + +" Code formatting on save +augroup rust.vim.PreWrite +    autocmd!      autocmd BufWritePre <buffer> silent! call rustfmt#PreWrite() -  augroup END  setlocal matchpairs+=<:> diff --git a/ftplugin/terraform.vim b/ftplugin/terraform.vim index ce646377..bbebacbc 100644 --- a/ftplugin/terraform.vim +++ b/ftplugin/terraform.vim @@ -61,9 +61,9 @@ endfunction  augroup terraform    autocmd! -  autocmd VimEnter * +  autocmd BufEnter *          \ command! -nargs=+ -complete=custom,s:commands Terraform execute '!terraform '.<q-args>. ' -no-color' -  autocmd VimEnter * command! -nargs=0 TerraformFmt call terraform#fmt() +  autocmd BufEnter * command! -nargs=0 TerraformFmt call terraform#fmt()    if get(g:, "terraform_fmt_on_save", 1)      autocmd BufWritePre *.tf call terraform#fmt()      autocmd BufWritePre *.tfvars call terraform#fmt() diff --git a/ftplugin/vue.vim b/ftplugin/vue.vim index 2f57d65d..194bf6fe 100644 --- a/ftplugin/vue.vim +++ b/ftplugin/vue.vim @@ -20,9 +20,4 @@ if !exists('g:no_plugin_maps') && !exists('g:no_vue_maps')    nnoremap <silent> <buffer> ][ :call search('^</\(template\<Bar>script\<Bar>style\)', 'W')<CR>  endif -" Run only ESLint for Vue files by default. -" linters specifically for Vue can still be loaded. -let b:ale_linter_aliases = get(get(g:, 'ale_linter_aliases', {}), 'vue', ['vue', 'javascript']) -let b:ale_linters = get(get(g:, 'ale_linters', {}), 'vue', ['eslint', 'vls']) -  endif | 
