Esta ação pode ser usada para traduzir o conteúdo de um site de documentação Astro Starlight. Isso requer uma configuração específica do Starlight, conforme detalhado abaixo.
-
Siga o guia do Starlight para usar um locale raiz.
-
Para habilitar o modo Starlight, você precisa fornecer a entrada
starlight_dir
na ação..github/workflows/ct.yml uses: pelikhan/action-continuous-translation@v0with:starlight_dir: ./docs -
Se você também configurou a opção
base
do Astro, você precisa fornecer a entradastarlight_base
também..github/workflows/ct.yml uses: pelikhan/action-continuous-translation@v0with:starlight_dir: ./docsstarlight_base: astro_base_option
Entradas Frontmatter Suportadas
Seção intitulada “Entradas Frontmatter Suportadas”Além do Markdown/MDX, oferecemos suporte a alguns dos metadados frontmatter possíveis que o Starlight suporta:
title
: O título da página.description
: A descrição da página.head.content
: O conteúdo das tags<head>
para páginas específicas.hero.tagline
: O slogan da seção hero.hero.actions.text
: O texto do botão de ação na seção hero.banner.content
: O conteúdo de um banner específico da página.prev
/prev.label
: O texto do link da página anterior.next
/next.label
: O texto do link da próxima página.sidebar.label
: Texto personalizado na barra lateral (por padrão,title
).sidebar.badge
/sidebar.badge.text
: Texto do badge para a barra lateral.
Também oferecemos suporte às entradas frontmatter do Starlight Blog:
excerpt
: O resumo do post do blog.
Título e Barra Lateral
Seção intitulada “Título e Barra Lateral”As entradas title
e sidebar
no frontmatter não são traduzidas automaticamente pela ação.
Recomendamos mover essas entradas para um arquivo JSON e importá-las em seu arquivo astro.config.mjs
.
// other importsimport { title } from "./resources.json" assert { type: "json" };
export default defineConfig({ integrations: [ starlight({ title, }), ],});
Siga a documentação específica de título e barra lateral do Starlight para mais detalhes.
Aviso de Conteúdo de IA
Seção intitulada “Aviso de Conteúdo de IA”Você pode informar aos seus usuários que a tradução foi gerada por IA ao adicionar um aviso no título. No momento, o Astro Starlight não oferece suporte a um recurso embutido para adicionar avisos, sendo necessário sobrescrever alguns componentes.
-
Sobrescreva os componentes
PageTitle
eHero
em seu arquivoastro.config.mjs
:astro.config.mjs export default defineConfig({integrations: [starlight({components: {PageTitle: "./src/components/PageTitle.astro",Hero: "./src/components/Hero.astro",},}),],}); -
Adicione os componentes no diretório
src/components
a partir dedocs/src/components
neste repositório.
Sinta-se à vontade para modificar a lógica no arquivo AIGeneratedNotice.astro
para atender às suas necessidades.
Validador de Links Astro
Seção intitulada “Validador de Links Astro”Se você usar o Astro Link Validator, certifique-se de desativar a opção errorOnRelativeLinks
no arquivo astro.config.mjs
, pois os links localizados são relativos ao locale raiz.
Você também pode habilitar a opção errorOnInconsistentLocale
para garantir que todos os links estejam consistentes com o locale atual.
import starlightLinksValidator from "starlight-links-validator";
export default defineConfig({ integrations: [ starlight({ plugins: [ starlightLinksValidator({ errorOnRelativeLinks: false, errorOnInconsistentLocale: true, }), ], }), ],});
Painel de Tradução Lunaria
Seção intitulada “Painel de Tradução Lunaria”Você pode usar o Painel de Tradução Lunaria para gerar um painel de status de tradução para o seu site Starlight.
Você pode experimentar o painel navegando até o link Painel de Tradução na barra lateral desta página.