Template:Lang

From Aynuwiki
Revision as of 16:07, 5 March 2024 by Mkpoli (talk | contribs) (1版 をインポートしました)

<span lang="{{{1}}}" xml:lang="{{{1}}}">{{{2}}}</span>

テンプレートの解説[表示] [編集] [履歴] [キャッシュを破棄]

日本語以外の表記を行う際に、言語タグを明示的に指定して表示させるためのテンプレートです。指定することで、漢字のグリフ字体)の違いを表現したり、ハングル等の文字化けを防いだりできます。各言語のものはCategory:言語タグテンプレートにあります。右横書き文字には{{Rtl-lang}}があります。

注意 - 2014年にMicrosoftによるWindows XPのサポートが切れており、Windows Vistaなどそれ以降のOSでは、標準的に多くのフォントが表示できます。インド系文字(ブラーフミー系文字)などの一部の文字を表示するには、本テンプレートでの言語タグ指定に加えて、お使いのコンピューターの設定が必要になる場合があります。詳しい情報はHelp:特殊文字Help:MediaWikiに適応するブラウザを参照してください。

使い方

{{lang|言語タグ|文字列}}

言語タグ

言語タグはBCP 47(英語)で定義されています。言語タグはハイフンで区切られた一連の下位タグ (subtag) から構成されます。このうち language(言語名コード)のみ必須で、それ以外は省略可です。下位タグは不要な場合には可能な限り省略することが推奨されます。使用可能な下位タグはInternet Assigned Numbers Authority(IANA)が公開している Language Subtag Registry を参照してください。

書式: language-script-region-variant-extension-privateuse

言語タグの下位タグの一覧
下位タグ名 指定内容 説明
language ISO 639(言語名コード) 言語の特定を避けたい場合は und (undetermined、「非決定」の略)を指定できる。
小文字で書くことが推奨される。
script ISO 15924(用字系コード) 省略された場合にはその言語の基本の用字系が選択される。
1文字目を大文字で書くことが推奨される。
region ISO 3166-1(国名コード)
ISO 3166(地域名コード)
大文字で書くことが推奨される。
variant 方言など、上記の下位タグでカバーしきれない情報を示す。
extension (予約領域)
privateuse (私的領域。ウィキペディアでは使用されていない)

言語タグの例

language のみの例

  • en : 英語
  • ko : 朝鮮語
  • zh : 中国語

language-region の例

  • en-GB : イギリスで用いられている英語
  • ko-KR : 韓国で用いられている韓国語
  • ko-KP : 北朝鮮で用いられている朝鮮語
  • zh-CN : 中国(本土)で用いられている簡体字中国語
  • zh-HK : 香港で用いられている繁体字中国語
  • zh-TW : 台湾で用いられている繁体字中国語
  • es-005 : 南米で用いられているスペイン語

language-script の例

  • ar-Latn : アラビア語、ラテン文字転写
  • zh-Hans : 中国語、簡体字
  • zh-Hant : 中国語、繁体字
  • ain-Kana : アイヌ語(仮名表記)
  • ain-Latn : アイヌ語(ラテン文字表記)
  • und-Hant : 言語非決定、繁体字(伝統字)[1]

language-script-region の例

  • zh-Hant-HK : 香港で用いられている中国語、繁体字

language-variant ほかの例

  • sl-nedis : スロベニア語 Nadiza 方言
  • de-CH-1901 : スイスで使用されるドイツ語、1901年版正書法利用

用途

言語タグは以下の用途に用いられます。一般的な読者にとっては、表示するフォントの決定に重要であり、書式があるからといって一般的に利用されない指定を行ってもそれを読み取るコンピュータがありません。

  • ウェブブラウザーが、どのフォントを用いるかを判断します。
  • アクセシビリティ。スクリーンリーダーが正しく発音するのに利用します。
  • スペルチェッカーや文法チェッカー。
  • ウェブブラウザーがどの字体・引用符・ハイフンなどを用いるかを判断する。
  • スタイルシートで特定の言語の色を変更できます(#スタイルシートの適用を参照)。執筆者の手助けになります。
  • 検索エンジンが文章をインデックスする際に利用できます。
  • ウィキペディアを再利用する出版社・開発者などが利用できます。
  • ウィキペディアにおける利用言語の統計に利用できます。

スタイルシートの適用

登録ユーザーは、個人設定のユーザーCSSを活用することによって、本テンプレートによって言語指定がされた文に特定のフォントを使用するよう指定することができます。

例:ロシア語の文に特定のフォントを指定する

span[lang|=ru] { font-family: fonteskaya; }

例:言語指定された文すべてにおいて色を変更する

span[lang] { color: green; }

使用例

例1:「骨」

「骨」という字は日本語と中国語では左右が反転したグリフとなっています。

日本語 中国語 中国語(台湾) 韓国語
入力例 {{Lang|zh|骨}} {{Lang|zh-tw|骨}} {{Lang|ko|骨}}
表示例

例2:「近」

「近」という字のグリフは日本語と中国語では1点しんにょうですが、韓国語では2点しんにょうです。

また、中国語(台湾)ではくねくねとした1点しんにょうとなっています(または2点しんにょう)。

日本語 中国語 中国語(台湾) 韓国語
入力例 {{Lang|zh|近}} {{Lang|zh-tw|近}} {{Lang|ko|近}}
表示例

例3:「偉」

「偉」という字のグリフは日本語と中国語では「韋」の形が異なっています。

日本語 中国語 中国語(台湾) 韓国語
入力例 {{Lang|zh|偉}} {{Lang|zh-tw|偉}} {{Lang|ko|偉}}
表示例

各言語用ショートカット

たとえば英語ならば、{{lang|en|life annuity}}と書く代わりに、専用テンプレート{{En}}を使い、{{En|life annuity}}と書けます。一覧はCategory:言語タグテンプレートを見て下さい。

TemplateData

これはビジュアルエディターテンプレートウィザードにより使用されるテンプレートのためのTemplateData文書です。

Lang

日本語以外の表記を行う際に、IETF言語タグを明示的に指定して表示させるためのテンプレート。

Template parameters[Edit template data]

This template prefers inline formatting of parameters.

ParameterDescriptionTypeStatus
言語タグ1

表示する言語を指定するためのIETF言語タグ

Example
en
Linerequired
表示する文字列2

指定した言語で記述された文字列

Example
Wikipedia
Stringrequired
補足3

「表示する文字列」に続いて、小さなフォントで説明などを付加する場合に使用します(言語タグは適用されません)。

Example
ウィキペディア
Lineoptional

脚注

  1. RFC3066では、"You SHOULD NOT use the UND (Undetermined) code unless the protocol in use forces you to give a value for the language tag, even if the language is unknown. Omitting the tag is preferred."(「もし使用するプロトコルが言語タグについて値を与える事を強制するのでなければ、たとえその言語が不明であっても、UND (Undetermined) というコードを使用すべきではない。その場合、タグを省略すべきである。 」) としていることに注意。

関連項目

外部リンク

解説
  • BCP 47 - Tags for Identifying Languages(英語)(IETF) BCP 47 の説明
  • HTMLとXMLにおける言語タグ (W3C)
  • Language tags in HTML and XML(英語)(W3C)言語タグの解説
  • Internationalization Best Practices: Specifying Language in XHTML & HTML Content(英語)(W3C)
  • RFC 5646の和訳 (注:RFC 3066, RFC 4646 は廃止されました)
コードの一覧