O GVim é o editor Vim para quem não abre mão do ambiente gráfico

O editor Vim ou Vi, como projeto de software livre, tem várias ramificações ou branches.
Isto significa que o projeto inicial acabou dando origem a diversos outros softwares semelhantes e compatíveis entre si.

Atualmente, no Linux e no Mac, é possível executar o Vim, como editor de textos de linha de comando padrão.
Em muitos servidores e provedores de internet, o Vim ou o vi estará disponível para seu uso, assim que você se conectar.

Saber usar o Vim, significa nunca ficar sem um editor de textos.
Entre os projetos, derivados do original, há uma versão voltada para rodar em servidores gráficos.

Neste texto, vamos tratar do GVim — veremos como instalar (isto é fácil!) e faremos um rápido passeio pela sua interface.
O pacote de instalação do GVim contém arquivos compartilhados por todas as variantes do vim com interface gráfica disponível no seu sistema operacional.
Pode ser instalado pela CLI mas, já que estamos aqui, vamos usar apenas a interface gráfica.
Debian Ubuntu Instalar programas

Abra o aplicativo de instalação de softwares/programas da sua distro e procure pelo GVim. Em seguida, clique em “Instalar”.

Uma vez instalado, já é possível fazer uso de todos os recursos do Vim, com a possibilidade de usar nativamente o mouse.

O poder do Vim está em ser um editor que dispensa o uso do mouse para realizar todas as tarefas de que ele é capaz.

Sempre haverá algumas tarefas em que é mais fácil usar o mouse ou o touchpad, contudo. Para estes casos, você tem o suporte completo no GVim a estes dispositivos.

A interface gráfica botões práticos para realizar tarefas triviais, de abrir e gravar arquivos.

Além disto, permite refazer e desfazer ações ao toque de botões.

gvim editor
A versão GUI do Vim, tem botões de busca e substituição de palavras e strings, que podem ser mais cômodos.

Os menus dão acesso a inúmeras outras funções do editor, sem desabilitar os comandos de teclado.

Referências

O que você pensa desta versão do Vim? Acha que vale a pena substituir a versão CLI por ela? Ou dá para usar as duas?

Leia mais sobre o Vim:
Como ajustar esquemas de cores automaticamente, em função do horário do dia.

Resenha de livro: Vi and Vim, de Arnold Robbins.

Neste post, apresento uma das obras que me ajudou muito a entender melhor o funcionamento do editor de textos Vim e a elevar o meu nível como usuário do programa.
Como advertência inicial, trata-se de um livro em inglês. Caso você prefira evitar livros neste idioma, sugiro ler meus outros posts sobre o editor Vim.

Eu já tinha um background sobre o aplicativo e seu uso, antes de começar a ler o livro.
Se este também for o seu caso, pode fazer que nem eu, ler superficialmente (ou simplesmente “pular”) as partes sobre as quais já tem domínio e ir direto ao que te interessa.

Algumas obras são escritas com o propósito de ensinar, como tutoriais. Outras, são mais úteis como referência e sua leitura integral pode ser até desnecessária — uma vez que você pode ganhar mais tempo apenas consultando, quando houver dúvidas sobre algum item.

Na minha avaliação, a obra serve aos 2 propósitos.

Eu sou aquele tipo de nerd ou geek que lê os manuais de tudo o que compra, desde o guia de uso do liquidificador aos manuais completos do carro.

Quanto menos você souber sobre o Vim, mais vai aprender lendo o livro de ponta a ponta — aplicando os exemplos, os macetes, as dicas etc.
Depois o livro pode ir para uma estante. Mas não o deixe muito longe do seu alcance.



Assinada por Arnold Robbins, Elbert Hannah e Linda Lamb, a obra ainda terá muito a oferecer após a leitura, como referência.

Durante a leitura, não me preocupei em absorver 100% dos conceitos, mas em me divertir aprendendo.
É impossível aprender a usar o Vim (bem como muitos outros editores de texto bem mais populares) “do dia para a noite”. É um processo que vai tomar algum tempo e requerer bastante prática.

