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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 57a95d1699c444fae04b41b676b0239e3f4a2f2f
4
- data.tar.gz: 7f8f6fee4324f6b3877bd85da0e356ee2e1da24a
3
+ metadata.gz: d5130d8511e5fc5de89d0565f3350ace22aef9b2
4
+ data.tar.gz: 6c11f785c58d3904564aef38751a002445995eed
5
5
  SHA512:
6
- metadata.gz: c3559c0a202c8d4293598daa2759146501bf8fc668cd1d8218a6ade5383e771abd6222f7c73d3f63a5cf0cb5d6773886027034b7b9c1c6a36c470a78da175348
7
- data.tar.gz: 2e3a54cd9d3a2f45cd53a8fe423016989cd5efb0558c2cc722dea1fb62770fc07b35700772353436a9d63f3713cd1cea624086c141508bb788402eca8d21c271
6
+ metadata.gz: ec3f6dccd1ae10276a5fe71412664dcd2c13ff23d2a39ec737c389393eddb9f840c7ecc0faf1d3ccdf7080868849ce888fc2c2d42a65fdca2fcfbc5d4ba413f4
7
+ data.tar.gz: 397d04c78afd2958536dc83b01bd2c6aa2c5f06cfb1752f7bc4259416b0b224e2c22a00ebc9cb6faf0ab5d6b90ac2d49ae69ab96cb2ad5cafa18760306537090
@@ -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
- ### 2.2.0 : 2015/02/19
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
- - Linux で `web` コマンド実行時にエラーが出ていたのを修正
44
- - カタカナのニを漢字の二に変換する対象を調整
45
- - Koboで前書き・後書きのレイアウトが崩れないように調整
46
-
47
-
48
- ### 2.1.0 : 2015/01/19
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
- - `convert.multi-device` オプションが追加されました
52
- + `convert` コマンド使用時に複数のフォーマットへ同時に変換することが出来ます
53
- + `narou s convert.multi-device=kindle,kobo,reader` のようにカンマ区切りで
54
- 設定します。この設定を有効にした場合、変換時に `device` 設定は無視されます
55
- + `send` コマンド時には通常通り `device` の設定が使用されます
56
- + 普通のEPUBが出力したい場合、端末名として `epub` を指定して下さい
57
- - `update.logging` オプションが追加されました
58
- + `update` コマンド使用時にログを保存するようになります
59
- + `narou s update.logging=true` で設定出来ます
60
- + ログはテキストファイルとして `log/` フォルダに保存されます(最新30件まで)。
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
- - WEB UI起動時には送信失敗リスト表示時に入力を求めないように修正
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
 
@@ -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 で単語選択をまともに出来るようにするために、0幅スペースを挿入する
1136
+ # Kindle端末で単語選択がしやすいように0幅スペースを挿入する
1137
1137
  #
1138
- def insert_word_separator(str)
1139
- return str unless @setting.enable_insert_word_separator && @device && @device.kindle?
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
- buffer = ""
1142
- ss = StringScanner.new(str)
1143
-
1144
- while char = ss.getch
1145
- buffer << "#{char}#{WORD_SEPARATOR}"
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
- return buffer
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 insert_word_separator(io.read)
1211
+ return insert_separator_for_selection(io.read)
1193
1212
  end
1194
1213
 
1195
1214
  #
@@ -345,7 +345,13 @@ class NovelSetting
345
345
  name: "enable_insert_word_separator",
346
346
  type: :boolean,
347
347
  value: false,
348
- help: "単語選択がうまく出来るようにダミーの区切りデータを挿入する(Kindle専用)"
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
@@ -3,5 +3,5 @@
3
3
  # Copyright 2013 whiteleaf. All rights reserved.
4
4
  #
5
5
 
6
- Version = "2.3.0"
6
+ Version = "2.3.1"
7
7
 
@@ -32,23 +32,31 @@ Gem::Specification.new do |gem|
32
32
  install_message = <<-EOS
33
33
  #{"*" * 79}
34
34
 
35
- 2.2.0 : 2015/02/19
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
- でON/OFF出来るようにしました
40
- + setting.ini enable_kana_ni_to_kanji_ni を設定することで変更が可能です
41
- + また、変換した場合は調査結果に記録されるようになります
42
- - `update.convert-only-new-arrival` オプションが追加されました
43
- + 新着時のみ変換を実行する `update` コマンドの `--convert-only-new-arrival`
44
- `setting` コマンドでも設定出来るようにするためのものです
45
- + `narou s update.convert-only-new-arrival=true` で設定出来ます
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 アップデートが完了しました。
@@ -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.insert_word_separator("今日もいい天気ですね")).to eq "今日もいい天気ですね"
107
+ expect(@converter.insert_separator_for_selection("今日もいい天気ですね")).to eq "今日もいい天気ですね"
109
108
  end
110
109
  end
111
110
 
112
- describe "Kindleの場合" do
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.0
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-21 00:00:00.000000000 Z
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.2.0 : 2015/02/19
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
- でON/OFF出来るようにしました
416
- + setting.ini enable_kana_ni_to_kanji_ni を設定することで変更が可能です
417
- + また、変換した場合は調査結果に記録されるようになります
418
- - `update.convert-only-new-arrival` オプションが追加されました
419
- + 新着時のみ変換を実行する `update` コマンドの `--convert-only-new-arrival`
420
- `setting` コマンドでも設定出来るようにするためのものです
421
- + `narou s update.convert-only-new-arrival=true` で設定出来ます
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 アップデートが完了しました。