" O vim é meu editor de textos favoritos. Eu o tenho usado por anos… mas eu não consigo descobrir como sair dele…"

Vim a sério

Se você está lendo este post, parto do pressuposto que você já deve ter o mínimo de familiaridade com o Vim. Por familiaridade entendo: saber entrar, saber editar texto e claro, saber SAIR, para não ser motivo de piadas infames. :-D

Se ainda não aprendeu a se virar no Vim, sugiro fazer o Vim tutorial ou pelo menos dar uma olhada na minha lista com os principais comandos do Vim e exemplos de uso do editor.

Arquivo de configuração

O Vim normalmente vem instalado na maioria das distribuições Linux e também pode ser instalado no Windows. Em todo caso, quando ele é iniciado, ao contrário de vários programas, é preciso criar um arquivo de configuração. O nome desse arquivo é .vimrc.

Onde colocar o arquivo de configuração no Linux

No linux os arquivos iniciados com . são arquivos que ficam escondidos e que só podem ser visualizados através de um ls -a. O .vimrc deve ser criado no diretório home do usuário, ou seja, dentro de /home/nomeDoUsuário. Para criá-lo, vá até o diretório citado e no terminal digite o comando touch .vimrc.

Onde colocar o arquivo de configuração no Windows

No Windows o melhor lugar para esse arquivo é em c:\usuários\nomeDoUsuário\. Ele também pode se chamar _vimrc ou _gvimrc, se você estiver usando o Gvim (Vim para interface gráfica).Para criá-lo vá até o diretório e crie um novo arquivo usando o notepad.

Configuração inicial

Para iniciar a configuração do Vim, precisamos incluir opções de parametrização dentro do .vimrc. Para isso abra o arquivo preferencialmente usando o próprio Vim, pois assim podemos carregar nossas configurações sempre que ele for modificado após salvá-lo, utilizando um comando do próprio editor.

Um detalhe importante: dentro do .vimrc tudo que vem depois de " é considerado como comentário e não será processado quando o Vim for iniciado. Isso é ótimo para tornar o arquivo de configuração auto-documentado.

Vamos começar acrescentando algumas linhas para configuração inicial:

"Carrega opçoes mais comuns do editor"
source $VIMRUNTIME/defauts.vim

"Força o vim a não ser compatível com opçoes do antigo editor"
set nocompatible

"Garante que os arquivos serão salvos no padrão de codificação universal"
set encoding=utf-8

Desativando o backup

Por padrão, o Vim faz backup dos arquivos que estão sendo editados e os salva de acordo com a seguinte regra de nomeação: ~nomedoarquivo. O que parece uma vantagem, torna-se um incômodo depois, principalmente em projetos grandes onde se usa o git para controlar versionamento do projeto e subir arquivos para produção. Se você editar 10 arquivos, terá 10 arquivos de backup a mais em seu projeto. Como num projeto de desenvolvimento já estamos usando o GIT para controlar o versionamento, o backup de arquivos do Vim passa a não fazer sentido. Por isso é melhor desativar essa opção acrescentando ao nosso .vimrc:

"Configura o vim para não criar arquivos de backup"
set nobackup
set nowritebackup

Desativando o arquivo de swap

Nos tempos em que computadores tinham pouca memória, o Vim fazia uso do recurso de criação de arquivo de Swap para poder manter em disco parte de arquivos grandes que estavam sendo editados e que não caberiam totalmente na memória. Hoje em dia, com o barateamento dos chips de memória, essa opção também se tornou obsoleta. Então o melhor a fazer é desativá-la. Vamos acrescentar mais uma configuração ao .vimrc:

"Desativa arquivo de swap"
set noswapfile

Configuração básica para desenvolvimento

Para tornar a edição mais amigável, vamos acrescentar algumas funcionalidades básicas para quem usa editores para ‘coding’. São elas, numeração das linhas, numeração das colunas e syntax highlight. Por fim, vamos desabilitar o “beep” que soa quando digitamos algum comando incorreto.

"Mostra coluna com numeração das linhas na lateral esquerda"
set number

"Mostra linha/coluna atual no lado direito da barra de status"
set ruler

"Habilita sintax highlight - depende da extensão do arquivo editado"
syntax on

"Troca o alarme sonoro de erro por alarme visual na barra de status"
 set visualbell

Mouse

Se você estiver usando inteface gráfica, é possível usar o mouse dentro da janela de terminal onde o vim ou Gvim está carregado. Para isso basta adicionarmos uma linha ao arquivo .vimrc. Se você quer ficar fera no Vim, recomendo não incluir essa opção. Para quem não dispensa o uso do mouse, aí está:

"Torna o Vim compatível com maioria dos mouses do mercado (all)."
set mouse=a

Finalizando

O artigo ficou grande, mas o objetivo aqui não é apenas listar os comandos e sim explicá-los para que cada um possa usá-los ou não conforme sua necessidade.

No próximo artigo, prosseguiremos personalizando o Vim para edição de texto, propriamente dita.

Espero que tenham gostado do artigo. Deixem seus comentários lá no post do Linkedin. Assim, podem colaborar com os colegas.

Até mais!