Extension:Babel/ja
Babel (バベル)拡張機能は、利用者が様々な言語の習熟度を示すために、利用者ページに掲載できるパーサー関数 #babel
を追加します。
この情報はカテゴリ別に分類することもできるため、他の利用者が特定の言語を話す利用者を見つけることが可能になります。
この拡張機能は、これまで完全にテンプレートに依存していたバベル(原義はバベルの塔)システムを置き換えることを目的としています。このアイデアはウィキメディア・コモンズで生まれた後、他のウィキメディアプロジェクトに広がり、多くのウィキで実装されました。
Babel 拡張機能は依然としてテンプレートを使用します。不明な言語引数が指定された場合、拡張機能はその名前のテンプレートが存在するかどうか確認し、存在する場合はそれを組み込みます。
インストール
- ダウンロードして、ファイルを
extensions/
フォルダー内のBabel
という名前のディレクトリ内に配置します。
開発者とコード寄稿者は、上記の代わりに以下を使用してGitからインストールします:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Babel
- 以下のコードを LocalSettings.php ファイルの末尾に追加します:
wfLoadExtension( 'Babel' );
- 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
- 必要に応じて設定します。
完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。
- CSSは
resources/ext.babel.less
ファイルにあります。ページ内のMediaWiki:Common.css
でそれらをオーバーライドすると、スタイルを変更することができます。 - CLDR 拡張機能が当該するとき、言語名をそこから取得しますが(翻訳は利用外)、それ以外の場合は MediaWiki に設定された言語名ならびに英語での規定の名称を使います。
使用法
パーサー関数 #babel
の構文は以下の通りです。
{{#babel: バベルコード1 | バベルコード2 | ... }}
話したり理解したりする言語ごとに、|
で区切って次のコードの一つを追加します。xx
には、その言語のMediaWiki言語コード、ISO 639-1コードまたはISO 639-3コードです(大文字と小文字は区別しません)。各コードレベルの一般的な使用法は次のとおりです。
xx-0
- 言語をまったく理解できません。
xx-1
- 初級能力 - この言語で書かれた資料または簡単な質問を理解するのに十分です。
xx-2
- 中級能力 - 編集や議論に十分です。
xx-3
- 上級レベル - この言語で問題なく書くことができますが、いくつかの小さなミスが発生する可能性があります。
xx-4
- ほぼネイティブレベル - 生まれてからの母語ではありませんが、能力はネイティブスピーカーのようなものです。
xx-5
- 専門能力
xx
またはxx-N
- 日常的にその言語を使用し、連語や慣用句を含むその言語の全体を理解するネイティブスピーカー。母語。
他のテンプレートを含めるには、テンプレートの名前を追加するだけです。 Template:User CSS
を含める場合は、User CSS
を追加します。
ローカル設定に応じて、テンプレート名に接頭辞または接尾辞を追加できます(例: 最初のUser
)。
これは選択を制限し、パラメーターの長さを減らすために使用できます。たとえば、CSS
は、このように構成されている場合、Template:User CSS
を含めることができます。
たとえば、前述のCSS(Cascading Style Sheets)の場合、南部オローニ語のISOコードと衝突する可能性があります。
このような場合、ローカルテンプレートの使用を強制するためには、… html-3|_css-2|js-1 …
のように、パラメータの前にアンダースコア(_
)を付けてください。
パラメーター
ヘッダーとフッターを削除するには、最初のパラメーターとして plain=1
を利用します。例: {{#babel: plain=1 | バベルコード1 | バベルコード2 | ... }}
。
これにより、他のユーザーボックスでbabelを使いやすくなります。
カテゴリを非表示にするには、{{#babel: nocat=1 | バベルコード1 | バベルコード2 | ... }}
のように、最初のパラメータに nocat=1
を使用します。
留意点として、上記の引数(パラメータ)は1件しか使えません。
そのため現時点では、両方のパラメータを使用することはできません。{{#babel: nocat=1 | plain=1 | バベルコード1 | バベルコード2 | ... }}
は機能しないということです。
カテゴリの付与
カテゴリの分類が有効になっている場合、拡張機能は MediaWiki:babel-autocreate-text-levels および MediaWiki:babel-autocreate-text-main で指定されたテキストを使用して、Babel AutoCreate bot を使用してカテゴリを作成します。 標準の設定では、ボットが作成するカテゴリは分類されません。これを修正するために、以下の手順を行うことをおすすめします。
- カテゴリを作成する {{Babel category}} テンプレートを作成します。
- MediaWiki:babel-autocreate-text-levels を以下のテキストに置き換えます。
{{Babel category|level=$1|language=$2|ISO=$3}}
- MediaWiki:babel-autocreate-text-main を以下のテキストに置き換えます。
{{Babel category|language=$1|ISO=$2}}
これにより、カテゴリを自動的に分類できるようになり、何か問題が発生した場合は、すべてのカテゴリの分類とテキストを同時に置き換えることができます。
設定の構成
構成パラメータ
Babel に組み込んだいくつかの構成パラメータは、LocalSettings.php
で調整ができます。
$wgBabelLanguageCodesCdb
- (文字列)言語コード データベース ファイルのパス。既定を使用。
$wgBabelLanguageNamesCdb
- (文字列)言語名データベース ファイルのパス。既定を使用。
$wgBabelCategoryNames
- (文字列またはブーリアン型データに「1」、「2」…… 「5」および「N」までの検索子を付与)記述子は習熟レベルを示すカテゴリ名を当てる。適用可能な要素は
%code%
(言語コード)、%wikiname%
(ウィキのコンテンツ言語で表記した言語名)、%nativename%
(原語名)のいずれか。特定のレベルに対するカテゴリ付与を停止するには、対応する値を false に設定します。
- 例:
$wgBabelCategoryNames = [
'0' => 'User %code%-0',
'1' => 'User %code%-1',
'2' => 'User %code%-2',
'3' => 'User %code%-3',
'4' => 'User %code%-4',
'5' => 'User %code%-5',
'N' => 'User %code%-N',
];
- 「Category:User en-0」や「Category:User fr-N」などのカテゴリを使用。既定ではまず「Category:Fr-N」とその他。
$wgBabelMainCategory
- (文字列)それぞれの言語のメインカテゴリ(非レベル)の名称。その言語の利用者全員を追加。無効にするには false に設定します。既定の書式では「Category:Fr」の形。上記の
$wgBabelCategoryNames
同様の書式を適用できます。例:$wgBabelMainCategory = 'User %code%';
$wgBabelDefaultLevel
- (文字列)指定がない場合に既定で使う能力レベルです。検索子は
$wgBabelCategoryNames
から拾い、「1」、「2」……「5」および「N」を使います。既定は「N」。 $wgBabelUseUserLanguage
- (ブーリアン型)ユーザーインターフェイス(UI)の言語でヘッダーとフッターを表示するかどうか。false (既定)を選ぶとページのコンテンツ言語で表示します。UI言語を使うとパーサーのキャッシュを分断化してしまうことへの対処策です。
$wgBabelCategorizeNamespaces
- カテゴリ分類を自動付与する名前空間限定の配列。 たとえば
$wgBabelCategorizeNamespaces = [ NS_USER ];
なら、 バベルはユーザー名前空間のページ限定でカテゴリを追加します。 規定値は null、つまり、すべての名前空間をカテゴリ分類する。 $wgBabelCategoryOverride
- バベルのカテゴリをウィキでMediaWiki:Babel-category-overrideを使い上書きするかしないか
$wgBabelAutoCreate
- カテゴリを自動生成するかしないか。
システムメッセージ
MediaWiki名前空間のメッセージでカスタマイズを行えます。
- MediaWiki:babel-template "
Template:User $1
" - テンプレートを参照読み込みする際のテンプレート名の書式
- MediaWiki:babel-portal "
"
- 言語コードからリンクしている先のフォーマット。 言語コードとのリンクを防ぐため空の文字列に設定。
- MediaWiki:Babel-autocreate-user "
バベル自動作成係
" - バベルに関連するカテゴリの自動作成に使用する利用者名
- MediaWiki:babel-autocreate-text-levels "
このカテゴリに属している利用者は$2についてレベル $1 の能力を有しています。 $4
" - 異なる言語レベルごとに充当する自動作成カテゴリの文字列。特定の言語(
$wgBabelMainCategory
)のメインカテゴリに自動的に分類したい場合、これを必ず変更します。 - MediaWiki:babel-autocreate-text-main "
このカテゴリに属している利用者は、自身の$1の言語能力について、表明しています。 $3
" - 非レベルカテゴリの自動作成カテゴリに挿入するテキスト。全言語の親カテゴリに自動的に分類したい場合、これを変更するのは必須です。
- MediaWiki:babel "
バベル利用者情報
" - バベル ボックスのヘッダー ヘッダを非表示にするには
-
に設定。 - MediaWiki:babel-url "
Project:バベル
" - バベル拡張機能の情報が得られるページ。 ヘッダにリンクを含まないためには
-
に設定。 - MediaWiki:Babel-footer "
言語別の利用者
" - バベル ボックスのフッター フッターを非表示にするには
-
に設定。 - MediaWiki:babel-footer-url "
:カテゴリ:バベル - 言語別の利用者
" - バベルボックスの最後にあるリンクのページ
- MediaWiki:Babel-category-override "
$1
" - 自動生成されたバベルのカテゴリを上書き。 パラメーター:
$1 = 通常、生成されるはずのカテゴリ。
$2 = 言語コード
$3 = バベルのレベル
この方法を使用して上書きされたカテゴリは自動作成を防止し、そのページに破壊行為や誤った編集が加わるリスクを減らします。
API
meta=babel (bab)
- This module requires read rights.
- Source: Babel
- License: GPL-2.0-or-later
Get information about what languages the user knows
- babuser
User to get information about
- This parameter is required.
- Type: user, by any of username, IP, Temporary user, IP range and interwiki name (e.g. "prefix>ExampleName")
- Get the Babel information for user Example
- api.php?action=query&meta=babel&babuser=Example [open in sandbox]
![]() | この拡張機能は 1 つ以上のウィキメディアのプロジェクトで使用されています。 これはおそらく、この拡張機能が安定していて高いトラフィックのウェブサイトでも十分に動作することを意味します。 この拡張機能がインストールされている場所を確認するには、ウィキメディアの設定ファイル CommonSettings.php および InitialiseSettings.php 内で、この拡張機能の名前を探してください。 特定のウィキにインストールされている拡張機能の完全な一覧は、そのウィキの Special:Version ページにあります。 |
![]() | この拡張機能は以下のウィキ ファーム/ウィキ ホスト/パッケージに含まれています: これは正式な一覧ではありません。 一部のウィキ ファーム/ウィキ ホスト/パッケージは、ここに記載されていなくてもこの拡張機能を含んでいる場合があります。 必ずご利用のウィキ ファーム、ウィキ ホスト、バンドルで確認してください。 |