MacOSX で電子書籍の読書環境を作る
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

MacOSX で電子書籍の読書環境を作る

2014-08-11 21:42

    OSX 上に電子書籍の読書環境を作りました

    MacBook Air の13inch が壊れたため MacBook Air 11inch に買い替え、電子書籍の読書環境を一新しました。ここで言う電子書籍というのは、紙書籍を画像化したもので、いわゆる自炊ファイルとも呼ばれているものです。

    前提です

    近代デジタルライブラリーから近デジダウンローダーを使って電子書籍ファイルをダウンロードしています。

    ファイルの構成は次のようになります。



    metadata には URL が書かれており original は元の画像データ、trim には余白を切った画像データが入っています。だから読む場合 trim を開く必要があります。フォルダ名は基本的に『凝香園 - 南郷三郎 / 冒険快男児』というように作者+作品名となります。

    現状です

    ダウンロードした電子書籍の数は、ダブってるものも含めると2000程度です。ここまで数が増えると、カテゴリ別で整理していても破綻し、かなり雑なことになっています。




    開きたいファイルを探すだけでも大変なんだけど、ファイルを開くのも実に面倒で、本を読むまでに次のような手順を踏む必要があります。

    1.まず読みたい本を目で探します。
    2.探せない場合は検索で
    3.trim フォルダをアプリケーションにドラッグ



    4.ようやく開きます

    複数の電子本を開く場合は、上記の手順を何度か繰り返す必要があります。これは非常にダルい状況であり、こんなことを続けているとダルすぎて頭がおかしくなってしまいます。

    というわけで来るべき電子書籍数10000冊時代を見据え、読書環境を作っていきます。

    事前準備です

    まずはダブっている書籍を削除していきます。

    減らしたところで誤差なんだけど、気持悪いので頑張って削除する。

    ツールはなに使ってもいいけど俺は fdupes っていうのを使って、同じファイルをリストアップしました。容量は680Gで fdupes の開始から終了まで6時間くらいかかったから、他の方法を使ってもよいかもしれません。

    リストアップされた重複ファイルから、ファイルを削除をしていく。 grep やら occur やら使ったりシェルスクリプトで頑張る。やり方はググったら出てきます。

    これで 70G くらいファイルを削除することができました。

    整理です

    次にフォルダの整理です。

    はっきりいって1000冊を超えると、ジャンル別に整理するのは無理です。几帳面な人ならば大丈夫かもしれないけど、実は明治大正のフィクションの場合、まだまだジャンル自体が曖昧です。ですから一所懸命にジャンル分けしても、あんまり機能しないみたいな事情もあります。

    そんなわけで色々と考えまして、書籍データをゲットした年毎にフォルダを分けることにしました。

    年毎にフォルダ分けるするメリットは3点あります。

    - 考えなくても分けることが出来る
    - 一年間に読む数はだいたい同じ
    - ある期間に興味を持つものはだいたい同じ

    まず一年分のファイルを年度のフォルダに入れていくだけだから、考えて整理する必要がありません。

    次に一年間に読む数が、だいたい同じ量で収まるというメリットがあります。参考までに俺が一年間にダウンロードした書籍ファイルの数を掲載しておきますが、こういう感じでだいたい同じになるみたいです。



    平均すると一年の間に近デジからダウンロードする数は平均450冊くらい、この程度の数ならば目視で書籍を適当に探すことも出来ます。

    そして最後、一定期間に興味を持っているものは、だいたい同じだという法則があります。こちらも私の例を出してみましょう。


    講談速記本は安定して読んでいるわけですけど、この時期は旅行関係の資料に興味があったのでしょう。旅行之友、行者、旅行協会などのといった文字が並んでいます。この様に期間によって、ゆるやかなカテゴリ分けまでできてしまいます。

    この方法ですと10000冊を超えても、破綻することなく運用できそうです。

    電子書籍リーダーを Preview.app に

    これまで電子書籍リーダーとして Simple Comic っていうのを使っていたんだけども、ひとつ問題があって、それは同時に30とか電子書籍を同時に開こうとすると、メチャ遅かったり落ちたりしてしまうという点です。

    同時に30個くらい電子書籍を開く必要があるのかどうかっていうと、ほとんどない。しかしメチャ急いでいる時には10冊程度は開きたくなる時もある。急いでいる時にアプリケーションが落ちたりすると最悪ですから、Simple Comic は止めて Preview.app を使うことにしました。(50個くらいまでは普通に開くことは確認済み)

    複数ファイルを一括して開くことが出来ますので、機能的には問題なし。⌘ + ⌃ + f でフルスクリーンにもなります。ページ数についてはサムネィルを表示すれば分かります。


    しおりやその他の細々した電子本リーダー特有の機能は、そもそも使ったことがないので、俺には必要ないっぽいです。

    ファイルを開く

    最後の難関がファイルを開くという点です。こちらは emacs 経由で開くことにしました。なんで emacs なのかというと慣れているからです。

    方針としては、まず emacs だけで電子書籍を読める環境を作り、その後で emacs 経由で楽に電子書籍を開く環境を作ります。

    emacs だけで完結させる

    画像ビューワとして見るとEmacsは特に優れたツールではありません.
    http://dev.ariel-networks.com/articles/emacs/part6/

    ということですから、これはあくまで非常用の環境です。

    Emacs-slideview と Emacs-imagex をそれぞれインストールします。

    https://github.com/mhayashi1120/Emacs-slideview

    https://github.com/mhayashi1120/Emacs-imagex

    (add-hook 'image-mode-hook 'slideview-mode)
    (require 'image+)
    (imagex-auto-adjust-mode 1)

    そうするとこういう風になります。



    詳しいことはこちらで。

    面白いのは面白いんですけど Preview.app ので読んだほうが速いので、こちらは覗き見程度に使っています。

    emacs 経由で電子書籍を開く

    まずは dired の準備、名前や日付でソートできるようにする。

    http://d.hatena.ne.jp/mooz/20091207/p1

    次にコピー関連、次の設定を加えておく。

    ;;dired 複数表示、ファイルをコピーする
    (setq dired-dwim-target t)

    ;;サブディレクトリ含むフォルダも問答無用でコピー
    (setq dired-recursive-copies 'always)

    あとは検索、せっかくの MacOSX ですから emacs 経由で Spotlight が使える mdfind というのをインストールします。

    http://kouzuka.blogspot.jp/2011/04/spotlight-dired-mdfind-diredel.html

    最後にマークしたディレクトリを Preview.app に放り込めるように設定します。こちらはこのあたりを参考にして適当に書きました。

    http://fukuyama.co/emacsgzip

    https://github.com/ubolonton/.emacs.d/blob/master/config/ublt-dired.el

    (defun open-kindai ()
    "Kindeji-hiraku"
    (interactive)
    (let ((files (dired-get-marked-files t current-prefix-arg)))
    (dired-do-shell-command
    (concat "open -a /Applications/Preview.app")
    nil files)
    (dired-unmark-all-marks)))

    これで読書環境の完成です。

    どうなのるのか?


    X-u M-x mdfind-dired-name で "trim" を検索すると下みたく電子書籍のファイル一覧が出てきます。


    これをマークした後で open-kindai とすれば一度に何冊もの書籍を開くことが出来ます。小汚い gif アニメで説明するとこういう感じです。



    あとは普通に emacs を使うみたいな感じで、例えば上のリストから occur で"湖"という文字列が入るファイルのみを表示させたりもできます。



    基本的に近デジファイルは外部ディスク上に年度毎で保存、"海賊" "旅行" などテーマに沿った文章を書く場合は、emacs で検索し本体にコピー、使い終ったら削除みたいな感じで運用をしています。


    ノートパソコンの内蔵ディスクの増設はダルいけど、外付けディスクというのはわりとすぐに用意できますから、当分の間はこの環境で大丈夫でしょう。


    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。