narou 2.9.5 → 3.0.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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +7 -0
  3. data/.reek +34 -0
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +9 -1
  6. data/ChangeLog.md +90 -0
  7. data/Gemfile +4 -0
  8. data/README.md +85 -8
  9. data/lib/command/convert.rb +1 -1
  10. data/lib/command/list.rb +59 -73
  11. data/lib/command/list/novel_decorator.rb +107 -0
  12. data/lib/command/send.rb +23 -13
  13. data/lib/command/setting.rb +5 -1
  14. data/lib/command/update.rb +104 -138
  15. data/lib/command/update/general_lastup_updater.rb +105 -0
  16. data/lib/command/update/interval.rb +29 -0
  17. data/lib/command/web.rb +1 -1
  18. data/lib/commandbase.rb +24 -17
  19. data/lib/converterbase.rb +10 -5
  20. data/lib/database.rb +16 -5
  21. data/lib/device.rb +5 -1
  22. data/lib/device/library/linux.rb +68 -8
  23. data/lib/downloader.rb +24 -23
  24. data/lib/extension.rb +16 -3
  25. data/lib/helper.rb +26 -3
  26. data/lib/html.rb +1 -1
  27. data/lib/inspector.rb +9 -0
  28. data/lib/inventory.rb +20 -6
  29. data/lib/logger.rb +8 -2
  30. data/lib/mailer.rb +2 -1
  31. data/lib/narou.rb +28 -18
  32. data/lib/narou/api.rb +62 -31
  33. data/lib/novelconverter.rb +8 -1
  34. data/lib/novelinfo.rb +8 -7
  35. data/lib/novelsetting.rb +1 -0
  36. data/lib/progressbar.rb +6 -2
  37. data/lib/sitesetting.rb +2 -1
  38. data/lib/version.rb +1 -1
  39. data/lib/web/appserver.rb +72 -9
  40. data/lib/web/public/resources/narou.library.js +130 -13
  41. data/lib/web/public/resources/narou.ui.js +96 -9
  42. data/lib/web/settingmessages.rb +2 -1
  43. data/lib/web/views/_about.haml +15 -2
  44. data/lib/web/views/index.haml +12 -3
  45. data/lib/web/views/layout.haml +2 -1
  46. data/lib/web/views/style.scss +12 -0
  47. data/narou.gemspec +88 -11
  48. data/narou.rb +7 -1
  49. data/preset/mail_setting.yaml +40 -6
  50. data/webnovel/kakuyomu.jp.yaml +8 -8
  51. metadata +95 -139
  52. data/spec/README.txt +0 -4
  53. data/spec/convert_spec.rb +0 -119
  54. data/spec/converterbase_spec.rb +0 -298
  55. data/spec/data/convert_test/auto_indent/correct_test_auto_indent.txt +0 -28
  56. data/spec/data/convert_test/auto_indent/test_auto_indent.txt +0 -32
  57. data/spec/data/convert_test/auto_join_bracket/correct_test_auto_join_bracket.txt +0 -24
  58. data/spec/data/convert_test/auto_join_bracket/test_auto_join_bracket.txt +0 -28
  59. data/spec/data/convert_test/auto_join_line/correct_test_auto_join_line.txt +0 -43
  60. data/spec/data/convert_test/auto_join_line/test_auto_join_line.txt +0 -59
  61. data/spec/data/convert_test/convert_page_break/correct_test_convert_page_break.txt +0 -22
  62. data/spec/data/convert_test/convert_page_break/setting.ini +0 -5
  63. data/spec/data/convert_test/convert_page_break/test_convert_page_break.txt +0 -60
  64. data/spec/data/convert_test/double_dash_to_image/correct_test_double_dash_to_image.txt +0 -14
  65. data/spec/data/convert_test/double_dash_to_image/setting.ini +0 -1
  66. data/spec/data/convert_test/double_dash_to_image/test_double_dash_to_image.txt +0 -12
  67. data/spec/data/convert_test/english/correct_test_english.txt +0 -27
  68. data/spec/data/convert_test/english/test_english.txt +0 -27
  69. data/spec/data/convert_test/force_indent_special_chapter/correct_test_force_indent_special_chapter.txt +0 -64
  70. data/spec/data/convert_test/force_indent_special_chapter/test_force_indent_special_chapter.txt +0 -61
  71. data/spec/data/convert_test/horizontal_ellipsis/correct_test_horizontal_ellipsis.txt +0 -53
  72. data/spec/data/convert_test/horizontal_ellipsis/test_horizontal_ellipsis.txt +0 -57
  73. data/spec/data/convert_test/insert_separator/correct_test_insert_separator.txt +0 -13
  74. data/spec/data/convert_test/insert_separator/setting.ini +0 -3
  75. data/spec/data/convert_test/insert_separator/test_insert_separator.txt +0 -12
  76. data/spec/data/convert_test/insert_separator_and_replace_txt/correct_test_insert_separator_and_replace_txt.txt +0 -12
  77. data/spec/data/convert_test/insert_separator_and_replace_txt/setting.ini +0 -3
  78. data/spec/data/convert_test/insert_separator_and_replace_txt/test_insert_separator_and_replace_txt.txt +0 -11
  79. data/spec/data/convert_test/kanji_num/correct_test_kanji_num.txt +0 -50
  80. data/spec/data/convert_test/kanji_num/test_kanji_num.txt +0 -56
  81. data/spec/data/convert_test/nonokagi/correct_test_nonokagi.txt +0 -30
  82. data/spec/data/convert_test/nonokagi/test_nonokagi.txt +0 -34
  83. data/spec/data/convert_test/replace/correct_test_replace.txt +0 -13
  84. data/spec/data/convert_test/replace/test_replace.txt +0 -14
  85. data/spec/data/convert_test/ruby/correct_test_ruby.txt +0 -161
  86. data/spec/data/convert_test/ruby/test_ruby.txt +0 -205
  87. data/spec/data/convert_test/ruby_youon/correct_test_ruby_youon.txt +0 -13
  88. data/spec/data/convert_test/ruby_youon/setting.ini +0 -2
  89. data/spec/data/convert_test/ruby_youon/test_ruby_youon.txt +0 -14
  90. data/spec/data/convert_test/sesame/correct_test_sesame.txt +0 -41
  91. data/spec/data/convert_test/sesame/test_sesame.txt +0 -52
  92. data/spec/data/convert_test/to_odd_leader/correct_test_to_odd_leader.txt +0 -21
  93. data/spec/data/convert_test/to_odd_leader/test_to_odd_leader.txt +0 -21
  94. data/spec/data/html_test.html +0 -5
  95. data/spec/data/html_test.txt +0 -4
  96. data/spec/data/test.ini +0 -10
  97. data/spec/device_spec.rb +0 -39
  98. data/spec/downloader_spec.rb +0 -37
  99. data/spec/eventable_spec.rb +0 -172
  100. data/spec/exit_code_spec.rb +0 -67
  101. data/spec/generator/convert_spec_gen.rb +0 -96
  102. data/spec/generator/num_to_kanji_test_gen.rb +0 -33
  103. data/spec/helper_spec.rb +0 -90
  104. data/spec/html_spec.rb +0 -83
  105. data/spec/ini_spec.rb +0 -145
  106. data/spec/input_spec.rb +0 -76
  107. data/spec/logger_spec.rb +0 -92
  108. data/spec/novelinfo_spec.rb +0 -15
  109. data/spec/novelsetting_spec.rb +0 -35
  110. data/spec/num_to_kanji_spec.rb +0 -2482
  111. data/spec/spec_helper.rb +0 -16
  112. data/spec/worker_spec.rb +0 -75
