Extension:Babel

From mediawiki.org
This page is a translated version of the page Extension:Babel and the translation is 73% complete.
MediaWiki 拡張機能マニュアル
Babel
リリースの状態: 安定
実装 パーサー関数
説明 利用者の言語の理解度について他の利用者に知らせ、言語別・習熟度別にカテゴリ分けする、パーサー関数を追加する。
作者 Robert Leverington (RobertLトーク)
最新バージョン Continuous updates
互換性の方針 master は後方互換性を維持しています。
MediaWiki >= 1.40.0
データベースの変更 はい
Composer mediawiki/babel
テーブル babel
ライセンス GNU 一般公衆利用許諾書 2.0 以降
ダウンロード 言語拡張機能バンドルに含まれます
Translatewiki.net
  • $wgBabelMainCategory
  • $wgBabelCategorizeNamespaces
  • $wgBabelDefaultLevel
  • $wgBabelCentralDb
  • $wgBabelAutoCreate
  • $wgBabelCategoryNames
  • $wgBabelAllowOverride
  • $wgBabelUseUserLanguage
Quarterly downloads 94 (Ranked 61st)
Public wikis using 2,416 (Ranked 192nd)
translatewiki.net で翻訳を利用できる場合は、Babel 拡張機能の翻訳にご協力ください
問題点 未解決のタスク · バグを報告

Babel(バベル)拡張機能はテンプレートに依存した旧来の Babel システムにパーサー関数を付与します。未認識の言語パラメーターを指定した場合、その名称で既存のテンプレートがないか検索し取り込みます。

Wikimedia のプロジェクト群でBabel(原義はバベルの塔)という用語は、利用者ページで特定の言語を使用する誰かに連絡するとき、文字による多言語コミュニケーションがしやすくなるよう補助します。発案はWikimedia Commonsで生まれ、他の多くのウィキでも実装されました。

インストール

  • ダウンロードして、ファイルをextensions/フォルダー内のBabelという名前のディレクトリ内に配置します。
    開発者とコード寄稿者は、上記の代わりに以下を使用してGitからインストールします:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Babel
  • 以下のコードを LocalSettings.php ファイルの末尾に追加します:
    wfLoadExtension( 'Babel' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
  • 必要に応じて設定します。
  • Yes 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。
  • CSSはresources/ext.babel.cssファイルにあります。ページ内のMediaWiki:Common.cssでそれらをオーバーライドすると、スタイルを変更することができます。
  • CLDR 拡張機能が当該するとき、言語名をそこから取得しますが(翻訳は利用外)、それ以外の場合は MediaWiki に設定された言語名ならびに英語での規定の名称を使います。

使用法

パーサー関数 #babel の構文は以下の通りです:

 {{#babel: babelcode1 | babelcode2 | ... }}

話したり理解したりする言語ごとに、|で区切って次のコードの一つを追加します。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を含めることができます。

Parameters

ヘッダーとフッターを削除するには、最初のパラメーターとしてplain=1を利用します。例えば:{{#babel: plain=1 | babelcode1 | babelcode2 | ... }} これにより、他のユーザーボックスでbabelを使いやすくなります。

To hide categories, use the nocat=1 parameter as the first parameter, e.g., {{#babel: nocat=1 | babelcode1 | babelcode2 | ... }}.

Please note that only one of the parameters above is allowed. At the moment it is not possible to use both parameters, for example, {{#babel: nocat=1 | plain=1 | babelcode1 | babelcode2 | ... }} will not work.

Categorization

If categorization is enabled, the extension creates categories using the Babel AutoCreate bot with the text specified in MediaWiki:babel-autocreate-text-levels and MediaWiki:babel-autocreate-text-main. With basic settings, the categories that the bot creates are not categorized and to fix this, it is recommended to do the following:

  1. Create a template {{Babel category }} that will generate categories.
  2. Replacing text on MediaWiki:babel-autocreate-text-levels with
    {{Babel category|level=$1|language=$2|ISO=$3}}
    
  3. Replacing text on MediaWiki:babel-autocreate-text-main with
    {{Babel category|language=$1|ISO=$2}}
    

This will allow you to automatically categorize categories and if something happens, then simultaneously replace the categorization and text in all categories at the same time.


設定の構成

構成パラメータ

Babel に組み込んだ6件の構成パラメータは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
Array of namespaces to only add automatic categorization to. For example, if $wgBabelCategorizeNamespaces = [ NS_USER ];, then Babel will only add categories to pages in the user namespace. The default is null, which means categorize all namespaces.
$wgBabelCategoryOverride
Whether to allow Babel categories to be overridden on wiki using MediaWiki:Babel-category-override
$wgBabelAutoCreate
Whether to auto-create categories.

システムメッセージ

MediaWiki名前空間のメッセージでカスタマイズを行えます。

MediaWiki:babel-template "Template:利用者 $1"
テンプレートを参照読み込みする際のテンプレート名の書式
MediaWiki:babel-portal ""
言語コードからリンクしている先のフォーマット。 Set to the empty string to not link the language code.
MediaWiki:Babel-autocreate-user "バベル自動作成係"
バベルに関連するカテゴリの自動作成に使用する利用者名
MediaWiki:babel-autocreate-text-levels "このカテゴリに属している利用者は$2についてレベル $1 の能力を有しています。"
異なる言語レベルごとに充当する自動作成カテゴリの文字列。特定の言語($wgBabelMainCategory)のメインカテゴリに自動的に分類したい場合、これを必ず変更します。
MediaWiki:babel-autocreate-text-main "このカテゴリに属している利用者は、自身の$1の言語能力について、表明しています。"
非レベルカテゴリの自動作成カテゴリに挿入するテキスト。全言語の親カテゴリに自動的に分類したい場合、これを変更するのは必須です。
MediaWiki:babel "バベル利用者情報"
バベル ボックスのヘッダー Set to - to not display a header.
MediaWiki:babel-url "Project:バベル"
バベル拡張機能の情報が得られるページ。 Set to - to display no link in the header.
MediaWiki:Babel-footer "言語別の利用者"
バベル ボックスのフッター Set to - to not display a footer.
MediaWiki:babel-footer-url " :カテゴリ:バベル - 言語別の利用者"
バベルボックスの最後にあるリンクのページ
MediaWiki:Babel-category-override "$1"
Overrides any automatically-generated Babel categories. パラメーター:
$1 = the category that would be generated normally.
$2 = the language code
$3 = the babel level.
Any categories overridden using this method will not be auto-created to reduce the risk from vandalism or mistaken edits to that page.

API

meta=babel (bab)

(main | query | babel)

Get information about what languages the user knows

Specific parameter:
Other general parameters are available.
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")
Example:
Get the Babel information for user Example
api.php?action=query&meta=babel&babuser=Example [open in sandbox]