Testes e depuração de templates
Este guia ajuda-o a verificar se um template está a ser descoberto corretamente pelo 7CG e por que motivo os campos podem não aparecer como espera.
Foi escrito para autores de templates que já têm um HTML com um bloco GDD embutido.
Comece pelo básico
Antes de procurar problemas mais profundos, confirme primeiro:
- O HTML do template contém um bloco
graphics-data-definitionválido. - O esquema raiz usa
"type": "object". - O JSON é válido e não tem vírgulas a mais.
- Cada campo em
propertiestem umtypeutilizável. - O template foi atualizado no 7CG após as alterações.
Se algum destes pontos estiver errado, o resto do comportamento do editor será pouco fiável.
Verifique se o template aparece no 7CG
Se o template não aparece de todo no 7CG, verifique:
- O template está numa localização varrida pela sua configuração de CasparCG/templates
- O 7CG atualizou a sua lista de templates
- O template pertence à família correta para o módulo que está a testar
Exemplos:
LOWERTHIRDS/...para o fluxo de OráculosCREDITS/...para o fluxo de Ficha TécnicaBIBLE/...para templates de BíbliaHYMNS/...para templates de LetrasQRCODE/...para fluxos de QR Code
Se o prefixo está errado, o template pode existir em disco mas nunca aparecer no seletor esperado.
Quando os campos não aparecem
Se o template aparece mas não há campos no editor:
- Confirme que
propertiesexiste na raiz - Confirme que o
typeda raiz é"object" - Confirme que as definições dos campos são objetos JSON válidos
- Garanta que os campos não estão acidentalmente a
null
Verifique também se criou apenas estruturas aninhadas sem uma propriedade de topo válida. O 7CG precisa de propriedades reais na raiz antes de conseguir construir o editor.
Quando as etiquetas parecem erradas
Se o editor mostra chaves técnicas em vez de etiquetas amigáveis:
- Adicione um
label - Ou pelo menos adicione uma
description
O 7CG faz fallback nesta ordem:
labeltraduzidolabelsimplesdescriptiontraduzidadescriptionsimples- chave do campo
Se saltar label e description, os utilizadores verão nomes técnicos como f0, headingText ou speaker_name.
Quando os separadores não aparecem
Se esperava separadores agrupados mas só vê uma lista plana:
- Verifique se
gddOptions.groupsexiste na raiz - Verifique se cada campo agrupado tem
gddOptions.group - Verifique se o ID do grupo do campo corresponde a um ID de grupo real na raiz
Os separadores só aparecem quando o 7CG encontra ambos:
- grupos definidos
- campos que efetivamente pertencem a esses grupos
Os campos sem grupo são colocados num separador Outros quando os separadores agrupados estão ativos.
Quando as cores não se comportam corretamente
Verifique o formato com cuidado:
color-rrggbbespera#RRGGBBcolor-rrggbbaaespera#RRGGBBAA
Erros comuns:
- esquecer o
#inicial - usar 6 dígitos num campo com alfa
- usar 8 dígitos num campo RGB simples
Se o controlo de cor parece estranho, teste com um valor muito óbvio como:
#FF0000#00FF00#0000FFFF
Quando as listas pendentes não funcionam
Para campos select, precisa de ambos:
gddType: "select"- um array
enum
Exemplo:
"alignment": {
"type": "string",
"label": "Alignment",
"gddType": "select",
"enum": ["left", "center", "right"]
}
Se enum falta, o 7CG não renderiza o campo como a lista pendente esperada.
Se os valores parecem demasiado técnicos, adicione etiquetas amigáveis em gddOptions.labels.
Quando arrays ou objetos parecem partidos
Os campos estruturados são mais poderosos, mas também mais fáceis de configurar mal.
Para objetos
Verifique:
type: "object"propertiesexiste
Se faltar properties, o editor de objeto não tem nada para renderizar.
Para arrays
Verifique:
type: "array"itemsexiste
Se faltar items, o 7CG não tem esquema para cada entrada da lista.
Para arrays de objetos, lembre-se que cada item abre numa janela própria. Se a janela está vazia, o problema está geralmente em items.properties.
Quando os seletores de ficheiro não correspondem ao esperado
Se quer um botão Procurar:
- use
gddType: "file-path"para ficheiros genéricos - use
gddType: "file-path/image-path"para imagens
Se o seletor permite demasiados tipos de ficheiro, adicione:
"gddOptions": {
"extensions": ["png", "jpg", "jpeg", "webp"]
}
Sem filtros de extensão, o seletor é mais genérico.
Quando as traduções não aparecem
Se gddOptions.i18n parece ignorado:
- confirme que as chaves de tradução estão sob o campo correto
- confirme que o código de idioma corresponde ao idioma atual da UI do 7CG
- lembre-se de que o 7CG recorre ao inglês e depois ao valor predefinido
Bons sítios para usar i18n:
titledo templatelabeldo campodescriptiondo campo
Rotina de teste prática
Ao construir um novo template, use esta sequência:
- Comece com um único campo string simples e confirme que o template aparece.
- Adicione mais um tipo de campo de cada vez.
- Teste o agrupamento só depois de os campos base funcionarem.
- Teste arrays e objetos só depois de etiquetas e campos básicos estarem estáveis.
- Teste i18n depois de a versão sem tradução funcionar.
Torna muito mais fácil ver qual a alteração que introduziu o problema.
Bons testes rápidos
Use isto como checklist final:
- O template aparece no seletor correto
- O título é legível
- Todos os campos têm uma etiqueta amigável
- Os campos multi-linha preservam quebras de linha
- As cores aceitam o formato esperado
- Os campos select mostram as opções esperadas
- Adicionar/editar/remover em arrays funciona
- As secções de objeto mostram todos os campos filho esperados
- Os separadores aparecem na ordem esperada
Páginas relacionadas
Passos seguintes
- Referência de campos quando precisar de confirmar opções suportadas
- Famílias de templates para confirmar que o seu template aparece no módulo certo