ページ/」で始まるページ作成

 

目次 Edit

 
 

関連 Edit

 

検索:ページ

 

ページ周辺のタグ Edit

Array
 

ページ Edit

思い付き Edit

アクセス権は引き継がれる Edit

自動生成ページは元のページ(入力されたページ)すべてのアクセス権を引き継ぐ。
アクセス権の合成ルールが必要。

添付ファイルは1ページ扱い Edit

添付ファイル1つで1ページ
閲覧用データ/編集用データがHTMLで添付ファイルを表示するようなもの。
内部用データは添付ファイルそのもの。
こうしたほうが扱いやすいし、ページの機能を利用できる。
ページページを含める機能を利用して。

Wiki構築をページ Edit

Wiki構築をページで。
他のWikiEngineでのプラグイン

  • Wikiではページとはファイル権限、日付、読み専用などの属性、パスなどがある。
  • 段落を1ページにすれば使い回しや集約のために分ける作業が減る。
  • ページは…
    • ファイル
    • メール
    • 書き込み
    • フォルダー
    • オブジェクト
    • 順序や前後のある本のページ
    • ToDoリスト

履歴を取らない Edit

同一ユーザーによる同じページの複数回更新は上書き。
バックアップ履歴を取らない。無駄。
更新を1回取り消すと他のユーザーによる更新まで戻ることになる。

ページ内容はコードと見なせる Edit

  • 全てコメント
  • #で始まる行はコード
  • コードの出力はコメント
  • コードの出力はコードの位置に展開される

Wikiは1ページが1つの板 Edit

利用者登録も?
WikiFarmとは違う?

ページクラスに追加 Edit

iframeタグを生成するプラグインなど、管理者だけが使えるプラグインを使えるページ
使える文字列が違う。

このページ事態管理者だけが使えるものでなくてはならない。

newプラグインを標準に Edit

章にはNew!が付く。
ということでページへのリンクにも付く。
章へのリンクにも。

ページタイトルと章タイトルにも。
タイトルに付ける方法は?

名前変更でリダイレクト Edit

ページ名前変更をしたら旧名はリダイレクトページになる。
もう一手間かけてリダイレクトページを消してもいいし、旧名をまた使うまで残しておくのも良い。

他サイトからのリンクを切らないための措置。

仕様が大きくなりそう Edit

ページ分割する必要がありそう?

実装 Edit

1ページに4つの形式 Edit

  • 閲覧用
    HTML
  • 編集
    WikiText
  • 保存用
    オブジェクト
    内部用のページIDなどを使う
    (オブジェクト間を間接的な参照に)
  • 検索
    表記の揺れを省く
    大文字/小文字統一
    カタカナ/ひらがな統一
    全角/半角統一

リストとハッシュ Edit

リスト状に並んだページ
ハッシュに格納…Wiki。

凍結 Edit

ページ凍結は再生成を止めるということ。
編集、参照などは可能に。

エクスポート機能 Edit

データをテキストにする。
入力時そのままの形式のテキストに。

ずっとテキストで保存することに意味はない。
必要なときだけエクスポートできればいい。

分割数を指定。デフォルトでは1。テキストファイルを1つの圧縮ファイルに入れてブラウザーへ。

OPML Edit

OPMLを使う手も。
キーワード:OPML

XOXO Edit

microformatsのXOXO。
キーワード:microformats

不要? Edit

WikiTextにフォーマットなど無いので、共通フォーマットも不要。
ただページ→他のWikiEngineでのページに変換することができれば良いだけ。
インポート手順は相手WikiEngine次第なのでサポートしない。

エクスポート機能は変換しやすい形式でダウンロードできればよし。

ページに手を加えるにはページごとに Edit

{属性→値}
でできた指示をキューイング。
適当なときに処理。

最新版が必要なときは自動リロード。

衝突したか知らせるために、編集後のレスポンスには最新版が必要。

編集ページ検索エンジンにインデクシングさせないように指定 Edit

継承される領域 Edit

タグもここに。
WikiFormatで。1ページにいくつでも入れられる。
継承され、下位のページにも適用される。
ページ移動時、消えたり追加されたり。
ただしシステムが追加、削除するのはページ/裏にある継承可能領域のみ。

