「多言語シンタックス」の版間の差分

提供:MoodleDocs
移動先:案内検索
編集の要約なし
(「フィルタ」link の適正化)
 
(他の1人の利用者による、間の39版が非表示)
1行目: 1行目:
作成中です - [[利用者:Mitsuhiro Yoshida|Mitsuhiro Yoshida]] 2007年7月5日 (木) 14:34 (CDT)
ロケーション: 管理 > モジュール > フィルタ


ロケーション: 管理 > モジュール > フィルタ
多言語コンテンツフィルタでは、多言語のリソースを作成することができます。多言語コンテンツフィルタの設定を有効にした場合、 テキストが多言語を含んでいることを意味する <nowiki><span lang="xx" class="multilang"></nowiki> タグが探されます。そして、現在のユーザに対する最適な言語が選択され、リソースが表示されます。ユーザがMoodleの言語を変更することにより、リソースの言語も変更されます。
 
 
例) リソース内のコンテンツに下記内容が記載された場合、Moodle言語が英語の場合「This is English Text.」が表示され、日本語の場合「日本語のテキストです。」が表示されます。
 
<nowiki><span lang="en" class="multilang">This is English Text.</span></nowiki>
<br />
<nowiki><span lang="ja" class="multilang">日本語のテキストです。</span></nowiki>


多言語コンテンツフィルタでは、多言語のリソースを作成することができます。有効にした場合、 テキストが多言語を含んでいることを意味する <nowiki><span lang="xx" class="multilang"></nowiki> タグが探されます。そして、現在のユーザに対する最適な言語が選択され、リソースが表示されます。The language of the resource will change when the user changes their selected Moodle language.


The multilang syntax was changed in 1.8. <nowiki><lang></nowiki> is not supported any more. It is required to add ''class="multilang"'' into each <nowiki><span></nowiki> tag in multilang block. The new syntax is backwards compatible with old plugins, which means it can be used in older Moodle version.
多言語シンタックスは、Moodle 1.8で変更されました。今後、<nowiki><lang></nowiki>タグはサポートされません。多言語コンテンツを記述する場所で、<nowiki><span></nowiki>タグの中に ''class="multilang"'' を追加してください。新しいシンタックスには古いプラグインに対する下位互換性がありますので、古いバージョンのMoodleでも使用することができます。


== How to use in a course ==
== コースでの使い方 ==


To use this feature first create your contents in multiple languages (in the same resource). Then enclose each language block (aka multilang block) in the following tags:
この機能を使用するには、最初に多言語のコンテンツを同じリソース内に作成してください。そして、それぞれの言語ブロック (別名 多言語ブロック) を次のタグで囲んでください:


       <nowiki><span lang="XX" class="multilang">your_content_here</span>
       <nowiki><span lang="XX" class="multilang">あなたのコンテンツです。</span>
       <span lang="YY" class="multilang">your_content_in_other_language_here</span></nowiki>
       <span lang="YY" class="multilang">あなたの別の言語のコンテンツです。</span></nowiki>


It is essential to be in '''the code editing mode''' (press <nowiki>[<>]</nowiki> in the HTML editor), when you enter these tags for them to work. Only spaces, tabs and enters can be used between the individual languages in the multilang block. Please note that ''class="multilang"'' is not required prior to 1.8.
これらのタグを入力する場合、HTMLエディタでは必ず「コード編集モード」 (<nowiki>[<>]</nowiki>をクリック) にしてください。スペース、タブおよびそれぞれの内容のみ多言語ブロックの個々の言語で使用されます。''class="multilang"'' は、Moodle 1.8以前のバージョンでは必須ではありません。


Following code
次のコードは、
       <nowiki><lang="XX">your_content_here</lang>
       <nowiki><lang="XX">あなたのコンテンツです。</lang>
       <lang="YY">your_content_in_other_language_here</lang></nowiki>
       <lang="YY">あなたの別のコンテンツです。</lang></nowiki>
does NOT work.
動作しません。


The obsoleted HTML tagging
次の古いHTMLタグは、
       <nowiki><lang lang="XX">your_content_here</lang>
       <nowiki><lang lang="XX">あなたのコンテンツです。</lang>
       <lang lang="YY">your_content_in_other_language_here</lang>
       <lang lang="YY">あなたの別のコンテンツです。</lang>


       <span lang="XX">your_content_here</span>
       <span lang="XX">あなたのコンテンツです。</span>
       <span lang="YY">your_content_in_other_language_here</span></nowiki>
       <span lang="YY">あなたの別のコンテンツです。</span></nowiki>
