Realce de sintaxe

Realce de sintaxe de código HTML
Relace de sintaxe de código C

Realce de sintaxe (ou coloração de sintaxe) é uma funcionalidade disponível em alguns editores de texto que apresenta texto — em especial código fonte — numa formatação específica para cada categoria de termos. A mudança da formatação envolve alterações da fonte tipográfica, e principalmente, da coloração do texto. Essa funcionalidade facilita a escrita em linguagens estruturadas como linguagens de programação ou linguagens de marcação, já que as estruturas e os erros de sintaxe são facilmente distinguidos.

Para editores de texto que suportam mais de uma linguagem, o utilizador pode especificar a linguagem do texto, mas o editor também pode reconhecer automaticamente, baseado na extensão do arquivo ou analisando seu conteúdo.

Já que a maioria dos editores implementam a funcionalidade através e casamento de padrões ao invés de implementar um analisador sintático para cada linguagem possível, o que seria muito complexo, o realce nem sempre é completamente correto. Dependendo do mecanismo de casamento de padrões, o algoritmo de realce pode ser bastante lento para certos tipos de estruturas.

Parênteses correspondentes

Parênteses correspondentes ou braços correspondentes (em inglês: brace matching) são um recurso que certos editores de texto e ambientes de desenvolvimento integrado configuram para determinada linguagem de programação, como a Java e C++. Seu propósito é auxiliar o programador a navegar através do código e marcar qualquer correspondência imprópria, que poderia fazer o programa não ter sucesso na compilação ou ter um mal funcionamento. Se o fechamento de um dos braços estiver faltando, então o compilador não saberá o fim de um bloco de códigos, neste caso, ele será particularmente útil. Podendo ser amplo até em ocasiões como em estruturas de seleção ou em laços de eventos, onde serão evitados erros de compilação e demarcação de finalização de códigos para organização.

Lista de programas que utilizam este recurso por padrão:

  • Vim [1]
  • NetBeans[2]
  • Visual Studio[3]
  • C++ 6.0[4]
  • Ruby on Rails (através de plugin)[5]
  • Perl 5 será modificado para ter este recurso[6]
  • Microsoft Excel 2003 possui parênteses correspondentes em sua barra de fórmulas.[carece de fontes?]

Exemplo

Segue um trecho de código C++ com realce de sintaxe:

// Aloca todas as janelas
for( int i = 0; i < max; ++i )
{
    janelas[i] = new Janela();
}

Neste exemplo, o editor reconhece as palavras reservadas for, int e new, além do literal 0. O comentário no início do código também é identificado de forma a distingui-lo do resto do código funcional.

A seguir, um exemplo de parênteses correspondentes:

for (int i = 0; i < 10; i++)

{

    System.out.println(i);

}

Referências

  1. «Programa de texto VIM para estudantes de programação» (em inglês)  !CS1 manut: Língua não reconhecida (link)
  2. «Resumo (Parênteses correspondentes)» (em inglês)  !CS1 manut: Língua não reconhecida (link)
  3. «Braços correspondentes automáticos no Visual C++» (em inglês)  !CS1 manut: Língua não reconhecida (link)
  4. «Feedback: Comportamento dos braços correspondentes no C++» (em inglês)  !CS1 manut: Língua não reconhecida (link)
  5. «IntelliJ IDEA oferece suporte a Ruby and Ruby on Rails» (em inglês). Consultado em 29 de janeiro de 2010. Arquivado do original em 22 de setembro de 2010  !CS1 manut: Língua não reconhecida (link)
  6. «Parênteses correspondentes para Perl 6» (em inglês). perl6  !CS1 manut: Língua não reconhecida (link)

Ver também