言語パック
言語パックのインストールとアンインストール
管理者は、サイト管理の「言語パック」で100以上の言語パックをMoodleサイトにインストールできます。利用可能な言語パックのリストから必要な言語を選択し、[選択した言語パックをインストールする]ボタンをクリックするだけです。
AppleまたはCtrlキーを押しながら言語パックをクリックすることにより、インストールする複数の言語パックを選択できます。
多くの(20以上の)言語パックをインストールすると、Moodleのパフォーマンスにほとんど影響がありません。
[選択した言語パックのアンインストール]ボタンをクリックすると、選択した複数の言語パックをアンインストールできます。
言語パックと手動ダウンロード
新しいバージョンのMoodleの新しい機能のために新しい言語文字列が追加されるため、言語パックは進行中の作業です。 Langパックは、Language packs for Moodle 3.5から手動でダウンロードできます。このページには、各言語パックで翻訳された言語文字列の割合も表示されます。
親言語パックと子言語パック
特定の言語パック(子言語パック)には、完全なセットではなく、親言語から変更された言語文字列のみが含まれています。したがって、親言語パックもインストールする必要があります。これらの言語パックは次のとおりです。
- ca_valencià(caが必要)
- de_du、de_kids、de_comm(deが必要)
- en_us、en_ar、en_kids(デフォルトのenが必要)
- es_ve(esが必要)
- es_ve、es_co(esが必要)
- es_mx_kids(es_mxが必要)
- fil(これにはfiが必要です)
- fr_ca(frが必要)
- he_kids(heを必要とします)
- ja_kids(jaが必要)
- lt_uni(ltが必要)
- no_gr(これはnoを必要とします)
- sv_fi(svが必要)
- wo(frが必要)
注:サイトで子言語パックを使用している場合(上記のリストを参照)、多言語コンテンツフィルタを使用している場合は、使用方法に十分注意する必要があります(MDL-55197で報告されています) 。詳細と例については、多言語コンテンツフィルタを参照してください。
言語パックの手動インストール
一般的に、追加の言語パックをインストールする最も簡単な方法は、Moodle内からです。ただし、あなたの moodledata ディレクトリの lang というディレクトリに3.5 / Language packs for Moodle 3.5からzipファイルをダウンロードして解凍することにより、言語パックを手動でインストールすることもできます。
言語パックの更新
- 言語パックは、「アドミニストレーション>サイト管理>言語>言語パック」から更新できます。
- 「インストールされている言語パック」と「利用可能な言語パック」の両方にリストされているため、どの言語パックが更新されているかを確認できます。
- インストールされているすべての言語パック(英語およびローカル言語パックを除く)を更新するには、[インストールされているすべての言語パックを更新する]ボタンをクリックします。
- 多数の言語パックがインストールされているサイトの場合、一度に少数の言語パックを更新するには、[利用可能な言語パック]リストから言語を選択し、[選択した言語パックをインストールする]ボタンをクリックします。
- 英語の言語パックは、サイトがアップグレードされるたびに自動的に更新されます。
- ほとんどの言語パックは開発中のため、定期的に更新することをお勧めします。
インストールされているすべての言語パックは、スケジュールされたタスクとして更新されます。デフォルトでは、タスクは毎日実行されます。
言語パックの更新の失敗
- Moodleホスティング会社がIP6を使用するようにcURLを設定している場合、言語パックは更新できません。
- 問題の説明と修正は、this forum thread、/discuss.php?d=354446#unread thisおよびthis otherフォーラムスレッド。
- 基本的に、症状は「使用可能な言語パック」領域にあります。
(Failed to connect to 2400:cb00:2048:1::6814:ef: Network is unreachable)
- この修正は、カールが設定されている適切な場所(M 3.1の1250行目)のlib/filelib.phpファイルにこれを追加することです。
$options['CURLOPT_IPRESOLVE'] = CURL_IPRESOLVE_V4;
Moodleはdownload.moodle.orgに接続できません
これは次の場合に起こります。
- サーバーに過度のセキュリティ制限を設定しました。サーバーがdownload.moodle.orgサーバーに接続できることを確認してください。
- download.moodle.orgサーバーがダウンしているため、手動で言語パックをダウンロードしようとしても失敗します。後でもう一度やり直してください。
- インターネットサービスに欠陥があります。
言語パックの内部
標準のMoodleには、英語の言語パックのみが付属しています。 「moodledata/lang/en」にインストールされています。
管理、役割などの主要な(コア)Moodle機能の英語の用語(または「文字列」)は、「lang/en」に保存されます。モジュール、ブロック、およびその他のプラグインに関連する言語ファイルは、その特定のプラグインのファイル。たとえば、バッジブロックの言語文字列を確認したい場合は、 blocks/badges/lang/en を確認します。ワークショップモジュールの言語ファイルを確認したい場合は、 mod/workshop/lang/en を確認します。
別の言語パックをインストールすると、Moodle用語のフランス語翻訳が含まれる lang / fr などのフォルダが作成されます。英語とは異なり、 lang / fr などの他の言語パックには、主要なコア用語に加えてすべての翻訳が含まれるため、たとえば lang / fr / block_badges.php のバッジ文字列や lang / fr / workshop.php のワークショップ文字列。
これらのファイル(すべて.phpで終わる)には、「文字列」と呼ばれる短いフレーズが含まれています。文字列にはプレースホルダーを含めることができます(下の中括弧の間)。このプレースホルダーは、文字列が表示されるときに、言語パックから選択された単語に置き換えられます。大括弧の間の用語は、「ストリングID」または「ストリング名」と呼ばれます。例:
$string['addnewcourse'] = '新しいコースを追加する'; $string['hidesection'] = 'セクション{$ a}を非表示';
文字列が翻訳されていない場合、Moodleは親言語または元の英語バージョンを使用します。したがって、一部の用語が言語に翻訳されているが、他の用語はまだ英語で表示されているMoodleサイトが表示される場合があります。
テーマごとに言語文字列をパーソナライズできますか?
直接ではありませんが、新しいローカル(子)言語パックを使用して、さまざまなコースの動作/外観を実現できます
コースの外観を変更する
異なるテーマ「および」異なる子言語パックのコースを持つことができます。その後、その特定のテーマを使用する唯一のコースで、パーソナライズされた言語文字列が得られます。
コースの動作の変更
- 生徒が授業を終えたときに成績への参照を表示したくない場合は、正しいテキスト文字列を編集することで、「あなたのスコアは9(10点満点)」を「必ず証明書を取得してください。」または、「おめでとうございます-レッスンの終わりに到達しました」を「このレッスンがお役に立てば幸いです」に変更します。 レッスン終了ページの表示を変更する方法を参照してください。
- 複数の異なるコースを持つことができ、それぞれが異なる(子)言語パックを使用し、各コースはパーソナライズされた言語文字列を表示します。
- 新しい子言語を作成する方法の詳細については、このフォーラムの投稿を参照してください。
1つの特定の言語パックをインストールし、2番目の(関連する)言語パックを使用して、不足している翻訳を補足できますか?
- 短い答えは「いいえ」です。
- しかし、これを実現する複雑な方法があります:(
- 言語のカスタマイズツールを使用できます。独自の翻訳を行う場合は、言語パックのメンテナに翻訳された文字列の寄稿を検討して、言語パックを拡大できるようにしてください。
- ある言語から別の言語へのファイルの移植については、Suplementar todas las traducciones faltantes del Español internacionalおよび https://docs.moodle.org/all/es/Personalización del idioma (transplantar archivos)のスペイン語のMoodleドキュメントページを参照してください。
子供向けの言語パックを作成できますか?
- はい。
- 現在子供向けの既存の言語パックは次のとおりです。
- de_kids(deが必要)
- en_kids(デフォルトのenが必要)
- he_kids(彼を必要とします)
- ja_kids(jaが必要)
- 上記の言語とは異なる言語で子供向けの言語パックを作成する場合は、次の方法を使用します。
- ローカルのMoodleサーバーに(en_kids)子供向け英語パックをインストールします
- 10個のファイル(moodledata / lang / en_kidsフォルダーに保存されている)を編集する必要があります。
- Notepad ++またはその他のテキストエディタを使用できますが、MS WordまたはMS Notepadの使用は避けてください。
- langconfig.phpから始めて、親言語としてメイン言語を選択します
- すべての文字列の翻訳が終了したら、すべてのMoodle言語パックの管理者にrequest a new language packを送信できます。
- moodledata / lang / en_kidsフォルダー内の10個のファイルをAMOSにアップロードします
- 新しい言語パックを更新し、拡張し続けることを忘れないでください
なぜいくつかの言語がいくつかの異なる言語パックを利用できるのですか?
これについては、the developer's documentationをご覧ください。
なぜ私の言語パックが突然いくつかの翻訳を忘れたのですか?
「バッジ」の適切に翻訳されたスペイン語の文字列(緑の長方形)と未翻訳の英語の文字列(赤い長方形)に加えて、100%の言語パックが必要な言語パックの翻訳文字列と非翻訳文字列の混合を示す(記章)を示す次の画像を参照してください翻訳されたコア文字列。
言語パックを更新しようとすると、「 'xxxx_old'言語パックの更新がスキップされました」というメッセージが表示されます。
原因と修正については、次のセクションをお読みください。
インストールしたことがないxx_old 'という言語パックがあるのはなぜですか?
サーバーには、通常の言語パック(例:en、es_mx)に加えて、末尾が_oldの奇数名の言語パック(例:es_mx_old)であることがわかります(下の画像を参照)。更新できません。
- 言語パックの更新がプロセスの途中で失敗するため、これは不完全な自動言語パックの更新によるものです。
- この更新では、まず既存のlangディレクトリの名前を変更して_oldサフィックスを付け、次に新しいディレクトリの解凍を試みます。
- 解凍が成功すると、古いディレクトリが削除されます。
- 環境でZIP PHP拡張機能に問題がないことを確認してください。
- サーバーに英語以外の言語がある場合、言語パックの更新プロセスでは、対応するすべての言語パックをダウンロードする必要があります。これには時間がかかります。低速のインターネットプロバイダーを使用している場合、スクリプトのタイムアウトエラーが発生する可能性があります。これを防ぐには、server / php / php.iniファイルを編集し、「max_execution_time = 30」の行を「max_execution_time = 600」に変更する必要があります。
- 'English(es_mx)'のような、明らかにそうではない混合言語の言語パックもあるかもしれません。
- 言語メニューに表示される理由は、moodledata/lang/es_mx/が不完全であり、そのlangconfig.phpが欠落しているため、文字列「thislanguage」(その名前)の翻訳がデフォルトの英語に戻っているためです。
- 奇妙に見える言語パックをすべてアンインストールし、通常の言語パックを再インストールする必要があります。
こちらもご覧ください
- ウィキペディアの言語コードのリスト
- dev:Translationそして、Moodleをより多くの言語に翻訳する手助けをしてください