hugo-translator: script en Python para la traducción automática del contenido del blog de Hugo
Introducción general
hugo-translator es una herramienta de traducción automática diseñada para el constructor de sitios estáticos Hugo, alojada en GitHub y creada por el desarrollador Rico00121. La herramienta está diseñada para ayudar a los usuarios de Hugo a traducir rápidamente el contenido de su blog a varios idiomas, utilizando la API de Google Translate para un soporte multilingüe eficiente. Tanto si eres un bloguero individual como un webmaster que necesita internacionalizar su contenido, esta herramienta simplifica el proceso de traducción. Es de código abierto y permite a los usuarios descargar, modificar y aportar código libremente, lo que la hace ideal para una comunidad de desarrolladores que busca eficacia y personalización. Actualmente, el proyecto está aún en fase de desarrollo, con funciones relativamente básicas, pero con cierto grado de practicidad y potencial.

Lista de funciones
- Traducción automática de los contenidos del blogTraduce los archivos Markdown de Hugo (por ejemplo, index.en.md) al idioma especificado.
- Compatibilidad con Google Translate API: Traducción rápida y precisa de contenidos a través de los servicios de traducción de Google.
- salida multilingüeActualmente está programado para funcionar en francés, alemán y español, pero se prevé que funcione en más idiomas en el futuro.
- Escaneado y tratamiento de documentos: Escanea un directorio especificado e identifica y traduce los archivos Markdown elegibles.
- Fuente abierta y extensibleEl código está disponible públicamente en GitHub y puede ser desarrollado por los usuarios que lo soliciten.
Utilizar la ayuda
hugo-translator es una herramienta de línea de comandos basada en Go que se utiliza principalmente para traducir el contenido del blog de Hugo. Aquí tienes una guía detallada de instalación y uso para ayudarte a empezar.
Proceso de instalación
- Preparar el entorno
- Asegúrese de tener instalado en su ordenador el lenguaje de programación Go (se recomienda la versión 1.16 o superior). Esto puede hacerse con el comando
go version
Compruebe si la instalación se ha realizado correctamente. - Necesitará una cuenta de Google Cloud con la API de traducción de Google activada. Inicie sesión en Google Cloud Console, cree un proyecto, active la API de traducción y, a continuación, genere el archivo de clave de API (normalmente en formato JSON, por ejemplo
google-secret.json
).
- Asegúrese de tener instalado en su ordenador el lenguaje de programación Go (se recomienda la versión 1.16 o superior). Esto puede hacerse con el comando
- Descargar el código del proyecto
- Abra un terminal e introduzca el siguiente comando para clonar el proyecto localmente:
git clone https://github.com/Rico00121/hugo-translator.git
- Vaya al catálogo de proyectos:
cd hugo-translator
- Abra un terminal e introduzca el siguiente comando para clonar el proyecto localmente:
- Configuración de la API de Google Translate
- Añade el archivo descargado
google-secret.json
en el directorio raíz del proyecto hugo-translator. Este es el archivo de credenciales para llamar a la API de Google Translate, así que asegúrese de que la ruta es correcta y el nombre del archivo no ha cambiado.
- Añade el archivo descargado
- compilador
- Ejecute el siguiente comando en el directorio del proyecto para obtener las dependencias y compilar el ejecutable:
go get go build translate.go
- Cuando finaliza la compilación, genera un archivo llamado
translate
ejecutable (Windowstranslate.exe
).
- Ejecute el siguiente comando en el directorio del proyecto para obtener las dependencias y compilar el ejecutable:
- Verificar la instalación
- importación
./translate -h
(Windowstranslate.exe -h
), si aparece el mensaje de ayuda, la instalación se ha realizado correctamente.
- importación
Utilización
La función principal de hugo-translator es traducir archivos Markdown en inglés del blog Hugo a otros idiomas. Estos son los pasos para hacerlo:
Preparar los archivos del blog de Hugo
- Asegúrese de que el contenido de su blog Hugo comienza con
index.en.md
Formatee los nombres para indicar el contenido en inglés. Ejemplo:
content/posts/my-blog/index.en.md
- El contenido del archivo debe estar en formato Markdown estándar, con la portada de Hugo (por ejemplo, título, fecha, etc.) y el cuerpo del texto.
Ejecute el comando de traducción
- Operaciones básicas de traducción
- En el terminal, ejecute el siguiente comando para especificar la ruta del archivo que debe traducirse:
./translate <文件路径>
Ejemplo:
./translate content/posts/my-blog/index.en.md
- La versión actual traduce automáticamente el fichero al francés (fr), alemán (de) y español (es) y genera el fichero correspondiente, por ejemplo
index.fr.md
yindex.de.md
yindex.es.md
.
- Comprobación del archivo de salida
- Una vez finalizada la traducción, el nuevo archivo de idioma aparece en el mismo directorio que el archivo original. Ejemplo:
content/posts/my-blog/ ├── index.en.md ├── index.fr.md ├── index.de.md ├── index.es.md
- Abra estos archivos y compruebe los resultados de la traducción. Por lo general, la sección de la portada no se modifica y el cuerpo del texto se traduce al idioma de destino.
advertencia
- Convenciones de denominación de archivosActualmente, la herramienta sólo reconoce
index.en.md
otras convenciones de nomenclatura (p. ej.index.md
) no es compatible por el momento. - Restricciones a la traducciónActualmente el soporte de idiomas está codificado (francés, alemán, español) y no es posible especificar otros idiomas a través de la línea de comandos. Es posible que en futuras versiones se añada la selección de idioma.
- requisitos de la redSe requiere acceso a Internet para funcionar, ya que la traducción se basa en la API de Google Translate.
- detección de erroresSi la traducción falla, compruebe
google-secret.json
Están colocados correctamente, o verifique que la conexión de red funciona correctamente.
Función destacada Operación
Asistencia multilingüe automatizada
- Lo más destacado de hugo-translator es que genera versiones en varios idiomas de un archivo a la vez. Por ejemplo, si introduces un archivo de blog en inglés, generará automáticamente traducciones a tres idiomas, ahorrándote el trabajo de traducirlas manualmente una a una.
- Ejemplo de funcionamiento:
./translate content/posts/my-blog/index.en.md
- Resultados:
index.fr.md
Versión francesaindex.de.md
Versión alemanaindex.es.md
Versión española
Extensiones de código abierto
- Si necesita traducir a otro idioma, puede modificar el código fuente. Por ejemplo, abra el archivo
translate.go
busque la parte lógica de la traducción (que suele implicar el archivotranslateTextWithModel
), añada el código del idioma de destino (por ejemplo"it"
(indica italiano). - Modificar y recompilar:
go build translate.go
- Esta flexibilidad es ideal para usuarios con conocimientos de programación.
Ejemplos de uso
Supongamos que tiene una entrada en su blog index.en.md
El contenido es el siguiente:
---
title: "My First Blog"
date: 2023-01-01
---
Hello, this is my first blog post!
Ejecutar comando:
./translate content/posts/my-blog/index.en.md
Después de la traducción.index.fr.md
Puede ser como sigue:
---
title: "My First Blog"
date: 2023-01-01
---
Salut, ceci est mon premier article de blog !
Los demás archivos de idioma son similares y pueden utilizarse directamente en el proyecto Hugo para implementar un blog multilingüe.
Orientaciones para futuras mejoras
- La versión actual es sencilla. El desarrollador Rico00121 mencionó en GitHub que se prevén mejoras, como la compatibilidad con determinados idiomas, el procesamiento por lotes de todos los archivos de un directorio, etc. Los usuarios pueden seguir las actualizaciones del proyecto o contribuir.
Con los pasos anteriores, puedes utilizar hugo-translator fácilmente para traducir el contenido de tu blog a varios idiomas, mejorando la accesibilidad y la internacionalización de tu sitio web.
© declaración de copyright
El artículo está protegido por derechos de autor y no debe reproducirse sin autorización.
Artículos relacionados
Sin comentarios...