From 673c96515da477e2a4f14d9466153ff0874777aa Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Mon, 27 Aug 2018 17:18:05 +1200 Subject: Improve diff block navigation in Vim with function --- vim/after/ftplugin/diff.vim | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'vim/after/ftplugin') diff --git a/vim/after/ftplugin/diff.vim b/vim/after/ftplugin/diff.vim index 798c7089..a52b3fdd 100644 --- a/vim/after/ftplugin/diff.vim +++ b/vim/after/ftplugin/diff.vim @@ -8,13 +8,25 @@ if exists('g:no_plugin_maps') || exists('g:no_diff_maps') finish endif -" Modify curly braces to navigate by diff block +" Maps using autoloaded function for quoted block movement nnoremap [ - \ :call search('\m^@@', 'bW') + \ :call diff#MoveBlock(v:count1, 1, 0) nnoremap ] - \ :call search('\m^@@', 'W') + \ :call diff#MoveBlock(v:count1, 0, 0) +onoremap [ + \ :call diff#MoveBlock(v:count1, 1, 0) +onoremap ] + \ :call diff#MoveBlock(v:count1, 0, 0) +xnoremap [ + \ :call diff#MoveBlock(v:count1, 1, 1) +xnoremap ] + \ :call diff#MoveBlock(v:count1, 0, 1) let b:undo_ftplugin .= '|nunmap [' \ . '|nunmap ]' + \ . '|ounmap [' + \ . '|ounmap ]' + \ . '|xunmap [' + \ . '|xunmap ]' " Set mappings nmap p -- cgit v1.2.3