Este guia explica como configurar quais linguagens de programação estão disponíveis para destaque de sintaxe no Discourse.
Nível de usuário necessário: Administrador
O destaque de sintaxe melhora a legibilidade em blocos de código aplicando formatação com base na linguagem de programação. Você pode personalizar as linguagens disponíveis para destaque de sintaxe no Discourse.
Configurando a definição do site highlighted_languages
Para configurar a lista de linguagens de programação para destaque de sintaxe:
- Navegue até o painel de Administração.
- Acesse
Config→Conteúdo→Posts e Tópicos. - Encontre a definição do site
highlighted_languages.
Nesta configuração, você pode definir quais linguagens estarão disponíveis para destaque de sintaxe. Insira os nomes das linguagens que deseja suportar, separados por vírgulas.
Configurações relacionadas
Existem duas definições de site adicionais relacionadas ao destaque de sintaxe, encontradas na mesma área:
default_code_lang— A linguagem padrão aplicada a blocos de código quando nenhuma linguagem é especificada. O padrão éauto, que tenta detectar a linguagem automaticamente.autohighlight_all_code— Quando ativado, aplica destaque de sintaxe a todos os blocos<code>, mesmo aqueles sem uma classe de linguagem especificada. O padrão é desativado.
Adicionando suporte a linguagens adicionais
Se a linguagem desejada não estiver incluída no highlight.js, você pode adicioná-la por meio de um componente de tema usando a API de plugin api.registerHighlightJSLanguage(). Abaixo estão os passos para realizar isso:
- Localize um módulo para sua linguagem: Encontre uma definição de linguagem do highlight.js que suporte a linguagem que deseja adicionar. Por exemplo:
- Solidity:
https://github.com/highlightjs/highlightjs-solidity - Supercollider:
https://github.com/highlightjs/highlightjs-supercollider
- Integre o módulo usando um componente de tema:
- Obtenha a definição de linguagem do HighlightJS para a linguagem desejada.
- Crie um novo componente de tema no Discourse.
- No JavaScript do componente de tema, use a API de plugin para registrar a linguagem:
api.registerHighlightJSLanguage("languageName", languageDefinitionFunction); - Consulte Instalar uma nova linguagem para Highlight.JS via um componente de tema para um exemplo completo.

