narou 2.3.0 → 2.3.1
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.
- checksums.yaml +4 -4
- data/ChangeLog.md +9 -0
- data/README.md +21 -110
- data/lib/converterbase.rb +31 -12
- data/lib/novelsetting.rb +7 -1
- data/lib/version.rb +1 -1
- data/narou.gemspec +21 -13
- data/spec/converterbase_spec.rb +11 -8
- metadata +23 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5130d8511e5fc5de89d0565f3350ace22aef9b2
|
4
|
+
data.tar.gz: 6c11f785c58d3904564aef38751a002445995eed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec3f6dccd1ae10276a5fe71412664dcd2c13ff23d2a39ec737c389393eddb9f840c7ecc0faf1d3ccdf7080868849ce888fc2c2d42a65fdca2fcfbc5d4ba413f4
|
7
|
+
data.tar.gz: 397d04c78afd2958536dc83b01bd2c6aa2c5f06cfb1752f7bc4259416b0b224e2c22a00ebc9cb6faf0ab5d6b90ac2d49ae69ab96cb2ad5cafa18760306537090
|
data/ChangeLog.md
CHANGED
@@ -2,6 +2,15 @@
|
|
2
2
|
更新履歴 - ChangeLog
|
3
3
|
====================
|
4
4
|
|
5
|
+
2.3.1 : 2015/03/24
|
6
|
+
------------------
|
7
|
+
#### Bug Fix
|
8
|
+
- `enable_insert_word_separator` の動作が単語単位ではなく文字単位で選択になって
|
9
|
+
しまっていたのを修正
|
10
|
+
- 文字単位での選択は `enable_insert_char_separator` という設定で出来るように
|
11
|
+
しました
|
12
|
+
- 漢数字変換を無効にした場合に章見出しの自動インデント機能が壊れる問題を修正
|
13
|
+
|
5
14
|
2.3.0 : 2015/03/21
|
6
15
|
------------------
|
7
16
|
#### 追加機能
|
data/README.md
CHANGED
@@ -26,121 +26,32 @@ Narou.rb ― 「小説家になろう」「小説を読もう!」ダウンロ
|
|
26
26
|
更新履歴 - ChangeLog
|
27
27
|
--------------------
|
28
28
|
|
29
|
-
|
30
|
-
|
31
|
-
#### 追加機能
|
32
|
-
- 漢字の二と間違えてカタカナのニを使っていそうなのを漢字に変換する機能を、設定
|
33
|
-
でON/OFF出来るようにしました
|
34
|
-
+ setting.ini の enable_kana_ni_to_kanji_ni を設定することで変更が可能です
|
35
|
-
+ また、変換した場合は調査結果に記録されるようになります
|
36
|
-
- `update.convert-only-new-arrival` オプションが追加されました
|
37
|
-
+ 新着時のみ変換を実行する `update` コマンドの `--convert-only-new-arrival`
|
38
|
-
を `setting` コマンドでも設定出来るようにするためのものです
|
39
|
-
+ `narou s update.convert-only-new-arrival=true` で設定出来ます
|
40
|
-
|
29
|
+
2.3.1 : 2015/03/24
|
30
|
+
------------------
|
41
31
|
#### Bug Fix
|
42
|
-
-
|
43
|
-
|
44
|
-
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
32
|
+
- `enable_insert_word_separator` の動作が単語単位ではなく文字単位で選択になって
|
33
|
+
しまっていたのを修正
|
34
|
+
- 文字単位での選択は `enable_insert_char_separator` という設定で出来るように
|
35
|
+
しました
|
36
|
+
- 漢数字変換を無効にした場合に章見出しの自動インデント機能が壊れる問題を修正
|
37
|
+
|
38
|
+
2.3.0 : 2015/03/21
|
39
|
+
------------------
|
50
40
|
#### 追加機能
|
51
|
-
-
|
52
|
-
|
53
|
-
+ `narou
|
54
|
-
|
55
|
-
+
|
56
|
-
|
57
|
-
|
58
|
-
+
|
59
|
-
|
60
|
-
|
61
|
-
また、 `narou u --log N` コマンドでも確認出来ます(N=1以上の整数)。
|
62
|
-
Nを省略した場合は最新のログが表示されます。短縮する場合は `narou u -l N`
|
63
|
-
- `send.backup-bookmark` オプションが追加されました
|
64
|
-
+ `send` コマンド使用時に端末の栞データを自動でバックアップします(KindlePW系
|
65
|
-
専用。他の端末も栞データの仕様が分かれば対応可能)
|
66
|
-
+ `narou s send.backup-bookmark=true` で設定出来ます
|
67
|
-
+ 一括送信時(`narou send` とだけコマンドを打った時)のみバックアップします
|
68
|
-
+ 上記設定をせずに手動でバックアップする場合は `narou send --backup-bookmark`
|
69
|
-
もしくは `narou send -b` で行います
|
70
|
-
+ バックアップした栞データを復元(端末にコピー)するには
|
71
|
-
`narou send --restore-bookmark` もしくは `narou send -r` で行います
|
72
|
-
- 変換設定に行頭字下げを強制的に行う `enable_force_indent` を追加しました
|
73
|
-
+ enable_auto_indent は作者の意図的な字下げ無しを考慮して、全体的に字下げが
|
74
|
-
行われていない時にのみ字下げをするのに対して、今回のオプションは強制的に
|
75
|
-
字下げを行います。作者の字下げ忘れが多い場合に有効です
|
76
|
-
- WEB UI用ブックマークレットを実行した時にサーバがオフラインかどうか分かるよう
|
77
|
-
になりました。ヘルプ画面からブックマークレットを更新して下さい
|
78
|
-
|
79
|
-
#### 仕様変更
|
80
|
-
- `convert.copy_to` を `convert.copy-to` へ変更しました(表記ゆれの統一の為)
|
81
|
-
+ copy_to も後方互換維持のため残されますが、今後は非推奨になります
|
82
|
-
- `flag` コマンドが削除されました
|
83
|
-
|
84
|
-
#### Bug Fix
|
85
|
-
- WEB UI: リロードしても変換中のプログレスバーが表示されるように修正 #57
|
86
|
-
|
87
|
-
#### その他
|
88
|
-
- 将来的に対応バージョンを上げる予定なので、古いRuby(2.1.0未満)を使用している
|
89
|
-
場合にお知らせを表示するようになりました。当面は1.9.3でも動くままですが、いま
|
90
|
-
のうちにRuby2.1.0以上へのアップグレードをお願いします
|
91
|
-
|
92
|
-
|
93
|
-
### 2.0.2 : 2015/01/16
|
94
|
-
|
95
|
-
#### 仕様変更
|
96
|
-
- 青空文庫形式のコメントの削除はWEB小説を変換する場合は無効にするように変更
|
97
|
-
- `web` コマンド実行時すでにサーバが立ち上がっていてもブラウザを開くように変更
|
98
|
-
- ダウンロード時に表示する節のタイトルを表示するタイミングを調整
|
41
|
+
- Kindle端末で単語の選択を出来るようにするために、小説別変換設定に
|
42
|
+
`enable_insert_word_separator` オプションが追加されました
|
43
|
+
+ このオプションを使うためには `narou init` を実行して AozoraEpub3 の設定を
|
44
|
+
修正する必要があります
|
45
|
+
+ 各小説の setting.ini 内に `enable_insert_word_separator=true` と追加で書き
|
46
|
+
込むか、 `narou s force.enable_insert_word_separator=true` とコマンドを打ち
|
47
|
+
込むことで有効に出来ます。(WEB UI で設定すると楽です)
|
48
|
+
+ このオプションは、Kindle端末で単語が選択出来ない問題に対応するものです。
|
49
|
+
device が kindle の時のみ使用可能です。また、Send to Kindle で mobi を azw3
|
50
|
+
に変換する場合は単語選択は可能なので、設定する必要はありません
|
99
51
|
|
100
52
|
#### Bug Fix
|
101
|
-
-
|
102
|
-
- ハーメルンの小説が非公開設定になるとエラーになるのを修正 #59
|
103
|
-
- `mail` コマンドで送信時にエラーが出る場合がある問題に対応
|
104
|
-
|
105
|
-
|
106
|
-
### 2.0.1 : 2014/12/26
|
107
|
-
|
108
|
-
#### Bug Fix
|
109
|
-
- ヘルプ画面の画像が表示出来ない場合があるのを修正
|
110
|
-
|
111
|
-
|
112
|
-
### 2.0.0 : 2014/12/26
|
113
|
-
|
114
|
-
#### 追加機能
|
115
|
-
- `web` コマンドを実装しました。ブラウザベースによるWEB UIを使うことが出来ます
|
116
|
-
+ `narou web` でWEBサーバを起動し、自動的にブラウザが開きます
|
117
|
-
+ ブラウザは可能な限り最新を推奨。IEは9以下は動きません
|
118
|
-
- `download.use-subdirectory` オプションが追加されました。小説IDの先頭数文字で
|
119
|
-
サブフォルダを作成しグループ分けすることで、大量の小説を管理する場合のパフォ
|
120
|
-
ーマンス劣化に対応します
|
121
|
-
+ `narou s download.use-subdirectory=true` として設定出来ます
|
122
|
-
+ すでに管理済みの小説の保存フォルダは変更されません
|
123
|
-
- ダウンロード時やアップデート時の最後に、容量不足等で書籍データを送信出来なか
|
124
|
-
ったファイル一覧を表示するようにしました
|
125
|
-
|
126
|
-
#### 仕様変更
|
127
|
-
- 終了コードを整理しました
|
128
|
-
+ 正常終了時:0
|
129
|
-
+ 異常終了時:127
|
130
|
-
+ updateコマンド及びdownloadコマンドで失敗した場合:失敗した小説の数
|
131
|
-
+ settingコマンド:設定でエラーになった数
|
132
|
-
- 見出しリスト.txt を保存しなくなりました
|
133
|
-
|
134
|
-
#### Bug Fix
|
135
|
-
- 新規ダウンロードする際にエラーになる場合があったのを修正 #53
|
136
|
-
- 小説家になろうのルビ仕様に準拠していない書式があったのを修正
|
137
|
-
|
138
|
-
|が存在していなく、かつ《 》内に自動ルビ化対象文字以外がある場合に
|
139
|
-
ルビ化はされない
|
53
|
+
- ハーメルンの仕様変更に対応しました
|
140
54
|
|
141
|
-
- 上記修正に伴い、ログ・ホライズン(n8725k)の converter.rb を差し替えました
|
142
|
-
- Java がインストールされていない場合でも EPUB ファイルの作成が成功したと表示
|
143
|
-
されてしまうのを修正 #55
|
144
55
|
|
145
56
|
----
|
146
57
|
|
data/lib/converterbase.rb
CHANGED
@@ -612,8 +612,8 @@ class ConverterBase
|
|
612
612
|
# 前後に空行を入れたいが、それは行処理ループ中に行う
|
613
613
|
symbols_to_zenkaku(str)
|
614
614
|
index = @@count_of_rebuild_container += 1
|
615
|
-
@force_indent_special_chapter_list[convert_numbers(index.to_s)] = str
|
616
|
-
"[#章見出しっぽい文=#{index}]"
|
615
|
+
@force_indent_special_chapter_list[convert_numbers(index.to_s.rjust(10,"0"))] = str
|
616
|
+
"[#章見出しっぽい文=#{index.to_s.rjust(10,"0")}]"
|
617
617
|
end
|
618
618
|
end
|
619
619
|
|
@@ -1133,19 +1133,26 @@ class ConverterBase
|
|
1133
1133
|
WORD_SEPARATOR = "[#zws]" # zws = zero width space
|
1134
1134
|
|
1135
1135
|
#
|
1136
|
-
# Kindle
|
1136
|
+
# Kindle端末で単語選択がしやすいように0幅スペースを挿入する
|
1137
1137
|
#
|
1138
|
-
def
|
1139
|
-
return str unless @
|
1138
|
+
def insert_separator_for_selection(str)
|
1139
|
+
return str unless @device && @device.kindle?
|
1140
1140
|
return str if @text_type != "body" && @text_type != "textfile"
|
1141
|
-
|
1142
|
-
|
1143
|
-
|
1144
|
-
|
1145
|
-
|
1141
|
+
if @setting.enable_insert_word_separator
|
1142
|
+
insert_word_separator(str)
|
1143
|
+
elsif @setting.enable_insert_char_separator
|
1144
|
+
insert_char_separator(str)
|
1145
|
+
else
|
1146
|
+
str
|
1146
1147
|
end
|
1147
|
-
|
1148
|
+
end
|
1148
1149
|
|
1150
|
+
#
|
1151
|
+
# 単語単位でzwsを挿入する
|
1152
|
+
#
|
1153
|
+
def insert_word_separator(str)
|
1154
|
+
buffer = ""
|
1155
|
+
ss = StringScanner.new(str)
|
1149
1156
|
before_symbol = false
|
1150
1157
|
while char = ss.getch
|
1151
1158
|
symbol = false
|
@@ -1182,6 +1189,18 @@ class ConverterBase
|
|
1182
1189
|
buffer
|
1183
1190
|
end
|
1184
1191
|
|
1192
|
+
#
|
1193
|
+
# 文字単位でzwsを挿入する
|
1194
|
+
#
|
1195
|
+
def insert_char_separator(str)
|
1196
|
+
buffer = ""
|
1197
|
+
ss = StringScanner.new(str)
|
1198
|
+
while char = ss.getch
|
1199
|
+
buffer << "#{char}#{WORD_SEPARATOR}"
|
1200
|
+
end
|
1201
|
+
buffer
|
1202
|
+
end
|
1203
|
+
|
1185
1204
|
def convert(text, text_type)
|
1186
1205
|
return "" if text == ""
|
1187
1206
|
@text_type = text_type
|
@@ -1189,7 +1208,7 @@ class ConverterBase
|
|
1189
1208
|
(io = before_convert(io)).rewind
|
1190
1209
|
(io = convert_main(io)).rewind
|
1191
1210
|
(io = after_convert(io)).rewind
|
1192
|
-
return
|
1211
|
+
return insert_separator_for_selection(io.read)
|
1193
1212
|
end
|
1194
1213
|
|
1195
1214
|
#
|
data/lib/novelsetting.rb
CHANGED
@@ -345,7 +345,13 @@ class NovelSetting
|
|
345
345
|
name: "enable_insert_word_separator",
|
346
346
|
type: :boolean,
|
347
347
|
value: false,
|
348
|
-
help: "
|
348
|
+
help: "単語選択がしやすいように単語単位の区切りデータを挿入する(Kindle専用)"
|
349
|
+
},
|
350
|
+
{
|
351
|
+
name: "enable_insert_char_separator",
|
352
|
+
type: :boolean,
|
353
|
+
value: false,
|
354
|
+
help: "文字選択がしやすいように1文字ずつ区切りデータを挿入する(Kindle専用。enable_insert_word_separatorが優先される)"
|
349
355
|
},
|
350
356
|
]
|
351
357
|
end
|
data/lib/version.rb
CHANGED
data/narou.gemspec
CHANGED
@@ -32,23 +32,31 @@ Gem::Specification.new do |gem|
|
|
32
32
|
install_message = <<-EOS
|
33
33
|
#{"*" * 79}
|
34
34
|
|
35
|
-
2.
|
35
|
+
2.3.1 : 2015/03/24
|
36
|
+
------------------
|
37
|
+
#### Bug Fix
|
38
|
+
- `enable_insert_word_separator` の動作が単語単位ではなく文字単位で選択になって
|
39
|
+
しまっていたのを修正
|
40
|
+
- 文字単位での選択は `enable_insert_char_separator` という設定で出来るように
|
41
|
+
しました
|
42
|
+
- 漢数字変換を無効にした場合に章見出しの自動インデント機能が壊れる問題を修正
|
43
|
+
|
44
|
+
2.3.0 : 2015/03/21
|
36
45
|
------------------
|
37
46
|
#### 追加機能
|
38
|
-
-
|
39
|
-
|
40
|
-
+
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
+
|
47
|
+
- Kindle端末で単語の選択を出来るようにするために、小説別変換設定に
|
48
|
+
`enable_insert_word_separator` オプションが追加されました
|
49
|
+
+ このオプションを使うためには `narou init` を実行して AozoraEpub3 の設定を
|
50
|
+
修正する必要があります
|
51
|
+
+ 各小説の setting.ini 内に `enable_insert_word_separator=true` と追加で書き
|
52
|
+
込むか、 `narou s force.enable_insert_word_separator=true` とコマンドを打ち
|
53
|
+
込むことで有効に出来ます。(WEB UI で設定すると楽です)
|
54
|
+
+ このオプションは、Kindle端末で単語が選択出来ない問題に対応するものです。
|
55
|
+
device が kindle の時のみ使用可能です。また、Send to Kindle で mobi を azw3
|
56
|
+
に変換する場合は単語選択は可能なので、設定する必要はありません
|
46
57
|
|
47
58
|
#### Bug Fix
|
48
|
-
-
|
49
|
-
- Linux で `web` コマンド実行時にエラーが出ていたのを修正
|
50
|
-
- カタカナのニを漢字の二に変換する対象を調整
|
51
|
-
- Koboで前書き・後書きのレイアウトが崩れないように調整
|
59
|
+
- ハーメルンの仕様変更に対応しました
|
52
60
|
|
53
61
|
|
54
62
|
narou コマンドのインストール or アップデートが完了しました。
|
data/spec/converterbase_spec.rb
CHANGED
@@ -99,21 +99,16 @@ opqrstu
|
|
99
99
|
setting.enable_insert_word_separator = true
|
100
100
|
end
|
101
101
|
|
102
|
-
describe "Kindle以外" do
|
103
|
-
before do
|
102
|
+
describe "Kindle以外" do before do
|
104
103
|
@converter.instance_variable_set(:@device, Narou.get_device("reader"))
|
105
104
|
end
|
106
105
|
|
107
106
|
it "何も弄らない" do
|
108
|
-
expect(@converter.
|
107
|
+
expect(@converter.insert_separator_for_selection("今日もいい天気ですね")).to eq "今日もいい天気ですね"
|
109
108
|
end
|
110
109
|
end
|
111
110
|
|
112
|
-
describe "
|
113
|
-
before do
|
114
|
-
@converter.instance_variable_set(:@device, Narou.get_device("kindle"))
|
115
|
-
end
|
116
|
-
|
111
|
+
describe "単語単位で区切る" do
|
117
112
|
it do
|
118
113
|
expect(@converter.insert_word_separator \
|
119
114
|
"今日もいい天気ですね").to eq \
|
@@ -156,6 +151,14 @@ opqrstu
|
|
156
151
|
"「[#zws]あいう[#zws]」、「[#zws]えお[#zws]」"
|
157
152
|
end
|
158
153
|
end
|
154
|
+
|
155
|
+
describe "文字単位で区切る" do
|
156
|
+
it do
|
157
|
+
expect(@converter.insert_char_separator \
|
158
|
+
"今日もいい天気").to eq \
|
159
|
+
"今[#zws]日[#zws]も[#zws]い[#zws]い[#zws]天[#zws]気[#zws]"
|
160
|
+
end
|
161
|
+
end
|
159
162
|
end
|
160
163
|
end
|
161
164
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: narou
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- whiteleaf7
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-03-
|
11
|
+
date: 2015-03-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: termcolorlight
|
@@ -408,23 +408,31 @@ metadata: {}
|
|
408
408
|
post_install_message: |
|
409
409
|
*******************************************************************************
|
410
410
|
|
411
|
-
2.
|
411
|
+
2.3.1 : 2015/03/24
|
412
|
+
------------------
|
413
|
+
#### Bug Fix
|
414
|
+
- `enable_insert_word_separator` の動作が単語単位ではなく文字単位で選択になって
|
415
|
+
しまっていたのを修正
|
416
|
+
- 文字単位での選択は `enable_insert_char_separator` という設定で出来るように
|
417
|
+
しました
|
418
|
+
- 漢数字変換を無効にした場合に章見出しの自動インデント機能が壊れる問題を修正
|
419
|
+
|
420
|
+
2.3.0 : 2015/03/21
|
412
421
|
------------------
|
413
422
|
#### 追加機能
|
414
|
-
-
|
415
|
-
|
416
|
-
+
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
+
|
423
|
+
- Kindle端末で単語の選択を出来るようにするために、小説別変換設定に
|
424
|
+
`enable_insert_word_separator` オプションが追加されました
|
425
|
+
+ このオプションを使うためには `narou init` を実行して AozoraEpub3 の設定を
|
426
|
+
修正する必要があります
|
427
|
+
+ 各小説の setting.ini 内に `enable_insert_word_separator=true` と追加で書き
|
428
|
+
込むか、 `narou s force.enable_insert_word_separator=true` とコマンドを打ち
|
429
|
+
込むことで有効に出来ます。(WEB UI で設定すると楽です)
|
430
|
+
+ このオプションは、Kindle端末で単語が選択出来ない問題に対応するものです。
|
431
|
+
device が kindle の時のみ使用可能です。また、Send to Kindle で mobi を azw3
|
432
|
+
に変換する場合は単語選択は可能なので、設定する必要はありません
|
422
433
|
|
423
434
|
#### Bug Fix
|
424
|
-
-
|
425
|
-
- Linux で `web` コマンド実行時にエラーが出ていたのを修正
|
426
|
-
- カタカナのニを漢字の二に変換する対象を調整
|
427
|
-
- Koboで前書き・後書きのレイアウトが崩れないように調整
|
435
|
+
- ハーメルンの仕様変更に対応しました
|
428
436
|
|
429
437
|
|
430
438
|
narou コマンドのインストール or アップデートが完了しました。
|