narou 2.8.3.1 → 2.9.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of narou might be problematic. Click here for more details.

Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog.md +77 -0
  3. data/Gemfile +2 -1
  4. data/README.md +69 -86
  5. data/lib/command/convert.rb +10 -11
  6. data/lib/command/init.rb +2 -2
  7. data/lib/command/list.rb +12 -3
  8. data/lib/command/setting.rb +20 -5
  9. data/lib/command/update.rb +0 -3
  10. data/lib/command/version.rb +2 -3
  11. data/lib/command/web.rb +58 -7
  12. data/lib/converterbase.rb +7 -24
  13. data/lib/database.rb +7 -6
  14. data/lib/device.rb +15 -1
  15. data/lib/device/ibunko.rb +1 -2
  16. data/lib/device/library/mac.rb +7 -0
  17. data/lib/downloader.rb +44 -21
  18. data/lib/extension.rb +25 -0
  19. data/lib/helper.rb +4 -3
  20. data/lib/html.rb +18 -2
  21. data/lib/narou.rb +20 -0
  22. data/lib/novelconverter.rb +11 -35
  23. data/lib/novelinfo.rb +19 -8
  24. data/lib/novelsetting.rb +0 -6
  25. data/lib/version.rb +1 -1
  26. data/lib/web/appserver.rb +134 -15
  27. data/lib/web/public/favicon.ico +0 -0
  28. data/lib/web/public/resources/common.ui.js +2 -2
  29. data/lib/web/public/resources/narou.library.js +657 -91
  30. data/lib/web/public/resources/narou.queue.js +1 -1
  31. data/lib/web/public/resources/narou.ui.js +253 -102
  32. data/lib/web/public/resources/sprintf.js +245 -0
  33. data/lib/web/pushserver.rb +14 -3
  34. data/lib/web/views/_about.haml +188 -0
  35. data/lib/web/views/{diff_list.haml → _diff_list.haml} +0 -0
  36. data/lib/web/views/{edit_replace_txt.haml → _edit_replace_txt.haml} +4 -4
  37. data/lib/web/views/_rebooting.haml +18 -0
  38. data/lib/web/views/bookmarklet/download.js.erb +2 -2
  39. data/lib/web/views/bookmarklet/insert_button.js.erb +1 -1
  40. data/lib/web/views/edit_menu.haml +223 -0
  41. data/lib/web/views/help.haml +29 -12
  42. data/lib/web/views/index.haml +99 -88
  43. data/lib/web/views/layout.haml +5 -3
  44. data/lib/web/views/notepad.haml +39 -0
  45. data/lib/web/views/novels/setting.haml +15 -5
  46. data/lib/web/views/settings.haml +2 -2
  47. data/lib/web/views/style.scss +72 -21
  48. data/lib/web/views/widget/download.haml +3 -2
  49. data/lib/web/views/widget/drag_and_drop.haml +3 -2
  50. data/lib/web/views/widget/notepad.haml +44 -0
  51. data/narou.gemspec +75 -6
  52. data/narou.rb +8 -14
  53. data/preset/ncode.syosetu.com/n5115cq/converter.rb +30 -0
  54. data/preset/ncode.syosetu.com/n7594ct/converter.rb +37 -0
  55. data/preset/ncode.syosetu.com/n8725k/converter.rb +1 -1
  56. data/preset/vertical_font.css +0 -10
  57. data/spec/generator/convert_spec_gen.rb +2 -0
  58. data/template/novel.txt.erb +3 -0
  59. data/webnovel/https.syosetu.org.yaml +1 -1
  60. data/webnovel/kakuyomu.jp.yaml +82 -0
  61. data/webnovel/ncode.syosetu.com.yaml +1 -0
  62. data/webnovel/syosetu.org.yaml +1 -1
  63. metadata +89 -12
  64. data/lib/web/views/about.haml +0 -85
  65. data/preset/DMincho.ttf +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 70f7f7b7209627370ad63d4870e25254e904434c
4
- data.tar.gz: 8df9999d62fcac1dc06c4dd4ab063b7cdecfa2dc
3
+ metadata.gz: a962858440f93d650554b2b78407eda291d43c3d
4
+ data.tar.gz: b6f3967d9260b6e809f67694be415e6b84d6d80c
5
5
  SHA512:
