オリジナルkindle漫画本棚作成・公開
オリジナルkindle漫画本棚
kindleで購入した書籍をうまい具合に飾れないか考えて、こんな感じのものを作っていました。
https://note.com/abay_ksg/n/n2a3ffaee916c
今回これにいくつか機能を追加し、だれでも使えるようexeファイル化して公開しました。ソースコードも以下のURLで公開しています。
https://github.com/abay-qkt/kindle-bookshelf
また、実際の動作イメージもWeb上で公開しています。私の本棚の一部を表示しています。exe版より機能が制限されてますが、exe版をダウンロードする前にどんな感じのものかイメージしてもらえればと思います。
導入方法
動作環境としてはWindowsを想定しています。まず、事前にKindle for PCをインストールします。インストール完了後、Kindle for PCを一度起動し、同期が完了するのを待ち、終了します。
次に、以下のURLからzipファイルをダウンロードし、任意の場所で解凍します。kindle-bookshelfフォルダ内のkindle-bookshelf.exeを実行します。
https://github.com/abay-qkt/kindle-bookshelf/releases
最後にGoogle Chromeで以下のURLにアクセスすると本棚が表示されます。
使用方法
漫画がシリーズごとにグリッド上に表示されます。左上の領域をクリックするとオプションメニューが表示されます。各表紙画像をクリックするとkindleのマンガWebリーダーに飛びます。(表紙画像は漫画以外も表示されますが、漫画しかWebリーダーで読むことができません。)
オプションメニューの内容は以下の通りとなります。
Rating Mode
レーティング編集モードです。各シリーズのratingとtagsを編集できます。
tabキーでテキストボックス間を移動できます。編集後にApply Ratingボタンを押したタイミングで編集内容が適用されます。
ratingはSort(並び替え)のキーや、Queryでの条件絞り込みで使用できる要素です。数値の範囲は特に限定していませんが、0.00~5.00の小数にするのがおすすめです。
tagsは、Queryでの条件絞り込みに使用できる要素です。好きな文字列を設定できます。
Show All
シリーズの本すべてを表示するか、シリーズごと1冊だけ表示するかを切り替えることができます。シリアル表示において、シリーズごと1冊だけの表示にした場合、画像のリンク先はそのシリーズのみ表示する本棚となります。
Switch
グリッド表示とシリアル表示を切り替えることができます。
・グリッド表示
グリッド上にシリーズを並べて表示します。各シリーズは横スクロール可能です。横スクロールはトラックパッドやタッチ操作、Shift+ホイールだけでなく、マウスドラッグによっても行うことができます。
なお、シリーズ右端の領域が、そのシリーズのみ表示する本棚へのリンクになっています。
・シリアル表示
ずらっと本をすべて表示するモードです。
なお、この状態だとレーティング編集モードは起動できません。
Columns
グリッド表示時の列数を選択できます。
Image Size
画像サイズを調整できます。
Sort
以下の要素をキーにソートできます。
・rating:レーティング
・series_pron:シリーズ名読み仮名
・author_pron:著者名読み仮名
・purchases:購入したシリーズ巻数
・oldest_publication:最古巻の出版日
・latest_publication:最新巻の出版日
・oldest_purchase:最古巻の購入日
・latest_purchase:最新巻の購入日
・early_purchase:出版から購入の時間(最速巻基準)
・late_purchase:出版から購入の時間(最遅巻基準)
また、降順/昇順を選択できます。
・DESC:降順
・ASC:昇順
Keyword
スペース区切りのOR検索になります。漫画タイトル、著者名、出版社名を検索できます。
Query
表示する漫画の条件を指定します。条件指定できるのはSortでキーとして使われているものとtagsです。
例1:ratingが3より大きく、最新巻の購入日が2018年4月1日以降
rating>3 and latest_purchase>="2018-04-01"
例2:tagsに「s」を含み、購入冊数が10巻
"s" in tags and purchases==10
例3:最新巻の出版日が2014年4月1日~2015年3月31日
"2014-04-01"<=latest_publication and latest_publication<="2021-03-31"