diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2018-06-03 16:30:38 +1200 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2018-06-03 16:30:38 +1200 |
commit | 1fe646dbf7e453a8c230bee6752d5ba83e5b7f5b (patch) | |
tree | a355ec4dca97714d0b61a326a435493320bcb73e /vim/after/ftplugin/markdown/suspend_autoformat.vim | |
parent | Merge branch 'release/v0.43.0' (diff) | |
parent | Bump VERSION (diff) | |
download | dotfiles-1fe646dbf7e453a8c230bee6752d5ba83e5b7f5b.tar.gz dotfiles-1fe646dbf7e453a8c230bee6752d5ba83e5b7f5b.zip |
Merge branch 'release/v0.44.0'v0.44.0
* release/v0.44.0:
Bump VERSION
Correct logic of Markdown/text spell checking
Vim ftplugin: hold autoformat in *.md code blocks
Remove accidentally committed ";" file
Diffstat (limited to 'vim/after/ftplugin/markdown/suspend_autoformat.vim')
-rw-r--r-- | vim/after/ftplugin/markdown/suspend_autoformat.vim | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/vim/after/ftplugin/markdown/suspend_autoformat.vim b/vim/after/ftplugin/markdown/suspend_autoformat.vim new file mode 100644 index 00000000..b2de7828 --- /dev/null +++ b/vim/after/ftplugin/markdown/suspend_autoformat.vim @@ -0,0 +1,34 @@ +" Only do this when not done yet for this buffer +" Also do nothing if 'compatible' enabled, or if no autocmd feature, or if Vim +" is too old to support the needed autocmd events +if exists('b:did_ftplugin_markdown_suspend_autoformat') || &compatible + finish +endif +if !has('autocmd') || v:version < 700 + finish +endif +let b:did_ftplugin_markdown_suspend_autoformat = 1 +if exists('b:undo_ftplugin') + let b:undo_ftplugin = b:undo_ftplugin + \ . '|unlet b:did_ftplugin_markdown_suspend_autoformat' +endif + +" When editing a code block, quietly remove auto 'a' from 'formatoptions' if +" present, flagging that we've done so; restore it once we move away. +autocmd BufWinEnter,CursorMoved,CursorMovedI,WinEnter + \ <buffer> + \ if getline('.') =~# '\m^ ' + \ | if &formatoptions =~# '\ma' + \ | setlocal formatoptions-=a + \ | let b:markdown_suspend_autoformat_suspended = 1 + \ | endif + \ | elseif exists('b:markdown_suspend_autoformat_suspended') + \ | setlocal formatoptions+=a + \ | unlet b:markdown_suspend_autoformat_suspended + \ | endif + +" Undo all the above +if exists('b:undo_ftplugin') + let b:undo_ftplugin = b:undo_ftplugin + \ . '|setlocal formatoptions<' +endif |