多言語対応(i18n)

Eagle プラグインは、i18next モジュールが組み込まれており、開発者が簡単に多言語プラグインを作成できます。i18next は JavaScript の多言語ライブラリで、翻訳やローカライズが簡単で、さまざまな翻訳方法がサポートされています。

Eagleプラグインにはi18nextモジュールが内蔵されており、開発者が簡単に多言語対応プラグインを作成できます。i18nextはJavaScriptの多言語対応ライブラリで、翻訳やローカリゼーションが容易であり、カスタム翻訳、ローカリゼーション、多言語サポートの機能も提供しています。

以下では、プラグインを多言語対応させる方法を手順ごとに説明します:

手順1:_localesフォルダを作成する

手順2:言語 .json ファイルを作成する

{
    "manifest": {
        "app": {
            "name": "i18n example"
        }
    },
    "contextMenu": {
        "copy": "Copy",
        "paste": "Paste"
    }
}

現在サポートされている言語は enja_JPes_ESde_DEzh_TWzh_CNko_KRru_RU です。

手順3:manifest.jsonを調整する

Eagle Plugin の i18next 機能を使用すると、簡単な JSON ファイルで多言語アプリの翻訳を定義できます。

{
    "id": "LE564883T24ZR",
    "version": "1.0.0",
    
    // 1. 名前を調整する
    "name": "{{manifest.app.name}}",
    "logo": "/logo.png",
    "keywords": [],
    
    // 2. サポートされている言語とデフォルト言語を設定する
    "fallbackLanguage": "zh_CN",
    "languages": ["en", "zh_TW", "zh_CN", "ja_JP"],
    
    "main": {
        "url": "index.html",
        "width": 640,
        "height": 480
    }
}

手順4:使用された文字列の変更

plugin.js を調整して、i18next メソッドで文字列を取得し、アラートします。

plugin.js
eagle.onPluginCreate((plugin) => {

    // 多言語フィールドを取得
    let copyText = i18next.t('contextMenu.copy');
    let pasteText = i18next.t('contextMenu.paste');

    document.querySelector('#message').innerHTML = `
    <ul>
        <li>言語: ${eagle.app.locale}</li>
        <li>コピー: ${copyText}</li>
        <li>貼り付け: ${pasteText}</li>
    </ul>
    `;
});

手順5:アプリ言語を変更し、変更結果を確認

Eagleソフトウェアの言語設定を変更するには、次の手順に従ってください:画面で「Eagle」ボタンを見つけてクリックし、「環境設定」を選択、「一般」オプションをクリックし、「言語」セクションで必要な変更を行います。

詳細な使い方を学ぶ

i18next には多くの便利な方法があり、さまざまな翻訳シナリオに簡単に対応できます。篇幅の都合上、ここでは主要な使用方法についてのみ説明しています。i18next の使い方や詳細な使い方を知りたい場合は、以下のリンクを参照してください:

公式ドキュメントを読むことで、i18next の基本的な概念と使い方を理解し、使用を開始するためのいくつかのサンプルコードを見つけることができます。GitHub リポジトリには、i18next のソースコードやその他のドキュメントが含まれており、実装の詳細をさらに理解したい場合は、そこで参照することができます。

最后更新于