Я использую тот же файл .vimrc для GVim и командной строки vim. Я стараюсь использовать вкладки в GVim и буферах в командной строке vim, поэтому у меня установлен мой .vimrc, чтобы упростить работу с обоими из них:
" Movement between tabs OR buffers
nnoremap L :call MyNext()<CR>
nnoremap H :call MyPrev()<CR>
" MyNext() and MyPrev(): Movement between tabs OR buffers
function! MyNext()
if exists( '*tabpagenr' ) && tabpagenr('$') != 1
" Tab support && tabs open
normal gt
else
" No tab support, or no tabs open
execute ":bnext"
endif
endfunction
function! MyPrev()
if exists( '*tabpagenr' ) && tabpagenr('$') != '1'
" Tab support && tabs open
normal gT
else
" No tab support, or no tabs open
execute ":bprev"
endif
endfunction
Это сгибает существующие сопоставления для H и L, но он делает переключение между файлами очень быстрым и легким. Просто нажмите «H» для следующего и «L» для предыдущего; независимо от того, используете ли вы вкладки или буферы, вы получите ожидаемые результаты.