Portanto, se for lida com tranquilidade, o leitor pode se entreter bastante.

O conteúdo

A obra faz um apanhado do vi, desde o tempo do seu surgimento, no ambiente de programação do UNIX e segue em frente para incluir as versões mais atuais do editor, como Gvim (versão gráfica do editor).
Veja um resumo do que ela cobre:

  • Opções de linha de comando (CLI).
  • Comandos e opções do vi.
  • Atalhos do modo de inserção.
  • Substituição de texto e expressões regulares.
  • Comandos e opções do ex.
  • Inicialização e recuperação de arquivos.
  • Tags avançadas.
  • Recursos de conexão e navegação na Internet.

O livro termina com um extenso índice remissivo para ajudar a chegar mais rápido ao assunto que você deseja consultar.

Problemas do livro

Pode-se dizer que o livro é um tanto extenso e que não precisaria cobrir tantas versões do Vim.
Mas, se é melhor pecar pelo excesso, acredito ser possível perdoar isso.
Além do mais, é muito fácil se esquivar do que não te interessa aprender no momento e seguir a leitura mais adiante.

Conclusão

Se você não se importa ou não tem medo de ler em inglês, o livro pode ser bastante útil — uma vez que há bem poucas alternativas sobre o assunto em português.
Se o seu nível de leitura em inglês for razoável, não acho que vai haver problemas em entender e aprender o que os autores têm para passar.
A linguagem é clara e o texto é bem escrito.
Além disso, muita coisa pode ser aprendida empiricamente, seguindo os exemplos, caso não consiga entender algo especificamente.

Onde comprar

O livro pode ser adquirido em livrarias físicas ou online brasileiras.
É mais certo encontrar em livrarias internacionais.
O site da Amazon, no Brasil, tem a versão digital (para Kindle), neste link: https://amzn.to/2qDq5bI (recomendado).
Eu adquiri a minha cópia física na Barnes and Noble, contudo. Neste caso, arquei com uma demora de quase 4 meses na entrega. Eu não faria isto de novo…

Com trabalhar com múltiplas abas com o editor Vim

Como muitos outros editores, o Vim aceita organizar seu conteúdo em abas.
Na nomenclatura dos comandos e no sistema de ajuda do Vim, o recurso de abas é chamado de tabs.

Com o tabbed editing (edição em abas), é possível iniciar conteúdo novo em uma nova aba ou passar o conteúdo existente, em alguma janela, para outra aba.
Cada aba se comporta de maneira independente, dentro da sua sessão do Vim.
Você pode dividir a tela e criar outras janelas dentro de cada aba.

Para iniciar uma nova aba, use o comando ‘tabnew’, seguido do nome do arquivo que será aberto dentro dela:


:tabnew arquivo.txt

Se o arquivo especificado não existir, um novo será criado, com este nome.
Se você usar apenas o comando ‘tabnew’, sem fornecer um nome de arquivo a ser aberto, um arquivo, em branco e sem nome, será criado dentro da nova aba.

Para sair da aba criada, basta fechar o arquivo (ou os arquivos) dentro dela, com “:q”.
Uma outra forma de fechar a aba ativa é com ‘tabclose’:


:tabclose arquivo.txt

Ou, para fechar todas as outras abas:


:tabonly

Arquivos, ainda não gravados, podem impedir que suas abas sejam fechadas.

Para alternar entre as abas, use as teclas Ctrl + PageDown ou Ctrl + PageUp.

Como ativar o mouse no editor Vim

Ativar e usar as funções básicas de um mouse, dentro do editor Vim é bastante fácil.
É possível ativar o dispositivo para a sessão atual ou incluir o parâmetro de ativação no arquivo de configuração, para mantê-lo ativo permanentemente.

Ok. Usar o mouse no editor Vim pode parecer um contrassenso – e realmente é.
O editor foi concebido por pessoas que se deram conta de que usar o mouse durante o trabalho de escrever é extremamente contraproducente.

