蔵書管理アプリ・その3
どなたか向けとしてではなく、『今書き残しておかないと忘れてしまう』ので書いているだけですので、記事として読もうと思ったら不備だらけだと思います。
と余計な前置きを全面に押し出しつつ、iOSで使っている蔵書管理アプリの備忘録を。以前の話はこちら↓
結局のところ、2021年11月時点でもSetを使い続けております。
それ以外の選択肢が無いんですよ、一度このアプリの快適さを知ってしまうと。別にどなたかに感想を読んで欲しいわけでもなく、蔵書数でマウントを取りたいわけでもないので。最新版が2年前という辺りがそこはかとなく不安ですが、今のところは使い続けられています。
が。ここのところ「もう無理かなこれ」という場面に遭遇しがちです。
その1 バックアップファイルからなかなか復元できない
いきなり致命傷を負わせますが、3000冊も登録しているとバックアップは出来ても復元がかなり難しい状況です。作業中にアプリが落ちまくります。でもたまーに成功するので、半日くらい無駄にしてもいいなと思っている方には問題ございません。って今ようやく復元が成功しました。よかった。
その2 図書データの参照先が残念
バーコードを読み込んだ際にタイトルや作者名を拾ってきてくれて便利なのですが、拾いに行っている先(多分○天ブックス)のデータがアレになってしまったようで、読み仮名の部分にタイトルや作者名がそのまま入ってしまっていることが多くなりました。あと、以前からですけど、読み仮名の表記が人によってバラバラで汚いとか。「ヲタクに恋は難しい」の読み仮名を「オタクニコイハムズカシイ」にしてくれたり、「オタクニ コイハ ムズカシイ」と謎のスペースが入っていたり。
これ、何が起きるかというと蔵書を一覧で表示するときに読み仮名でソートをかけてくれるので、最新刊だけ末尾の方に表示されて不便というイライラポイントが貯まります。
問題が起きるなら解決すればいいじゃない
はい。
その1 復元出来ない問題の解決方法
冊数が多すぎてアプリが落ちてるようなので、バックアップファイルを加工してしまえば良いだけです。CSV形式のファイルですが、テキストエディタで開いて300冊くらいづつにして流し込めば少しは成功率が上がります。
その2 データが残念な問題の解決方法
こちらもバックアップファイルを加工してあげれば良いだけです。文字コードはUTF-8、改行コードはLF、各項目は""(ダブルクォート)で括り,で区切ってあれば読み込んでくれます。
まずは巻数表示のばらつきを タイトル名 巻数 で統一。
正規表現を使って置換が出来るテキストエディタで開き、下記の文字列を使って置換しまくればある程度はきれいになります。
いらない情報を削除
(全1巻)
(完)
<完>
正規表現でまとめて整形
(\d)(\)|))\n $1\n 行末の終わり括弧を消す
(\s)(\(|()(\d) $1$3 前にスペース・後ろに数字付きの始め括弧を消す
(\S)(\(|()(\d) $1 $3 前にスペース以外・後ろに数字付きの始め括弧をスペースに変換
第(\d)巻$ $1 第x巻を数字のみに
(\d)巻$ $1 x巻を数字のみに
(\S\w)([0-9])$ $1 $2 タイトルと巻数がつながっていたらスペースを追加
\s\n \n 行末のスペースを消す
※上記の置換をすり抜けたり残念な結果を見せてくれる方々
花部長(52)と心乃ちゃん(17) ←巻数じゃない
イマドキ☆エジプト神(volume 1)←特殊な巻数表示
JA(vol.1) ←〃
俺だけレベルアップな件 01 (1) ←〃
おねチャ。 ( 1) ←左側は全角、右側は半角
最後の医者は桜を見上げて君を想う 第3巻 ←漢字表記かよ
(上)(下)(全1巻) ←君たちもか
JC no Life! #1 ←アメリカかよ
できるかなV3 ← 泣かされた
次。タイトルの読み仮名は
・スペースなし
・記号なし
・巻数なし
にしたいので、下記の文字列で浄化。
[。|.|、|,|!|!| |?|?|/|・]
\(\d+\)
(\d+)
よし、もう忘れてやる
正規表現とかマークダウンとか、覚え続けてられない頭になってしまったので明日起きたときにはすっかり忘れてしまっていることでしょう。おやすみなさい。
なお
バックアップを作った時には3000冊登録してあったはずですが、今みたら2999冊になっていました。なーんか消えるんですよね、たまーに。