will not work in 1.8 and later. In 1.8 the lang attribute without ''class="multilang"'' can be used to mark the language of the text - see http://www.w3.org/TR/html4/struct/dirlang.html
Moodle 1.8以降のバージョンでは動作しません。Moodle 1.8で ''class="multilang"'' を使用しない言語属性は、テキスト言語をマークするために使用されます - 詳細は、http://www.w3.org/TR/html4/struct/dirlang.html をご覧ください。


== How it works internally ==
== 内部的にどのように動作するか ==


# Filter first looks for ''multilang blocks'' in the text
# 最初にテキスト内で多言語ブロックを探します。
# For each multilang block:
# それぞれの多言語ブロックでは:
#* If there are texts in the currently active language, print them
#* 現在の使用言語と同じ言語がテキスト内にある場合、そのテキストを表示します。
#* Else, if there exists texts in the current parent language, print them
#* 現在の使用言語の親言語と同じ言語がテキスト内にある場合、そのテキストを表示します。
#* Else, print the first language found in the text
#* テキスト内で発見された最初の言語を表示します。
# Text outside of multilang blocks will be shown always
# 多言語ブロックの外にあるテキストは常に表示されます。


==Course summary and title tags==
==コース要約およびタイトルタグ==


To be able to change text such as resource titles and summaries, an administrator must choose ''Filter all strings'' in the site administration.
リソースタイトルおよびコース要約等のテキストをフィルタできるようにするには、管理者はサイト管理 (管理 > 外観 > フィルタ設定) の「すべての文字をフィルタする filterall」を有効にする必要があります。


  <nowiki> <span lang="en" class="multilang">Matematically</span> <span lang="sv" class="multilang">Matematiskt (svenska)</span></nowiki>
  <nowiki> <span lang="en" class="multilang">Mathematics</span> <span lang="ja" class="multilang">数学 (日本語)</span></nowiki>
functions as English or Swedish title.
は、英語のタイトルでも日本語のタイトルでも動作します。


It doesn't seem to work for course titles (neither long nor short version).
コースタイトル (名称および省略名) では動作しないようです。


In the course summary:
コース要約で:


  <nowiki><span lang="en" class="multilang">Growth is often a major concern in planning society.
  <nowiki><span lang="en" class="multilang">Growth is often a major concern in planning society.
How can one avoid superficial conclusions? <br>
How can one avoid superficial conclusions? <br>
(Exists in Swedish too. Finns på svenska också)</span>
(Exists in Japanese too. 日本語でも記述できます。)</span>
<span lang="sv" class="multilang">Tillväxt är ofta använt i samhällsdebatten.
<span lang="sv" class="multilang">社会計画の主要な関心事は成長です。私たちはどのようにして表面的な結果を避けることができるのでしょうか?
Hur kan man undvika ytliga slutsatser?  
  (日本語でも記述できます。 Exists in English too.)
  (Finns på engelska också. Exists in English too.)
<br /></span> </nowiki>
<br /></span> </nowiki>


Can show in the chosen language (and point out that the other language is there). Please note that ''class="multilang"'' is not required prior to Moodle 1.8.
は、選択された言語で表示され、他の言語の記述もあることを示すことができます。''class="multilang"'' は、Moodle 1.8以前のバージョンでは必要ではありません。


== Translations with tags ==  
== タグを使用した翻訳 ==  
If you wish to translate a word or phrase in an English text to another language:
あなたが英語の単語または語句を他の言語に翻訳したい場合:


  <nowiki>If I want to include an explanation <span lang="en"> </span>
  <nowiki>If I want to include an explanation <span lang="en"> </span>
  <span lang="sv" class="multilang">(sv: förklaring)</span> in a running text can I do it?
  <span lang="ja" class="multilang">(ja: 日本語)</span> in a running text can I do it?</nowiki>
<br />
 
<br /><span lang="en" class="multilang>If I want to include an explanation in a running text
<nowiki><span lang="en" class="multilang>If I want to include an explanation in a running text
  can I do it? </span>
  can I do it? </span>
<span lang="sv" class="multilang>If I want to include an explanation (sv: förklaring) in a  
<span lang="ja" class="multilang>If I want to include an explanation (ja: 日本語) in a  
running text can I do it?</span></nowiki>
running text can I do it?</span></nowiki>


would both work, but not:
は両者とも動作しますが:


  <nowiki>If I want to include an explanation <span lang="en" class="multilang></span>
  <nowiki>If I want to include an explanation <span lang="en" class="multilang></span>
  <span lang="sv" class="multilang>(sv: förklaring)</span> in a running text can I do it?
  <span lang="ja" class="multilang>(ja: 日本語)</span> in a running text can I do it?</nowiki>
<br />If I want to include an explanation <span lang="sv" class="multilang>(sv: förklaring)</span>
 
