Send to your Kindle *方法 [#laab3736] 結果一覧部分は単一の機能出力。 **一覧部分のフォーマット [#o769e00c] 一覧部分のフォーマットは機能の設定。機能/一覧。 WikiEngineのものではない。 どう展開するかは各機能のコード次第。 でも機能からWikiEngineのページ/HTML変換は利用できるので、機能が対応していればこのフォーマットにも普通に記法を埋め込める。 **%%第1キーでソート順(ソートキー)を決める%% [#zdc3ed4f] **検索結果はランク分け [#s910542e] 順位だけでなくその間の開きが分かるように。 色で。 %%適合率100%〜70%などごとに。%% 「外せないキーワード」に100%合ったもの…といった区分も。ソート順でこの区分だけを集められるように。 適合率を元にしたカラーバーを1件ごとのフォーマットに入れて実現。 色は0%〜100%までなだらかに変化するグラデーション。結果の中に開きがあればカラーバーにも段差ができることになる。 **出力時、検索/フォーマットは処理する側 [#d6482e18] フォーマットが持つコードを使用するので。ただのテンプレートではない。 ページセットを与えられるとそれをHTML化。 必要な情報のうち、グローバルなデータはフォーマット自身が集める。 それ以外は? RIGHT:[[:t/検索]] [[:t/方法]] 一覧化のページ/要素で実現するので、もういい。 検索結果をページセット化、それを一覧化するページ/要素に渡す。 ---- 検索機能の一部。 表示用のデータを生成する。 -検索式に適合した部分の整形 表示されるデータの生成。 -%%検索/ソートに渡すデータを生成する%% %%ソートキーの生成。%% %%検索式と対象の適合度合いは検索/スコアリングで。それ以外を生成。%% フォーマットは章ごとに適用したい。つまりページごとに適用できればいい? 検索/フォーマットは章などとは無関係にしなければならない?複数行と適合できるように。 実体はマークアップされたテキスト。つまりテンプレート。 ---- #contents **[[索引]]を作るには? [#q2443cb7] 索引はBacklinkを並べたもの。 Backlink(1) Backlink(1)を含むページ/名前(1) Backlink(1)を含むページ/名前(2) … Backlink(2) Backlink(2)を含むページ/名前(1) Backlink(2)を含むページ/名前(2) … (または Backlinkでリンクされてるページ/名前 > Backlinkを含むページ/名前) ------------------------------------------------ どういうフォーマットルールにするか? +Backlinkを探す。 検索/フィルタリング 全ページのBacklinkが集まる。それらが存在したページ/名前と結びつけて。 +{ページ/名前→Backlink)の集合を{Backlink→ページ/名前}の集合に変換する。 変換が検索/フォーマットの機能?検索/ソートの機能? Backlink→ページ/名前の表が得られる。 +ページ化 要テンプレート? **%%検索/ソート%% [#a4b428ae] %%検索時の順位付け。%% %%何が1位に来るかを定義する。%% %%ソートは検索/クエリーの()内をソートキーにする機能。%% %%「size:([0-9]+)」なら「size:10000bytes」などに適合。「10000」部分でソート。%% %%正規表現と後方参照でソートキーを作るようなもの。%% %%これでページに属性を付けられる。地名とか商品分類とか。利用者に必要十分な範囲の。%% %%説明は「枠や両端を検索してその中身で並べ替えをする機能」%% %%()が複数ある場合は番号順に第1ソートキー、第2…。%% %%(0:[0-9]+)月(1:[0-9]+)日(2:[.*?]) 『(3:.*?)』%% %%なら月>日>曜日>タイトルでソート。%% %%[0-9]+月(8:[0-9]+)日(3:[.*?]) 『.*?』%% %%なら曜日>日付でソート。曜日ごとの表示に。%% %%(10:[0-9]+)月[0-9]+日(2192548:[.*?]) 『(91984388:.*?)』%% %%なら月>曜日>タイトル。月ごとにまとめ、その中で曜日ごとに。同月、同曜日の中でタイトル順にソート。%% **検索、一覧化 [#n6026ad0] 表の体裁を作るだけの機能以外に、 検索/ソートの機能をこっちに移す。 %%検索は適合スコア順にページを並べるもの。表はページから特定部分を取り出して、それを並べるもの。%% 検索結果にページ内容も含める。 特定のページセットをデータソースにして、各ページの特定部分を一覧化。 ---------- 任意のページやディレクトリを任意数集めて、その中から列(ゆるい型付けした値)を取り出し。 列に取り込むのは()にあてはまった部分。 ()にはソートキーかどうかの指定ができるように。 列の中にページ名をリンクにして入れられるように。 **プレビュー [#ve7524d0] 検索語ごとに…前後プレビュー。 あるいは箇条書きで「(語)は(プレビュー)」の羅列を見られるように。 **%%ソートと連携%% [#f28a21c4] %%検索/フォーマットにはソート用のデータ生成も含まれる。%% -%%ソートキー%% **機能呼び出し [#b8fd1762] 出力形式を変える機能を呼び出す。 -機能/テキスト出力 -機能/RSS …など。 **完全一致を強調表示 [#v23f6c96] 検索語や検索タグに一致する項目は強調表示。 *方法 [#laab3736] 結果一覧部分は単一の機能出力。 **一覧部分のフォーマット [#o769e00c] 一覧部分のフォーマットは機能の設定。機能/一覧。 WikiEngineのものではない。 どう展開するかは各機能のコード次第。 でも機能からWikiEngineのページ/HTML変換は利用できるので、機能が対応していればこのフォーマットにも普通に記法を埋め込める。 **%%第1キーでソート順(ソートキー)を決める%% [#zdc3ed4f] **検索結果はランク分け [#s910542e] 順位だけでなくその間の開きが分かるように。 色で。 %%適合率100%〜70%などごとに。%% 「外せないキーワード」に100%合ったもの…といった区分も。ソート順でこの区分だけを集められるように。 適合率を元にしたカラーバーを1件ごとのフォーマットに入れて実現。 色は0%〜100%までなだらかに変化するグラデーション。結果の中に開きがあればカラーバーにも段差ができることになる。 **出力時、検索/フォーマットは処理する側 [#d6482e18] フォーマットが持つコードを使用するので。ただのテンプレートではない。 ページセットを与えられるとそれをHTML化。 必要な情報のうち、グローバルなデータはフォーマット自身が集める。 それ以外は?