MediaWiki‐ノート:Common.js/記事名チェッカ/仕様
このページでは、記事名チェック機能1.0版の仕様を説明しています。仕様は確定しています。編集しないでください。変更の必要があるときは、まずノートで議論して合意を得てください。 |
記事名チェッカ/仕様では、記事名チェッカが行うことや行わないことを説明する。
記事名チェッカは、当ページで
- 「する」と述べているとおりの動作をしなければならならない。
- 「しない」と述べている動作をしてはならない。
- 「する」とも「しない」とも述べていない動作を、できるだけしてはならない。
概要
[編集]記事名チェッカは、ウィキペディア日本語版の公式な方針、ガイドライン、ないしはそれらの草案など (以下、これらをまとめて「ガイドライン等」と呼ぶ) で規定または推奨されている記事名の付け方に関する事項に基づいて、利用者が作成または編集しようとする記事名を検査する。
検査の結果に従って、次の処理を行う。
- 利用者またはウィキペディアのシステムに対して技術的な問題を引き起こすおそれのある記事名をもつページについては、編集を拒否する。
- それ以外の場合で、規定または推奨されている事項に合致しない記事名をもつページについては、編集を拒否しないが、より適切な記事名を選択できるよう、利用者を誘導する。
参照するガイドライン等は、以下のものとする。
- Wikipedia:表記ガイド (一部)
- Wikipedia:記事名の付け方 (一部)
- Wikipedia:即時削除の方針 (リダイレクトに関する方針のみ)
- 現在ウィキペディア日本語版のために稼動しているMediaWikiの仕様。
- その他の技術的な考慮。
記事名チェッカの機能は、MediaWiki:Common.jsに組み込むことによって、ウィキペディア日本語版のすべての利用者 (JavaScriptを利用可能な者) に対して提供する。
ただし、以下の場合に機能の全部を無効にできることとする。
- 利用者が設定した場合、その利用者について。
- 記事ごとに設定した場合、その記事について。
また、利用者の特定のソフトウェア環境で、記事名チェッカの特定の動作が利用者の編集活動を妨げることが判明している場合については、その環境でのその動作を行わないようにする。
処理の前提と制限
[編集]- 記事名チェッカでは、ガイドライン等で扱う事項のうち、曖昧さなく形式的に検査できる事項のみについて処理を行う。したがって、記事名チェッカの処理で警告や拒否が行われないことは、ガイドライン等への準拠を保証しない。以下に、処理を考慮しない事項の例を挙げる。
- 文法、用字、綴りの誤り。
- 記事名の書式のうち、記事名の意味に依存して適切さが決まるもの。
- 表現の適切性や、記事名が表す事物の妥当性。
- MediaWikiは、利用者から入力される記事名が整型なUTF-8のシーケンス以外のものを含む場合には受け付けない。したがって、記事名チェッカではUTF-8の範囲の文字から成るデータのみを処理し、つぎのようなものを含むデータの処理は考慮しない。
- 一部の環境では、特定の文字を認識することができない。そのような環境ではそのような文字の検査は行えない。たとえば、#技術的な考慮 (拒否)についての検査について、一部のブラウザソフトウェア (例: Firefox 1.xおよび2.x。[1]を参照) では、対象文字種の文字自体を認識できないことがあるため、検査ができない。
処理の内容
[編集]機能の無効化
[編集]利用者ごとの無効化
[編集]利用者のユーザスクリプトで、以下のようにフラグ変数を真に設定することでする。
disableTitleChecker = 1;
記事ごとの無効化
[編集]Common.js 中に、記事名チェッカによる処理を適用しない記事名のリスト (除外リスト) を用意することでする。除外リストの初期値は空とする。
備考: 除外リストにどのような記事名を加えるかについての方針は、この仕様の範囲外である。
特定のソフトウェア環境での無効化
[編集]- Safari 2.0.1 以前 (AppleWebKit/416 よりも古い実装)
- U+0100以降の文字を含む検査をしない。また、#技術的な考慮 (拒否)で述べる検査もしない。
- 理由: U+0100以降の文字が検査パターンに含まれていると、クラッシュすることがある。また、たとえクラッシュしなくても、これらの文字種のうちに、検査を行うと警告表示となり一切の編集ができなくなるものが含まれている可能性がある。
検査の概要
[編集]以下の検査とそれに伴う処理は、標準名前空間の記事に対してのみ、かつそれを利用者が新規作成または編集しようとしたときにのみ行う。
- 記事名の書式、および使用されている各々の文字に対して、以下の各節に述べる検査を行う。
- 検査の結果、次のいずれかの処理を行う:
- 許可: 次に述べる「警告」や「拒否」に該当する処理をしない場合は、何もしない。
- 警告: 説明文を表示するが、次に述べる「拒否」に該当する処理をしない場合は編集は可能。
- 拒否: 説明文を表示し、編集をできなくする。
- 拒否または警告に該当するものは「説明文」に述べる説明文を表示する。なおその際、「適用するガイドライン等」に挙げるガイドライン等への誘導のためのメッセージも表示する。
- なお、作成ずみの記事がリダイレクトであり、即時削除の方針に該当する可能性のあるもの (WP:CSD#リダイレクトと記載のあるもの) については、説明文に次の文章を加える。
- 付加する説明文
- 編集中のページはリダイレクトですが、即時削除に出せるかもしれません。リダイレクトの即時削除に出すことができるのは、以下のすべてが該当する場合です。
- 項目名の書き誤りで、それが誰が見ても明らかに誤りだとわかる。
- 項目が有益な履歴を持っていない。
- 項目がどこからもリンクされていない。
- リダイレクトの即時削除についての詳細は、Wikipedia:即時削除の方針を参照してください。
以下に、個々の検査について述べる。
書式の検査
[編集]- 記事名の全体を「」または『』などでくくっているもの、ないしは、その後に曖昧さ回避の括弧があるもの[追加]。
- 処理
- 警告する。
- 説明文
- 記事名が鈎括弧でくくられています。芸術作品のタイトルは鈎括弧でくくるべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#小説・詩・映画・舞台・音楽・絵画など芸術作品のタイトル
- 備考
- この警告は適切でない場合がある (芸術作品でない場合など)。また、作品に邦題があるか否かは検査の対象ではない。さらに、曖昧さ回避の括弧のかわりに全角括弧が用いられていた場合は検査の対象とはならない。
- 記事名の末尾の括弧書きに半角の小括弧(丸括弧)を使用する場合に、左括弧の前に半角スペースがないもの。
- 処理
- 警告する。
- 説明文
- 記事名の最後の左括弧の前に半角スペースがありません: 括弧で囲まれた箇所。曖昧さ回避の括弧である場合は、括弧の前に半角スペースを入れてください。名称自体に括弧を含んでいる場合はこの限りではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:D#曖昧さ回避の種類と方法
- 備考
- この警告は適切でない場合がある (化学物質名など)。また、右括弧の後についてはガイドライン等に明記されていない。
- 備考2
- この検査はWP:CSD#リダイレクトの記載にのみ基づいており、それ以外のガイドライン等には記載がない。曖昧さ回避の括弧についてのシステムの要求事項 (WP:D#曖昧さ回避の種類と方法) を述べたものとも解されるが、曖昧さ回避でない場合を含んでいるとも解される。したがって、当仕様では記事名の末尾に限定して検査することにし、ほかの場合の検査はしないこととする。
- 記事名に半角の小括弧(丸括弧)を使用する場合に、括弧の左右が対称でないもの。
- 処理
- 警告する。
- 説明文
- 括弧の左右が対称ではありません: 括弧で囲まれた箇所。両方を、半角括弧か全角括弧に統一してください。
- 適用されるガイドライン等
- WP:CSD#リダイレクト
- 備考
- 括弧の入れ子については、少なくとも2重になっている場合までを考慮する。
- 記事名に実体参照または数値文字参照を含んでいるもの。
- 処理
- 拒否する。
- 説明文
- 実体参照を含んでいます: 文字列。実体参照を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:NC#特殊記号の使用は慎重にすること
- 備考
- ガイドラインの趣旨は数値文字参照も含むと考えられる。
- 記事名の最後が半角の括弧で囲まれており、その左括弧の前に半角スペースが複数あるもの。
- 処理
- 半角スペース1つに置き換える。
- 説明文
- なし。
- 適用されるガイドライン等
- WP:D#曖昧さ回避の種類と方法
- 備考
- 現行のMediaWikiの仕様によって、連続する半角スペースは強制的に半角スペース1つに置き換えられる。これは左括弧の前に限られない。
使用文字種の検査
[編集]記事名中で用いられる各々の文字を検査する。検査結果に基づいて処理を行う。
注意: 以下に述べる以外の文字は、すべて許可する。
技術的な考慮 (拒否)
[編集]以下のものは、技術的な考慮によって拒否する。
- 制御文字
- 一般カテゴリ属性 Cc, Cf, Zl, Zp のいずれかを持つもので、U+0100 - U+1FFF の範囲にも U+10000 - U+DFFFD の範囲にもないもの。
- 特別な幅のスペース
- 一般カテゴリ属性 Zs を持つもので、U+0100 - U+1FFF の範囲にないもの。ただし、U+0020 SPACE と U+3000 IDEOGRAPHIC SPACE を除く。
- ノンブレーキングハイフン
- U+2011 NON-BREAKING HYPHEN
- 私用領域の文字
- 私用領域に属するもの。
- 非文字
- Unicodeで文字が割り当てられないことが保証されている符号位置。各面の末尾16ビットがFFFEまたはFFFFのもの。
以下に詳細を記す。
- U+0000 - U+001F; C0制御文字
- U+007F; 制御文字delete
- 処理
- 拒否する。
- 説明文
- (MediaWikiの仕様による)
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。
- 備考
- 現行のMediaWikiの仕様によって、この文字を記事名に使用しようとすると閲覧、編集とも拒否される。
- U+0080 - U+009F; C1制御文字
- U+FFF0 - U+FFFD; Specials
- U+E0000 - U+EFFFD; 第14面 補足特殊用途面 - 書式制御文字補足、等
- 処理
- 拒否する。
- 説明文
- 制御文字を含んでいます。制御文字を記事名に使うべきではありません。
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。
- U+00A0; NO-BREAK SPACE (NBSP)
- 処理
- 拒否する。
- 説明文
- ノーブレークスペースを含んでいます。通常のスペースを使ってください。
- 適用されるガイドライン等
- 技術的な考慮 (特別な幅のスペース)。
- U+00AD; SOFT HYPHEN (SHY)
- 処理
- 拒否する。
- 説明文
- ソフトハイフンを含んでいます。ソフトハイフンを記事名に使うべきではありません。
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。
- U+2000 - U+200A; Spaces
- U+200B; ZERO WIDTH SPACE (ZWS)
- U+205F; MEDIUM MATHEMATICAL SPACE (MMSP)
- 処理
- 拒否する。
- 説明文
- 特別な幅のスペースを含んでいます。通常のスペースを使ってください。
- 適用されるガイドライン等
- 技術的な考慮 (特別な幅のスペース)。
- U+200C - U+200D; Format characters (ZWNJ, ZWJ)
- U+2060; WORD JOINER (WJ)
- 処理
- 拒否する。
- 説明文
- 書式制御文字を含んでいます。一部の言語ではこの文字を使いますが、記事名には日本語を使ってください。
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。日本語以外についてはWP:NC#日本語を使うこと。
- U+200E - U+200F; Format characters (LRM, RLM)
- 処理
- 無視する。
- 説明文
- なし。
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。
- 備考
- 現行のMediaWikiの仕様によって、これらの文字が記事名中に含まれていても無視される[2]。
- U+2011; NON-BREAKING HYPHEN (NB)
- 処理
- 拒否する。
- 説明文
- ノンプレーキングハイフンを含んでいます。ハイフンマイナス (-) を使ってください。
- 適用されるガイドライン等
- 技術的な考慮 (ノンブレーキングハイフン)。
- U+2028 - U+202E; Format characters (LS, PS, LRE, RLE, PDF, LRO, RLO)
- U+2061 - U+206F; Invisible operators etc.
- 処理
- 拒否する。
- 説明文
- 書式制御文字を含んでいます。書式制御文字を記事名に使うべきではありません。
- 適用されるガイドライン等
- 技術的な考慮 (制御文字)。
- U+202F; NARROW NO-BREAK SPACE (NNBSP)
- 処理
- 拒否する。
- 説明文
- 特別な幅のノーブレークスペースを含んでいます。通常のスペースを使ってください。
- 適用されるガイドライン等
- 技術的な考慮 (特別な幅のスペース)。
- U+E000 - U+F8FF; 私用領域。
- U+F0000- U+FFFFD; 第15面 補足私用領域
- U+100000 - U+10FFFD; 第16面 補足私用領域
- 処理
- 拒否する。
- 説明文
- 私用文字を含んでいます。私用文字 (外字) を記事名に使うべきではありません。
- 適用されるガイドライン等
- 技術的な考慮 (私用領域の文字)。
- U+FEFF; ZERO WIDTH NO-BREAK SPACE (ZWNBSP) / Byte order mark (BOM)
- 処理
- 拒否する。
- 説明文
- 不可視な文字を含んでいます。この文字を記事名に使うべきではありません。
- 適用するガイドライン
- 技術的な考慮 (制御文字)。
- U+FFFE - U+FFFF; 割り当てなし。
- U+hhFFFE - U+hhFFFF; 割り当てなし (hh = 0116-1016)。
- 処理
- 拒否する。
- 説明文
- 文字でないものを含んでいます。文字でないものを記事名に使うべきではありません。[U+1FFFE以降のみ]
- 適用するガイドライン
- 技術的な考慮 (非文字)。
- 備考
- これらの符号位置は、Unicodeで文字が割り当てられないことが保証されている。なお、U+FFFE - U+FFFFについてはMediaWikiの仕様によって拒否される。
MediaWikiの仕様に基づくガイドライン等 (拒否)
[編集]以下のものは、MediaWikiの仕様に基づくガイドライン等によって拒否する。
- #
- 処理
- この文字が最初に現れて以降を無視する。
- 説明文
- なし。
- 適用されるガイドライン等
- WP:NC#特殊記号の使用は慎重にすること
- 備考
- 現行のMediaWikiの仕様によって、この文字を記事名に使用するとこれ以降は無視される。
- < > [ ] { } |
- 処理
- 拒否する。
- 説明文
- (MediaWikiの仕様による)
- 適用されるガイドライン等
- WP:NC#特殊記号の使用は慎重にすること
- 備考
- 現行のMediaWikiの仕様によって、この文字を記事名に使用しようとすると閲覧、編集とも拒否される。
- _
- 処理
- 0020 SPACEに置き換える。
- 説明文
- なし。
- 適用されるガイドライン等
- WP:NC#特殊記号の使用は慎重にすること
- 備考
- 現行のMediaWikiの仕様によって、_は半角スペースに置き換えられる。
その他のガイドライン等 (警告)
[編集]以下のものは、ガイドライン等によって警告する。
- U+2160 - U+217F; ローマ数字 (大文字および小文字)
- 処理
- 警告する。
- 説明文
- ローマ数字を含んでいます: 字。これは機種依存文字です。ローマ数字は半角英字 (iやVなど) を並べて表記してください。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:JPE#ローマ数字。
- U+2460 - U+2473; 丸数字
- U+24EA; 丸数字ゼロ
- U+24EB - U+24F4; 黒丸数字
- U+24F5 - U+24FE; 二重丸数字
- U+24FF; 黒丸数字ゼロ
- U+3251 - U+325F; 丸数字 (21-35)
- U+32B1 - U+32BF; 丸数字 (36-50)
- 処理
- 警告する。
- 説明文
- 丸数字を含んでいます: 字。これは機種依存文字です。代わりに (1), (2), (3) を使用してください。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:JPE#丸数字。
- U+2474 - U+2487; 括弧数字
- U+2488 - U+249B; ピリオド数字
- U+249C - U+24B5; 括弧英字
- U+3200 - U+321F; 括弧ハングル
- U+3220 - U+324F; 括弧漢字
- U+3250; PARTNERSHIP SIGN (「PTE」)
- U+32C0 - U+32CF; 組文字 (「1月」、「Hg」、「LTD」等)
- U+3300 - U+33FF; CJK Compatibility
- 処理
- 警告する。
- 説明文
- 組み文字を含んでいます: 字。片仮名、漢字、英数字で表記してください。これは機種依存文字である場合もあります。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:JPE#略記号、WP:JPE#文字コード
- U+24B6 - U+24E9; 丸英字
- U+3260 - U+327E; 丸ハングル
- U+3280 - U+32B0; 丸漢字
- U+327F; KOREAN STANDARD SYMBOL
- U+32D0 - U+32FF; 丸片仮名
- 処理
- [今回の版では許可する。将来再検討する]
- U+3000; 和字間隔
- 処理
- 警告する。
- 説明文
- 全角空白を含んでいます。全角空白を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け
- U+F900 - U+FAFF; CJK互換漢字、ただし互換漢字領域にあるが統合漢字であるものを除く。
- U+2F800 - U+2FFFF; CJK互換漢字補足、等
- 処理
- 互換なCJK統合漢字に置き換える。
- 説明文
- なし。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:JPE#文字コード
- 備考
- 現行のMediaWikiの仕様によって、互換な統合漢字に置き換えられる。
- U+FB00 - U+FB4F; Alphabetic Presentation Forms
- U+FB50 - U+FDFF; Arabic Presentation Forms-A
- U+FE00 - U+FE0F; Variation Selectors
- U+FE10 - U+FE1F; 縦書き形
- U+FE20 - U+FE2F; Combining Half Marks
- U+FE30 - U+FE4F; CJK互換形
- U+FE50 - U+FE6F; Small Form Variants
- U+FE70 - U+FEFE; Arabic Presentation Forms-B
- U+FFE0 - U+FFE7; 全角記号 (メインフレーム由来)
- U+FFE8 - U+FFEF; 半角記号 (メインフレーム由来?)
- 処理
- 警告する。
- 説明文
- 機種依存文字を含んでいます: 字。機種依存文字を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:JPE#文字コード
- U+FF10 - U+FF19; 全角数字
- 処理
- 警告する。
- 説明文
- 全角数字を含んでいます: 字。全角英数字を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け
- U+FF21 - U+FF3A; 全角英字
- U+FF41 - U+FF5A; 全角英字
- 処理
- 警告する。
- 説明文
- 全角英字を含んでいます: 字。全角英数字を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け
- U+FF00 - U+FF0F; 全角英記号
- U+FF1A - U+FF20; 全角英記号
- U+FF3B - U+FF40; 全角英記号
- U+FF5B - U+FF60; 全角英記号
- 処理
- 警告する。ただし以下のものを除く。
- 説明文
- 全角英記号を含んでいます: 字。全角英記号を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け
- 処理の除外対象 (許可する)
-
- U+FF03 #
- U+FF1C <
- U+FF1E >
- U+FF3B[
- U+FF3D ]
- U+FF5B {
- U+FF5C |
- U+FF5D }
- MediaWikiの仕様によって、半角記号を使用できないもの。それぞれの半角形に関する検査項目を参照。
- U+FF1A :
- MediaWikiの仕様によって、記事名の先頭および名前空間の区切りと同等の位置に置く場合は半角記号を使用できないもの。
- U+FF01 !
- U+FF08 (
- U+FF09 )
- U+FF1D =
- U+FF1F ?
- コミュニティの合意、または合意に至ってはいないものの慣習によって、全角記号が使用されることがあるもの。
- U+FF5E ~
- (次項参照)
- U+FF5E; 全角チルダ (~)
- 処理
- 警告する。ただし、記事がリダイレクトでない場合のみ。
- 説明文
- 全角チルダを含んでいます。この文字は、一部の環境で正しく表示されません。波ダッシュ (〜) か、できればハイフンマイナス (-) を使ってください。波ダッシュを使った記事名へのリダイレクトを作成しようとしている場合は、この限りではありません。
- 適用されるガイドライン等
- WP:JPE#波ダッシュ
- 備考
- 利用者の環境によっては、U+301C WAVE DASH (〜) の代わりに入力されてしまうことがあるが、一部の環境で表示されない。しかし、現在のWP:JPE#波ダッシュでは、新規記事についてはU+FF5Eを含むリダイレクトを作成することを「強く推奨」、また既存記事を移動した場合にできるリダイレクトについては「当面の間存続」としている。
- U+FF61 - U+FF9F; 半角片仮名
- 処理
- 警告する。
- 説明文
- 半角片仮名を含んでいます: 字。半角片仮名を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け
- U+FFA0 - U+FFDF; 半角ハングル字母
- 処理
- 警告する。
- 説明文
- 半角ハングル字母を含んでいます: 字。半角ハングル字母を記事名に使うべきではありません。
- 適用されるガイドライン等
- WP:CSD#リダイレクト、WP:NC#全角と半角の使い分け(?)
備考
[編集]- 一部の文字の組み合わせ (ダイアクリティカルマーク付きの文字、ハングル字母の組み合わせ等) は、MediaWikiの仕様によってNFCに正規化される。
- U+3130 - U+318F ハングル互換字母と、U+1100 - U+11FF ハングル字母の、どちらを使用するかが曖昧な場合がありうる。現在の実運用例では、記事名で単独の字母を表記する場合にはハングル互換字母が使用されている。
- 漢字については、CJK統合漢字を許可する。JIS X 0208収録文字であるかどうかは検査しない。なお、CJK互換漢字はMediaWikiの仕様によって互換なCJK統合漢字に変換される。
- 基本多言語面 (BMP) 外の文字 (U+10000 - U+10FFFF) は、JavaScriptでの内部処理の際にサロゲートペアとして表現される。
- 「技術的な考慮」に基づいて拒否する文字については、原則としてガイドライン等には記載がない。
画面
[編集]処理結果を表示する画面は、以下のとおりとする。
<!-- 検討中 -->