diff options
Diffstat (limited to 'ftplugin/zig.vim')
-rw-r--r-- | ftplugin/zig.vim | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/ftplugin/zig.vim b/ftplugin/zig.vim index 675a3bcf..dc9af384 100644 --- a/ftplugin/zig.vim +++ b/ftplugin/zig.vim @@ -21,24 +21,31 @@ setlocal formatoptions-=t formatoptions+=croql setlocal suffixesadd=.zig,.zir setlocal makeprg=zig\ build -if has("comments") +if has('comments') setlocal comments=:///,://!,://,:\\\\ setlocal commentstring=//\ %s endif if has('find_in_path') - let &l:includeexpr='substitute(v:fname, "^([^.])$", "\1.zig", "")' - let &l:include='\v(\@import>|\@cInclude>|^\s*\#\s*include)' - let &l:define='\v(<fn>|<const>|<var>|^\s*\#\s*define)' + let &l:includeexpr='substitute(v:fname, "^([^.])$", "\1.zig", "")' + let &l:include='\v(\@import>|\@cInclude>|^\s*\#\s*include)' endif -if has('eval') - execute 'setlocal path+=' . json_decode(system('zig env'))['std_dir'] +let &l:define='\v(<fn>|<const>|<var>|^\s*\#\s*define)' + +if exists("*json_decode") && executable('zig') + silent let s:env = system('zig env') + if v:shell_error == 0 + let &l:path=json_decode(s:env)['std_dir'] . ',' . &l:path + endif + unlet! s:env endif -let b:undo_ftplugin = "setl et< ts< sts< sw< fo< sua< mp< com< cms<" +let b:undo_ftplugin = + \ 'setl et< ts< sts< sw< fo< sua< mp< com< cms< inex< inc< pa<' let &cpo = s:cpo_orig unlet s:cpo_orig +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab endif |