Vim Essencial: Primeiros Passos e Navegação Básica
Introdução ao Vim
O Vim (Vi IMproved) é um editor de texto poderoso e altamente configurável, amplamente utilizado por programadores, administradores de sistema e entusiastas de linha de comando. Sua principal característica é a eficiência, permitindo que os usuários editem texto em alta velocidade sem a necessidade de tirar as mãos do teclado. Embora a curva de aprendizado inicial possa parecer íngreme, dominar o Vim pode aumentar significativamente sua produtividade na edição de texto e código.
Por que usar o Vim?
- Eficiência: O Vim é projetado para maximizar a velocidade de edição. Com seus modos de operação e comandos baseados em teclado, você pode realizar tarefas complexas com poucas teclas.
- Disponibilidade: O Vim está pré-instalado ou facilmente disponível na maioria dos sistemas baseados em Unix/Linux, tornando-o uma ferramenta universal para qualquer ambiente de desenvolvimento ou servidor.
- Configurabilidade: Praticamente todos os aspectos do Vim podem ser personalizados através do arquivo
.vimrc
, permitindo que você adapte o editor às suas necessidades e preferências. - Extensibilidade: Com uma vasta gama de plugins, o Vim pode ser transformado em um IDE completo para diversas linguagens de programação.
Instalação Básica
O Vim geralmente já vem instalado em muitas distribuições Linux. No entanto, se você precisar instalá-lo ou garantir que tem a versão completa, siga as instruções abaixo para RHEL (Red Hat Enterprise Linux) e Debian/Ubuntu.
Instalação no RHEL/CentOS
Para instalar o Vim em sistemas baseados em RHEL ou CentOS, você pode usar o gerenciador de pacotes dnf
(ou yum
em versões mais antigas):
1
sudo dnf install vim
Instalação no Debian/Ubuntu
Em sistemas baseados em Debian ou Ubuntu, use o gerenciador de pacotes apt
:
1
2
sudo apt update
sudo apt install vim
Abrindo e Fechando o Vim
Para abrir um arquivo com o Vim, basta digitar vim
seguido do nome do arquivo no terminal:
1
vim nome_do_arquivo.txt
Se o arquivo não existir, o Vim o criará quando você salvar o conteúdo. Se você digitar apenas vim
sem um nome de arquivo, ele abrirá um buffer vazio.
Para fechar o Vim, você precisará estar no Modo Normal (falaremos sobre os modos em breve). Pressione Esc
para garantir que você está no Modo Normal e, em seguida, digite ZZ
(duas vezes Z maiúsculo) para salvar e sair, ou :q
para sair (se não houver alterações), ou :q!
para sair sem salvar as alteraçõe
Modos de Operação do Vim
Principais funções:
- Navegação pelo arquivo.
- Execução de comandos de edição (ex:
dd
para deletar uma linha). - Alternar para outros modos.
Modo de Inserção (Insert Mode)
No Modo de Inserção, o Vim se comporta como um editor de texto convencional. As teclas digitadas são inseridas diretamente no documento. Você entra neste modo a partir do Modo Normal para começar a escrever ou modificar texto.
Principais funções:
- Digitar e editar texto.
Modo Visual (Visual Mode)
O Modo Visual é usado para selecionar blocos de texto. Uma vez que o texto é selecionado, você pode aplicar comandos a essa seleção (ex: deletar, copiar, colar, mudar maiúsculas/minúsculas).
Existem três tipos de Modo Visual:
- Visual de Caractere (
v
): Seleciona texto caractere por caractere. - Visual de Linha (
V
): Seleciona linhas inteiras. - Visual de Bloco (
Ctrl+v
): Seleciona um bloco retangular de texto, útil para edições em coluna.
Principais funções:
- Selecionar texto para aplicar operações.
Modo de Linha de Comando (Command-Line Mode ou Ex Mode)
Este modo é acessado a partir do Modo Normal digitando :
(dois pontos). Ele permite executar comandos mais complexos, como salvar arquivos, sair do Vim, buscar e substituir texto, e configurar opções do editor. Os comandos são digitados na parte inferior da tela.
Principais funções:
- Salvar e sair do arquivo.
- Buscar e substituir texto.
- Configurar opções do Vim.
- Executar comandos externos.
Como Alternar entre os Modos
Alternar entre os modos é uma das habilidades mais importantes a serem dominadas no Vim. A tecla Esc
(ou Ctrl+[
) é a sua principal ferramenta para retornar ao Modo Normal de qualquer outro modo.
Modo de Origem | Tecla | Modo de Destino | Descrição |
---|---|---|---|
Normal | i | Inserção | Inserir texto antes do cursor. |
Normal | a | Inserção | Inserir texto após o cursor. |
Normal | o | Inserção | Inserir nova linha abaixo e entrar no modo de inserção. |
Normal | O | Inserção | Inserir nova linha acima e entrar no modo de inserção. |
Normal | v | Visual (Caractere) | Iniciar seleção visual por caractere. |
Normal | V | Visual (Linha) | Iniciar seleção visual por linha. |
Normal | Ctrl+v | Visual (Bloco) | Iniciar seleção visual por bloco. |
Normal | : | Linha de Comando | Entrar no modo de linha de comando. |
Inserção | Esc ou Ctrl+[ | Normal | Sair do modo de inserção. |
Visual | Esc ou Ctrl+[ | Normal | Sair do modo visual. |
Linha de Comando | Esc ou Ctrl+[ | Normal | Sair do modo de linha de comando (se nenhum comando foi executado). |
Navegação Básica
A navegação no Vim é um dos pilares da sua eficiência. Em vez de usar as teclas de seta, o Vim incentiva o uso das teclas h
, j
, k
, l
para movimento, permitindo que suas mãos permaneçam na posição de digitação.
Movimento por Caractere
Tecla | Ação |
---|---|
h | Move o cursor um caractere para a esquerda. |
j | Move o cursor uma linha para baixo. |
k | Move o cursor uma linha para cima. |
l | Move o cursor um caractere para a direita. |
Você pode prefixar esses comandos com um número para repetir a ação. Por exemplo, 5j
moverá o cursor 5 linhas para baixo.
Movimento por Palavra
Tecla | Ação |
---|---|
w | Move o cursor para o início da próxima palavra. |
b | Move o cursor para o início da palavra anterior. |
e | Move o cursor para o final da palavra atual. |
Assim como nos movimentos por caractere, você pode usar um número para repetir o movimento. Por exemplo, 3w
moverá o cursor para o início da terceira palavra seguinte.
Movimento por Linha
Tecla | Ação |
---|---|
0 (zero) | Move o cursor para o início da linha (primeiro caractere, incluindo espaços). |
^ | Move o cursor para o primeiro caractere não-branco da linha. |
$ | Move o cursor para o final da linha. |
Movimento por Tela
Esses comandos permitem navegar rapidamente pela tela visível.
Tecla | Ação |
---|---|
H | Move o cursor para a primeira linha visível na tela (Top - High). |
M | Move o cursor para a linha do meio da tela (Middle). |
L | Move o cursor para a última linha visível na tela (Low). |
Movimento por Arquivo
Para navegar por todo o arquivo, independentemente da tela visível.
Tecla | Ação |
---|---|
gg | Move o cursor para o início do arquivo (primeira linha). |
G | Move o cursor para o final do arquivo (última linha). |
[número]G | Move o cursor para a linha especificada pelo número. Por exemplo, 10G irá para a linha 10. |
Edição Básica de Texto
Após aprender a navegar, o próximo passo é dominar a edição de texto. O Vim oferece comandos eficientes para inserir, deletar, copiar e colar texto.
Inserção de Texto
Para inserir texto, você precisa entrar no Modo de Inserção a partir do Modo Normal. Existem várias maneiras de fazer isso:
Tecla | Ação |
---|---|
i | Entra no Modo de Inserção antes do cursor. |
a | Entra no Modo de Inserção após o cursor. |
o | Insere uma nova linha abaixo da linha atual e entra no Modo de Inserção. |
O | Insere uma nova linha acima da linha atual e entra no Modo de Inserção. |
Para sair do Modo de Inserção e retornar ao Modo Normal, pressione Esc
.
Deleção
No Modo Normal, você pode deletar texto de várias maneiras:
Tecla | Ação |
---|---|
x | Deleta o caractere sob o cursor. |
dw | Deleta a palavra a partir do cursor. |
dd | Deleta a linha inteira onde o cursor está. |
[número]dd | Deleta o número especificado de linhas. Por exemplo, 5dd deleta 5 linhas. |
Cópia (Yank)
No Vim, copiar texto é chamado de “yank”. O texto copiado é armazenado em um registro (buffer) e pode ser colado posteriormente.
Tecla | Ação |
---|---|
yy | Copia a linha inteira onde o cursor está. |
yw | Copia a palavra a partir do cursor. |
[número]yy | Copia o número especificado de linhas. Por exemplo, 3yy copia 3 linhas. |
Colar (Put)
Para colar o texto que foi deletado ou copiado, use os comandos p
ou P
:
Tecla | Ação |
---|---|
p | Cola o conteúdo do registro após o cursor (ou abaixo da linha, se for uma linha inteira). |
P | Cola o conteúdo do registro antes do cursor (ou acima da linha, se for uma linha inteira). |
Desfazer e Refazer
O Vim possui um histórico de alterações robusto, permitindo que você desfaça e refaça ações facilmente.
Tecla | Ação |
---|---|
u | Desfaz a última alteração. |
Ctrl+r | Refaz a última alteração desfeita. |
Salvando e Saindo
Para finalizar sua sessão de edição no Vim, você precisará salvar suas alterações e sair do editor. Todos esses comandos são executados no Modo de Linha de Comando, acessado pressionando :
no Modo Normal.
Salvar
Comando | Ação |
---|---|
:w | Salva o arquivo atual. |
:w nome_do_arquivo | Salva o arquivo atual com um novo nome. |
Sair
Comando | Ação |
---|---|
:q | Sai do Vim. Só funciona se não houver alterações não salvas. |
:q! | Sai do Vim sem salvar as alterações. Use com cautela, pois as alterações serão perdidas. |
Salvar e Sair
Existem atalhos convenientes para salvar e sair em uma única operação:
Comando | Ação |
---|---|
:wq | Salva o arquivo e sai do Vim. |
:x | Salva o arquivo e sai do Vim. É similar a :wq , mas só escreve no arquivo se houver alterações. |
ZZ (no Modo Normal) | Salva o arquivo e sai do Vim. É um atalho rápido para :x . |
Com isso, você tem as ferramentas essenciais para começar a usar o Vim para suas tarefas diárias de edição de texto. Pratique esses comandos para internalizá-los e aumentar sua produtividade.