Estou tentando escrever um comando que feche uma janela do navegador da árvore ( vim-tree ) e redimensione as outras janelas.
,to
abre a janela e ajusta o tamanho da janela para que todas as janelas abertas mantenham um tamanho normal (usando :set columns+=30
CTRL-W =
).
,tc
deve fechar a janela da árvore (comprimento total, extrema esquerda) e redimensionar a janela principal ( :set columns-=30
).
Como posso escrever um comando que feche a janela mais à esquerda para que eu possa digitar ,tc
para fechar a janela e redimensionar em uma foto?
- Posso navegar até ele com
CTRL-W h
, mas é deselegante e potencialmente irritante (sino audível!) Para usar10CTRL-W h
no comando. :topleft c
infelizmente não funciona.
Você consegue pensar em uma maneira elegante de fazer isso?
10CTRL-W h
comando? Eu apenas tentei e ele não gera um sino para mim, enquanto outros comandos (por exemplo,h
quando o cursor está na coluna 1) o fazem.Respostas:
Se a janela realmente tiver um comprimento total na extrema esquerda, ela terá a janela número 1; portanto, um mapeamento como este deve funcionar:
Isso pula para a primeira janela e depois a fecha. A desvantagem é que a janela ativa se tornará qualquer que fosse a janela número 2 (que se torna a janela número 1 quando o número original da janela 1 é fechado), e não a última janela em que você estava.
Infelizmente
:1wincmd c
, não fecha a primeira janela, pois ctrl- w cnão aceita uma contagem, por isso não consigo encontrar uma maneira de evitar primeiro mover para a janela que você deseja fechar.2017 Edit: Desde que escrevi esta resposta,ctrl-w caceita uma contagem nas versões mais recentes do Vim, portanto, a resposta é apenas para uso
:1wincmd c
e não afastará o cursor da janela ativa:fonte