No primeiro post abordei alguns conceitos iniciais sobre o VIM, instalação, navegação via teclas, modos de operação do Vim, além de comandos básicos para fechar um arquivo.

Nesse post vou me aprofundar mais nesses conceitos iniciais e também as primeiras configurações como mapeamento de comandos no Vim.

Primeiras configurações

Pra quem deseja mapear atalhos no teclado, instalar plugins ou até mesmo executar tarefas, um arquivo de configurações é necessário para definir todo o funcionamento do Neovim.

O padrão para o MacOS é ~/.config/nvim/init.vim, mas como foi exibido no primeiro post, existem versões de instalação para Windows e Linux.

Para iniciar é necessário acessar a pasta ~/.config, criar uma pasta chamada nvim e depois um arquivo chamado init.vim

cd ~/.config
mkdir nvim
touch init.vim

Qualquer editor de texto pode ser utilizado pra isso, vou utilizar o Vim da minha máquina para realizar as alterações desse arquivo:

vi ~/.config/nvim/init.vim

Aqui vão algumas configurações acompanhadas de comentários:

" CONFIG FILE init.vim
" ===========================
" Permite o uso do mouse para selecionar partes do texto
set mouse=a
" Exibe o número da linha
set number
" Exibe informações de linhas e colunas
set ruler

Deixo aqui um link com algumas configurações interessantes pra quem quer aprender mais sobre configuração no vim.

Mapeando uma Leader Key

É muito comum ao abrir um arquivo de configuração Vim encontrar várias linhas com a instrução <leader>, isso significa que algum comando ou atalho foi mapeado para ser executado em conjunto com uma tecla que pode ser definida como a tecla principal. Essa tecla é configurada totalmente de acordo com o gosto de quem irá utilizar o Vim, as teclas mais comuns são a SpaceBar <space> e a vírgula ,.

Atualmente utilizo a vírgula como minha Leader Key:

" CONFIG FILE init.vim
" ===========================
....
" Mapeando uma LeaderKey
let mapleader=','

Mapeando comandos

Mapear uma Leader Key serve principalmente pra definir comandos executados iniciados com uma tecla que melhor se adapta a quem está utilizando o Vim, por exemplo, um comando muito utilizado por quem usa o Vim é o :w ou :write para salvar um arquivo, com uma Leader Key mapeada, você pode definir um atalho com sua Leader Key + w por exemplo.

Para mapear esse comando, pode ser feito da seguinte forma:

" CONFIG FILE init.vim
" ===========================
....
" Mapeando uma LeaderKey
let mapleader=','

" Mapeando comandos
nmap <leader>w :w!<CR>

Através da instrução nmap pode-se mapear uma sequência de teclas, no caso a tecla <leader> + w executarão o comando :w!, o <CR> ao fim da instrução significa um Enter ou Return para confirmar o comando.

Outro comando que acho interessante ser mapeado é o :u, que seria o famoso CTRL + Z, dessa forma é possível mapear a tecla z junto da <leader>:

" CONFIG FILE init.vim
" ===========================
....
" Mapeando uma LeaderKey
let mapleader=','

" Mapeando comandos
nmap <leader>w :w!<CR>
nmap <leader>z :u<CR>

Mapeando um comando para fechar um arquivo, outro comando muito utilizado no Vim é o :q para fechar um arquivo ou :q! para fechar um arquivo sem salva-lo:

" CONFIG FILE init.vim
" ===========================
....
" Mapeando uma LeaderKey
let mapleader=','

" Mapeando comandos
nmap <leader>w :w!<CR>
nmap <leader>z :u<CR>
nmap <leader>q :q<CR>

Mais uma vez utilizando o <CR> ao fim do comando para confirma-lo.

Resumo

Nesse post, vimos mais um pouco sobre comandos básicos do Vim como o :w! para salvar um arquivo, o :u para desfazer algo e o :q para fechar um arquivo, além de mapeamento de uma Leader Key e comandos básicos.