Vim: fecha e volta para a última guia, repete

1

Eu me encontro nessa situação com muita frequência:

  1. Abra o gVim com o NERDTree a partir do diretório de trabalho atual.
  2. Abra um arquivo do NERDTree usando <S-T> para que ele pegue uma nova guia.
  3. :tabprevious para retornar ao NERDTree.
  4. Explore diretórios e abra um segundo arquivo usando <S-T> .
  5. Feche o segundo arquivo, :q ou ZZ .

O que eu esperaria que acontecesse depois de 5. é retornar ao NERDTree, mas o Vim sempre colapsa a guia e abre o botão para a direita. Isso raramente é o que eu pretendia fazer e preferiria que o Vim mantivesse uma lista de todas as guias pelas quais passei. Então, quando eu fecho um, ele sai da pilha e foca o próximo.

Isso pode ser visto em outros editores, principalmente IDEs, como o Komodo Edit, por exemplo.

Existe um plug-in que faria isso para o Vim?

    
por StanAngeloff 28.05.2012 / 11:03

1 resposta

0

Para ir para a primeira guia (presumivelmente a que está com o NERDTree aberto), faça :tabfirst . O Vim não mantém uma lista de guias ordenadas por "acessadas mais recentemente" e :tabprevious / :tabnext lidam apenas com as guias à esquerda / direita.

A ação padrão para T é precisamente abrir o arquivo selecionado em uma nova aba e retornar à aba onde o NERDTree está localizado. Então, eu não tenho certeza porque você tem que fazer :tabprevious após T .

Uma maneira comum de usar o NERDTree é simplesmente abri-lo no local, quando necessário, e configurá-lo para se fechar ao abrir um arquivo. Não lembro o nome da opção, mas um :help nerdtree rápido seria suficiente.

Eu também tenho medo que você esteja cometendo um erro aqui: você está usando as "abas" do Vim como se fossem as mesmas que as guias encontradas em qualquer outro lugar. Esta é uma má ideia porque eles não são projetados dessa maneira. Em vez disso, leia as janelas e os buffers.

    
por 28.05.2012 / 18:22