From 950f883d89ca0fa7e80cca8f9a0d8cfbade8ebc3 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Mon, 9 Jul 2018 01:15:22 +1200 Subject: Overhaul ftplugin check, lint, tidy - Set 'equalprg' for HTML and Perl - Discard filter#Stable() - Set default :compiler for all applicable filetypes - Change local leader mappings for Perl and shell script merely to set :compiler, rather than running it - Bind global leader mapping for running :lmake! - Bind global leader mappings for applying 'equalprg' and 'formatprg' to the whole buffer, using a new autoloaded helper function vimrc#Anchor() to avoid the cursor jumping around --- vim/after/ftplugin/html.vim | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'vim/after/ftplugin/html.vim') diff --git a/vim/after/ftplugin/html.vim b/vim/after/ftplugin/html.vim index 545076b1..3a08d110 100644 --- a/vim/after/ftplugin/html.vim +++ b/vim/after/ftplugin/html.vim @@ -3,11 +3,21 @@ if &filetype != 'html' || &compatible || v:version < 700 finish endif +" Use tidy(1) for checking and program formatting +compiler tidy +setlocal equalprg=tidy\ -quiet +let b:undo_ftplugin = b:undo_ftplugin + \ . '|setlocal equalprg<' + \ . '|setlocal errorformat<' + \ . '|setlocal makeprg<' + " Set up hooks for timestamp updating -autocmd html_timestamp BufWritePre - \ if exists('b:html_timestamp_check') - \| call html#TimestampUpdate() - \|endif +augroup html_timestamp + autocmd BufWritePre + \ if exists('b:html_timestamp_check') + \| call html#TimestampUpdate() + \|endif +augroup END let b:undo_ftplugin = b:undo_ftplugin \ . '|autocmd! html_timestamp BufWritePre ' @@ -17,13 +27,7 @@ if exists('g:no_plugin_maps') || exists('g:no_html_maps') endif " Set mappings -nnoremap l - \ :call compiler#Make('tidy') nnoremap r \ :call html#UrlLink() -nnoremap t - \ :call filter#Stable('tidy -quiet') let b:undo_ftplugin = b:undo_ftplugin - \ . '|nunmap l' \ . '|nunmap r' - \ . '|nunmap t' -- cgit v1.2.3