AIパーソナル・ラーニング
と実践的なガイダンス
ビーンバッグ・マースコード1

hugo-translator: ヒューゴのブログコンテンツを自動翻訳するPythonスクリプト

はじめに

hugo-translatorはHugoの静的サイトビルダー用に設計された自動翻訳ツールで、GitHubでホストされており、開発者のRico00121によって作成されました。このツールは、Hugoユーザーがブログコンテンツを素早く多言語に翻訳できるように設計されており、Google翻訳APIを利用して効率的な多言語サポートを実現しています。個人のブロガーであれ、コンテンツの国際化が必要なウェブマスターであれ、このツールは翻訳プロセスを簡素化する。オープンソースであり、ユーザーは自由にコードをダウンロード、変更、貢献することができるため、効率性とパーソナライズを求める開発者コミュニティにとって理想的なツールとなっている。現在、プロジェクトはまだ開発段階にあり、比較的基本的な機能を備えているが、ある程度の実用性と可能性を持っている。

hugo-translator: ヒューゴのブログコンテンツを自動翻訳するPythonスクリプト-1


 

機能一覧

  • ブログコンテンツの自動翻訳: HugoのMarkdownファイル(例:index.en.md)を指定された言語に翻訳します。
  • Google翻訳APIをサポートGoogleの翻訳サービスを利用した、高速で正確なコンテンツ翻訳。
  • 多言語出力現在、フランス語、ドイツ語、スペイン語にハードコードされています。
  • 文書のスキャンと処理指定されたディレクトリをスキャンし、適格なMarkdownファイルを特定して翻訳します。
  • オープンソースと拡張性コードはGitHubで公開されており、ユーザーが必要に応じて開発することができる。

 

ヘルプの使用

hugo-translatorはGoベースのコマンドラインツールで、主にHugoブログのコンテンツを翻訳するのに使います。ここでは、インストールと使い方のガイドを詳しく説明します。

設置プロセス

  1. 環境を整える
    • お使いのコンピューターにGoプログラミング言語がインストールされていることを確認してください(推奨バージョン1.16以上)。これは go version インストールが成功したかどうかを確認する。
    • Google Cloud Consoleにログインしてプロジェクトを作成し、Translate APIを有効にしてから、APIキーファイル(通常はJSON形式。 google-secret.json).
  2. プロジェクトコードのダウンロード
    • ターミナルを開き、以下のコマンドを入力してプロジェクトをローカルにクローンする:
      git clone https://github.com/Rico00121/hugo-translator.git
      
    • プロジェクト・カタログにアクセスする:
      cd hugo-translator
      
  3. Google翻訳APIの設定
    • ダウンロードした google-secret.json ファイルを hugo-translator プロジェクトのルートディレクトリに追加します。これは Google Translate API を呼び出すための認証ファイルなので、 パスが正しく、ファイル名が変更されていないことを確認してください。
  4. コンパイラ
    • プロジェクト・ディレクトリで以下のコマンドを実行し、依存関係を取得して実行ファイルをコンパイルする:
      go get
      go build translate.go
      
    • コンパイルが完了すると、次のようなファイルが生成される。 translate 実行可能ファイル (Windows translate.exe).
  5. インストールの確認
    • 輸入 ./translate -h(ウィンドウズ translate.exe -h)、ヘルプメッセージが表示されれば、インストールは成功です。

使用方法

hugo-translatorの主な機能は、Hugoブログの英語Markdownファイルを他の言語に翻訳することです。以下はその手順です:

ヒューゴ・ブログのファイルを準備する

  • ユーゴーのブログコンテンツは、必ず次の項目で始まるようにしてください。 index.en.md 英語の内容を示すフォーマット名。例
content/posts/my-blog/index.en.md
  • ファイルの内容は標準的なMarkdownフォーマットで、ヒューゴのフロント事項(タイトル、日付など)と本文が含まれていること。

翻訳コマンドを実行する

  1. 翻訳の基本操作
  • ターミナルで以下のコマンドを実行し、翻訳するファイルのパスを指定する:
    ./translate <文件路径>
    

    ./translate content/posts/my-blog/index.en.md
    
  • 現在のバージョンでは、ファイルは自動的にフランス語(fr)、ドイツ語(de)、スペイン語(es)に翻訳され、対応するファイルが生成されます。 index.fr.mdそしてindex.de.mdそしてindex.es.md.
  1. 出力ファイルのチェック
  • 翻訳が完了すると、新しい言語ファイルは元のファイルと同じディレクトリに表示されます。例
    content/posts/my-blog/
    ├── index.en.md
    ├── index.fr.md
    ├── index.de.md
    ├── index.es.md
    
  • これらのファイルを開き、翻訳結果を確認する。通常、フロントマターのセクションは変更されず、本文がターゲット言語に翻訳される。

ほら

  • ファイルの命名規則現在のところ、このツールで認識できるのは index.en.md フォーマット、その他の命名規則(例えば index.md)は現在サポートされていない。
  • 翻訳制限現在のところ、言語サポートはハードコードされており(フランス語、ドイツ語、スペイン語)、コマンドラインから他の言語を指定することはできません。言語選択は将来のバージョンで追加される可能性があります。
  • ネットワーク要件翻訳がGoogle翻訳APIに依存しているため、実行するにはインターネットアクセスが必要です。
  • エラー検出翻訳に失敗した場合は google-secret.json 正しく配置されているか、ネットワーク接続が正しく機能しているかを確認する。

注目の機能操作

自動化された多言語サポート

  • hugo-translatorの特長は、ファイルの複数言語版を一度に生成してくれることだ。例えば、英語のブログファイルを入力すると、自動的に3ヶ国語の翻訳を生成してくれるので、手作業で1つずつ翻訳する手間が省けます。
  • 操作の例:
./translate content/posts/my-blog/index.en.md
  • 出力結果:
    • index.fr.mdフランス語版
    • index.de.mdドイツ語版
    • index.es.mdスペイン語版

オープンソース・エクステンション

  • 他の言語を翻訳する必要がある場合は、ソースコードを変更することができます。例えば translate.go ファイルで、翻訳の論理部分(通常は translateTextWithModel 関数)、ターゲット言語コード(例えば "it" (イタリア語を示す)。
  • 修正して再コンパイルする:
go build translate.go
  • この柔軟性は、プログラミングのスキルを持つユーザーにとって理想的だ。

使用例

例えば、次のようなブログ記事があるとしよう。 index.en.md内容は以下の通りである:

---
title: "My First Blog"
date: 2023-01-01
---
Hello, this is my first blog post!

コマンドを実行する:

./translate content/posts/my-blog/index.en.md

翻訳後index.fr.md それは次のようなものだろう:

---
title: "My First Blog"
date: 2023-01-01
---
Salut, ceci est mon premier article de blog !

他の言語ファイルも同様で、多言語ブログを実装するためにHugoプロジェクトで直接使用することができます。

今後の改善の方向性

  • 現在のバージョンはシンプルだが、開発者のRico00121氏はGitHubで、指定言語のサポート、ディレクトリ内の全ファイルのバッチ処理など、今後予定されている機能拡張について言及している。ユーザーはプロジェクトのアップデートをフォローしたり、貢献することができる。

以上の手順で、hugo-translatorを使ってブログコンテンツを簡単に多言語に翻訳し、ウェブサイトのアクセシビリティと国際化を向上させることができます。

無断転載を禁じます:チーフAIシェアリングサークル " hugo-translator: ヒューゴのブログコンテンツを自動翻訳するPythonスクリプト
ja日本語