Como você aumenta ou diminui a altura ou a largura de um buffer vim de forma que quando você pressiona a combinação de teclas, o tamanho muda constantemente?

6

Como você aumenta ou diminui a altura ou a largura de um buffer vim de forma que, quando você pressiona a combinação de teclas, o tamanho do buffer muda constantemente?

Eu sei que CTRL W funciona, mas move uma unidade de cada vez. Eu estou procurando uma maneira que quando você faz CTRL W < e mantenha pressionado o < que VIM muda a largura do buffer de forma fluida (constantemente) até você soltar o .

    
por classer 06.12.2010 / 21:12

2 respostas

5

Tente estes:

:nmap ^[> :vertical res +1^M
:nmap ^[< :vertical res -1^M

Para introduzir o ^[ , pressione Ctrl - v e depois em Esc . Para introduzir o ^M , pressione Ctrl - v e depois em Enter .

Como sugerido por Heptite em um comentário, você pode usar notação de tecla em vez de caracteres literais:

:nmap <Esc>> :vertical res +1<Enter>
:nmap <Esc>< :vertical res -1<Enter>

Resulta no mesmo mapeamento que o exemplo no topo.

Agora você pode pressionar Alt - Deslocar - > para aumentar suavemente a largura ou Alt - Deslocamento - < para aumentá-lo suavemente. Parece meio estranho usá-lo na janela da direita para mim, porque acho que estou movendo o separador para a esquerda e para a direita, mas não é isso que está acontecendo.

Para alterar o tamanho das janelas divididas horizontalmente:

:nmap ^[+ :res +1^M
:nmap ^[- :res -1^M

Estas são as teclas de mais e de menos regulares do que as do teclado. No teclado americano, além de Alt , eu mantenho Shift para + , mas não há Shift para - .

    
por 06.12.2010 / 22:19
4

Você também pode usar 10 ctrl-w < ou 10 ctrl-w > para alterá-lo por 10 unidades.

    
por 25.09.2012 / 08:26

Tags