6
- metadata.gz: ff21146250d516906112510e453ba9113375a04f257d456a67ff73a834676aa3f35cbd6275822cc95cf7394aa977891c144147a4752849764006ad1fed417858
7
- data.tar.gz: b7c5211400fc11eaa6d8512a36dfc211f68149f5a3dfa203be3ea8d3eef0d1fae885dfea87824c21169bb342384d7ddfe89c3f6966b497e4cc09fe1169f6cdc1
6
+ metadata.gz: 824990cc1c9702d5fe25ca0ebcb3a0798a323a86010e983c1e00e109424e4199506bc9a577e29860360956e7d7f02a4b1236c1d9ba53513024667f15548da60c
7
+ data.tar.gz: f035ecea9bae6033ef969815af1ff32e7ce6c295094bd806d29bcd38348cfc1f6f131de4b9014c92cc02b1aa4b5371e540be15e6fb7c3983bbb76da94ae84a27
@@ -2,12 +2,89 @@
2
2
  更新履歴 - ChangeLog
3
3
  ====================
4
4
 
5
+ 2.9.0 : 2016/03/28
6
+ ------------------
7
+ #### WEB UI
8
+ - メニュー(歯車アイコン)に「サーバを再起動」を追加しました。WEB UIから直接WEB
9
+ UIサーバを再起動できるようになります
10
+ - 「Narou.rbについて」ダイアログで最新バージョンを確認できた場合に、その場で
11
+ システムの更新及び再起動が出来るようになりました。
12
+ (sudo が必要な環境の場合はコマンドで更新して下さい)
13
+ - 小説リスト部分で右クリックすることで個別メニューを呼び出せるようになりました
14
+ - 各小説をそれぞれ個別に更新出来るボタンを追加しました
15
+ - 「表示」メニューを拡張しました
16
+ + 「変換設定ページは新規タブで開く」を追加しました
17
+ + 「ボタンを画面下部に固定」を追加しました
18
+ + 「個別メニューを編集」を追加しました
19
+ - 「ツール」に「メモ帳」を追加しました
20
+ + メモはサーバに保存され、各PC間で共有出来ます。個別メニューの編集内容の
21
+ 受渡しや小説URLの一時的プールなどに使うことを想定しています
22
+ - タグ検索をフィルターに統合しました
23
+ + フィルター欄に `tag:タグ名` と入力することでタグ検索が可能になります。
24
+ (既存のキーワード検索との併用も可能です)
25
+ + `tag:タグ名1 tag:タグ名2` と複数入力することで、複数のタグでの絞り込みが
26
+ 可能です
27
+ + `-tag:タグ名` と `-` を付けることで、除外タグ検索になります
28
+ + メニューのタグか小説リストのタグ名をクリックすることで、フィルター欄に自動
29
+ で入力されます。また、Altキーを押しながらクリックすることで、除外タグが入力
30
+ されます
31
+ - タグの並び順をソートするようにしました
32
+ - 一部のボタンのアイコンを変更しました
33
+ - ツールチップを表示してしばらくしたら自動で閉じるようにしました
34
+ - 表示件数に200、500を追加しました
35
+ - 電子書籍端末を接続時に、取り外すための Eject ボタンを表示するようにしました
36
+ (現時点でMacのみサポート)
37
+
38
+ #### 追加機能
39
+ - [カクヨム](https://kakuyomu.jp/)に対応しました
40
+ + 各話の更新状況を(目次ページから)取得する方法が現時点で無いので、新着のみ
41
+ 取得出来ます(各話を最新の状態にしたい場合は、強制ダウンロードをする必要が
42
+ あります)
43
+ - `narou setting 変数名` コマンドで現在の設定値を確認出来るようになりました。
44
+ (例 `narou s device`)
45
+ - `list` コマンドに `--gl` オプションが追加されました
46
+ + 表示・ソート対象の日付を更新日から最新話掲載日に切り替えます
47
+ + general-lastup の略です
48
+ - 変換プリセットを追加しました
49
+ - n5115cq 最果てのパラディン
50
+ - n7594ct 10年ごしの引きニートを辞めて外出したら自宅ごと異世界に転移してた
51
+
52
+ #### 仕様変更
53
+ - 変換処理で body や introduction 等を処理して最後に subtitle を変換していた
54
+ のを先に subtitle を処理するように変更しました
55
+ - converter.rb でサブタイトルで本文の処理内容を調整したい場合に今までの処理順
56
+ では不可能だったため
57
+ - title_date_format の $s が古い作品だと5桁になってしまうのを4桁に収まるように
58
+ 調整しました(小説家になろうの最も古い作品が4桁に収まるようにしました)
59
+ - `あ゛` のような記述を濁点フォントに置き換える処理を廃止し、AozoraEpub3 による
60
+ 一文字フォント置き換え機能に任せるようにしました
61
+ + `narou init` が必要です
62
+ + この変更に伴い、setting.ini の enable_dakuten_font は廃止されました
63
+ + Kindle 端末において、挿絵が表紙画像になってしまう問題がこの仕様変更で改善
64
+ されます
65
+
66
+ #### 修正
67
+ - httpsなサイトでダウンロード用のブックマークレットが動かない問題に対応しました
68
+ (ヘルプからブックマークレットの再取得が必要です)
69
+ - Windows において、WEB UI の「Narou.rbについて」ダイアログで最新バージョンの
70
+ 確認に失敗する場合がある問題に対応しました
71
+ - WEB UI の小説リストの項目を入れ替えた後に各種ボタンが反応しなくなるのを修正
72
+ - 凍結済み小説を強制更新した際に凍結が解除されてしまう場合があったのを修正
73
+ - thin などがすでにインストール済みの場合に narou web コマンドで WEB UI サーバ
74
+ を起動できない場合があるので、必ず WEBrick で起動するようにしました
75
+ - ノクターン・ムーンライト・ミッドナイトノベルズの認証方法変更後、Nコードのみで
76
+ ダウンロードが出来なくなっていたのを修正
77
+ - Linux でダウンロード時にエラーが出る場合があったのを修正
78
+ - その他パフォーマンス等の調整
79
+
80
+
5
81
  2.8.3 : 2016/03/01
6
82
  ------------------
7
83
  #### HotFix
8
84
  - ノクターン・ムーンライト・ミッドナイトノベルズの認証方法変更に対応しました
9
85
  + 404エラーがでて凍結されてしまった場合、凍結を解除したあと再度更新して下さい
10
86
 
87
+
11
88
  2.8.2 : 2016/02/05
12
89
  ------------------
13
90
  #### HotFix
data/Gemfile CHANGED
@@ -8,4 +8,5 @@ gemspec
8
8
  gem "rspec"
9
9
  gem "rspec-core"
10
10
  gem "pry"
11
-
11
+ gem "better_errors"
12
+ gem "binding_of_caller"
data/README.md CHANGED
@@ -37,97 +37,80 @@ Narou.rb ― 「小説家になろう」「小説を読もう!」ダウンロ
37
37
  更新履歴 - ChangeLog
38
38
  --------------------
39
39
 
40
- 2.8.3 : 2016/03/01
40
+ 2.9.0 : 2016/03/28
41
41
  ------------------
42
- #### HotFix
43
- - ノクターン・ムーンライト・ミッドナイトノベルズの認証方法変更に対応しました
44
- + 404エラーがでて凍結されてしまった場合、凍結を解除したあと再度更新して下さい
42
+ #### WEB UI
43
+ - メニュー(歯車アイコン)に「サーバを再起動」を追加しました。WEB UIから直接WEB
44
+ UIサーバを再起動できるようになります
45
+ - 「Narou.rbについて」ダイアログで最新バージョンを確認できた場合に、その場で
46
+ システムの更新及び再起動が出来るようになりました。
47
+ (sudo が必要な環境の場合はコマンドで更新して下さい)
48
+ - 小説リスト部分で右クリックすることで個別メニューを呼び出せるようになりました
49
+ - 各小説をそれぞれ個別に更新出来るボタンを追加しました
50
+ - 「表示」メニューを拡張しました
51
+ + 「変換設定ページは新規タブで開く」を追加しました
52
+ + 「ボタンを画面下部に固定」を追加しました
53
+ + 「個別メニューを編集」を追加しました
54
+ - 「ツール」に「メモ帳」を追加しました
55
+ + メモはサーバに保存され、各PC間で共有出来ます。個別メニューの編集内容の
56
+ 受渡しや小説URLの一時的プールなどに使うことを想定しています
57
+ - タグ検索をフィルターに統合しました
58
+ + フィルター欄に `tag:タグ名` と入力することでタグ検索が可能になります。
59
+ (既存のキーワード検索との併用も可能です)
60
+ + `tag:タグ名1 tag:タグ名2` と複数入力することで、複数のタグでの絞り込みが
61
+ 可能です
62
+ + `-tag:タグ名` と `-` を付けることで、除外タグ検索になります
63
+ + メニューのタグか小説リストのタグ名をクリックすることで、フィルター欄に自動
64
+ で入力されます。また、Altキーを押しながらクリックすることで、除外タグが入力
65
+ されます
66
+ - タグの並び順をソートするようにしました
67
+ - 一部のボタンのアイコンを変更しました
68
+ - ツールチップを表示してしばらくしたら自動で閉じるようにしました
69
+ - 表示件数に200、500を追加しました
70
+ - 電子書籍端末を接続時に、取り外すための Eject ボタンを表示するようにしました
71
+ (現時点でMacのみサポート)
45
72
 
46
-
47
- 2.8.2 : 2016/02/05
48
- ------------------
49
- #### HotFix
50
- - ハーメルンのHTTPS化に対応しました
51
- + 新しく登録する小説を http でダウンロードしようとすると、ダウンロード後に
52
- エラーが出るので、https なURLでダウンロードをして下さい
53
-
54
-
55
- 2.8.1 : 2015/12/10
56
- ------------------
57
- #### 追加機能
58
- - setting.ini の `title_date_format` に下記の拡張書式を追加しました
59
- + $ns : 小説が掲載されているサイト名
60
- + $nt : 小説種別(短編 or 連載)
61
-
62
- #### 仕様変更
63
- - `convert.filename-to-ncode` でファイル名をNコード化するのに、更新をしなくても
64
- 変換出来るようにしました
65
-
66
-
67
- 2.8.0 : 2015/12/09
68
- ------------------
69
73
  #### 追加機能
70
- - setting.ini に項目をいくつか追加しました
71
- + `title_date_format` の拡張書式として $s と $t を追加しました。
72
- * $s : 2045年くらいまでの残り時間(10分間隔)を4桁の文字列で埋め込めます。
73
- タイトルの先頭に付加することで端末のタイトルソートで更新順に並び替えたり
74
- 等に利用出来ます
75
- * $t : 小説のタイトルそのものを埋め込めます。$t を利用することでタイトルの
76
- 前後両方に日付等を付与することが可能になります。$t が使用された場合は
77
- title_date_align は無視されます
78
- + `enable_add_end_to_title` を追加しました。完結済小説のタイトルに(完結)と
79
- 表示するかを制御出来ます
80
- + `cut_old_subtitles` を追加しました。指定した話数分変換の対象外にすることで
81
- 変換速度を上げたり容量を節約したり出来ます。(カットした分栞が後ろにずれる
82
- と思うので注意して下さい)
83
- + `author_comment_style` を追加しました。前書き・後書きの装飾方法を指定出来る
84
- ようになります
85
- * css:CSSで装飾。今までの奴です。何も設定しなければこれが使われます
86
- * simple:シンプルに段落。字下げして文字を小さくしただけなのでデザインが崩れ
87
- にくいです。CSSで装飾すると不具合がでるKoboやAdobe Digital Editionでは
88
- こちらの使用をおすすめします
89
- * plain:装飾しない。本文との間に区切り線をいれただけで、本文と同じ文字で
90
- 表示します
91
- * 一括で変更する場合は `narou s default.author_comment_style=simple` 等と
92
- デフォルト値を設定して下さい
93
- - ダイジェスト化時の選択肢を自動で選んでくれる
94
- `download.choices-of-digest-options` という設定を追加しました
95
- + `narou s download.choices-of-digest-options=4,1` のようにカンマ区切りで
96
- 選択したい項目を順番に設定して下さい。詳細は `narou s` コマンドを参照。
97
- WEB UI では「環境設定>詳細」にあります
98
- - `convert.filename-to-ncode` という設定を追加しました。出力する書籍ファイル名
99
- を「ドメイン名_Nコード」で固定出来ます
100
- + `narou s convert.filename-to-ncode=true` で設定出来ます。WEB UI では
101
- 「環境設定>一般」にあります
102
- + この機能により、作者名や小説タイトルが変わった際に出力ファイル名まで一緒に
103
- 変更されてしまい栞が消えるのを防いだり、Kobo端末で不正なファイル名と認識
104
- されないようにすることが出来ます
105
- + 注意:最低一度は対象小説を更新しないと、変換してもファイル名は変わりません
74
+ - [カクヨム](https://kakuyomu.jp/)に対応しました
75
+ + 各話の更新状況を(目次ページから)取得する方法が現時点で無いので、新着のみ
76
+ 取得出来ます(各話を最新の状態にしたい場合は、強制ダウンロードをする必要が
77
+ あります)
78
+ - `narou setting 変数名` コマンドで現在の設定値を確認出来るようになりました。
79
+ (例 `narou s device`)
80
+ - `list` コマンドに `--gl` オプションが追加されました
81
+ + 表示・ソート対象の日付を更新日から最新話掲載日に切り替えます
82
+ + general-lastup の略です
83
+ - 変換プリセットを追加しました
84
+ - n5115cq 最果てのパラディン
85
+ - n7594ct 10年ごしの引きニートを辞めて外出したら自宅ごと異世界に転移してた
106
86
 
107
87
  #### 仕様変更
108
- - `enable_add_end_to_title` の追加に伴い、タイトルへの完結表示はデフォルトでは
109
- 行わなくなりました
110
- - rawデータや本文データを保存する際に長過ぎるファイル名を一定の長さで端折るよう
111
- になりました
112
- + この影響で、update 時にエラーが出る場合があります。その場合は再度 update
113
- することで以降は正常に更新することが出来ます(その際に新着と表示されますが
114
- 仕様です)
115
- - `author_comment_style` の追加に伴い、Koboの前書き・後書きの装飾を特別に切り替
116
- える処理を削除しました。`narou s default.author_comment_style=simple` で変更
117
- して下さい
118
- - 行頭で半角スペースで字下げをしてものを全角スペースで置換するようになりました
119
-
120
- #### Bug Fix
121
- - 暁の小説で前書き・後書きがあった場合に正常に取得できなくなっていたのを修正
122
-
123
-
124
- 2.7.2 : 2015/12/01
125
- ------------------
126
- #### Bug Fix
127
- - ハーメルンの仕様変更に伴い、本文が取得できなくなっていたのを修正
128
- - ハーメルン、暁において前書き・後書きが前話以前のもが使われてしまう場合があるのを
129
- 修正
130
- - 標準入力に null を渡すとエラーになっていたのを修正 #73
88
+ - 変換処理で body や introduction 等を処理して最後に subtitle を変換していた
89
+ のを先に subtitle を処理するように変更しました
90
+ - converter.rb でサブタイトルで本文の処理内容を調整したい場合に今までの処理順
91
+ では不可能だったため
92
+ - title_date_format $s が古い作品だと5桁になってしまうのを4桁に収まるように
93
+ 調整しました(小説家になろうの最も古い作品が4桁に収まるようにしました)
94
+ - `あ゛` のような記述を濁点フォントに置き換える処理を廃止し、AozoraEpub3 による
95
+ 一文字フォント置き換え機能に任せるようにしました
96
+ + `narou init` が必要です
97
+ + この変更に伴い、setting.ini の enable_dakuten_font は廃止されました
98
+ + Kindle 端末において、挿絵が表紙画像になってしまう問題がこの仕様変更で改善
99
+ されます
100
+
101
+ #### 修正
102
+ - httpsなサイトでダウンロード用のブックマークレットが動かない問題に対応しました
103
+ (ヘルプからブックマークレットの再取得が必要です)
104
+ - Windows において、WEB UI の「Narou.rbについて」ダイアログで最新バージョンの
105
+ 確認に失敗する場合がある問題に対応しました
106
+ - WEB UI の小説リストの項目を入れ替えた後に各種ボタンが反応しなくなるのを修正
107
+ - 凍結済み小説を強制更新した際に凍結が解除されてしまう場合があったのを修正
108
+ - thin などがすでにインストール済みの場合に narou web コマンドで WEB UI サーバ
109
+ を起動できない場合があるので、必ず WEBrick で起動するようにしました
110
+ - ノクターン・ムーンライト・ミッドナイトノベルズの認証方法変更後、Nコードのみで
111
+ ダウンロードが出来なくなっていたのを修正
112
+ - Linux でダウンロード時にエラーが出る場合があったのを修正
113
+ - その他パフォーマンス等の調整
131
114
 
132
115
 
133
116
  ----
@@ -189,24 +189,24 @@ module Command
189
189
  end
190
190
 
191
191
  if File.file?(target.to_s)
192
- res = convert_txt(target)
192
+ converted_txt_path = convert_txt(target)
193
193
  else
194
194
  @argument_target_type = :novel
195
195
  unless Downloader.novel_exists?(target)
196
196
  error "#{target} は存在しません"
197
197
  next
198
198
  end
199
- res = NovelConverter.convert(target, {
200
- output_filename: @output_filename,
201
- display_inspector: @options["inspect"],
202
- ignore_force: @options["ignore-force"],
203
- ignore_default: @options["ignore-default"],
204
- })
199
+ converted_txt_path =
200
+ NovelConverter.convert(target, {
201
+ output_filename: @output_filename,
202
+ display_inspector: @options["inspect"],
203
+ ignore_force: @options["ignore-force"],
204
+ ignore_default: @options["ignore-default"],
205
+ })
205
206
  @novel_data = Downloader.get_data_by_target(target)
206
207
  end
207
- next unless res
208
- @converted_txt_path = res[:converted_txt_path]
209
- @use_dakuten_font = res[:use_dakuten_font]
208
+ next unless converted_txt_path
209
+ @converted_txt_path = converted_txt_path
210
210
 
211
211
  ebook_file = hook_call(:convert_txt_to_ebook_file)
212
212
  next if ebook_file.nil?
@@ -256,7 +256,6 @@ module Command
256
256
  #
257
257
  def convert_txt_to_ebook_file
258
258
  return NovelConverter.convert_txt_to_ebook_file(@converted_txt_path, {
259
- use_dakuten_font: @use_dakuten_font,
260
259
  device: @device,
261
260
  verbose: @options["verbose"],
262
261
  no_epub: @options["no-epub"],
@@ -99,8 +99,8 @@ module Command
99
99
  puts chuki_tag_path
100
100
  puts
101
101
  # ファイルコピー
102
- src = ["AozoraEpub3.ini", "vertical_font.css", "DMincho.ttf"]
103
- dst = ["AozoraEpub3.ini", "template/OPS/css_custom/vertical_font.css", "template/OPS/fonts/DMincho.ttf"]
102
+ src = ["AozoraEpub3.ini", "vertical_font.css"]
103
+ dst = ["AozoraEpub3.ini", "template/OPS/css_custom/vertical_font.css"]
104
104
  puts "(次のファイルをコピーor上書きしました)"
105
105
  src.size.times do |i|
106
106
  src_full_path = File.join(Narou.get_preset_dir, src[i])
@@ -61,6 +61,9 @@ module Command
61
61
  @opt.on("-l", "--latest", "最近更新のあった順に小説を表示する") {
62
62
  @options["latest"] = true
63
63
  }
64
+ @opt.on("--gl", "更新日ではなく最新話掲載日を使用する") {
65
+ @options["general-lastup"] = true
66
+ }
64
67
  @opt.on("-r", "--reverse", "逆順に表示する") {
65
68
  @options["reverse"] = true
66
69
  }
@@ -135,7 +138,8 @@ module Command
135
138
 
136
139
  def header
137
140
  [
138
- " ID ", " 更新日 ",
141
+ " ID ",
142
+ @options["general-lastup"] ? " 掲載日 " : " 更新日 ",
139
143
  @options["kind"] ? "種別" : nil,
140
144
  @options["author"] ? "作者名" : nil,
141
145
  @options["site"] ? "サイト名" : nil,
@@ -143,11 +147,16 @@ module Command
143
147
  ].compact.join(" | ")
144
148
  end
145
149
 
150
+ def view_date_type
151
+ @options["general-lastup"] ? "general_lastup" : "last_update"
152
+ end
153
+
146
154
  def output_list(novels)
147
155
  now = Time.now
148
156
  today = now.strftime("%y/%m/%d")
149
157
  filters = @options["filters"] || []
150
158
  selected_lines = {}
159
+ view_date_type_key = view_date_type
151
160
  novels.each do |novel|
152
161
  novel_type = novel["novel_type"].to_i
153
162
  id = novel["id"]
@@ -165,7 +174,7 @@ module Command
165
174
  tags = novel["tags"] || []
166
175
  selected_lines[id] = [
167
176
  disp_id,
168
- novel["last_update"].strftime("%y/%m/%d").tap { |s|
177
+ novel[view_date_type_key].strftime("%y/%m/%d").tap { |s|
169
178
  new_arrivals_date = novel["new_arrivals_date"]
170
179
  last_update = novel["last_update"]
171
180
  if new_arrivals_date && new_arrivals_date >= last_update \
@@ -229,7 +238,7 @@ module Command
229
238
  num = database_values.size
230
239
  end
231
240
  if @options["latest"]
232
- database_values = Database.instance.sort_by_last_update
241
+ database_values = Database.instance.sort_by(view_date_type)
233
242
  end
234
243
  database_values.reverse! if @options["reverse"]
235
244
  novels = database_values[0, num]
@@ -38,11 +38,17 @@ module Command
38
38
 
39
39
  @opt.separator <<-EOS
40
40
 
41
+ これ以外にも設定出来る項目があります。確認する場合は
42
+ narou setting -a コマンドを参照して下さい
43
+
41
44
  Examples:
42
- narou setting --list
43
- narou setting convert.no-open=true
44
- narou setting convert.no-epub= # 右辺に何も書かないとその設定を削除できる
45
- narou setting convert.copy-to=C:/dropbox/mobi
45
+ narou setting --list # 現在の設置値一覧を表示
46
+ narou setting convert.no-open=true # 値を設定する
47
+ narou setting convert.no-epub= # 右辺に何も書かないとその設定を削除出来る
48
+ narou setting device # 変数名だけ書くと現在の値を確認出来る
49
+
50
+ narou s convert.copy-to=C:/dropbox/mobi
51
+ # パスにスペースが含まれる場合はダブルクウォーテーションで囲う
46
52
  narou s convert.copy-to="C:\\Documents and Settings\\user\\epub"
47
53
 
48
54
  Options:
@@ -134,6 +140,15 @@ module Command
134
140
  deleted
135
141
  end
136
142
 
143
+ def output_value(name, settings)
144
+ scope = get_scope_of_variable_name(name)
145
+ if scope
146
+ puts settings[scope][name]
147
+ else
148
+ output_error("#{name} という変数は存在しません", name)
149
+ end
150
+ end
151
+
137
152
  def execute(argv)
138
153
  super
139
154
  if @options["burn"]
@@ -158,7 +173,7 @@ module Command
158
173
  next
159
174
  end
160
175
  if value.nil?
161
- output_error("書式が間違っています。#{name}=値 のように書いて下さい", name)
176
+ output_value(name, settings)
162
177
  next
163
178
  end
164
179
  scope = get_scope_of_variable_name(name)
@@ -335,7 +335,6 @@ module Command
335
335
  ignore_default = false
336
336
 
337
337
  converted_text_array = []
338
- use_dakuten_font = false
339
338
 
340
339
  Helper.print_horizontal_rule
341
340
  puts "hotentry の変換を開始"
@@ -359,7 +358,6 @@ module Command
359
358
  setting: setting,
360
359
  text: novel_converter.convert_main_for_novel(subtitles, true)
361
360
  }
362
- use_dakuten_font |= novel_converter.use_dakuten_font
363
361
 
364
362
  total_progress += last_num + 1
365
363
  end
@@ -380,7 +378,6 @@ module Command
380
378
  # テキストを書籍データに変換
381
379
  relay_proc = -> {
382
380
  NovelConverter.convert_txt_to_ebook_file(txt_output_path, {
383
- use_dakuten_font: use_dakuten_font,
384
381
  device: device
385
382
  })
386
383
  }