diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2018-12-04 08:45:38 +1300 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2018-12-04 08:45:38 +1300 |
commit | cebbf704f7e3048624bddb2e96eaa1db5fe9ef16 (patch) | |
tree | f6caa1ed0d681ffe925c2c7dd46cc9cec00081be /vim/after/ftplugin | |
parent | Remove line squeezing function for mail.vim (diff) | |
download | dotfiles-cebbf704f7e3048624bddb2e96eaa1db5fe9ef16.tar.gz dotfiles-cebbf704f7e3048624bddb2e96eaa1db5fe9ef16.zip |
Unseat tidy(1) as HTML 'equalprg'
Instead, remap \= specifically to use tidy(1) to reformat the whole
buffer.
Diffstat (limited to 'vim/after/ftplugin')
-rw-r--r-- | vim/after/ftplugin/html.vim | 11 | ||||
-rw-r--r-- | vim/after/ftplugin/html.vim~ | 35 |
2 files changed, 43 insertions, 3 deletions
diff --git a/vim/after/ftplugin/html.vim b/vim/after/ftplugin/html.vim index b5c387fb..5f7155bc 100644 --- a/vim/after/ftplugin/html.vim +++ b/vim/after/ftplugin/html.vim @@ -3,11 +3,16 @@ if &filetype !=# 'html' finish endif -" Use tidy(1) for checking and program formatting +" Use tidy(1) for checking compiler tidy -setlocal equalprg=tidy\ -quiet let b:undo_ftplugin .= '|unlet b:current_compiler' - \ . '|setlocal equalprg< errorformat< makeprg<' + \ . '|setlocal errorformat< makeprg<' + +" tidy(1) copes fine with formatting an entire document, but not just part of +" it; we map \= to do the former, but don't actually set 'equalprg', falling +" back on the good-enough built-in Vim indentation behavior. +nnoremap <buffer> <Leader>= :<C-U>call html#TidyBuffer()<CR> +let b:undo_ftplugin .= '|nunmap <buffer> <Leader>=' " Set up hooks for timestamp updating augroup html_timestamp diff --git a/vim/after/ftplugin/html.vim~ b/vim/after/ftplugin/html.vim~ new file mode 100644 index 00000000..5f7155bc --- /dev/null +++ b/vim/after/ftplugin/html.vim~ @@ -0,0 +1,35 @@ +" Don't load if the buffer is not actually HTML (e.g. Markdown) +if &filetype !=# 'html' + finish +endif + +" Use tidy(1) for checking +compiler tidy +let b:undo_ftplugin .= '|unlet b:current_compiler' + \ . '|setlocal errorformat< makeprg<' + +" tidy(1) copes fine with formatting an entire document, but not just part of +" it; we map \= to do the former, but don't actually set 'equalprg', falling +" back on the good-enough built-in Vim indentation behavior. +nnoremap <buffer> <Leader>= :<C-U>call html#TidyBuffer()<CR> +let b:undo_ftplugin .= '|nunmap <buffer> <Leader>=' + +" Set up hooks for timestamp updating +augroup html_timestamp + autocmd BufWritePre <buffer> + \ if exists('b:html_timestamp_check') + \| call html#TimestampUpdate() + \|endif +augroup END +let b:undo_ftplugin .= '|execute ''autocmd! html_timestamp''' + \ . '|augroup! html_timestamp' + +" Stop here if the user doesn't want ftplugin mappings +if exists('g:no_plugin_maps') || exists('g:no_html_maps') + finish +endif + +" Transform URLs to HTML anchors +nnoremap <buffer> <LocalLeader>r + \ :<C-U>call html#UrlLink()<CR> +let b:undo_ftplugin .= '|nunmap <buffer> <LocalLeader>r' |