継承に単位が無いのが問題?
ページ内容はテキスト1つ。これを継承するので分ける必要がある。
内容(継承されない)、ページ全体に影響するプラグイン呼び出しを書くところ(継承される)、裏の3つに分ける?
継承したものは埋め込み位置が失われている。位置が重要なページ/内容継承できなくていい。

 

この領域にプラグイン呼び出しを書けば、下位にあるページすべてに書いたのと同じ。
この領域から呼び出すプラグインを作れば、下位にあるページ管理するようなものも作れそう。
WikiEngineのオブジェクトを組み合わせて独自のCMSを作るとか。

本体はオブジェクト Edit

ページの本体はオブジェクト。
WikiTextではない。
WikiTextはオブジェクトを操作するためのコマンド集。あるいはオブジェクトの設計書。

アクセスログページ属性 Edit

ページを扱うとき、一緒にアクセスログも扱えるように。
:t/フレームワーク

ページプラグインのDB Edit

データはページに記録。
独自形式を使うよりも使いやすくなければ無意味。

作成を頻繁に行う Edit

ページにID
同一IDはFlyweight。
→PageFactoryが要る。

異なるを集めた集約も要る。
1つのページ
Pageの集約 ◇─ Page ◇─ Plug-in

ページ…Page
…Pageが持つRevision(Rev)属性
それとPlug-in。
Pageの集約はリスト。内部は線形。(順序が必要。)
Pageは順序無し。平たい構造。グラフ構造。
Plug-inはRevを中心にした星形。

  • Pageの集約に名前を。
    ページが集まったら何になるか?
    本?冊子?束?

資料 Edit

ごく簡単なHTMLの説明 - The Web KANZAKI
http://www.kanzaki.com/docs/htminfo.html

モデリング Edit

ページは…

  • データ保存場所
  • 保持しているデータやそれに関する情報を文字で情報を提供する。
  • 利用者から送られてきたクエリーのうち、自身に関する部分だけは解釈できる。
  • 入れ子関係になっている場合、親になるページインスタンスから属性を受け継ぐ。

ページは…

  • 読まれる
  • 書かれる
  • 自動的に書かれる
  • 名前を持つ
  • ID(内部名)を持つ

ページは…

…を含む。

WikiText Edit

WikiTextは…

  • HTMLタグ
  • プレーンテキスト
  • WikiFormat
    WikiFormatは入れ子にできる。Decoratorパターン。

…を含む。

WikiFormat Edit

WikiFormatは…

…を含む。

テンプレート Edit

テンプレートは…

  • 適合用正規表現
  • 置き換え用正規表現
    複数。順序あり。

…を含む。

継承 Edit

属性未定義のものだけページから継承する。
先祖に無ければデフォルト値。デフォルト値はWikiの設定にある。

ページ/内容内に章見出しか定義リストの形式で…

…を与えられるように。
通常のページ/内容は元からこの定義リストになっていることにする。
属性名が無いと通常の内容の定義になる。

ページにI/Fを複数用意 Edit

例えばPukiWikiのMenuBarは表示が違う。

などを変えるには?

→フィルタリングで。
実装は

→&tip;却下。変えない。
表示は1通り。I/Fは1つ。
利用者にとって使いやすくなる。
クラス間の依存関係を増やしてまでやることではない。

出力の統合はどうやるか? Edit

→順位付きで出力。同順位同士では後に追加。
順位には複数に分かれたHTMLヘッダー領域も含まれる。

Wikiは1つのページ Edit

検索ページ Edit

検索フォーム検索兼追加投稿*1という特殊なもの。
検索ワードが検索結果へのリンクになって残るから。

検索ページは…

…を含む。

検索履歴の分量には制限を掛けられるように、検索履歴のみを独立したページに。
プラグイン/自動更新で新しい履歴のみの越す。

ページ/編集ページ/属性を変える一例 Edit

ページ/属性エディターがWikiサイト。
ページ/編集ページ/属性にある「内容」を更新、保存する機能。
継承される領域やページ/裏だけでなく、ページ/属性の数だけWiki上のページのフィールドがあるということに。

コード Edit

Perl Edit

code*:364