-
Notifications
You must be signed in to change notification settings - Fork 56
応用的な使い方
narou convert コマンドは、ダウンロードした小説を 縦書き用に整形及び EPUB/MOBI に変換するコマンドです。update 及び download コマンドで内部的に呼び出される コマンドですが、直接呼び出すことで自分で変換をすることが可能です。
# EPUBを出力しない
narou convert 0 --no-epub
# MOBIを出力しない
narou c 0 --no-mobi
--no-epub 及び --no-mobi オプションで EPUB/MOBI それぞれの出力を抑制出来ます。小説をカスタマイズするで 説明する convert.rb や replace.txt を使う場合のデバッグとして、とりあえず変換されたテキストデータを確認したい 場合などに使えます。
narou c 0 --no-strip
MOBIデータはデータの中にEPUBデータを丸ごと持っています。そのデータを削除し、ファイルサイズを縮小させる kindlestrip 機能を抑制させます。
デフォルトではONになっていますが、KDP出版時にはstripをするとまずいので、このオプションが搭載されています。 convert で直接自身のテキストファイルを変換して、KDPで出版する場合は --no-strip を有効にして下さい。
narou setting コマンドは、narou コマンドの各挙動を変更することが出来るコマンドです。
変換時の挙動を制御するで説明した --no-* オプション系などを常時有効にしたり することが可能です。
Usage: narou setting [<name>=<value> ...] [options]
NOTICE
設定出来る変数名は narou setting で表示することが出来ます。
一部を抜粋して説明します。全ての設定を確認する場合は narou setting の Usage を参照して下さい。
narou s convert.no-epub=true
narou s convert.no-strip=true
narou s convert.no-open=true
のように、convert コマンドのオプションを設定として恒常化させることが出来ます。これによって、 narou download や update 時には直接指定できないオプションも有効にすることが出来ます。
デフォルトの挙動では、変換時に保存フォルダをファイラで開くかどうかを毎回確認されますが、
それが鬱陶しい場合には narou s convert.no-open=true
としておくことで抑制出来ます。
narou s device=kindle
narou s device=kobo
narou s device=reader
narou s device=ibunko
narou s device=ibooks
現在は kindle
及び kobo
、 reader
、 ibunko
、 ibooks
の指定に対応しています。
- kindle を指定した場合、出力電子書籍データとして .mobi が出力され、Kindleを自動送信対象として認識します。
- kobo を指定した場合、出力電子書籍データとして .kepub.epub が出力され、Koboを自動送信対象として認識します。
- reader を指定した場合、出力電子書籍データとして .epub が出力され、Sony Readerを自動送信対象として認識します。
-
ibunko を指定した場合、青空文庫形式のテキストと画像ファイルがひとまとめになった .zip が出力され、
convert.copy-to
で設定されたフォルダに zip ファイルがコピーされるようになります。自動送信は行われません。 - ibooks を指定した場合、出力電子書籍データとして .epub が出力され、iBooksに登録もしくは管理フォルダに展開を行います。自動送信は行われません。
- device を指定しなかった場合は、 .epub を出力し、自動送信は行われません。
device で指定した端末への送信とはまた別に、変換終了時にデータを自動コピーさせることが出来ます。
narou s convert.copy-to=C:/dropbox/mobi
convert.copy-to
にコピーさせたいフォルダを指定することで、有効になります。
この機能を使って、変換時にDropboxが共有しているフォルダにコピーさせ、あとからWiFi経由でDropboxから書籍データを 端末へダウンロードする、ということが簡単にできるようになります。
例えば convert.copy-to
で設定したフォルダにもうコピーさせたくなくなった場合、
narou s convert.copy-to=
と = の後ろを空にしてコマンドを入力すると、 convert.copy-to
の設定が削除されます。(他の設定も同様に右辺を空で削除出来ます)
Narou.rb は各小説が更新された場合に古いデータを差分として保存しています。それによって 更新された小説のどこが変更されたのかを簡単に表示する narou diff コマンドが用意されています。
narou diff 0
このコマンドで ID:0 の小説の差分を表示します(差分があれば)。もし、直前に更新された小説の差分を表示したいなら、
narou diff
と、小説IDを省略して差分が表示可能です。
narou diff 0
として表示した差分は、直近の更新の差分を表示します。それよりも遡って差分を表示したい場合は、
narou diff 0 -n 2
もしくは
narou diff 0 -2
と指定します。-n 2
も -2
も全く同じ意味です。直近の差分は -1
を指定した場合と同じで、これがデフォルトです。
-2
と指定した場合は、2個前の差分を表示することを意味しています。
narou diff 0 --list
と指定することで、差分の履歴を表示することが出来ます。-l
(小文字のエル)と短縮することが出来ます。
> narou diff 0 -l
無職転生 - 異世界行ったら本気だす - の差分一覧
[email protected] -1
第48部分 第四十三話「聖剣街道」
[email protected] -2
第26部分 第二十三話「信用の理由」
第30部分 第二十七話「冒険者の宿」
第31部分 第二十八話「人の命と初仕事」
第34部分 第三十一話「子供と戦士」
第35部分 第三十二話「失敗と混乱と決意」
[email protected] -3
第9部分 第八話「鈍感」
第39部分 第三十五話「すれ違い・前編」
第42部分 第三十七話「船の中の賢者」
第44部分 第三十九話「獣族の子供たち」
第47部分 第四十二話「ドルディアの村のスローライフ・後編」
第57部分 間話「ロキシーの帰還」
[email protected] -4
第41部分 間話「すれ違い・番外編」
[email protected] -5
第54部分 第四十九話「ミリシオンでの一週間」
[email protected]
は差分オブジェクト名で、そのまま日付・時刻で表されます。その横にある -3
は、その数字を diff
コマンドに渡すことで、指定した差分を表示することが出来ます。
NOTICE
直接差分オブジェクト名を渡すことも出来ます。narou diff 0 [email protected]
Narou.rbではそのままでも十分に見やすい差分を表示しますが、普段使い慣れた差分ソフトや、GUIを搭載しているソフトを使いたい場合もあるでしょう。
そのために外部プログラムを登録する方法も用意されています。
ここではOSをWindows、差分表示プログラムを WinMerge として説明します。
narou setting difftool="C:\Program Files\WinMerge\WinMergeU.exe"
と、setting の difftool
にパスを設定することで、narou diff コマンドに外部プログラムの存在を教えてやります。
NOTICE
difftool=diff と指定することで、コマンドライン版 diff なども設定出来ます。
difftool を設定しただけでは使いづらいので、外部差分表示プログラムのオプションを指定します。
narou setting difftool.arg='-e -x -ub -dl "OLD" -dr "NEW" %OLD %NEW'
と、 difftool.arg
を設定することで、 difftool
に設定した外部差分プログラムの引数を設定出来ます。
difftool.arg
を指定した場合は、自動で差分ファイルのパスを渡さなくなるので、 %NEW
及び %OLD
変数を使って、
差分ファイルのパスも指定して下さい。
NOTICE
%NEW : DLした最新データの差分用ファイルパス
%OLD : 古い方の差分用ファイルパス
差分が溜まりすぎて --list
が見づらくなったりした場合は、
narou diff 0 --clean
で削除出来ます。
各コマンドで小説を指定する時に使うIDはただの連番で、管理する小説が増えた場合には 把握することが難しくなってきます。それを解決するために narou alias コマンドを 使うことでIDに覚えやすい名前を付けることができます。
narou alias musyoku=0
これで musyoku
という別名を作成することが出来ます(IDは narou list コマンドで取得)。
この musyoku
という別名は、convert や diff 等、全てのコマンドで使用することが可能です。
# 別名を使ったコマンド使用例
narou convert musyoku
narou diff musyoku
narou download musyoku -f
ダウンロードした小説を削除するには narou remove コマンドを使います。
narou remove 0
ただし、このコマンドでは管理小説のリストから削除するだけで、変換したデータや設定ファイルが保存されているフォルダ 自体はそのまま残ります。これは次回以降再度ダウンロードする場合にそのまま引き継がれます。
小説の保存フォルダも一緒に削除したい場合は、
narou remove 0 --with-file
と --with-file
オプションを使います。
WEB小説は出版されるとダイジェスト版に差し替えられたり、まるっと削除されてしまうことがよくあります。
そんな時に、削除される前に小説の更新を止めたくなります。そのためには narou freeze コマンドを使用して小説を凍結します。
narou freeze 0
小説を凍結することで、下記の動作が禁止されます。
- ダウンロード(download)
- アップデート(update)
- 削除(remove)
convert による変換は行えますので、設定変更等をして再変換したい場合には支障はありません。
また、凍結した小説がある場合、narou list
コマンドのIDの横にマークが付きます。
> narou l
ID | 更新日 | タイトル
3 | 13/02/28 | リアデイルの大地にて
5 | 13/03/02 | ログ・ホライズン
6 | 13/03/02 | 無職転生 - 異世界行ったら本気だす -
*7 | 13/02/07 | 俺と蛙さんの異世界放浪記~八百万ってたくさんって意味らしい~
8 | 13/02/20 | 詰みかけ転生領主の奮闘記
9 | 13/02/12 | 理想のヒモ生活
凍結した小説だけの一覧を表示するには --list
オプションを付けます。
> narou fr --list
凍結中小説一覧
ID | タイトル
7 | 俺と蛙さんの異世界放浪記~八百万ってたくさんって意味らしい~
凍結を解除するには、再度同じ小説を narou freeze
コマンドで指定して下さい。
更新を追いかける必要がなかったり、すでに完結している小説を読みたい場合もよくあります。その場合はアップデートの対象からは外したいと思いますので、ダウンロードと同時に凍結するオプションが用意されています。
narou download n9078bd --freeze
もしくは
narou d n9078bd -z
download コマンドに -z オプションを付加することで、freeze コマンドを実行した場合と同じ状態になり、手間が省けます。