Referência da sintaxe
Tudo o que o PixelDeck entende num arquivo Markdown, com exemplos prontos para copiar. O editor visual escreve boa parte disto por você; esta página é para quando você prefere digitar, ou quer um recurso que só existe no texto.
Slides
Uma linha só com --- separa um slide do próximo. Linhas em
branco em volta são opcionais, mas deixam o arquivo mais legível.
# Primeiro slide
Um parágrafo.
---
# Segundo slide
Com slide-dividers no cabeçalho, um título também começa um
slide novo, sem precisar do separador:
slide-dividers: #, ##
Um slide que não tem nada entre os separadores não existe. Quando você
cria um slide Em branco ou apaga todo o conteúdo de um slide
no editor, o PixelDeck grava @layout content no lugar, para que
ele continue sendo um slide.
O cabeçalho
As linhas chave: valor no topo do arquivo, antes do primeiro
slide, valem para a apresentação inteira. Quase todas também podem ser
trocadas num slide só com um comando entre colchetes, como
[.autoscale: false] — veja Comandos por
slide.
| Chave | O que faz | Exemplo |
|---|---|---|
| title | O nome da apresentação. | Ideias que merecem o palco |
| accent | A cor do texto, dos títulos e dos destaques. | #2DD4A8 |
| background | A cor do fundo. Sem ela, fica o fundo padrão do PixelDeck. | #00120B |
| theme | Preservada no arquivo. A renderização do PixelDeck usa accent e background. | qualquer texto |
| ratio | Preservada no arquivo. O palco do PixelDeck é sempre 16:9. | 16:9 |
| background-color | Preservada no arquivo. Para mudar o fundo no PixelDeck, use background ou @background. | #00120B |
| build-lists | Revela listas item a item. | true |
| slide-transition | A transição entre slides. Veja Transições. | phosphor |
| autoscale | Encolhe o conteúdo que não cabe na altura. Ligado por padrão. | false |
| slidenumbers | Mostra o número do slide. Ligado por padrão. | false |
| slidecount | Mostra o total de slides. Ligado por padrão. | false |
| footer | O rodapé de todos os slides. Aceita Markdown em linha. | Projeto *01* |
| badge | A etiqueta do canto superior em todos os slides. | PIXELDECK |
| fit-header | Aplica [fit] a todos os títulos desses níveis. | #, ## |
| slide-dividers | Títulos desses níveis começam um slide novo. | # |
| code-language | A linguagem dos blocos de código que não declaram uma. | swift |
| background-image | Uma imagem de fundo em todos os slides. | imagens/textura.png |
Uma chave que o PixelDeck não conhece continua no arquivo e gera um aviso no slide, em vez de ser apagada.
Diretivas de slide
Linhas que começam com @, em qualquer ponto do slide —
normalmente no topo. São as mesmas que os campos de Layout e
Detalhes do editor escrevem.
| Diretiva | O que faz | Exemplo |
|---|---|---|
| @layout | Fixa o layout: cover, section, content, center ou quote. Veja Layout e detalhes. | @layout center |
| @kicker | O texto pequeno acima do título. @label é sinônimo. | @kicker PARTE 02 |
| @badge | A etiqueta do canto superior, só neste slide. | @badge 02 / ENTREGA |
| @crumb | O caminho no topo, só neste slide. Sem ele, o caminho segue a numeração das partes. | @crumb parte-02/entrega |
| @hint | O rodapé, só neste slide. | @hint Perguntas no fim |
| @accent | A cor do texto, só neste slide. | @accent #FFB000 |
| @background | A cor do fundo, só neste slide. No editor aparece como bloco avançado. | @background #1A1100 |
| @ends-presentation | Ao chegar a este slide avançando, a tela desliga como um tubo antigo. Só vale no último slide. | @ends-presentation |
O PixelDeck também lê @endsPresentation em arquivos antigos,
mas grava a forma canônica @ends-presentation.
Títulos
De # a ######, do maior para o menor, todos na cor
do tema. Várias linhas # seguidas formam um título de várias
linhas.
# Ideias que
# merecem o palco.
## Um subtítulo
### Um título de seção dentro do slide
| Marca | O que faz | Exemplo |
|---|---|---|
| [fit] | Aumenta ou reduz o título até ocupar a largura útil do slide, mantendo a fonte. | # [fit] Grande |
| [dim] | Apaga o resto da linha, para tirar um trecho do primeiro plano. | ## [dim] que merecem |
| [dim]…[/dim] | Apaga só o trecho entre as marcas. Funciona também em texto comum. | Uma [dim]palavra[/dim] só |
Centralizar o texto no slide
Duas coisas diferentes, que costumam andar juntas:
- No meio da altura: o layout
@layout center(Destaque no editor) coloca o conteúdo no centro vertical do slide. - No meio da largura: o comando de alinhamento
[.header: alignment(center)]centraliza os títulos, e[.text: alignment(center)], os parágrafos.
@layout center
[.header: alignment(center)]
[.text: alignment(center)]
# Uma frase que fica.
Dita no centro exato da tela.
Para centralizar todos os slides, escreva o alinhamento no cabeçalho, sem os colchetes e sem o ponto:
header: alignment(center)
text: alignment(center)
O mesmo comando aceita left e right.
[.header: alignment(left)]
[.text: alignment(center)]
[.list: alignment(right)]
[.quote: alignment(center)]
[.footer-style: alignment(right)]
Alinhamento, tamanho e espaçamento
Comandos de estilo ajustam um tipo de elemento sem trocar a identidade
visual. A forma é [.elemento: ajuste(valor), ajuste(valor)] num
slide, ou elemento: ajuste(valor) no cabeçalho. O ajuste afeta
todos os elementos daquele tipo no slide. Uma declaração local substitui
o valor inteiro do mesmo seletor global; as propriedades não são mescladas.
Ainda não há estilo exclusivo de um bloco por essa sintaxe.
[.text: alignment(right), text-scale(1.2), line-height(8)]
[.list: bullet-character(→), bullet-indent(40)]
| Elemento | Afeta |
|---|---|
| header | Todos os títulos. header-emphasis e header-strong afetam só o itálico e o negrito dos títulos de níveis 1 a 4. |
| text | Parágrafos. text-emphasis e text-strong, só o itálico e o negrito. |
| list | Listas com marcador e numeradas. |
| table · table-separator | Células e as linhas da tabela. |
| code | Blocos de código. |
| quote · quote-author | Citações e a linha do autor. |
| formula | Fórmulas. |
| graph | Comando legado preservado, sem efeito visual. Diagramas Mermaid usam a paleta PixelDeck. |
| footnote · footnote-separator | Notas de rodapé e a linha acima delas. |
| footer-style · slidenumber-style | O rodapé e o contador de slides. |
| presenter-notes | As notas na sua tela durante a apresentação. |
| Ajuste | O que faz | Valores |
|---|---|---|
| alignment | Alinhamento do texto. | left, center, right |
| text-scale | Multiplica o tamanho da fonte. | 0.5 a 2 |
| line-height | Espaço extra entre linhas, em pontos. | 0 a 40 |
| kern | Espaço entre letras, em pontos. | −2 a 6 |
| margin | Espaço acima e abaixo do elemento; em tabelas, espaço interno das células. | 0 a 40 |
| capitalization | Caixa do texto. | default, upper, title |
| bullet-character | O marcador das listas. | até 12 caracteres |
| bullet-indent · ordered-bullet-indent | Recuo das listas com marcador e das numeradas. | 12 a 80 · 20 a 100 |
| stroke-width · height | Espessura da borda inferior das células e da linha acima das notas de rodapé, respectivamente. Não definem altura da tabela. | 1 a 10 |
| dimmed-opacity | Quanto as linhas de código apagadas somem. | 0.05 a 0.8 |
@accent.
Texto
| Recurso | Como escrever |
|---|---|
| Negrito e itálico | **negrito** · *itálico* · ~~riscado~~ |
| Quebra de linha | Uma quebra no arquivo é uma quebra no slide. <br> também funciona. |
| Sobrescrito e subscrito | H<sub>2</sub>O · m<sup>2</sup> |
| Emojis | O caractere direto, ou o apelido: :sunny: |
| Código em linha | `let x = 1` |
| Link | [site](https://exemplo.com). Endereços soltos viram link sozinhos. |
| Nota de rodapé | Um fato[^1] e, em qualquer slide, [^1]: A fonte. Nomes também servem: [^fonte]. |
Para ligar um slide a outro, marque o destino com uma âncora e aponte para ela. O link continua funcionando no PDF e no HTML portátil.
<a name="conclusao"></a>
# Conclusão
---
[Pular para a conclusão](#conclusao)
<br>, <sup>,
<sub> e âncoras, marcação HTML fica no arquivo mas não
aparece nem roda no slide.
Listas
- Um item
- Outro item
- Um subitem, com dois espaços de recuo
1. Primeiro passo
2. Segundo passo
- [x] Feito
- [ ] A fazer
Com build-lists: true no cabeçalho, ou
[.build-lists: true] num slide, cada avanço revela o próximo
item. Veja Revelação e transições.
Citações
A última linha da citação, começando com --, vira o autor.
@layout quote
> Simplicidade é a sofisticação máxima.
> -- Leonardo da Vinci
Código
Três crases abrem e fecham o bloco; a palavra depois delas é a linguagem.
```swift
let deck = DeckParser.parse(texto)
print(deck.slides.count)
```
Para acender linhas aos poucos, ponha um ou mais comandos
[.code-highlight] logo antes do bloco. Cada um é um passo da
apresentação.
[.code-highlight: none]
[.code-highlight: 1]
[.code-highlight: 2-3, 5]
[.code-highlight: all]
Aceita números de linha, intervalos com hífen, listas separadas por vírgula,
none (tudo apagado) e all (tudo aceso).
Tabelas
Os dois-pontos na linha de separação alinham a coluna: à esquerda, ao centro ou à direita.
| Item | Qtd. | Preço |
|:----------|:----:|------:|
| Café | 2 | 12,00 |
| Pão \| pão | 1 | 4,50 |
Use \| para um traço vertical dentro de uma célula.
Fórmulas
TeX entre $$. No meio de uma frase, fica em linha; sozinha
numa linha, vira bloco centralizado.
A área é $$\pi r^2$$ para qualquer círculo.
$$
e^{i\pi} + 1 = 0
$$
Uma fórmula que o motor não reconhece continua legível como texto e gera aviso.
Diagramas
Um bloco de código com a linguagem mermaid vira diagrama, nas
cores do tema.
```mermaid
flowchart LR
A[Ideia] --> B[Markdown] --> C[Palco]
```
No editor visual, escolha o bloco Diagrama e comece por um dos modelos prontos. Para editar à mão, escreva qualquer diagrama Mermaid dentro do bloco. Se a sintaxe estiver inválida, o slide mostra um aviso.
Imagens
A imagem precisa estar na pasta do documento ou numa subpasta. O texto entre os colchetes guarda as opções de composição, separadas por espaço.



| Opção | O que faz |
|---|---|
| (nenhuma) | Imagem de fundo, ocupando o slide inteiro. Com texto por cima, ela escurece para o texto continuar legível. |
| left · right | A imagem ocupa metade do slide, à esquerda ou à direita, e o texto fica na outra metade. |
| fit · fill | Mostra a imagem inteira, ou preenche o espaço cortando as bordas. |
| original · filtered | Nunca escurece, ou sempre escurece. |
| inline | A imagem entra no fluxo do texto, como um parágrafo. Várias na mesma linha formam uma grade. |
| 50% | Escala. Qualquer porcentagem de 1% a 1000%. |
| corner-radius(12) | Arredonda os cantos. |
background-image no cabeçalho, ou
[.background-image: imagens/textura.png] num slide, põe a mesma
imagem de fundo sem precisar repeti-la.
No editor visual, o botão Escolher imagem, vídeo ou áudio… copia o arquivo para junto do documento. Depois, edite o campo de descrição para acrescentar as opções acima.
Vídeo, áudio e YouTube
A mesma sintaxe da imagem. O tipo vem da extensão do arquivo: vídeo
(mp4, mov, m4v, webm) ou
áudio (mp3, m4a, wav, aac,
flac…). Um endereço do YouTube vira player incorporado, e o
t= do link vira o ponto de início.



| Opção | O que faz |
|---|---|
| autoplay | Começa a tocar quando o slide aparece na apresentação. |
| loop | Recomeça ao terminar. |
| mute | Começa sem som. |
| hide | Esconde o player. Útil para uma trilha de áudio. |
| autoadvance | Ao terminar o vídeo, avança para o próximo slide. |
A mídia pausa ao sair do slide. Posição e escala funcionam como nas imagens.
Colunas
[.column] começa uma coluna. Tudo até o próximo
[.column], [.end-columns], ou até o fim do slide, fica nela.
[.end-columns] encerra o grupo: o conteúdo seguinte volta à
largura normal, abaixo da coluna mais alta. O texto anterior à primeira
coluna também mantém a largura normal. Outra linha [.column]
pode iniciar um novo grupo no mesmo slide.
# Lado a lado
[.column]
### Antes
- Lento
[.column]
### Depois
- Rápido
Documentos antigos podem usar @cols, @col e
@end; o PixelDeck ainda os lê.
Rodapé e numeração
| O que você quer | No cabeçalho | Num slide |
|---|---|---|
| Rodapé | footer: Projeto 01 | [.footer: Só aqui] ou @hint Só aqui |
| Esconder o rodapé | — | [.hide-footer] |
| Sem número do slide | slidenumbers: false | [.slidenumbers: false] |
| Sem total de slides | slidecount: false | [.slidecount: false] |
Slides ocultos não entram na numeração nem no total.
Comandos por slide
Uma linha sozinha entre colchetes, com ponto, muda uma configuração só naquele slide. Ela vence o que estiver no cabeçalho.
| Comando | O que faz |
|---|---|
| [.autoscale: false] | Não encolhe o conteúdo, mesmo que ele passe da altura. |
| [.build-lists: true] | Revela as listas deste slide item a item. |
| [.slide-transition: glitch] | A transição que leva a este slide. |
| [.background-image: arquivo] | Imagem de fundo deste slide. |
| [.code-language: python] | Linguagem padrão dos blocos de código deste slide. |
| [.footer: texto] · [.hide-footer] | Troca ou esconde o rodapé. |
| [.slidenumbers: false] · [.slidecount: false] | Esconde número ou total. |
| [.column] | Começa uma coluna. |
| [.end-columns] | Encerra o grupo de colunas e retoma a largura normal. |
| [.code-highlight: 2-4] | Um passo de realce do próximo bloco de código. |
| [.header: …] e demais estilos | Veja Alinhamento, tamanho e espaçamento. |
Transições
O valor de slide-transition, no cabeçalho ou em
[.slide-transition: …] num slide, é o nome da transição,
opcionalmente seguido de direção, duração em segundos e cor entre
parênteses.
slide-transition: fade
slide-transition: push(vertical, 0.5)
[.slide-transition: fadeThroughColor(#000000, 0.8)]
[.slide-transition: terminal]
| Nome | No editor |
|---|---|
| false | Nenhuma |
| terminal | Terminal |
| phosphor | Fósforo |
| glitch | Glitch |
| shutdown | Desligar |
| interlace | Entrelaçado |
| snow | Estática |
| fade · true | Esmaecer |
| push · move · channel | Só no texto: a chegada acontece em Esmaecer. |
| reveal | Só no texto: o slide antigo sai e descobre o novo. |
| fadeThroughColor | Só no texto: esmaece passando por uma cor. |
Direções: horizontal, vertical, left,
right, top, bottom. Duração de 0 a 10
segundos. Veja Revelação e transições.
Notas do apresentador
Linhas que começam com ^ são notas: só você vê, na sua tela,
durante a apresentação. Linhas seguidas continuam a mesma nota.
# Resultados
^ Lembrar de citar o número do trimestre anterior.
^ Pausa antes do gráfico.
Comentários e slides ocultos
Tudo entre <!-- e --> fica no arquivo e não
aparece no slide. Um slide inteiramente comentado continua no
roteiro para você editar, mas é pulado na apresentação, não conta na
numeração e fica fora das exportações.
---
<!--
# Slide de reserva
Só se sobrar tempo.
-->
---