Kobo Sage購入記念:CFWのコレクション作成スクリプトを修正
Kobo Sageのダメなところはわかった上で購入。
スタイラスペンのためにチップを変更、そのせいでバッテリー消費が激しい。ところがバッテリー容量が小さい(同じスタイラス対応のKobo Elipsaの半分しかない)。
おそらくSageのバッテリー不足は織り込みずみだったはず。だからバッテリー付きのパワーカバーを別売している。
だが、そのカバーとスタイラスペンを買うと、Elipsa並みの値段になるというのは、なんともばからしい。Elipsaにはカバーとスタイラスペンが付属しているのだから。
個人的にはスタイラス対応などせず、読書専用端末のままでよかった。
----------------------
8インチの大きさでは家でしか使わないだろうということで、バッテリーには目をつぶって購入。
ディスプレイには満足。それに画面が大きいとやはり見やすい。
でも、6インチの端末しか使っていなかったので、やはり重い。片手で長時間はつらい重さだ。そのうち慣れるはず、と思いたい。
----------------------
ともあれ、購入記念にCFWのコレクション作成で気になっていた点を修正することに。
CFWのコレクション作成はずっとランチャー経由でやっていたが、もうランチャーは使わないし、更新もたぶんしない。どうせSageでは動かない。
NickelMenuで直接スクリプトを呼び出すことにした。
----------------------
で、気になっていたのは著者名によるコレクションの作成。
CFWのスクリプトで「著者名」でコレクションを作るとこうなる。
◯CFWの「著者名」でコレクション作成
ここにあるのは翻訳書で、著者名の他に訳者名もいっしょについてくる。同じ著者でも訳者が違えば、別のコレクションに分かれてしまう。なので、
→ 一つの名前で一つのコレクションにしたい。
また、
外国人名は姓と名の間が「・」だったり、「スペース」だったりして、その違いで別のコレクションができてしまう。
日本人の場合も同じで、姓と名の間が「全角スペース」、「半角スペース」、「スペースなし」で別のコレクションになる。
また、全角アルファベットか半角アルファベットかによっても、コレクションが分かれる(上の「フィリップ・K・ディック」の「K」がその例)。
→ 著者名の表記を統一して、一つのコレクションにまとめたい。
参考までに、koboの「ライブラリ」画面に最初からある「著者」タブではどうなっているかというと
◯「ライブラリ」画面の「著者」タブ
単一名で一つのコレクションになっているが、「スペース」や「・」などの表記の揺れで、別のコレクションになっているのは同じ。
で、著者を一人ずつに分け、表記を統一するスクリプトをごそごそ書いて、CFWに追加した結果がこれ。
◯CFW改良版「著者名」コレクション
外国人名の区切りは「・」で著者名を統一。
日本人名は「スペース」を削除して著者名を統一。
これで何とかコレクションが一つにまとまった。
この画像から消えている訳者は訳者で、一人ずつのコレクションになる。
----------------------
ただ・・・・、
最初はkobo端末内でスクリプトを動かすつもりだったが、koboの内部システムでは日本語を適切に扱えないことが判明。
正規表現で日本語、全角文字が適切にマッチしないし、半角文字を全角文字に置換できない・・・。
仕方がないので、PCでCFWのスクリプトを実行することにした。
その結果が上の画像。
いちいちPCにつなぐのは面倒だが、
・PCのほうが処理速度が速い
・ついでにデータベースをバックアップできる
という利点があるので、まあ考え方次第。
----------------------
CFWはkoboの内部システムであるlinux用のスクリプト。WindowsやMacでは動かない。
だから、公開しても・・・。
最近のWindowsは、Windows Subsystem for Linux(WSL)とやらでlinux環境が提供されているので、やってやれないことはないのかもしれない。
ただし、複数の著者が入っているコレクションを一人ひとりのコレクションに分けるところまでは、NickelMenuなどからkobo端末内で実行可能。
CFW追加スクリプトではkoboにインストールされていないawkを使っているものの、試しにkoxtoolchainでgawkをコンパイル、koboにインストールしてみたところ、無事動いた。(koxtoolchainは素敵すぎる)
希望があれば、あわせてアップするけれども、どうなんだろうなあ・・・。