dotfiles/nvim/.config/nvim/after/ftplugin/gitrebase.vim
Sanchayan Maity efe3e7e517 Revert "nvim: after: ftplugin: Fix various key mappings"
This reverts commit e6397864d0.

This was actually wrong. nnoremap should be always what we want. For
example, this broke the <Leader>r mapping for gitrebase and would invoke
:Reword from lambdalisue/reword.vim.
2021-05-29 13:39:44 +05:30

31 lines
1 KiB
VimL

" Taken from https://github.com/salcode/vim-interactive-rebase-reverse
" Reverse the order of all lines that do NOT:
" - Begin with #
" - nor are a blank link
function! s:Reverse()
global!/\(^#\)\|\(^$\)/m0
endfunction
" Reverse the order of all commits in the git interactive rebase screen,
" when this filetype (gitrebase) is loaded.
call s:Reverse()
" Set an autocmd to run when the Buffer is written
augroup fe_interactive_rebase_reverse
autocmd!
" Before saving (un)reverse the order of all commits.
autocmd BufWritePre <buffer> call s:Reverse()
" After saving reverse the order of the commits again.
autocmd BufWritePost <buffer> call s:Reverse()
augroup END
" See https://github.com/neovim/neovim/blob/master/runtime/ftplugin/gitrebase.vim
nnoremap <buffer> <silent> <Leader>p :Pick<CR>
nnoremap <buffer> <silent> <Leader>s :Squash<CR>
nnoremap <buffer> <silent> <Leader>e :Edit<CR>
nnoremap <buffer> <silent> <Leader>r :Reword<CR>
nnoremap <buffer> <silent> <Leader>f :Fixup<CR>
nnoremap <buffer> <silent> <Leader>c :Cycle<CR>
setlocal bufhidden=wipe