Beleza! Vamos continuar falando do nosso querido e amado editor: vim.
Quando o assunto é flexibilidade de janelas, abas, o vim oferece mais um recurso interessante: o split. Ele permite a divisão do mesmo arquivo na mesma janela. Assim você pode editar várias partes do mesmo arquivo em pontos diferentes. O comando é :split.
É possível usar a visualização vertical aqui também com o comando :vsplit.
Para alternar de uma janela para outra use o comando Ctrl+ww
Outra dica valiosíssima que vai deixar muito desenvolvedor de queixo caído é a tecla de atalho Ctrl+Shift+p que permite autocompletar código.
O truque dessa tecla de atalho está na hora que você importa as bibliotecas. Além das propriedades e métodos, ele também completa nome de variáveis e nome de funções. Eu testei esses recursos com as linguagens PHP, Python e C.
Interação com terminal
Quem está programando, precisa testar a aplicação. E não é nada legal ficar fechando o vim para usar o gcc ou o interpretador do python no terminal, não é? Com o comando :shell você abre um terminal dentro do vim. Assim você pode testar o que precisar e para sair é só fechar com o comando exit.
Quando o assunto é interação com o shell ainda dá para jogar a saída de um comando do terminal dentro do vim com o comando :r! <comando> . Exemplo: :r! cat /etc/passwd . Vai aparecer algo assim:
Nossa última tabelinha:
| Comando: |
Descrição: |
| :split |
Divide o mesmo arquivo na mesma janela (exibição horizontal) |
| :vsplit |
Divide o mesmo arquivo na mesma janela (exibição vertical) |
| Ctrl+ww |
Alterna entre as janelas |
| Ctrl+Shift+p |
Auto-completar o código |
| :shell |
Exibe um terminal dentro do VIM; |
| :r! <comando> |
Executa um comando e joga a saida dele dentro do editor |
Concluindo
O vim é foda um editor de texto muito poderoso. Se você aprender a usá-lo com certeza ele vai deixar muitos editores modo gráfico para trás. Existe a documentação interna do próprio vim, que tem tudo que você precisa saber sobre ele, para acessá-la digite o comando :help.
Foquei esse artigo em recursos que podem ajudar o desenvolvedor. Se vocês conhecem outras funcionalidades ou comandos interessantes, deixem aqui no comentário desse post.
Até a próxima