DokuWiki

It's better when it's simple

ユーザ用ツール

サイト用ツール


ja:pagename

ページ名

ページ名は、ページを特定するURLを構成する要素です。例えば、現在アクセスしているこのページのURLは「https://www.dokuwiki.org/ja:pagename」であり、ページ名は「ja:pagename」です。

DokuWiki におけるページ名は、自動的に小文字に変換されます。利用できる文字は、英字、数字と、名前の途中に含まれる1)「特殊文字」., -, _です。2)それ以外の特殊文字(例えばホワイトスペースやプラス、スラッシュ、パーセント等。マルチバイトの記号も使えません)はアンダースコア3)に変換されます。コロン「:」は名前空間の識別に使われます4)

設定オプション deaccent が有効な場合(デフォルトは有効)、現地のアクセント付き文字は記述的に等価な文字(üue)か、アクセントを除去した文字(áa)に変換されます。

ページ名の長さはバックリンクによって暗黙に制約されています(バックリンクに認識されるには、ページ名が3文字以上である必要があります)。

デフォルトを含めた多くのテンプレートで、ページのどこかにページのフルネームとそのパスにおける名前空間を表示します。「dokuwiki」テンプレート(デフォルト)の場合、ページ左上のタブ部分にあります。例えば、このページの名前は、ja:pagename になります。

InterWiki を使った他のWikiへのリンク時は、そのWikiの名前の制限が適用されます。

キャメルケースやWiki単語が設定で有効になっていても、ページ名は小文字になります。

ページ名と名前空間

名前空間はディレクトリ、ページ名はディレクトリ内のファイルと考えることもできます。

従って、a:b:cというページ名は次のように解釈できます:

   ルートの名前空間(常に存在する)
     |
     +-- 'a' 名前空間
           |
           +-- 'b' 名前空間
                 |
                 +-- 'c' ページ名

名前空間の中に同時に同じ名前のページ名と名前空間がありうるということに注意してください。上記の例に戻って、a:bを見てみると次のように解釈できます:

   ルートの名前空間(常に存在する)
     |
     +-- 'a' 名前空間
           |
           +-- 'b' ページ名(上記の'b'という名前空間と混乱しないように)

DokuWiki は、最後のトークン(最後のコロンの後)をページそのものの名前として扱い、それ以外を名前空間として扱うので、これは矛盾はしません。

  • a:b:c では、 ab が名前空間で、c はページ。
  • a:b では、 a は名前空間、b はページと解釈される。

詳細は namespaces を参照してください。

コアプログラムを改造し、大文字小文字を一緒に使う

大文字小文字を併用するページ名を使えるように、DokuWikiのコアプログラムを改造する人もいますが、これは非推奨であり、公式的にサポートしていません。また、DokuWikiの機能を不明瞭な形で故障させてしまうかも知れません。

コードを改造する事で目的を果たせます。wiki/inc/pageutils.php の109行目辺りをコメントアウトして下さい。「Names_Like_This」←こんな感じの名前を付けられるようになります。 次のコードを探してコメントアウトして下さい。

$id = utf8_strtolower($id);

:!: この改造は、数年前に私5)が使用しユーザーフォーラムにて発表したのですが、Anteaterでは動作しないようです。
:?: 他にアイデアはありませんか?

こちらのスレッドもご参照下さい。

1)
つまり、名前の先頭や末尾に使うと削除されるので使えない
2)
訳者注:日本語などのマルチバイト文字にも対応します。
3)
あるいは、sepchar設定で指定した文字
4)
より自然にファイルシステムの階層を反映するために、コロンをスラッシュに替える事も出来ます。参照
5)
訳者注:誰?
ja/pagename.txt · 最終更新: 2018-10-13 14:52 by hokkaidoperson

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki