| 1 | estraier-search README |
|---|
| 2 | =================== |
|---|
| 3 | |
|---|
| 4 | Hyper Estraier <http://hyperestraier.sourceforge.net/> を用いた tDiary |
|---|
| 5 | 検索環境です。 |
|---|
| 6 | |
|---|
| 7 | |
|---|
| 8 | 特徴 |
|---|
| 9 | ---------- |
|---|
| 10 | |
|---|
| 11 | 日記の更新と連動して自動的にインデックスを更新するので、いつでも最新の |
|---|
| 12 | 情報で検索することができます。日記を HTML 化した後に必要な部分だけを取 |
|---|
| 13 | り出してインデックスを作成するので、ヘッダやフッタなどによる検索ノイズ |
|---|
| 14 | がなく、また、プラグインの出力が検索対象になるという特徴があります。 |
|---|
| 15 | |
|---|
| 16 | |
|---|
| 17 | 必要なもの |
|---|
| 18 | ---------- |
|---|
| 19 | |
|---|
| 20 | * tDiary 1.5 以降 |
|---|
| 21 | * Ruby 1.8.2 以降 |
|---|
| 22 | * Hyper Estraier 1.4 以降 |
|---|
| 23 | (ピュアRubyインターフェイス estraierpure.rb も必要です) |
|---|
| 24 | |
|---|
| 25 | |
|---|
| 26 | セットアップ |
|---|
| 27 | ------------ |
|---|
| 28 | |
|---|
| 29 | 1. estraier-register.rb を tDiary の プラグインディレクトリにコピーします。 |
|---|
| 30 | |
|---|
| 31 | 2. estraier-search.rb を tDiary の index.rb があるディレクトリにコピー |
|---|
| 32 | します。必要なら index.rb と同じようにシンボリックリンクを張ったり |
|---|
| 33 | 名前を変えたりしてください。 |
|---|
| 34 | |
|---|
| 35 | 3. CGI として実行可能にします。 |
|---|
| 36 | |
|---|
| 37 | $ chmod a+x estraier-search.rb |
|---|
| 38 | |
|---|
| 39 | 4. 必要なら #! のパスを変更します。 |
|---|
| 40 | |
|---|
| 41 | 5. estraier.rhtml と estraier.rxml と i.estraier.rhtml を tDiary の |
|---|
| 42 | skel/ ディレクトリにコピーします。 |
|---|
| 43 | |
|---|
| 44 | 6. Hyper Estraier のノードマスタをセットアップします。その際、設定ファ |
|---|
| 45 | イル(ノードマスタのrootdirの下の_conf)に、以下を追加してください。 |
|---|
| 46 | |
|---|
| 47 | attrindex: @uri{{!}}str |
|---|
| 48 | |
|---|
| 49 | この設定がないと、登録エントリが増えた際に、著しくパフォーマンスが |
|---|
| 50 | 低下します。 |
|---|
| 51 | |
|---|
| 52 | 7. ノードマスタから、tDiary用のノードサーバを作成し、その接続情報を |
|---|
| 53 | tdiary.conf に記述します。デフォルトでは、以下のように記述したのと |
|---|
| 54 | 同じ設定です。 |
|---|
| 55 | |
|---|
| 56 | @options["estraier.host"] = "localhost" |
|---|
| 57 | @options["estraier.port"] = 1978 |
|---|
| 58 | @options["estraier.path"] = "/node/" |
|---|
| 59 | @options["estraier.node"] = "tdiary" |
|---|
| 60 | @options["estraier.name"] = "admin" |
|---|
| 61 | @options["estraier.password"] = "admin" |
|---|
| 62 | |
|---|
| 63 | 8. estraier-register.rb プラグインを有効にします。(tDiary の plugin/ |
|---|
| 64 | ディレクトリにコピーするか、プラグイン選択のディレクトリにコピーし |
|---|
| 65 | てブラウザから有効に設定します。言語リソースファイルの |
|---|
| 66 | en/estraier-register.rb と ja/estraier-register.rb も、プラグインディ |
|---|
| 67 | レクトリの en/ 以下およびja/ 以下にコピーしてください。) |
|---|
| 68 | |
|---|
| 69 | 9. 既存の日記コンテンツに対して検索インデックスを作成します。tDiary の |
|---|
| 70 | 設定画面から「Estraier検索」を選び、「Estraier検索のインデックスを |
|---|
| 71 | 再構築する場合は、チェックボックスをチェックしてOKを押してください」 |
|---|
| 72 | というメッセージに従ってチェックしてOKを押すと、 |
|---|
| 73 | |
|---|
| 74 | インデックスの作成は、tDiary の CGI の実行権限で以下のように実行する |
|---|
| 75 | ことでも可能です。 |
|---|
| 76 | |
|---|
| 77 | ruby estraier-register.rb [-p tdiary.rbのあるディレクトリ] [-c tdiary.confのあるディレクトリ] |
|---|
| 78 | |
|---|
| 79 | 10. 自分の tDiary の好きな場所 (例えばヘッダ) に以下のようなフォームを加 |
|---|
| 80 | えてください。 |
|---|
| 81 | |
|---|
| 82 | <form method="get" action="estraier-search.rb" class="search"> |
|---|
| 83 | <input type="text" name="query" size="20" value=""> |
|---|
| 84 | <input type="submit" value="Search"> |
|---|
| 85 | </form> |
|---|
| 86 | |
|---|
| 87 | search-form.rb プラグインを有効にしている場合は、以下のように書くこ |
|---|
| 88 | ともできます。 |
|---|
| 89 | |
|---|
| 90 | <%= search_form("estraier-search.rb", "query") %> |
|---|
| 91 | |
|---|
| 92 | 以上です。 |
|---|
| 93 | |
|---|
| 94 | |
|---|
| 95 | 検索のしかた |
|---|
| 96 | ------------ |
|---|
| 97 | |
|---|
| 98 | estraier-search の検索対象は、日記本文、ツッコミ、TrackBack です。 |
|---|
| 99 | |
|---|
| 100 | 検索方法については、 |
|---|
| 101 | http://hyperestraier.sourceforge.net/uguide-ja.html#searchcond をご覧 |
|---|
| 102 | ください。検索条件の書式を指定していない場合は、「簡便書式」で検索を行 |
|---|
| 103 | います。 |
|---|
| 104 | |
|---|
| 105 | |
|---|
| 106 | 連絡先 |
|---|
| 107 | ------ |
|---|
| 108 | |
|---|
| 109 | かずひこ <kazuhiko@fdiary.net> |
|---|
| 110 | http://www.fdiary.net/ |
|---|
| 111 | |
|---|
| 112 | バグ報告は以下のどこかにお願いします。 |
|---|
| 113 | * tdiary-devel ML |
|---|
| 114 | * 直接メール |
|---|