Jump to content

Extension:Disambiguator

From mediawiki.org
This page is a translated version of the page Extension:Disambiguator and the translation is 92% complete.
MediaWiki 拡張機能マニュアル
Disambiguator
リリースの状態: 安定
実装 特別ページ
説明 曖昧さ回避ページの指定をマジックワードで決める拡張機能
作者 Ryan Kaldari (Kaldariトーク)
最新バージョン 継続的な更新
互換性の方針 MediaWiki とともにリリースされるスナップショット。 master には後方互換性がありません。
MediaWiki 1.28+
PHP 5.4+
ライセンス MIT ライセンス
ダウンロード
ヘルプ Help:Extension:Disambiguator/ja

  • $wgDisambiguatorIndicateLinks
四半期ごとのダウンロード数 58 (Ranked 80th)
使用中の公開ウィキ 6,730 (Ranked 31st)
translatewiki.net で翻訳を利用できる場合は、Disambiguator 拡張機能の翻訳にご協力ください
問題点 未解決のタスク · バグを報告

Disambiguator 拡張機能はプログラム上で動作しやすい曖昧さ回避ページを簡単に作成するよう設計してあります。 すべての曖昧さ回避ページの指定は__DISAMBIG__ マジックワード (もしくは同等の別名) で実行でき、データベース上の指定を変更します。 これにより、通常ページとみなされているものが、曖昧さ回避ページという別の種類のページとして扱うことが可能になります。

インストール

  • ダウンロードして、ファイルをextensions/フォルダー内のDisambiguatorという名前のディレクトリ内に配置します。
    開発者とコード寄稿者は、上記の代わりに以下を使用してGitからインストールします:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Disambiguator
  • 以下のコードを LocalSettings.php ファイルの末尾に追加します:
    wfLoadExtension( 'Disambiguator' );
    
  • 必要に応じて設定します。
  • Yes 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

設定

利用者の LocalSettings.php ファイルから以下の設定変数を書き込みます。

  • $wgDisambiguatorIndicateLinks - 'mw-disambig' CSS クラスを追加し、曖昧さ回避ページへのリンクを作るかどうか (既定は true)
  • $wgDisambiguatorNotifications - ウィキテキスト エディターで曖昧さ回避ページへのリンクを入力する際に警告を出すかどうか (既定は false)

特徴

この拡張機能は以下の機能を提供します:

  • プログラム上で__DISAMBIG__ マジックワード を使い、曖昧さ回避ページを検出
  • 特別ページを新設して曖昧さ回避ページと、それにリンクするページをすべてまとめる
  • 上記の特殊ページに相当する新たなAPI関数と、あるページが曖昧さ回避ページであるかどうかを照会するAPI関数を追加
  • 曖昧さ回避のためのページを無視するようにSpecial:LonelyPagesを変更する
  • Special:Randomで曖昧さ回避のためのページを無視するように変更(MediaWiki 1.26.0が必要)
  • VisualEditor が有効な場合、ページのプロパティ・インターフェースを使って、ページを曖昧さ回避のためのページとしてマークすることができます。
  • VisualEditor が有効な場合、リンクインスペクタでページが曖昧さ回避ページであるかどうかを表示します。
  • VisualEditor が有効な場合、リンクダイアログでページが曖昧さ回避ページであるかどうかを表示する
  • 設定されている場合、曖昧さ回避のためのページへのリンクに 'mw-disambig' CSSクラスを追加します (上記の #Configuration を参照)。
  • Warns a WikiEditor user when linking to a disambiguation page, and allows them to fix the link.

使用法

end-user helpについては、Help:Extension:Disambiguator を参照してください。

ウィキ上で

Disambiguatorをインストールした後は、__DISAMBIG__のマジックワードをテンプレートに追加し、それをすべての曖昧さ回避ページに含めるのが最も良い使い方です。

このマジックワードが設定されると、あなたの曖昧さ回避ページはすべて、データベース内で「曖昧さ回避」ページプロパティが割り当てられます。 このプロパティは、page_props テーブルに存在します。

さらに2つの特別ページ を生成します。それはこちらです:

  • Special:DisambiguationPages - これは、Wikiのすべての曖昧さ回避ページを一覧表示します。
  • Special:DisambiguationPageLinks - これは、曖昧さ回避のためのページにリンクしている、あなたのウィキのすべてのページをリストアップするものです。 (これは、古いSpecial:Disambiguationsのページが非推奨になったことを受けてのものです。)

APIとの組み合わせ

すべての曖昧さ回避のためのページを一覧表示する。

api.php?action=query&list=querypage&qppage=DisambiguationPages

すべての曖昧さ回避のためのページのリンクを一覧表示する。

api.php?action=query&list=querypage&qppage=DisambiguationPageLinks

なお、MiserModeで動作しているWiki(すべてのWMF Wiki)では、DisambiguationPageLinksの特設ページとAPIインターフェイスの両方が、特定の数の結果に制限されています(通常は1000~5000件)。

個々のページが曖昧さ回避ページであるかどうかを確認する。

api.php?action=query&titles=Bug&prop=pageprops&ppprop=disambiguation

曖昧さ回避のためのページであれば、そのページプロップに「曖昧さ回避」が含まれます。 曖昧さ回避のためのページプロップが存在する場合、その値は空の文字列に設定されるので、真偽値としてテストする場合は注意が必要です。

SQL

To see if an individual page is a disambiguation page, check the page_props table for the presence of a pp_propname = 'disambiguation'. Pages that are not disambiguation pages will not have this pp_propname. The pp_value isn't important.

SELECT page_title, pp_propname
FROM page
LEFT JOIN page_props ON pp_page = page_id AND pp_propname = 'disambiguation'
WHERE page_namespace = 0
AND page_title IN ('John', 'COVID-19') -- John is a disambiguation page on enwiki, COVID-19 is not

今後の開発案