<nowiki>IIf I want to include an explanation <span lang="ja" class="multilang>(ja: 日本語)</span>
  in a running text can I do it?<br /></nowiki>
  in a running text can I do it?<br /></nowiki>
which would show the Swedish even if English was the chosen language. NOTE that before 1.8 the "span lang=en" must contain something, at least a space.
の場合、仮に選択された言語が英語だとしても日本語が表示されます。Moodle 1.8以前のバージョンでは、"span lang=en" に少なくとも半角スペースを含む必要があります。


== New multilang syntax ==
== 新しい多言語シンタックス ==
{{Moodle 1.8}}
{{Moodle 1.8}}
* <nowiki><span lang="xx"> and <lang></nowiki> should not be used anymore
* <nowiki><span lang="xx"> および <lang></nowiki> は使用されることはありません。
* Existing content can be upgraded using the admin/multilangupgrade.php script, there is a link in the admin notification page if a multilang upgrade is required.
* 既存のコンテンツは、admin/multilangupgrade.phpスクリプトを使用してアップグレードすることができます。多言語コンテンツのアップグレードが必要な場合、「管理 > 通知」ページにリンクが表示されます。
* The multilang filter can be configured to use old syntax only - see ''Multi-Language Content Settings''; this setting may be removed in 1.9
* 多言語フィルタは、古いシンタックスのみ使用する設定をすることもできます - 「管理 > モジュール > フィルタ > 多言語コンテンツ」をご覧ください。この設定は、Moodle 1.9で取り除かれる予定です。
* New syntax is forced during a new 1.8 installation, for upgraded sites the new syntax is enabled after the multilang upgrade
* Moodle 1.8の新たなインストールでは、新しいシンタックスが強制されます。アップグレードサイトでは、多言語コンテンツの更新後、新しいシンタックスが有効にされます。


== Common problems ==
== 一般的な問題 ==


* The multilang filter is not enabled - go to filter settings and enable it
* 多言語フィルタが有効されていない - フィルタ設定画面で有効にしてください。
* ''Filter all strings'' not enabled on sites that need multilang in titles, navigation, headings, etc.
* 多言語のタイトル、ナビゲーション、ヘッダ等が必要なサイトでは、「すべての文字をフィルタする filterall」設定は有効にされません。
* Extra characters between language span tags - editor might add <nowiki><br /></nowiki> or other tags, please review the html in source view
* 言語spanタグ間の特別文字 - エディタで <nowiki><br /></nowiki> または他のタグを追加することができます。「コード編集モード」 ([<>]をクリック) で、ソースを表示してhtmlをレビューしてください。
* Extra spaces in language span tag
* 言語spanタグ内の余分な空白


== 関連情報 ==
== 関連情報 ==


*[[Filters (administrator)]]
*[[フィルタ]]
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=51603 Multilanguage filter - does not work ...] forum discussion
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=51603 多言語フィルタが動作しません。] フォーラムディスカッション - 英語
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=74340 Problems with multilang filter and SPAN tags] forum discussion
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=74340 多言語フィルタおよび SPAN タグでの問題] フォーラムディスカッション - 英語


[[Category:教師]]
[[Category:教師]]

2010年9月9日 (木) 03:02時点における最新版

ロケーション: 管理 > モジュール > フィルタ

多言語コンテンツフィルタでは、多言語のリソースを作成することができます。多言語コンテンツフィルタの設定を有効にした場合、 テキストが多言語を含んでいることを意味する <span lang="xx" class="multilang"> タグが探されます。そして、現在のユーザに対する最適な言語が選択され、リソースが表示されます。ユーザがMoodleの言語を変更することにより、リソースの言語も変更されます。


例) リソース内のコンテンツに下記内容が記載された場合、Moodle言語が英語の場合「This is English Text.」が表示され、日本語の場合「日本語のテキストです。」が表示されます。

<span lang="en" class="multilang">This is English Text.</span>
<span lang="ja" class="multilang">日本語のテキストです。</span>


多言語シンタックスは、Moodle 1.8で変更されました。今後、<lang>タグはサポートされません。多言語コンテンツを記述する場所で、<span>タグの中に class="multilang" を追加してください。新しいシンタックスには古いプラグインに対する下位互換性がありますので、古いバージョンのMoodleでも使用することができます。

コースでの使い方

この機能を使用するには、最初に多言語のコンテンツを同じリソース内に作成してください。そして、それぞれの言語ブロック (別名 多言語ブロック) を次のタグで囲んでください:

      <span lang="XX" class="multilang">あなたのコンテンツです。</span>
      <span lang="YY" class="multilang">あなたの別の言語のコンテンツです。</span>

