目次 Edit

 
 

関連 Edit

 
 

検索:名前

 

ページ/名前 Edit

思い付き Edit

名前不要 Edit

章をページとして実装するとなると、章にいちいち名前を付けるのは煩わしい。
細かい章は段落と同様に頻繁に使う。
付けなくても良いように自動命名。1行目の数文字/数文節を名前にして、「親ページ名前/自動命名の名前」というようにフルパス化。
(フルパスにしないと検索など他の閲覧方法でページ名を表示したときに分かりにくい。)

ページ名を扱いやすく Edit

http://wikienginex.com/wiki/%A4%BD%A4%CE%C2%BE%A4%CE%A5%A2%A5%A4%A5%C7%A5%A2

などとURLにページ名が入るのは良い案。変えない。

検索欄を用意。
検索だと1ステップ手順が多くなるので、結果が明確なら一覧を出さずに1位のページリダイレクト
GoogleのI'm Feeling Luckyのように。
(有力な見解[?]の仕組みを使って)

いしなお! - 私が既存のWikiEngineを使わなかった理由
http://tdiary.ishinao.net/20021206.html#p02

正規表現 Edit

ページ名の指定はどれも正規表現で受け付けるようにしたい。

ページ/名前はID Edit

重複が無い。
重複があれば、どちらかを扱う。どちらでもいい。

派閥のため、同じ名前ページ名を許す。
そうしないとページ/隠しページ[?]、ページ/編集不可ページ[?]で邪魔されて作りたいページが作れない事態になりかねない。
ページ名には必ず派閥やなどを含めたIDが付く。同じページ名は複数存在しない。

名前は複数あっても良い Edit

ページ別名を複数持たせられるように。
どの名前でもリンクできる。
略称を付けられる。
&tip;→リダイレクトページで。

実装では名前1、名前2…名前x。
ページ/名称を表示するときはこの順番に並べて表示。
日付とタイトルをページ/名称にして、ブログにしたり。

/ Edit

ページ名の階層区切りは不要。
/でも::でも[]でも「の」でも好きなものを使えばいい。
システムでは特にサポートしない。

「/」より「の」 Edit

ページ名前」というページを作るくらいなら「ページ/名前」を作ったほうがいい。
なら「の」を「/」の代わりに。

「プロジェクトの名称」というページを作るくらいなら「プロジェクト/名称」を作ったほうがいい。
なら、日本語向けのWikiではパス区切りを「の」にしたほうが良いのではないだろうか。

さらに、「プロジェクトの名前」というページを作ると

  • プロジェクト
  • プロジェクト/名称
    という2つのページが一度にできるように。

自動リンクを発生させるため、ページは多くしたい。

ページも作る Edit

ページ名前」というページを作ると

という2つのページが一度にできるように。

名前変更は2つ以上同時受け付け Edit

同時に2つ以上のページ名を変更できるように。
ページ名の入れ替えを1ステップで可能にする。

読み仮名 Edit

ページ名に()を付けると読み仮名扱いになる。

  • 空の()だと無意味。
    読み仮名無しとされる。
  • 読みが無いときは音読みで解釈。自動的に読み仮名を付ける。
    音読みはプログラム内で定義。またはWikiの設定で。PukiWikiの:config/PageReading/dictのように。
  • ページ名として()を使いたいときは読みの()を付けた上で使う。
    ()を2組付ける。

実装 Edit

同一視する文字 Edit

大文字小文字の同一視(PageとPAGEとPaGeは同じ単語でいい)、スペースとハイフン(New PageとNew-Pageは同じ単語)。
カタカナひらがなは区別。全角半角は同一視(全角空白→半角に、半角カナ→全角に)

相対パス/絶対パス Edit

ページ名は相対パスとしても自動リンクされる。
絶対パスとしても。

そのページの1階層下に適合すれば相対パスとしてリンク
「オブジェクト」というページで「リスト/インデックス」と書けば「オブジェクト/リスト/インデックス」として解釈。
ルートからの「リスト/インデックス」や他のページ下にあるページにはリンクしない。

ただし、相対パスとしてリンクできない場合(リンクできるページが無い以外の理由も含む)は絶対パス(ルートページからの完全なページ名)として解釈。自動リンク
絶対パスを指定したいなら(ルートページ名/ページ名)に。

順序なし Edit

ディレクトリ構造は考慮しない。

完全なページ名(ルートからのフルパス)はページ名のリスト。
これをリストではなく集合として扱う。

ページ/クラス/図」と「クラス/図/ページ」を区別してはいけないということ。(「図/ページ/クラス」なども)

ただし、相対パスは有効。現ページ名以下が順不同になる。


ルートページ「root」に「B/C」というページ名を書くと…

「root/A」というページに「A/B」というページ名を書くと…

  • root/A/A/B
  • root/A/B/A
  • A/B
  • B/A
    …の全てに自動リンク
    (「root/A/B」、「root/B/A」、「root/B/A/A」などにはリンクしない。分類を有効にするため)

同じく「root/A」というページに「root/A/B」というページ名を書くと…

  • root/A/root/A/B
  • root/A/root/B/A
  • root/A/A/root/B
  • root/A/B/root/A
  • root/A/A/B/root
  • root/A/B/A/root
  • root/A/B
  • root/B/A
  • A/root/B
  • B/root/A
  • A/B/root
  • B/A/root
    …の全てに自動リンク
    (「root/A/B」、「root/B/A」、「root/B/A/A」などにはリンクしない。分類を有効にするため)

書かれたページ名リストの全順列×2(現ページ名を付加するか否か)通り。

内部では集合として処理するので、階層がいくら深くても2回の判定でリンク可能なページが分かるし、リンク可能なページは2つ以下しか存在し得ない。
表記は多い。表記→ページだけを保存する必要がある。

順序 Edit

ページ名順序を。
同一ディレクトリ内では辞書順。
ディレクトリは深さ優先。
つまりフルパスを辞書順にするのと一緒。

特定のディレクトリと深さを指定して、この順序ページ名を取り出せるように。

設計 Edit

ページ名を使うということは、ディレクトリ名も使うということ。 Edit

ページ名とディレクトリ名は同一オブジェクト。

日時は範囲
更新日時も?
更新日時…24時間以内のものはまとめて。範囲にする。

ページ名 Edit

ふりがなを付けて。

ページ名には同義語があることがある。
自動リンクの対象。
自動リンクのためのインデックスがある。

ページ名も文字コード変換しないと。

: Edit

ページ名の接頭辞(prefix)はページ名と分けて、ページ属性を示すものとする。
ページ名ページ/属性を含めるようにする)

ページtagに隠し属性を付けるとき、ページ名をこうする。

:tag

:tag と tag は同じページになるので、ページ「:tag」を作った後、「tag」を作ろうとすると既存ページ編集となる。

その他の属性は→ページ/属性