« 独自理論家 | Main | 集中線 »

hns on Mac

天気: 雨
観測場所: 相模原
睡眠時間: 0
BGM: ダイガード

hnsをMacにインストールする事に一応成功。と言っても、なにしろshもmakeもないので、プロバイダのユーザーディレクトリにインストールしたものを、ディレクトリ構造ごとftpでローカルのMacにもって来た上、config.phをMac上のディレクトリ構成に会うよう編集、さらに、MacPerlがパス区切りに「/」ではなく「:」を使っているので、あちこち修正。で、おおむね動くようになったんだけど、どうにもカテゴリのアイコン表示がうまくいかない。これがまたMacのパス区切りに由来する問題だというのははっきりしている。
hnfは、偉い事にアイコンイメージ等の画像を表示する際、自動的に縦横のドット数を取得して、IMGタグのWIDTH,HEIGHTを生成する。このルーチンはURI型式でファイルを得る事ができないため、ローカルのパスを指定する必要がある。この部分のために、画像の入ったディレクトリを「:cat」という具合に、HFSの部分パス表記で与えてやる。これは機械的にソースのパス記号を書き換えると言う作業の一環で対処可能である。ところが、hnsがIMGタグのSRCパラメータを生成する際、画像ファイルの縦横比を決定する時に使った部分パス名をそのまま使ってしまうのだ。従って、このままではタグは
<IMG SRC=":cat:foo.gif"...>という形になる。これは当然URIとしては通らない。対処法としては、タグを生成する所で、

$src =~ s/^:/.\//;
$src =~ s/:/\//g;

などとしてやればいいわけだが、ちょっとソースの解析も疲れたのでひと休み。こんな特殊な事情を繁栄させてもあまりいいことない気がするし。カテゴリアイコン出なくても、ローカルでの日記のチェックにはあまり差し障りないし。なにより僕Perlってよくわかんないのだ。しかし、こういう時って、Macのパス表記が憎くなるね。なにしろMacでも当然ながらURI表記はあくまで「/」なのだ。Macのパス表記が「:」であることには利点もあって、ShiftJISを使っているにも関わらず、外国製のソフトを使っても日本語の2バイト目がパス区切りと判断されてやっかいなことになったりしないのだが、もはやMacのファイルシステムも内部ではUnicode化されているので、あまり関係ない。いっそMacPerlも「/」区切りにしちゃってくれないものか。確かにMacではファイル名として「/」が使える事になっているので、場合によってはひどい事になるかも知れないが、それを言うならWWWブラウザでローカルボリュームを表示する場合も同じ事ではないかなあ。全体にMacPerlはうまく移植されていて、パス表記を書き変えればたいがいのスクリプトは動いてしまう。それだけに惜しい。


|

« 独自理論家 | Main | 集中線 »

「パソコン・インターネット」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/10254/53207

Listed below are links to weblogs that reference hns on Mac:

« 独自理論家 | Main | 集中線 »