Como forçar o realce de sintaxe no vim

O editor de texto vi ou vim costuma detectar automaticamente a sintaxe correta a ser realçada, em função da linguagem de programação usada.
Em inglês, este recurso é chamado de syntax highlighting.
O editor de textos, no caso, confia na extensão de cada arquivo, para determinar o syntax highlighting a ser usado.
Mas, se você estiver editando um arquivo com código em PHP, mas a extensão dele é diferente de ‘.php’, isto pode não permitir ao vim realçar adequadamente as palavras-chave, as strings, as variáveis etc.
Caso não esteja, o realce de sintaxe pode ser ativado, genericamente, com o comando:

:set syntax=on

Se você quiser um realce específico, então indique a linguagem:

:set syntax=python
:set syntax=perl

Para desligar, use ‘off’:

:set syntax=off

Onde encontrar as linguagens de programação suportadas

Você pode encontrar a relação de arquivos de configuração do realce de sintaxe, para as diversas linguagens de programação suportadas pelo vim (versão 7.x), no diretório /usr/share/vim/vim74/syntax/
Use o comando ‘ls’ para ver o conteúdo deste diretório.
diretorio de configuração do vim

Como resolver a sintaxe de 2 linguagens em um mesmo arquivo?

Programadores PHP, por exemplo, frequentemente precisam mixar HTML no meio do código.
Usualmente, o vim consegue resolver bem este tipo de situação.
Algumas vezes, contudo, ele “esquece” qual a linguagem do realce, em determinado ponto (PHP? HTML?) 😮
Neste caso, use o comando ‘Ctrl+L’ para refrescar a tela.
Se, ainda assim, o problema não se resolver, ajuste o parâmetro ‘php_minlines’ no arquivo de configuração .vimrc:

let php_minlines=500

O padrão costuma ser 100 linhas.

Referências

http://vim.wikia.com/wiki/Forcing_Syntax_Coloring_for_files_with_odd_extensions.

Como configurar o Vim para fazer realce de sintaxe.

Aqui, o assunto vai ser um editor de textos simples presente em quase todas as distro Linux, justamente por ser extremamente leve (acho que este não é bem o caso do vim) e, além de tudo, é extremamente ‘espartano’ no seu visual.
Não se engane com “as roupas simples” do nosso amigo. Ele tem mais recursos que o leafpad, gEdit ou o Notepad (Windows).

Gosto de algumas coisas no Vi, ou Vim.
A possibilidade de executar dentro de um terminal transparente e poder editar os meus arquivos de configuração e contemplar o meu papel de parede preferido enquanto trabalho, é uma delas.
A leveza deste aplicativo completo também se destaca.

Alternativas ao Vim

há várias outras alternativas disponíveis por aí.
E é sempre disso que estamos falando, quando o assunto é software livre: escolhas e liberdade de escolha.
Uma, que eu gosto muito é o nano e ele já tem o recurso syntax highlighting disponível como padrão e costuma vir ‘empacotado’ na maioria das distro.

Como ativar o syntax highlighting no Vim

O caso, aqui, é simples para ser resolvido.
Inicie o editor, com o arquivo código do seu programa (eu vou usar o ‘startx’, no exemplo):


vim -R /usr/bin/startx
  • Note que usei a opção ‘-R’ (read only mode), para evitar fazer alterações acidentais no arquivo.
    Dentro do editor, digite o seguinte comando:

:set syntax on

Isto deve resolver o problema.

Ops! Mensagem de erro E319…

Você ainda está aqui? Recebeu uma mensagem de erro?
vimrc-config2

Se você está usando a versão mais simplificada do vi, saiba que ela não tem o recurso de realce da sintaxe do código.
Isto gera a mensagem de erro: “E319: Sorry, this command is not available in this version“.
Para resolver, instale a versão mais avançada, Vim (vi improved):


sudo apt install vim

O exemplo, acima, é voltado para uso no Debian ou no Ubuntu (e nas distribuições derivadas deles).

Editando o arquivo de configuração do Vim

Uma solução definitiva e melhor é editar o arquivo de configuração do Vim.
Abra-o com o seu editor favorito e edite a linha syntax off para syntax on. Se estiver apenas comentado, retire os “#”, tal como na figura:
vimrc-config

No Ubuntu, o arquivo de configuração do vim é /etc/vim/vimrc.
Ao editá-lo, a solução torna-se definitiva.
Happy coding!