hugo-translator : script Python pour la traduction automatique du contenu du blog d'Hugo
Introduction générale
hugo-translator est un outil de traduction automatique conçu pour le constructeur de sites statiques Hugo, hébergé sur GitHub et créé par le développeur Rico00121. L'outil est conçu pour aider les utilisateurs d'Hugo à traduire rapidement le contenu de leur blog en plusieurs langues, en utilisant l'API Google Translate pour un support multilingue efficace. Que vous soyez un blogueur individuel ou un webmaster qui a besoin d'internationaliser son contenu, cet outil simplifie le processus de traduction. Il est open source et permet aux utilisateurs de télécharger, de modifier et de contribuer librement au code, ce qui le rend idéal pour une communauté de développeurs à la recherche d'efficacité et de personnalisation. Actuellement, le projet est encore en phase de développement, avec des fonctions relativement basiques, mais avec un certain degré de praticité et de potentiel.

Liste des fonctions
- Traduction automatisée du contenu des blogs: Traduire les fichiers Markdown d'Hugo (par exemple index.en.md) dans la langue spécifiée.
- Prise en charge de l'API Google TranslateTraduction rapide et précise du contenu grâce aux services de traduction de Google.
- production multilingueLes langues suivantes sont prises en charge : le français, l'allemand et l'espagnol sont actuellement codés en dur et d'autres langues sont prévues pour l'avenir.
- Numérisation et traitement des documents: scanne un répertoire spécifié, identifie et traduit les fichiers Markdown éligibles.
- Source ouverte et extensibleLe code est disponible publiquement sur GitHub et peut être développé par les utilisateurs sur demande.
Utiliser l'aide
hugo-translator est un outil en ligne de commande basé sur Go, principalement utilisé pour traduire le contenu du blog Hugo. Voici un guide d'installation et d'utilisation détaillé pour vous aider à démarrer.
Processus d'installation
- Préparation de l'environnement
- Assurez-vous que le langage de programmation Go est installé sur votre ordinateur (version 1.16 ou supérieure recommandée). Cela peut être fait avec la commande
go version
Vérifier si l'installation s'est déroulée correctement. - Connectez-vous à la Google Cloud Console, créez un projet, activez l'API de traduction, puis générez le fichier de clé API (généralement au format JSON, par ex.
google-secret.json
).
- Assurez-vous que le langage de programmation Go est installé sur votre ordinateur (version 1.16 ou supérieure recommandée). Cela peut être fait avec la commande
- Télécharger le code du projet
- Ouvrez un terminal et entrez la commande suivante pour cloner le projet localement :
git clone https://github.com/Rico00121/hugo-translator.git
- Accédez au catalogue de projets :
cd hugo-translator
- Ouvrez un terminal et entrez la commande suivante pour cloner le projet localement :
- Configuration de l'API Google Translate
- Ajouter le fichier téléchargé
google-secret.json
dans le répertoire racine du projet hugo-translator. Il s'agit du fichier d'identification permettant d'appeler l'API Google Translate, assurez-vous donc que le chemin d'accès est correct et que le nom du fichier n'a pas changé.
- Ajouter le fichier téléchargé
- compilateur
- Exécutez la commande suivante dans le répertoire du projet pour obtenir les dépendances et compiler l'exécutable :
go get go build translate.go
- Lorsque la compilation est terminée, elle génère un fichier appelé
translate
exécutable (Windowstranslate.exe
).
- Exécutez la commande suivante dans le répertoire du projet pour obtenir les dépendances et compiler l'exécutable :
- Vérifier l'installation
- importation
./translate -h
(Fenêtrestranslate.exe -h
), si le message d'aide s'affiche, l'installation a réussi.
- importation
Utilisation
La fonction principale de hugo-translator est de traduire les fichiers Markdown anglais du blog Hugo vers d'autres langues. Voici les étapes pour le faire :
Préparer les fichiers du blog Hugo
- Veillez à ce que le contenu de votre blog Hugo commence par
index.en.md
Formater les noms pour indiquer le contenu en anglais. Exemple :
content/posts/my-blog/index.en.md
- Le contenu du fichier doit être au format Markdown standard, contenant la première page d'Hugo (par exemple, le titre, la date, etc.) et le corps du texte.
Exécuter la commande de traduction
- Opérations de traduction de base
- Dans le terminal, exécutez la commande suivante pour spécifier le chemin du fichier à traduire :
./translate <文件路径>
Exemple :
./translate content/posts/my-blog/index.en.md
- La version actuelle traduit automatiquement le fichier en français (fr), en allemand (de) et en espagnol (es) et génère le fichier correspondant, par ex.
index.fr.md
,index.de.md
,index.es.md
.
- Vérification du fichier de sortie
- Lorsque la traduction est terminée, le fichier de la nouvelle langue apparaît dans le même répertoire que le fichier original. Exemple : la traduction d'un fichier de la nouvelle langue se fait dans le même répertoire que le fichier original :
content/posts/my-blog/ ├── index.en.md ├── index.fr.md ├── index.de.md ├── index.es.md
- Ouvrez ces fichiers et vérifiez les résultats de la traduction. La section du frontispice reste généralement inchangée et le corps du texte est traduit dans la langue cible.
mise en garde
- Conventions de dénomination des fichiersL'outil ne reconnaît actuellement que
index.en.md
d'autres conventions de dénomination (par ex.index.md
) n'est pas pris en charge pour le moment. - Restrictions de traductionLangues : Actuellement, les langues sont codées en dur (français, allemand, espagnol) et il n'est pas possible de spécifier d'autres langues par l'intermédiaire de la ligne de commande. La sélection de la langue peut être ajoutée dans les versions futures.
- exigences en matière de réseauLe fonctionnement de l'application nécessite un accès à Internet, car la traduction s'appuie sur l'API de Google Translate.
- détection des erreursSi la traduction échoue, vérifiez le
google-secret.json
Sont-ils placés correctement, ou vérifiez que la connexion réseau fonctionne correctement.
Fonction en vedette Fonctionnement
Assistance multilingue automatisée
- Le point fort de hugo-translator est qu'il génère plusieurs versions linguistiques d'un fichier en une seule fois. Par exemple, si vous saisissez un fichier de blog en anglais, il générera automatiquement des traductions en trois langues, vous évitant ainsi de les traduire manuellement une par une.
- Exemple d'opération :
./translate content/posts/my-blog/index.en.md
- Résultats de la sortie :
index.fr.md
Version anglaise : French versionindex.de.md
Version en langue allemandeindex.es.md
Version espagnole
Extensions Open Source
- Si vous devez traduire une autre langue, vous pouvez modifier le code source. Par exemple, ouvrez le fichier
translate.go
trouver la partie logique de la traduction (qui implique généralement le fichiertranslateTextWithModel
), ajouter le code de la langue cible (par ex."it"
(indique l'italien). - Modifier et recompiler :
go build translate.go
- Cette flexibilité est idéale pour les utilisateurs ayant des compétences en programmation.
Exemples de scénarios d'utilisation
Supposons que vous ayez un article de blog index.en.md
Le contenu est le suivant :
---
title: "My First Blog"
date: 2023-01-01
---
Hello, this is my first blog post!
Exécuter la commande :
./translate content/posts/my-blog/index.en.md
Après traduction.index.fr.md
Elle peut se présenter comme suit :
---
title: "My First Blog"
date: 2023-01-01
---
Salut, ceci est mon premier article de blog !
Les autres fichiers de langue sont similaires et peuvent être utilisés directement dans le projet Hugo pour mettre en œuvre un blog multilingue.
Orientations en vue d'une amélioration future
- La version actuelle est simple, le développeur Rico00121 a mentionné sur GitHub les améliorations prévues telles que la prise en charge de langues spécifiques, le traitement par lots de tous les fichiers d'un répertoire, et plus encore. Les utilisateurs peuvent suivre les mises à jour du projet ou y contribuer.
Avec les étapes ci-dessus, vous pouvez facilement utiliser hugo-translator pour traduire le contenu de votre blog en plusieurs langues, améliorant ainsi l'accessibilité et l'internationalisation de votre site web.
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...