なつかしすぎる。学生の頃、登校時に毎週スピリッツを読むのが習慣だった。当時連載されていた「美紅・舞子」を読んだがきっかけで、それ以来この人の作品を追いかけるようになった。
んで、ファンが待ち望んでいたこの話がついに一冊の本にまとまりましたよ。ひさびさに読んだのだけれど、全然話の内容を覚えてない。公園でバトミントンしているところと、登場人物の女の子がコンビニでブルーの歯ブラシ十本まとめ買いして”にたり”とする所だけ覚えていた。どっちも同じ回じゃん。歯ブラシのエピソードはどこが落としどころなのかよく分からず「これが大人の世界か」と思ったのだが今読んでもさっぱり分りません。どんなプレイなんだ?(<違います。)
連載当初のタイトルは「メディケイト」だったよな〜確か、とかくだらない事だけ覚えている。
4月に東京勤務となった。通勤時間が電車+地下鉄で1時間かかる。そこでやることといえば読書くらいしかないわけで、結果この三ヶ月で部屋の中は本で溢れかえるようになった。(半分は漫画+ライトノベル)。いいかげんなんとかしなけりゃ、ということで、物理的なことはとりあえずおいといて(*1)蔵書の目録を作ろうと考えた。
以前から、「私本管理Plus」というソフトが気になっていた。このソフトは、本のISBNを入力すると AMAZON 他からその本のデータを引っ張ってきてデータベース化してくれるというもの。ISBN はもちろん手打ちでもかまわないが、バーコードリーダを使えば本の背表紙のバーコードを読むだけですむ。当ソフトのサイトからリンクをたどって、 AMAZON でバーコードリーダを注文したのが水曜夜。土曜日午前中には到着し、土日は蔵書管理にいそしむことにした。
このバーコードリーダはパソコンからはキーボードとして認識される。バーコードが表す数字を直接入力する代わりに、バーコードリーダがバーコードを数字に変換して入力してくれるわけだ。つまり、上のソフトだけじゃなくどのソフトでも数字を入力するところまでは出来るということ。
そこで、nDiary で読書記録をつける際にも役立つことを期待つつ amazon_shop.rb で使ってみたのだが、なかなかこれがうまくいかなかった。この対策で一日つぶれた。現状の amazon_shop.rb では、バーコードからの数字を ISBN として解釈してくれない。よく本の背表紙をみると、このふたつ(バーコードに書かれている数字と ISBN 〜)では、微妙に数字が違うようだ。例えば手元のマリみて(仮面のアクトレス)だと、ISBN は「 ISBN4-08-600784-3」で、バーコードの数字は「978086007849」とある。
半日調べた結果分かったのは、本に現在ついているバーコードは、ISBN を内包する形で新たに制定された 書籍 JAN コード というものだということ。二段あるうちの上の段が、ISBN を引き継ぐものとなっている。10桁の ISBN に、書籍というカテゴリを表す「978 or 979」を先付けしたものが書籍 JAN コードの一段目となる。但しそれぞれ最後の数字はコード全体の整合性を示すためのチェックサムであり、計算方法が異なるためその数字も異なるものとなる。
つまり、バーコードリーダから読み取られる書籍 JAN コード(の一段目)から ISBN を導き出すには、
という作業が必要になる。それを amazon_shop.rb が行なうように修正したのが以下のソースコード。こちらのサイトを非常に参考にさせてもらった。(つうかほとんどパクリなわけだが)
def asin_phase
+ code_id = @code_id
+ if code_id.length == 13 && code_id =~ /^97[89]/ then
+ isbn_array = code_id[3..-2].split ''
+ chk_sum = 0
+ isbn_array.each_with_index { |char, idx|
+ chk_sum += (10 - idx) * char.to_i
+ }
+ chk_digit = 11 - (chk_sum % 11)
+ chk_digit = 'X' if chk_digit == 10
+ code_id = isbn_array.push(chk_digit).to_s
+ end
+
path = "/exec/obidos/ASIN/#{code_id.delete("-")}/250-0959300-8075455?val=authorized"
url = "www.amazon.co.jp"
path = "http://" + url + path
download(path,proxy)
end
ついでにパッチを当てたファイルも。[ amazon_shop.txt ( DL 後拡張子を .rb に)]
使い方。10桁の ISBN を入力する際に、2段あるバーコードの1段目の数字13桁(書籍 JAN コード)でも認識するようになる。たとえば上で例に挙げたマリ見ての場合
(@ASIN:4086007843)
と
(@ASIN:9784086007849)
のどちらでも使える。ぶっちゃけ、これはもう ASIN でもISBN でもないんだけどな(笑)。
良くも悪くも最近のマリみては「瞳子編」とでもいうべき長編シリーズの一冊としての色合いが強く、この一冊だけで”物語”としての評価は難しい。つまり、早く続きを!
ちなみに今回のデータから上の改造フィルタでバーコードリーダから読み取って作成したもの。便利だ。
木曜の夜インターネットをしていると、いきなりパソコン(*1)の電源が”バチッ”といういやな音とともに切れた。おそるおそる再起動すると、「内臓ハードディスクにはシステム領域がみつかりません」といった内容のメッセージ(英語)が表示されてそれ以上進まない。MBRが壊れたかと思って回復コンソールで立ち上げてみたが、回復すべき Windows が見つからない。
そうだよな〜。「ファイルが壊れているため起動できません」じゃなくて 「システムがない」だもんなぁ。
しばし呆然とする。しかし考えてみると、メールやパスワードの類は外付けの USB-HD と USB メモリに保存するようにしているので取りあえず致命傷にはならない。会社の仕事は家のパソではしてないし。復旧の対策を練るよりも、いちからセットアップしようと決めた。取りあえずその日は XP をインストールして立ち上がるところまで確認。金曜は忙しくてパソコン自体触る暇なし。
んで昨日から設定のしなおし。といっても面倒なので極力標準のままで。MOBILITY RADEON X300 に OMEGA ドライバを入れたくらい。面倒だったのは バックアップしておいた Firefox の拡張が半年以上前のやつだったので全部新しく拾ってこなければならなかったくらいか。おそらく早々にハードディスクを交換しなければならないのだろうけど、しばらくこれで様子を見る。2.5inch のハードディスクってなんでこんなに高いんだろうね。
それと面倒だったのが、nDiary のデータのバックアップがなかったこと。いやあることにはあったのだがこれも半年以上前のやつだった。そもそも Blog と違って手元にデータが残る事もあって nDiary を使っているのでこれは痛い(この半年ろくに日記をつけてなかったけれど)。気づかなかったんだけど、先週 amazon_shop.rb をアップロードしたつもりだったのだが、どうやらしていなかったらしい。
公開している日記の html から 日記データを作りなおす。なんで俺こんなことしてるんだろう(笑)
amazon_shop.rb にもパッチを当てなおして、今度こそアップロードした。ついでに先日の日記に使用方法も書き直した。