Home

日記
tDiaryのアンカーリンク時にドキュメントタイトルを表示する その4 (18:23)Edit

決定版は、こんな感じかなー。

23,28d22
<
<         if (highlightElem.tagName == 'H3') {
<           var diary_title = "#{@conf.html_title.gsub(/"/, '\\"')} (#{@date.strftime('%Y-%m-%d')})";
<           var section_title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '').replace(/^[^ ]* /, '');
<           document.title = section_title + ' - ' + diary_title;
<         }

結局「"」のエスケープについては、

print '"'.gsub(/"/, '\\"')

で「\"」にエスケープできたけど、なんで

print '"'.tr('"', '\\"')

の結果が「"」になって、

print '"'.tr('"', '\\\\"')

の結果が「\」になるのかよくわからんかった。trとgsubでは何が違うんだ?

ああ!

trは文字列置換じゃなくて、文字単位での置換なのか!

Published At2005-04-21 00:00Updated At2005-04-21 00:00

日記
HTML_QuickFormを使う場合 (22:12)Edit

<label><input type="checkbox" name="foo[]" value="abc">abc</label>
<label><input type="checkbox" name="foo[]" value="def">def</label>
<label><input type="checkbox" name="foo[]" value="ghi">ghi</label>

みたいな使い方は想定されていないのかな?

Published At2005-04-21 00:00Updated At2005-04-21 00:00

日記
Re:「Alpha Geek Tracker」 (12:34)Edit

他サービスのブックマークも取り込めるようにしてくれたらいいのになー

その手の機能はMMのお気に入りリストを作るときに考えたし、作るのも簡単だと思うんだけど、権利関連の問題がでてきそうなんで、サービスとして公開するのはちょっと難しいだろうなーと思ってやめた。

新着とか人気URLとかあたりから持ってくるならば、それほど問題にならないと思うけど、ある特定の人のデータを勝手に他のサービスで取り込んで、加工して(他の人のデータと混ぜて)使うのは、一般的な公開サービスの形式でやるのはちょっとリスキー。

URLのみを流用するならまだ大丈夫かもしれないけど、流用データにコメント部分が含まれると、データの著作物性が高まって、流用することにクレームをつける人が出てくると思う。Planet〜系とかでクレームが付いたりしている事例を見ると、その手の機能を誰でも登録できる一般サービス化したら運営管理が面倒くさそう。

というわけで、MMでその手の機能を載せないのは、機能的には便利そうだけど運営管理コストがかかりそうなんでそのリスクを取れないから、だったりする。Alpha Geek Trackerみたいに個人的に(誰も登録できるわけではない形で)やる分には大丈夫だと思うけど。

Published At2005-04-23 00:00Updated At2005-04-23 00:00

日記
tDiaryのアンカーリンク時にドキュメントタイトルを表示する その5 (04:14)Edit

決定版とか言っておきながら、まだいじっている。セクションアンカーの文字列長を、ちゃんと@confから持ってくるようにした。これで曖昧な部分がなくなったんじゃないでしょうか。

23,29d22
<
<         if (highlightElem.tagName == 'H3') {
<           var diary_title = "#{@conf.html_title.gsub(/"/, '\\"')} (#{@date.strftime('%Y-%m-%d')})";
<           var sanchor_length = #{@conf.section_anchor.gsub(/<[^>]+?>/, '').length};
<           var section_title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '').substr(sanchor_length);
<           document.title = section_title + ' - ' + diary_title;
<         }

Published At2005-04-25 00:00Updated At2005-04-25 00:00

日記
dotprojectを試してみようと思ったけど (15:09)Edit

最近あちらこちらで名前を見かけたdotprojectを試しに入れてみたんだけど、認証周りがおかしいなー。アカウント情報をいじると、ログインできなくなる。追いかけていったところ、GACLとかいう認証ライブラリ(?)が権限チェックではねているらしいけど、外部ライブラリとの連携まで追いかける気になれないしなー。というか、GACLって初めて知ったな。これって使えるのかな?

というかそもそも、インストールの段階からいろいろうまく行かないところが多かった。DB初期化でインストーラはsuccessといってるのに、いくつかのテーブル(projectsとか)がうまく作られなくって、何回か全削除からやり直したりとか。まだ安定してないのかなー。これちゃんと使っている人いるの?

Published At2005-04-26 00:00Updated At2005-04-26 00:00

日記
重複するタグ表示API (20:02)Edit

タグの日本語揺らぎをロジックで吸収する」にtrackbackをもらったんだけど、いまいちそっち方面に脳みそが働かないんで、具体的な行動に出られないでいた。

で、いつまで経っても脳みそが働かないっぽいんで、ひとまず誰か代わりに脳みそを働かせてくれる人がいないかなー、ということで、単純なAPIを用意してみた。

http://1470.net/api/similar_genres.php?genre=[MMのジャンル]

を叩くと、EUC-JPでそのタグと重複して使われているジャンルを、

[ジャンル文字列]\t[重複数]

というTSV形式(EUC-JP)で出力する。たとえば「Ajaxと重複するタグ」とか。思いつく応用例としては、「Ajaxで上記を読み込んで、類似タグへのナビゲートを行ったり」とかかなー。何かいい使い道が思いつく人、使ってみてください。

Published At2005-04-26 00:00Updated At2005-04-26 00:00