I know I believe in nothing but it is my sweet nothing.:2021年06月15日分

2021/06/15(Tue)

[プログラミング] ISBN10/13変換および自動ハイフン化ライブラリ書いたよ

@ここは私のポエム帖

ブルー・オリジンで華々しく宇宙へ飛び立つベゾス兄弟、彼らを追いかけるようにひっそりと所属不明のロケットが打ち上げられたことに気づいたものはいなかった。 切り離されたペイロードから金色のケープを纏ったキラー衛星が漆黒の闇に放たれる、素人目には不格好な望遠鏡にしかみえない高出力自由電子レーザー砲、その架台の下には数えきれないほどのサインが刻まれている。 それはここ数十年で廃業を余儀なくされた世界中の名も無き全書店と小売業の名前であり、宇宙を漂う弔いの墓標であった。

どうですかスピルバーグ監督、こんな復讐劇の映画化権買ってくだち!

スピルバーグ監督「民間人がキラー衛星打ち上げって現実味無いよね、それならブルー・オリジンに同乗する権利ならたった30億で落札なので、しれっとトイザらスあたりのアマゾンに恨み骨髄に達してそうな小売業・卸売業の創業者が身分隠して搭乗して、オリエント急行エンドのミステリ仕立ての方がいいんじゃねえかな」

@ここからはいつものどうでもいい話

ということで(どういうことで)以前ちょろっと触れた ISBNの10/13変換と自動ハイフン化ライブラリCで再実装するってやつ、放置しっぱなしだったのをあるていど形にしてBitBucketに 上げておいた、中身は書き捨てのゴミなので読む必要ないです。

いまのところ変換テーブルはCソースで抱え込んでるので定期的にアップデートしないとアレなのでJSONで外部ファイルにしてcronとかでアップデートできるようにする予定なのだが、オレオレJSON parser for CのAPI/ABIが固まってないのでこれはまたいずれ。

それと今時Cでプログラム書く莫迦もおらんので、せめてPerl XSバインディング(Perlで書く莫迦もいねえよ)くらい用意しておこうと思ったが何もかもがめんどくさい精神状態になってきたのでこちらもまたいずれ。

検索すると同様のISBN10/13変換および自動ハイフン化をしてくれるWEBサービスはあるんだけど、たいてい日本国内つまり978-4あるいは4ではじまるISBNコードしか対応してないんだよね。 そんでPythonだとisbn_hyphenateというライブラリがあるのだけど、前回も書いた通りバグってやがるので使い物にならない。

こんなライブラリで何がうれしいかというと何ひとつ嬉しいことは無いので、やっぱりBitBucketの肥やしにしかならないのである。 たいていの蔵書検索サービスやネット書店はISBN10/13ハイフン有り無しどれでも検索できるしな、唯一ブコフのオンラインがISBN13必須ってくらいか。

せめて出版社コードから出版社名称に変換できる機能とかあると使い道もありそうなんだが、あれ有料データベースしか無えんだよな。