Como sair do Vim no Terminal

Você finalmente aprendeu a usar o Vim. Agora pode aproveitar todos os recursos deste editor altamente configurável. Você escreve seu código e salva as alterações no arquivo. E agora? Como era mesmo o comando para fechar?

Muitos (muitos!) usuários enfrentam esse problema ao se familiarizar com o Vim. Uma vez aberto, ele permanece lá: mantendo seu Terminal como refém. Você tenta de diversas maneiras, mas não consegue encerrar o programa. Como continuar seu trabalho?

Neste artigo, revelamos este e outros segredos do Vim para que você nunca mais fique trancado do lado de fora (ou de dentro?) do seu Terminal. 

O que é Vim?

O Vim é um editor de texto de código aberto. Seu nome é uma contração de “Vi Improved”, em referência ao editor Vi, de Bill Joy, no qual é baseado.

Lançado em novembro de 1991, o Vim é um dos editores favoritos dos desenvolvedores experientes. Ele continua recebendo suporte e atualizações, e sua mais recente versão estável (8.2) foi lançada em dezembro de 2019.

O Vim é um editor de texto muito robusto. Apesar da aparência simples (totalmente baseada em texto, quando usado no Terminal), ele conta com um vasto arsenal de funcionalidades.

Suas opções de customização fazem do Vim um excelente editor para profissionais que necessitem de um alto grau de flexibilidade do ambiente de desenvolvimento.

Suas vantagens em relação ao Vi incluem as capacidades de comparar ou unificar arquivos, suporte a plugins e a possibilidade de autocompletar palavras e expressões. Mas estas são apenas algumas das numerosas funcionalidades deste editor. 

Um de seus mais poderosos recursos é a linguagem de script embutida no programa, Vim Script. Essa linguagem possibilita automatizar o uso de recursos que o próprio Vim oferece, agilizando o trabalho e abrindo um leque de possibilidades de uso do editor.

 

Modos de operação

Para iniciar o Vim no seu Terminal e criar ou acessar um documento, basta usar o comando:

“vim nome_do_arquivo.txt”

Se não houver um arquivo com este nome, ele será criado. Se já houver um arquivo, ele será aberto.

A partir daí, todas as operações subsequentes precisam ser realizadas através de comandos proprietários do Vim. Esses comandos podem mudar de acordo com o modo que você estiver usando no momento.

O Vim conta com seis modos básicos de edição e mais seis variações respectivas aos modos básicos. Ao todo, são doze modos de operação no programa. Os mais importantes, de uso mais frequente, são:

 

Normal mode

Modo padrão do editor. Permite navegar pelo arquivo e utilizar atalhos para realizar operações como apagar uma linha inteira ou corrigir a indentação dos blocos.

 

Insert mode

Modo de edição de texto do Vim.  Neste modo, você fica livre para inserir texto no arquivo ou modificar o texto existente.

 

Visual Mode

Modo “visual”. Permite selecionar parte do texto para então utilizar os atalhos de modificação do Normal mode. É como selecionar uma palavra no meio de uma linha com o mouse, mas utilizando apenas atalhos do teclado.

 

Command Mode

Modo de inserção de comandos. Permite inserir comandos de uma linha, como realizar uma busca. Os comandos do Vim normalmente iniciam com o símbolo : (dois pontos). O comando “:w”, por exemplo, salva o arquivo. Alguns comandos, entretanto, não iniciam com o símbolo.

 

Replace Mode

Modo de substituição. Permite substituir o texto existente no arquivo apenas digitando por cima dele.

 

Trocando o modo de operação no Vim

Apesar de possuir vários modos de operação, o Vim só permite que você utilize um deles por vez. Isso significa que não podemos utilizar o Insert Mode e navegar no arquivo ao mesmo tempo, por exemplo.

Felizmente, trocar entre os modos é bastante simples:

 

Trocando para o Insert Mode

Caso você esteja no Normal Mode, aperte a tecla “i” para inserir texto antes da posição do cursor, ou a tecla “a” para inserir texto após a posição do cursor.

 

Trocando para o Visual Mode

Caso você esteja no Normal Mode, aperte a tecla “v” para começar a seleção na posição atual do cursor. Em seguida, use as teclas de navegação para selecionar o trecho que deseja. ou a tecla “a” para inserir texto após a posição do cursor.

Também é possível selecionar uma linha inteira de uma só vez: basta pressionar “shift+v” na linha desejada. Além disso, é possível selecionar colunas: basta pressionar “ctrl+v”.

 

Trocando para o Normal Mode

Independente do modo em que você estiver, é muito simples retornar ao Normal Mode: é só apertar o “esc”. Essa tecla também funciona para cancelar comandos.

 

Trocando para o Command Mode

Ativar o Command Mode é tão simples quanto o Normal. É só apertar “:” a qualquer momento a partir do Visual Mode ou Normal Mode. Após o “:”, você pode digitar o comando desejado.

 

Navegando pelo Vim

Agora que você já conhece os modos do Vim e sabe como entrar em cada um deles, vamos à navegação. Esta parte pode ser mais assustadora para os iniciantes, pois são mais atalhos para lembrar e alguns deles fazem pouco sentido.

