SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

2005-02-09(Wed) 相手はGoogle、namazuの饗宴

  はっ!! あー、よかった。夢かよ……。先日に引き続いて、再び愛用のナビホークがエラい状態で修理から戻ってくる夢を見た。前回は文字盤がノッペリとグレーになってしまっていたが、今回は計算尺がツルンとチタンカラーになっていた。あー、早く戻ってこないものか。何度もこんな夢を見るなんて、自分が思う以上にあの腕時計に執着しているのだろうか。そのうち腕時計の「妄人」になってしまったらどうしよう。

  画像の説明

  以前に何度か「冷蔵庫」にされてしまったコトがあったしなぁ。

  画像の説明

  仕事から帰ってうどんを食う。<かきかけ>

  話は替わって、問題はGoogleなのである。このSVX日記も1年近くになろうとしており、自分でもあきれるほどの駄文を毎日のように大量に排出しているが、内容が以前の話題に関連するときは過去の日記へのリンクを積極的に貼ろうと心がけている。しかしながら、もう自分でも管理しきれないほどの量に達しており、リンクするべきポイントを見つけるのがイヤになるほど面倒なのである。

  このSVX日記を開設した当初はtdiaryをそのまま利用していたが、title要素に日記のタイトルを入れたり、サイドバーを付加したり、Google検索のフォームを入れたり、全日記一覧機能をつけたりして徐々に機能増強を図ってきた。というのも、すべてリンクを貼るのをラクにしたいタメなのである。

  でもってGoogleのサイト内検索だ。これが引っかけられないのなんの。あの神と崇められるGoogle様をしてなんだこのテイタラクは。明らかに書いたはずの単語を入れているのに出てこない。でもって、出てきたと思ったら「本日のリンク元」に引っかかっていたりする(コレはGoogleのせいではないが)。これじゃ役に立たないのである。

  仕方ないのでココにきてさらに機能追加である。独自に検索機能を立てるのだ。オープンソースの検索エンジンといえば「namazu」である。tdiaryにnamazuを組み込む方法は既に確立されているので簡単である。オイラの場合、サーバがdebianなのでインストールもラクだ。@everybody apt-get! apt-get! なのである。

  まずはnamazuのインストール。人によってはkakashiやchasenのインストールも必要だろう。オイラは漢字かな混じり文をfestivalに読み上げさせたり、カタカナしか出ないディスプレイに出力させたりしたコトがあったのでkakashiもchasenもインストール済みである。

apt-get install namazu2
apt-get install namazu2-index-tools

  間髪いれず、tdiary環境へnamazuのcgiと設定ファイルをコピー。

cp /usr/lib/cgi-bin/namazu.cgi /home/svx/public_html/diary/
cp /etc/namazu/namazurc /home/svx/public_html/diary/.namazurc

  設定ファイルをチョコチョコとイジる。

Index		/home/svx/diary/index
Template	/home/svx/diary/index
Replace		/home/svx/diary/cache/html/(\d\d\d\d)/(\d\d)(\d\d).html http://www.itline.jp/~svx/diary/?date=\1\2\3
Lang		ja
EmphasisTags	"<strong class=\"keyword\">"   "</strong>"
ContentType	"text/html;charset=EUC-JP;"

  tdiaryは日記のhtmlをcgiで動的に生成するので、静的なhtmlファイルが存在しない。それではnamazuが検索インデックスを作れないので、tdiaryに標準添付のsqueeze.rbというプラグインを使って、日記をhtml化する。

./squeeze.rb -p /usr/share/tdiary -c /home/svx/public_html/diary -x .html /home/svx/diary/cache/html 

  html化できたら、namazuにインデックスを生成させる。

mknmz -c /home/svx/diary/cache/html --output-dir=/home/svx/diary/index

  tdiaryのサイドバーにnamazuの検索窓を追加。

<CENTER><FORM method='GET' action='http://www.itline.jp/~svx/diary/namazu.cgi'>
サイト内をnamazuで<BR>
	<INPUT type='text' name='query' size='16' maxlength='255'>
	<INPUT type='submit' value='検索'>
</FORM>
</CENTER>

  tdiaryの.htaccessには.rbしかCGIとして定義されていないので、イカの行を加え、namazu.cgiがCGIとして動くように定義を追加する。

AddHandler cgi-script .cgi

  最後に、これから毎晩namazuにインデックスを更新させる設定をして、完了である。

5 3 * * * mknmz -c /home/svx/diary/cache/html --output-dir=/home/svx/diary/index

  これでヨソのGoogle様を利用せんでも、自前でバリバリと検索できるnamazu様で日記の利便性もさらに向上じゃ!! ……と、思ったのだが……うむ、まだチューニングの余地はあろうが、あまり結果はカンバしくないようだ。Google様と併用すればなんとか、というレベル。

  むー、この日記、文章中に妙なカタカナ表記が多いからだろうか。漢字の単語が並ぶのがキライなのと、漢字は見た目の密度が濃いのがイヤなのと、なによりフォントを変更せずにライトに強調できるのがスキでワザとやっているのが……ウラメっとるのかな。ま、なんにせよsqueeze.rbがhtmlにまでリンク元を生成してしまうのは、なんとかして回避させるとしよう。今晩はここまでじゃ。