CORRETOR ORTOGRÁFICO NO VIM – GUIA DEFINITIVO

INTRODUÇÃO

Este documento é uma atualização da dica Adicionando corretor ortográfico em português no Vim, de Guilherme Maluf, onde adiciono explicações mais detalhadas para tornar o texto um guia definitivo sobre o assunto.

Antes de tudo precisamos de um dicionário da língua portuguesa. O OpenOffice possui o Vero, que é distribuído em em forma de extensão.

Você pode fazer o download do Vero em:

Ao clicar em “Download” será baixado o arquivo vero_pt_br_v208aoc.oxt. Salve-o e entre na pasta de Downloads (ou onde ele foi salvo):

$ cd ~/Downloads

Note que a extensão oxt (OpenOffice Extension) nada mais é que um arquivo ZIP:

$ file vero_pt_br_v208aoc.oxt
vero_pt_br_v208aoc.oxt: Zip archive data, at least v2.0 to extract

Vamos descompactá-lo:

$ unzip vero_pt_br_v208aoc.oxt
Archive: vero_pt_br_v208aoc.oxt
inflating: pt_BR.dic
inflating: README_en.TXT
inflating: README_hyph_pt_BR.TXT
inflating: README_pt_BR.TXT
inflating: META-INF/manifest.xml
inflating: description.xml
inflating: dictionaries.xcu
inflating: hyph_pt_BR.dic
inflating: pt_BR.aff

O Vim usa arquivos de dicionário no formato SPL. Com base nos arquivos baixados precisaremos gerar um dicionário compatível com o editor.

No mesmo diretório em que você descompactou os arquivos acima, digite:

$ vim

NOTA: os arquivos necessários para esta operação são o pt_BR.dic e pt_BR.aff.

Ao digitar “vim” sem argumentos, a surgirá a tela inicial do editor:

Vamos solicitar ao editor que ele crie o dicionário pt_BR. Digite o seguinte comando dentro do Vim:

:mkspell pt pt_BR

Onde:

  • mkspell – comando para geração de dicionário;
  • pt – nome da linguagem;
  • pt_BR – prefixo dos arquivos de dicionário (lembram do pt_BR.dic e pt_BR.aff?).

Ao executar o comando algumas mensagens de erro surgirão:

Pressione ENTER (não use “q”) até as mensagens de erro cessarem.

Então o vim comecará a gerar o dicionário. Continue pressionando ENTER a cada pausa de tela até que o processamento esteja completo. Ao final do processamento você cairá na tela preta do Vim, que é a de novo documento. Digite :q para sair do editor.

Note que foi criado um novo arquivo de extensão .spl no diretório corrente:

$ ls *spl
pt.utf-8.spl

Onde:

  • pt – nome que escolhemos para a linguagem;
  • utf-8 – charset utilizado pelo seu SO. Pode variar para iso8859-1 por exemplo;
  • spl – extensão de arquivo de dicionário do Vim.

Caso não exista, crie o diretório que armazenará os dicionários no Vim:

$ mkdir ~/.vim/spell

Copie o dicionário:

$ cp pt.utf-8.spl ~/.vim/spell/

Agora vamos editar o arquivo de configuração do Vim a fim de habilitar o uso de corretor ortográfico.

$ vim ~/.vimrc

Adicione a seguinte linha ao final do arquivo (ok, em qualquer lugar do arquivo):

set spell spelllang=pt

Onde “pt” é o nome que escolhemos para a linguagem no início do tutorial.

UTILIZANDO O CORRETOR E PERSONALIZANDO AS CORES

 

UTILIZANDO O CORRETOR

Em modo visual temos os seguintes comandos:

  • ]s vai para a próxima palavra;
  • [s vai para a palavra anterior;
  • z= mostra a lista de sugestões para a palavra;
  • zg adiciona a palavra sob o cursor no dicionário, assim ela não será mais marcada como errada;
  • zug desfaz a última palavra adicionada;
  • zw remove a palavra sob o cursor do dicionário, assim ela será marcada como errada;
  • zuw desfaz a última palavra removida.

Particularmente só uso ]s e zg.

PERSONALISANDO AS CORES

Se você não gostou da forma como o Vim sinaliza as palavras erradas, é possível personalizar as cores.

Os dois principais tipos de highlight são:

  • SpellCap – palavras que estão em caixa baixa após alguma pontuação. O corretor indica que neste caso o correto é usar a primeira letra em caixa alta. Por padrão o Vim marca essas palavras com fundo azul.
  • SpellBad – palavras que o corretor considera incorretas. Por padrão o Vim marca essas palavras com fundo vermelho.

Existem três tipos de terminal onde o Vim pode ser executado:

  • term – terminal sem cores;
  • cterm – terminal com cores (o padrão utilizado quando estamos usando Linux com um gerenciador de janelas);
  • gui – provavelmente a interface do GVim, estou chutando.

No meu caso vou personalizar as cores do cterm, o mesmo deve se aplicar à maioria dos que estão acompanhando o tutorial.

Dentro do Vim em modo visual, digitar o seguinte comando:

:highlight SpellCap ctermfg=Gray ctermbg=Blue

Onde:

  • highlight – comando para setar configurações de highlight em geral;
  • SpellCap – o tipo de highlight a ser configurado;
  • ctermfg – Cor do texto (cterm foreground);
  • ctermbg – Cor de fundo (cterm background).

Usei cinza (Gray) para cor do texto com fundo azul (Blue).

E agora a configuração para as palavras erradas:

:highlight SpellBad ctermfg=Gray ctermbg=DarkRed

Usei cinza (Gray) para cor do texto com fundo vermelho escuro (DarkRed).

Para tornar as configurações permanentes, adicione as seguintes linhas ao teu ~/.vimrc:

hi SpellCap ctermfg=Gray ctermbg=Blue
hi SpellBad ctermfg=Gray ctermbg=DarkRed

NOTA: Use “hi” ao invés de “highlight” só para mostrar que hi é um alias para highlight. São a mesma coisa.

Segue a lista de cores disponíveis para uso no Vim:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • Brown, DarkYellow
  • LightGray, LightGrey, Gray, Grey
  • DarkGray, DarkGrey
  • Blue, LightBlue
  • Green, LightGreen
  • Cyan, LightCyan
  • Red, LightRed
  • Magenta, LightMagenta
  • Yellow, LightYellow
  • White

Para desabilitar o corretor ortográfico durante a edição do texto:

:set nospell

E para habilitar novamente:

:set spell spelllang=pt

NOTA: Se você der um “ls ~/.vim/spell” vai notar a existência de dois novos arquivos:

  • pt.utf-8.add – lista de palavras em text/plain que você adicionou ao dicionário com o comando “zg”;
  • pt.utf-8.add.spl – lista de palavras acima em formato binário, usado pelo Vim on-the-fly.
Rolar para cima