これらのタグを入力する場合、HTMLエディタでは必ず「コード編集モード」 ([<>]をクリック) にしてください。スペース、タブおよびそれぞれの内容のみ多言語ブロックの個々の言語で使用されます。class="multilang" は、Moodle 1.8以前のバージョンでは必須ではありません。

次のコードは、

      <lang="XX">あなたのコンテンツです。</lang>
      <lang="YY">あなたの別のコンテンツです。</lang>

動作しません。

次の古いHTMLタグは、

      <lang lang="XX">あなたのコンテンツです。</lang>
      <lang lang="YY">あなたの別のコンテンツです。</lang>

      <span lang="XX">あなたのコンテンツです。</span>
      <span lang="YY">あなたの別のコンテンツです。</span>

Moodle 1.8以降のバージョンでは動作しません。Moodle 1.8で class="multilang" を使用しない言語属性は、テキスト言語をマークするために使用されます - 詳細は、http://www.w3.org/TR/html4/struct/dirlang.html をご覧ください。

内部的にどのように動作するか

  1. 最初にテキスト内で多言語ブロックを探します。
  2. それぞれの多言語ブロックでは:
    • 現在の使用言語と同じ言語がテキスト内にある場合、そのテキストを表示します。
    • 現在の使用言語の親言語と同じ言語がテキスト内にある場合、そのテキストを表示します。
    • テキスト内で発見された最初の言語を表示します。
  3. 多言語ブロックの外にあるテキストは常に表示されます。

コース要約およびタイトルタグ

リソースタイトルおよびコース要約等のテキストをフィルタできるようにするには、管理者はサイト管理 (管理 > 外観 > フィルタ設定) の「すべての文字をフィルタする filterall」を有効にする必要があります。

 <span lang="en" class="multilang">Mathematics</span> <span lang="ja" class="multilang">数学 (日本語)</span>

は、英語のタイトルでも日本語のタイトルでも動作します。

コースタイトル (名称および省略名) では動作しないようです。

コース要約で:

<span lang="en" class="multilang">Growth is often a major concern in planning society.
How can one avoid superficial conclusions? <br>
(Exists in Japanese too. 日本語でも記述できます。)</span>
<span lang="sv" class="multilang">社会計画の主要な関心事は成長です。私たちはどのようにして表面的な結果を避けることができるのでしょうか?
 (日本語でも記述できます。 Exists in English too.)
<br /></span> 

は、選択された言語で表示され、他の言語の記述もあることを示すことができます。class="multilang" は、Moodle 1.8以前のバージョンでは必要ではありません。

タグを使用した翻訳

あなたが英語の単語または語句を他の言語に翻訳したい場合:

If I want to include an explanation <span lang="en"> </span>
 <span lang="ja" class="multilang">(ja: 日本語)</span> in a running text can I do it?
<span lang="en" class="multilang>If I want to include an explanation in a running text
 can I do it? </span>
<span lang="ja" class="multilang>If I want to include an explanation (ja: 日本語) in a 
running text can I do it?</span>

は両者とも動作しますが:

If I want to include an explanation <span lang="en" class="multilang></span>
 <span lang="ja" class="multilang>(ja: 日本語)</span> in a running text can I do it?
IIf I want to include an explanation <span lang="ja" class="multilang>(ja: 日本語)</span>
 in a running text can I do it?<br />

の場合、仮に選択された言語が英語だとしても日本語が表示されます。Moodle 1.8以前のバージョンでは、"span lang=en" に少なくとも半角スペースを含む必要があります。

新しい多言語シンタックス

Moodle 1.8

  • <span lang="xx"> および <lang> は使用されることはありません。
  • 既存のコンテンツは、admin/multilangupgrade.phpスクリプトを使用してアップグレードすることができます。多言語コンテンツのアップグレードが必要な場合、「管理 > 通知」ページにリンクが表示されます。
  • 多言語フィルタは、古いシンタックスのみ使用する設定をすることもできます - 「管理 > モジュール > フィルタ > 多言語コンテンツ」をご覧ください。この設定は、Moodle 1.9で取り除かれる予定です。
  • Moodle 1.8の新たなインストールでは、新しいシンタックスが強制されます。アップグレードサイトでは、多言語コンテンツの更新後、新しいシンタックスが有効にされます。

一般的な問題

  • 多言語フィルタが有効されていない - フィルタ設定画面で有効にしてください。
  • 多言語のタイトル、ナビゲーション、ヘッダ等が必要なサイトでは、「すべての文字をフィルタする filterall」設定は有効にされません。
  • 言語spanタグ間の特別文字 - エディタで <br /> または他のタグを追加することができます。「コード編集モード」 ([<>]をクリック) で、ソースを表示してhtmlをレビューしてください。
  • 言語spanタグ内の余分な空白

関連情報