O artigo fornece instruções sobre como usar Markdown, BBCode e HTML para postar texto formatado no Discourse.
Nível de usuário necessário: Todos os usuários podem usar
Link original oficial: Posting code or preformatted text
Quando você tem código que deseja compartilhar no Discourse, ou quando precisa postar logs de erro no Discourse. Se não formatarmos o código, será muito difícil ler esse conteúdo, e muitos códigos contêm espaços e outros caracteres, que perderão seu significado original durante a conversão do conteúdo.
Resumo
Neste guia, você aprenderá:
- Como formatar código inline.
- Como formatar código de linha única.
- Como formatar código de várias linhas.
- Como usar BBCode e HTML para formatação de código.
- Como desativar a formatação automática de código.
Formatação de Código Inline
Para formatar código inline ou texto especial, use aspas simples antes e depois do conteúdo que precisa ser formatado.
Isso pode estar em um texto, ou o código pode estar em outra linha.
A formatação de código inline não aplicará nenhuma formatação ao código a ser formatado (veja o exemplo abaixo), apenas usará o estilo de código (“code style”) para o código a ser formatado.
Exemplo 1:
Entrada:
This is a line of code
Saída:
This is a line of code
Exemplo 2:
Entrada:
Here’s some text with a bit of code inside!
Saída:
Here’s some text with a bit of code inside!
Formatação de Código de Linha Única
Se você precisar formatar o código em uma linha, basta adicionar 4 espaços antes da linha de código.
Todo o conteúdo em uma única linha será formatado como código até o início da próxima linha.
Exemplo:
Entrada:
All text after 4 spaces will be formatted.
Saída:
All text after 4 spaces will be formatted.
Formatação de Código de Várias Linhas
Para código de várias linhas, se você ainda usar a formatação de código de linha única, todo o processo parecerá muito complicado.
Especialmente porque muitos códigos usam espaços para indentação.
O uso da formatação de código com espaços de linha única afetará a indentação de todo o bloco de código.
Nesse momento, você pode usar 3 aspas simples (backticks (```)) como início do código, e essas 3 aspas simples precisam estar em uma linha separada.
Além disso, não pode haver espaços antes dessas 3 aspas simples; se houver espaços, todo o bloco de código pode não ser formatado.
Exemplo:
Entrada:
```
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
```
Saída:
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
BBCode e HTML
Além da formatação Markdown, o Discourse também suporta BBCode e HTML.
Para HTML, use as tags <pre> e <code>:
<pre><code>
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
</code></pre>
Para BBCode, use a tag [code]:
[code]
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
[/code]
Para Linguagens de Programação Específicas
Por padrão, o Discourse detecta automaticamente a linguagem usada com base no formato de sua entrada.
Claro, você também pode especificar manualmente a linguagem para o bloco de código, digitando a linguagem que deseja formatar após as 3 aspas simples.
``` your_language
# Your code here
Exemplo:
Para a linguagem Ruby:
Entrada:
``` ruby
3.times do |stuff|
stuff.do
end
```
Saída:
3.times do |stuff|
stuff.do
end
As linguagens suportadas devem ser as linguagens que suportam realce de sintaxe abaixo.
A lista de linguagens suportadas pode ser acessada na página no GitHub.
Claro, você pode usar a configuração default code lang para configurar a linguagem padrão.
Sem Realce de Sintaxe
Se você não quiser que o texto de entrada ou o bloco de código usem qualquer realce de sintaxe, use text em vez de selecionar a linguagem.
Exemplo:
Entrada:
``` text
Your text to NOT highlight here
Saída:
Your text to NOT highlight here
Melhores Práticas
- Para código inline, sempre use aspas simples para envolver o texto que você deseja formatar.
- Se você quiser compartilhar várias linhas de código, formate o código.
- Para texto e logs, evite usar o estilo de código automático, pois esses textos são em sua maioria texto puro, e o formato de texto deve ser usado entre eles.
- Quando descobrir que o estilo automático não reconheceu o código corretamente, lembre-se de especificar a linguagem correta para o seu código.