aboutsummaryrefslogtreecommitdiff
path: root/vim/after/ftplugin/sh/check.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/after/ftplugin/sh/check.vim')
-rw-r--r--vim/after/ftplugin/sh/check.vim36
1 files changed, 13 insertions, 23 deletions
diff --git a/vim/after/ftplugin/sh/check.vim b/vim/after/ftplugin/sh/check.vim
index e92409cf..499926f3 100644
--- a/vim/after/ftplugin/sh/check.vim
+++ b/vim/after/ftplugin/sh/check.vim
@@ -10,39 +10,29 @@ if exists('b:did_ftplugin_sh_check')
finish
endif
+" Stop here if the user doesn't want ftplugin mappings
+if exists('g:no_plugin_maps') || exists('g:no_sh_maps')
+ finish
+endif
+
" Flag as loaded
let b:did_ftplugin_sh_check = 1
let b:undo_ftplugin = b:undo_ftplugin
\ . '|unlet b:did_ftplugin_sh_check'
-" Build function for checker
-function! s:ShCheck()
- if exists('b:current_compiler')
- let l:save_compiler = b:current_compiler
- endif
- if exists('b:is_bash')
- compiler bash
- elseif exists('b:is_kornshell')
- compiler ksh
- else
- compiler sh
- endif
- lmake!
- lwindow
- if exists('l:save_compiler')
- execute 'compiler ' . l:save_compiler
- endif
-endfunction
-
-" Stop here if the user doesn't want ftplugin mappings
-if exists('g:no_plugin_maps') || exists('g:no_sh_maps')
- finish
+" Choose compiler based on file subtype
+if exists('b:is_bash')
+ let b:sh_check_compiler = 'bash'
+elseif exists('b:is_kornshell')
+ let b:sh_check_compiler = 'ksh'
+else
+ let b:sh_check_compiler = 'sh'
endif
" Define a mapping target
nnoremap <buffer> <silent> <unique>
\ <Plug>ShCheck
- \ :<C-U>call <SID>ShCheck()<CR>
+ \ :<C-U>call compiler#Make(b:sh_check_compiler)<CR>
let b:undo_ftplugin = b:undo_ftplugin
\ . '|nunmap <buffer> <Plug>ShCheck'