← Volver ao blog

Engadir o galego á nosa propia web: o que aprendemos facendo i18n sen librarías

Daniel García·

Hai unhas semanas decidimos meter o galego na nosa propia web, ademais do español e do inglés. Non foi por petición de ningún cliente nin por un plan de expansión: foi Marta, que leva a parte comercial, quen un día me comentou que boa parte de quen nos escribe por LinkedIn é de Galicia, e que a algún lle parecera raro ver a web só en castelán e en inglés, nunca no seu idioma. Non foi unha queixa formal, foi un comentario de corredor. Pero quedou aí a dar voltas.

O primeiro que decidimos foi non meter ningún paquete de i18n. Astro trae dende hai un par de versións soporte de rutas con prefixo de idioma integrado, pero nós xa usabamos a Content Layer API con loader: glob para o blog e a FAQ, así que a solución máis sinxela era engadir un subcartafol por idioma dentro de cada colección (blog/es/, blog/en/, blog/gl/, e o mesmo en faq/). Mesmo nome de ficheiro nos tres cartafoles para emparellar traducións da mesma peza. Nada de táboa de traducións en base de datos nin de plugin de terceiros.

Traducir non foi o que máis tempo nos levou. Fágoo eu mesmo, sen pasar o texto por ningunha ferramenta de tradución automática — falo galego dende neno e nótase decontado cando unha tradución vén de máquina, e non quero que a un lector galego lle chirríe a lectura. O que si custou foi separar o prefixo de idioma do slug real á hora de xerar rutas: getStaticPaths traballa con entry.id, e no blog ese id leva pegados idioma, data e slug. Acabamos escribindo unha función á parte só para partir esa cadea nas súas tres pezas.

E logo chegou a metedura de pata, parva pero que custou atopar. Subimos un artigo sobre copias de seguridade sen o prefixo es/ diante do nome do ficheiro. Astro cargábao sen protestar, porque o schema da colección non esixe ese cartafol, así que a build pasaba limpa. Pero o artigo non aparecía nin en /blog, nin en /en/blog, nin en /gl/blog. Ningún erro, ningunha advertencia na consola, só un artigo pantasma que existía no repositorio e en ningún sitio do navegador. Deime conta porque busquei o título no propio buscador do sitio e non saíu nada.

Dende entón ese cartafol de idioma é do primeiro que reviso antes de facer commit de contido novo. O que aínda non teño resolto é que facer coas pezas antigas: vounas traducindo ao galego segundo atopo un oco, non de vez, así que durante un tempo o selector de idioma en galego vai amosar bastantes menos artigos que en español ou inglés. Non sei se iso confunde máis do que axuda, ou se total é mellor así, pouco a pouco, que forzar unha tradución rápida de corenta pezas só por quedar ben co completismo.

astroi18narquitectura