@@ -1,59 +0,0 @@
1
- test_auto_join_line
2
- whiteleaf
3
-
4
- [#改ページ]
5
- 作者による折り返しを強制連結テスト
6
-
7
-
8
- ○前後の文がつながって欲しい表現
9
-
10
-  悲痛な叫び声が背中に突き刺さっていたが、
11
-  明日香は無視して走り続けた。
12
-
13
-
14
-  悲痛な叫び声が背中に突き刺さっていたが、
15
-
16
-  明日香は無視して走り続けた。
17
-
18
-
19
-
20
-
21
- ×前後の文はつながって欲しくない表現
22
-
23
- 悲痛な叫び声が背中に突き刺さっていたが、
24
- 明日香は無視して走り続けた。
25
-
26
-
27
-  悲痛な叫び声が背中に突き刺さっていたが、
28
-
29
-
30
-  明日香は無視して走り続けた。
31
-
32
-
33
-  次の行が字下げなしの場合は、箇条書きの説明等の可能性があるため連結して欲しくない。
34
-  悲痛な叫び声が背中に突き刺さっていたが、
35
- 明日香は無視して走り続けた。
36
-
37
-
38
-  悲痛な叫び声が背中に突き刺さっていたが、
39
-  ……明日香は無視して走り続けた。
40
-
41
-
42
-  悲痛な叫び声が背中に突き刺さっていたが、
43
-  ――明日香は無視して走り続けた。
44
-
45
-
46
-  悲痛な叫び声が背中に突き刺さっていたが、
47
- 「私が行かなければ彼の犠牲は無駄になる……!」
48
-
49
-
50
-  悲痛な叫び声が背中に突き刺さっていたが、
51
-  「私が行かなければ彼の犠牲は無駄になる……!」
52
-
53
-
54
-  悲痛な叫び声が背中に突き刺さっていたが、
55
- (私が行かなければ彼の犠牲は無駄になる……!)
56
-
57
-
58
-       一度鑑定するか、倒した魔物、アイテムの情報を蓄積し、
59
-       後に閲覧できる。
@@ -1,22 +0,0 @@
1
- test_convert_page_break
2
- whiteleaf
3
-
4
- [#改ページ]
5
-
6
- [#3字下げ][#中見出し]改ページ変換テスト[#中見出し終わり]
7
-
8
-
9
-  一般的な空行一(改ページに変換されない)
10
-
11
-  一般的な空行二(改ページに変換されない)
12
-
13
-
14
-  空行九個(改ページに変換されない)
15
-
16
-
17
-
18
-  空行一〇個(改ページに変換される)
19
- [#改頁]
20
-  一〇個よりも多い空行(改ページに変換される)
21
- [#改頁]
22
-  終わり
@@ -1,5 +0,0 @@
1
- ; `to_page_break_threshold` で設定した個数以上連続する空行を改ページに変換する
2
- enable_convert_page_break = true
3
-
4
- ; ここで設定した値が `enable_convert_page_break` に反映される
5
- to_page_break_threshold = 10
@@ -1,60 +0,0 @@
1
- test_convert_page_break
2
- whiteleaf
3
-
4
- [#改ページ]
5
- 改ページ変換テスト
6
-
7
-  一般的な空行1(改ページに変換されない)
8
-
9
-
10
-  一般的な空行2(改ページに変換されない)
11
-
12
-
13
-
14
-
15
-  空行9個(改ページに変換されない)
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-  空行10個(改ページに変換される)
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-  10個よりも多い空行(改ページに変換される)
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-  終わり
@@ -1,14 +0,0 @@
1
- test_double_dash_to_image
2
- whiteleaf
3
-
4
- [#改ページ]
5
-
6
- [#3字下げ][#中見出し]二倍ダッシュ画像化テスト[#中見出し終わり]
7
-
8
-
9
-  ※[#(../../../../preset/doubledash.png)]二倍ダッシュ。
10
-  ※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/doubledash.png)]二倍ダッシュが二個。
11
-
12
-  ※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/singledash.png)]奇数パターン。
13
-  ※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/singledash.png)]五個。―一個。※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/doubledash.png)]※[#(../../../../preset/singledash.png)]七個。
14
-
@@ -1 +0,0 @@
1
- enable_double_dash_to_image = true
@@ -1,12 +0,0 @@
1
- test_double_dash_to_image
2
- whiteleaf
3
-
4
- [#改ページ]
5
- 二倍ダッシュ画像化テスト
6
-
7
-  ――二倍ダッシュ。
8
-  ――――二倍ダッシュが二個。
9
-
10
-
11
-  ―――奇数パターン。
12
-  ―――――五個。―一個。―――――――七個。
@@ -1,27 +0,0 @@
1
- test_english
2
- whiteleaf
3
-
4
- [#改ページ]
5
-
6
- [#3字下げ][#中見出し]アルファベット全角化&英文テスト[#中見出し終わり]
7
-
8
-
9
-  ■次の文中のアルファベットは全角化される
10
-  モンスターのHPが高すぎる。
11
-  MPが足りなくて魔法を使うことが出来ない。
12
-  Randomは全角になる。
13
-  ABC:DEF
14
-
15
-  ■次の文中のアルファベットは全角化されない(英文判定)
16
-  This is a pen.
17
-  This novel was written by whiteleaf7.
18
-  What happen!?
19
-  Ken's delivery shopping.
20
-  幼女戦記Tuez-les tous, Dieu reconnaitra les siens.
21
-  He said: "I’m dead beat, but I have work after this."
22
-  maid by H&M
23
-  background-color: black;
24
-  Alphabetは長いので半角のまま。
25
-  ABC_DEF_GHI
26
- [#二分アキ]「Deus ex machina!」
27
- [#二分アキ]「Deus ex machina!」
@@ -1,27 +0,0 @@
1
- test_english
2
- whiteleaf
3
-
4
- [#改ページ]
5
- アルファベット全角化&英文テスト
6
-
7
-
8
-  ■次の文中のアルファベットは全角化される
9
-  モンスターのHPが高すぎる。
10
-  MPが足りなくて魔法を使うことが出来ない。
11
-  Randomは全角になる。
12
-  ABC:DEF
13
-
14
-
15
-  ■次の文中のアルファベットは全角化されない(英文判定)
16
-  This is a pen.
17
-  This novel was written by whiteleaf7.
18
-  What happen!?
19
-  Ken's delivery shopping.
20
-  幼女戦記Tuez-les tous, Dieu reconnaitra les siens.
21
-  He said: "I’m dead beat, but I have work after this."
22
-  maid by H&M
23
-  background-color: black;
24
-  Alphabetは長いので半角のまま。
25
-  ABC_DEF_GHI
26
- 「Deus ex machina!」
27
- 「Deus ex machina!」
@@ -1,64 +0,0 @@
1
- test_force_indent_special_chapter
2
- whiteleaf
3
-
4
-  数字章見出しの自動インデント
5
-
6
-    [#ゴシック体]― [#縦中横]10[#縦中横終わり] ―[#ゴシック体終わり]
7
-
8
-  ほげほげ
9
-
10
-    [#ゴシック体]― 1 ―[#ゴシック体終わり]
11
-
12
-  ほげほげ
13
-
14
-    [#ゴシック体]〈[#縦中横]23[#縦中横終わり]〉[#ゴシック体終わり]
15
-
16
-  ほげほげ
17
-
18
-    [#ゴシック体]― 200 ―[#ゴシック体終わり]
19
-
20
-    [#ゴシック体]― 100 ―[#ゴシック体終わり]
21
-
22
-    [#ゴシック体]〈350〉[#ゴシック体終わり]
23
-
24
-    [#ゴシック体]〈[#縦中横]31[#縦中横終わり]〉[#ゴシック体終わり]
25
-
26
-    [#ゴシック体]5[#ゴシック体終わり]
27
-
28
-    [#ゴシック体][#縦中横]40[#縦中横終わり][#ゴシック体終わり]
29
-
30
-    [#ゴシック体]100[#ゴシック体終わり]
31
-
32
- 四桁以上は対象外
33
-
34
- 二万
35
-
36
-    [#ゴシック体]五[#ゴシック体終わり]
37
-
38
-    [#ゴシック体]三五[#ゴシック体終わり]
39
-
40
-    [#ゴシック体]一〇〇[#ゴシック体終わり]
41
-
42
- 六七八九
43
- 三百
44
-
45
-  第一〇章
46
-  これは変換してほしくない
47
- [#改頁]
48
-
49
-    [#ゴシック体]1[#ゴシック体終わり]
50
-
51
-  窓の外から小鳥のさえずる声が聞こえる。窓から差し込む淡い光が部屋の中に広がっている。
52
-  また今日も新しい朝が来た。
53
-
54
-    [#ゴシック体]2[#ゴシック体終わり]
55
-
56
-  仕事支度を整えた私は、時間を気にしつつもゆっくりとした気持ちで玄関の扉を開けた。
57
-  朝もやの漂う空気は静謐さを感じさせる。
58
-  まだ周囲には人はまばらにしかいない。
59
-  それも当然だろう。現在の時刻は午前六時。出勤するというにはまだ若干早いといえる時間だ。
60
-
61
-    [#ゴシック体]3[#ゴシック体終わり]
62
-
63
-  私は出勤したらまずデスク周りの掃除からはじめる。
64
-  ゴミひとつないキレイな環境で、今日もまた気持ちのいい心で仕事に励めるだろう。
@@ -1,61 +0,0 @@
1
- test_force_indent_special_chapter
2
- whiteleaf
3
-
4
-  数字章見出しの自動インデント
5
-
6
-
7
-  ―10―
8
-
9
-  ほげほげ
10
-
11
-
12
-  -1-
13
-  ほげほげ
14
-
15
-
16
-  <23>
17
-
18
-  ほげほげ
19
-
20
-
21
- -200
22
-
23
-
24
- -100-
25
- <350>
26
- <31>
27
- 5
28
- 40
29
- 100
30
-
31
- 四桁以上は対象外
32
- 1000
33
- 20000
34
-
35
- 三五
36
- 一〇〇
37
- 六七八九
38
- 三百
39
-
40
-
41
-  第10章
42
-
43
-  これは変換してほしくない
44
- [#改頁]
45
-  1
46
-
47
-  窓の外から小鳥のさえずる声が聞こえる。窓から差し込む淡い光が部屋の中に広がっている。
48
-  また今日も新しい朝が来た。
49
-
50
-
51
-  2
52
-
53
-  仕事支度を整えた私は、時間を気にしつつもゆっくりとした気持ちで玄関の扉を開けた。
54
-  朝もやの漂う空気は静謐さを感じさせる。
55
-  まだ周囲には人はまばらにしかいない。
56
-  それも当然だろう。現在の時刻は午前六時。出勤するというにはまだ若干早いといえる時間だ。
57
-
58
-  3
59
-
60
-  私は出勤したらまずデスク周りの掃除からはじめる。
61
-  ゴミひとつないキレイな環境で、今日もまた気持ちのいい心で仕事に励めるだろう。
@@ -1,53 +0,0 @@
1
- test_horizontal_ellipsis
2
- whiteleaf
3
-
4
- [#改ページ]
5
-
6
- [#3字下げ][#中見出し]三点リーダー化テスト[#中見出し終わり]
7
-
8
-
9
-  。
10
-  、
11
-
12
-  ……
13
-  ……
14
-  ……
15
-  ……
16
-  …………
17
-  …………
18
-  …………
19
-  …………
20
-  …………
21
-  …………
22
-  ………………
23
-
24
-  ……
25
-  ……
26
-  ……
27
-  ……
28
-  …………
29
-  …………
30
-  …………
31
-  …………
32
-  …………
33
-  …………
34
-  ………………
35
-
36
-  俺はこう尋ねた、
37
- [#二分アキ]「それは違うんじゃないか?」
38
-  俺としては、もっと溌溂とした姿を見てみたい、
39
-  ……だが。
40
-
41
-  ……
42
-  ……
43
-  ……
44
-  ……
45
-  …………
46
-  …………
47
-  …………
48
-  …………
49
-  …………
50
-  …………
51
-  ………………
52
-
53
-  そうだな……
@@ -1,57 +0,0 @@
1
- test_horizontal_ellipsis
2
- whiteleaf
3
-
4
- [#改ページ]
5
- 三点リーダー化テスト
6
-
7
-  。。
8
-  、、
9
-
10
-
11
-  ・・・
12
-  ・・・・
13
-  ・・・・・
14
-  ・・・・・・
15
-  ・・・・・・・
16
-  ・・・・・・・・
17
-  ・・・・・・・・・
18
-  ・・・・・・・・・・
19
-  ・・・・・・・・・・・
20
-  ・・・・・・・・・・・・
21
-  ・・・・・・・・・・・・・
22
-
23
-
24
-  、、、
25
-  、、、、
26
-  、、、、、
27
-  、、、、、、
28
-  、、、、、、、
29
-  、、、、、、、、
30
-  、、、、、、、、、
31
-  、、、、、、、、、、
32
-  、、、、、、、、、、、
33
-  、、、、、、、、、、、、
34
-  、、、、、、、、、、、、、
35
-
36
-
37
-  俺はこう尋ねた、
38
- 「それは違うんじゃないか?」
39
-  俺としては、
40
-  もっと溌溂とした姿を見てみたい、
41
-  ……だが。
42
-
43
-
44
-  。。。
45
-  。。。。
46
-  。。。。。
47
-  。。。。。。
48
-  。。。。。。。
49
-  。。。。。。。。
50
-  。。。。。。。。。
51
-  。。。。。。。。。。
52
-  。。。。。。。。。。。
53
-  。。。。。。。。。。。。
54
-  。。。。。。。。。。。。。
55
-
56
-
57
-  そうだな......