Mas, se você precisa, é muito fácil ajeitar isto.
Dentro do Vim, tecle ESC para ir para a linha de comando e rode


:mouse=a

Para desativar o dispositivo, dentro do Vim, execute:


:mouse=""

Para desativar o mouse apenas no modo comando, use ‘-=c’:


:mouse-=c

Foi difícil?! 😉
Para quem usa o GVim algumas outras opções de ajuste do mouse.

Como organizar as janelas dentro do editor Vim

As janelas, dentro da sessão do Vim, podem ser reorganizadas para fornecer uma visão melhor da área de trabalho.
Podem ser usadas combinações de teclas de atalho para rodar ou mudar a posição de uma janela, dentro do editor.

Se quiser obter mais informações sobre como trabalhar com múltiplas janelas dentro do Vim, sugiro ler este post.

Todos os comandos de janelas começam com a combinação Ctrl + W, seguida da combinação/tecla de comando específica.
Segue a primeira relação de teclas básicas:

  • Ctrl + w, r — Mantenha a tecla Ctrl pressionada, seguido das teclas W e R.
    Este comando é cíclico. Ou seja, move a janela atual para a direita e, quando chegar ao final, volta à posição inicial.
    Há diferença de comportamento entre ‘r’ e ‘R’: A primeira move o elemento para a direita e a outra faz o contrário.
  • Ctrl + w, x — troca janelas vizinhas de lugar (uma com a outra).

Se não houver janela ao lado, para participar da interação, o comando é inócuo (não faz nada).
Múltiplas janelas abertas dentro da sessão do Vim

Tal como muitos outros comandos no Vim, é possível especificar um número de janela para participar da ação.
Para isto, tecle um número antes do comando. Por exemplo: 3, Ctrl + w, x.

Mais comandos para mover janelas dentro do Vim

Há outros comandos para mover e alterar os layouts das janelas no Vim.
Na lista, que segue, vou usar o símbolo ^ para indicar o uso da tecla Ctrl. Assim, fica mais fácil escrever e entender (acho).
Fique atento(a) à caixa das teclas:

  • ^WK — Move a janela selecionada (atual) para o topo da tela, usando toda a largura da tela do terminal.
  • ^WJ — Reposiciona a janela atual para baixo de todas as outras, usando toda a largura do terminal.
  • ^WH — Move a janela selecionada para a esquerda de todas as outras janelas e amplia sua altura.
  • ^WL — Faz o contrário do comando anterior — ou seja, reposiciona a janela atual à direita das outras e também amplia totalmente a sua altura.
  • ^WT — Este comando abre uma nova aba (se já não houver alguma), na sessão atual do Vim, e move a janela atual para lá.

Para mim funciona assim: pressiono ^W e, em seguida, a tecla K (em maiúsculas).
Pratique bastante e anote os comandos em algum lugar para poder usar como referência rápida.

Como fechar as janelas do editor Vim

Há 3 comandos simples para fechar as janelas abertas dentro da sessão.
Segue a lista:

  • ^Wq — ou, ainda, ^WQ ou :quit (na linha de comando). Encerra a sessão.
  • ^Wc — ou, ainda, :close. Fecha a janela atual
  • ^Wo — Fecha todas as outras janelas e deixa apenas a atual aberta. Também é possível usar :only, para fechar a janela no modo comando.

Palavras finais

Se você estiver executando o Vim dentro de um emulador de terminal, na GUI do Linux, leve em conta que este é o primeiro a capturar as entradas do teclado.
Isto quer dizer que, se houver algum atalho de teclado coincidente entre o aplicativo emulador de terminal e o app executado dentro dele, vai valer o significado que a combinação de teclas tiver para o emulador.
Em outras palavras, o GNOME-terminal (para citar um exemplo), tem prioridade de captura dos comandos de teclado.
Se você tiver conflitos relacionados a isto, pode ser mais fácil alterar, nas preferências do aplicativo emulador de terminal, os atalhos de teclado que ele usa.