Apesar disso, é uma questão de tempo até você ter todos os comandos na ponta dos dedos. Confira a seção de links úteis ao final do artigo para encontrar recursos de treino e estudo.

Há diversas formas de navegar pelos arquivos no Vim. O método mais básico utiliza as seguintes teclas de atalho: “h”, “j”, “k”, “l” (L minúsculo). Essas quatro teclas em linha representam as quatro direções (cima, baixo, esquerda e direita).

Isso pode parecer confuso em um layout horizontal, mas é mais simples do que parece. Observe: 

< \/ /\ >

h j k l

Perceba que as direções esquerda e direita estão nas extremidades esquerda e direita, respectivamente, desta sequência de quatro teclas. As direções baixo e cima estão agrupadas nas duas teclas centrais. Agora faz sentido, não é?

Vamos recapitular:

 

  • h: Move o cursor para a esquerda <
  • j: Move o cursor para baixo \/
  • k: Move o cursor para cima /\
  • l: Move o cursor para a direita >

 

É importante lembrar que não só as teclas de movimento, mas todos os atalhos do Vim possuem diferentes funções caso você utilize as teclas em suas versões maiúsculas ou minúsculas (isto é, “shift+tecla de atalho”).

Isso significa que, enquanto  tecla “l” move o cursor para a direita, a combinação “shift+l” move o cursor para a parte inferior da tela.

Estes são apenas os comandos básicos de navegação. Se quiser navegar pelos arquivos no Vim com ainda mais agilidade, confira os conteúdos disponibilizados ao fim deste texto.

Aqui vão dois atalhos mais avançados que serão muito úteis no seu dia a dia:

 

  • w: Move o cursor para a primeira letra da próxima palavra.
  • b: Move o cursor para a primeira letra da palavra anterior.

 

Esses dois atalhos economizam alguns segundos na sua navegação, pois permitem deslocar o cursor através de linhas extensas com menos pressionamentos de tecla.

Outro comando essencial no dia a dia de quem trabalha com o Vim é o “:NÚMERO”. Com ele, você pode levar o cursor imediatamente até o início da linha que desejar. Seu funcionamento é muito simples: digitar “:10”, por exemplo, levará o seu cursor até o início da linha 10.

Mas não esqueça: é necessário estar no Normal ou Visual Mode para digitar comandos e navegar pelo arquivo. Se estiver no Insert Mode, acabará inserindo vários caracteres indesejados no meio do seu arquivo.

 

Como fechar o Vim no Terminal

Sabemos que esta é a pergunta cuja resposta você veio até aqui buscar. Esperamos que as informações adicionais tenham ajudado a melhorar sua experiência com esse poderoso editor de texto que, sabemos, pode ser um pouco assustador no início.

Sair do Vim é bem simples: basta digitar o comando “:q” e o programa será encerrado. Agora você já pode utilizar seu Terminal como quiser. Mas tome cuidado: o comando de encerrar fecha o arquivo sem salvar alterações! Caso queira salvar seu arquivo primeiro, o comando é um pouco diferente. Confira todos eles:

  • :q – Fecha o arquivo e encerra o Vim
  • :wq – Salva as alterações, fecha o arquivo e encerra o Vim (junção dos comandos :w, que salva o arquivo, e :q para sair)
  • :q! – Descarta as alterações, fecha o arquivo e encerra o Vim

 

Considerações sobre a ferramenta

Utilizar o Vim é uma experiência muito agradável, e persistir através da íngreme curva de aprendizado pode ser um desafio, mas vale a pena. O programa é tão popular que muitos outros editores possuem plugins “Vim Mode”, que trazem para dentro de si a experiência, os modos e comandos do Vim. 

Se você já utiliza outro editor, verifique se ele possui suporte ao Vim Mode. É uma ótima maneira de se familiarizar com a nova ferramenta através de um ambiente que você já conhece.

O Vim é suportado por todos os Terminais e está presente nos repositórios padrão de quase todas as distribuições Linux. Também está disponível no MacOS, Windows e até mesmo através de protocolos SSH e Telnet. Por isso, é provável que em algum momento você tenha que utilizá-lo.

Com sorte, este artigo terá ajudado você a se familiarizar com a operação do Vim, assim pode desfrutar das vantagens desse editor sem precisar se preocupar.

 

Material para estudos e treino de Vim

    • https://vim-adventures.com/ - O Vim Adventures é um jogo em que você controla uma sombra (simulação do cursor) utilizando os comandos e atalhos do Vim. É ótimo para praticar a navegação.
    • https://vim.rtorr.com/lang/pt_br - Cheat Sheet com diversos comandos e atalhos.
    • O Vim também possui um Guia/Tutorial próprio para te ensinar alguns comandos básicos e atalhos.
      • Caso utilize Linux ou MacOS, basta digitar no terminal o seguinte comando: “vimtutor”
      • No Windows o guia é o arquivo vimtutor.bat, que fica localizado no diretório de instalação do editor.