No Gnome-terminal, que pode apenas pressionar Alt+ ( 1, 2, 3, etc.) para mudar para guias específicas. Também posso usar Ctrl+ ( PgUp/ PgDn) para percorrer as guias (reconhecidamente menos conveniente, mas pode ser remapeado).
Se eu quiser usar as guias vim em vez das guias do terminal gnome, digitar :tabn
e :tabp
é bastante complicado. Eu poderia mapeá-los para atalhos de teclado, mas isso ainda é muito menos conveniente do que pular diretamente para a guia 4 com Alt+ 4.
Existe uma maneira mais rápida de alternar entre as guias no vim?
nnn
g
t
, mas quero fazê-lo rapidamente ,Alt + nnn
ou seja, ouCtrl + nnn
. MasAlt + n
já é adotado pelo gnome-terminal, e a ligação aCtrl + n
parece não ter nenhum efeito.nnn
g
t
? Por exemplo:map <F2> 2gt
,. Há o problema que<F1>
muitas vezes é mapeado pelo GNOME para sua instalação de ajuda. Ou você poderia escolher alguma chave que você não usa com freqüência no modo normal, dizem que a vírgula, e mapeá-lo como este::map , gt
. Depois1,
, você será levado para a guia 1,2,
para a guia 2 e assim por diante.Por que não fazer uso do seu líder (meu líder está mapeado para Space):
Você pode usar as configurações abaixo para alternar entre a guia atual e a última ativa (aqui está mapeada para Ctrl+ L, ou seja,
<c-l>
):fonte
au TabLeave * let g:lasttab = tabpagenr()
parac-l
funcionar: stackoverflow.com/questions/2119754/...<leader>h/l
paragT
egt
Esta é a maneira mais fácil que eu encontrei, de alternar entre as guias de maneira mais rápida e simples.
Adicione as próximas linhas ao seu .vimrc e aproveite, mais truques sobre as guias do vim aqui .
Agora você pode usar Ctrl ←para ir para a esquerda e Ctrl →para a direita.
Ou apenas use:
1gtpara ir para a guia um,
2gtpara ir para a guia dois,
3gtpara ir para a guia três, etc ... agora você tem a ideia.
fonte
Como estou em um Mac e não estou usando o MacVim (mas o vim simples em um terminal), tive algumas dificuldades com combinações de teclas que não foram enviadas para o terminal.
A maneira mais compatível (e para mim mais confortável) de trocar de guia rapidamente vem do site Vim Wikia .
Coloque no seu
.vimrc
arquivo:Agora
Shift-h
(maiúscula H) eShift-l
(maiúscula L) o alternam rapidamente entre as guias e seguem a convenção de queh
el
correspondem à esquerda e à direita no vim em um teclado qwerty comum.fonte
(Infelizmente) o vim também usa CtrlPgDn/ PgUppara percorrer as guias. Você precisará usar
map
para mapeartabn
/tabp
para algo utilizável.fonte
Se você estiver usando gvim ou similar (ou seja, algo fora do terminal), pode imitar o
gnome-terminal
comportamento descrito com:Então
alt-1
pula para a primeira guia, etc. Masalt-9
pula para a última guia (como no Chrome).Você pode
if has("gui_running")
incluir isso (embora isso não pareça funcionar com o Neovim) ou colocá-lo.gvimrc
.fonte
Adicione-os ao .vimrc para ativar as teclas de atalho da navegação por guias:
" tab navigation: Alt or Ctrl+Shift may not work in terminal: " http://vim.wikia.com/wiki/Alternative_tab_navigation " Tab navigation like Firefox: only 'open new tab' works in terminal nnoremap <C-t> :tabnew<CR> inoremap <C-t> <Esc>:tabnew<CR> " move to the previous/next tabpage. nnoremap <C-j> gT nnoremap <C-k> gt " Go to last active tab au TabLeave * let g:lasttab = tabpagenr() nnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr> vnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr>
fonte
nnoremap <silent> <C-Tab> :exe "tabn ".g:lasttab<cr>
evnoremap <silent> <C-Tab> :exe "tabn ".g:lasttab<cr>
sem sorte.