narou 1.6.4 → 1.7.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 (72) hide show
  1. checksums.yaml +13 -5
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +419 -0
  4. data/ChangeLog.md +23 -0
  5. data/README.md +24 -123
  6. data/Rakefile +1 -1
  7. data/bin/narou +0 -0
  8. data/lib/color.rb +1 -8
  9. data/lib/command/backup.rb +1 -1
  10. data/lib/command/diff.rb +5 -5
  11. data/lib/command/download.rb +2 -2
  12. data/lib/command/freeze.rb +1 -9
  13. data/lib/command/init.rb +4 -4
  14. data/lib/command/list.rb +49 -20
  15. data/lib/command/mail.rb +4 -4
  16. data/lib/command/remove.rb +2 -3
  17. data/lib/command/send.rb +3 -3
  18. data/lib/command/tag.rb +6 -6
  19. data/lib/command/update.rb +2 -2
  20. data/lib/commandbase.rb +4 -4
  21. data/lib/commandline.rb +1 -1
  22. data/lib/converterbase.rb +27 -17
  23. data/lib/database.rb +1 -1
  24. data/lib/device.rb +1 -1
  25. data/lib/device/ibooks.rb +2 -2
  26. data/lib/device/ibunko.rb +2 -2
  27. data/lib/diffviewer.rb +7 -8
  28. data/lib/downloader.rb +22 -24
  29. data/lib/helper.rb +2 -2
  30. data/lib/illustration.rb +1 -1
  31. data/lib/ini.rb +0 -1
  32. data/lib/inspector.rb +2 -2
  33. data/lib/inventory.rb +1 -1
  34. data/lib/loadconverter.rb +1 -1
  35. data/lib/logger.rb +2 -14
  36. data/lib/mailer.rb +2 -2
  37. data/lib/narou.rb +5 -5
  38. data/lib/novelconverter.rb +4 -4
  39. data/lib/novelsetting.rb +1 -1
  40. data/lib/sitesetting.rb +1 -1
  41. data/lib/template.rb +2 -2
  42. data/lib/version.rb +2 -1
  43. data/narou.bat +0 -0
  44. data/narou.gemspec +15 -126
  45. data/narou.rb +1 -1
  46. data/preset/ncode.syosetu.com/n4259s/converter.rb +1 -1
  47. data/preset/ncode.syosetu.com/n8725k/converter.rb +1 -1
  48. data/spec/convert_spec.rb +6 -3
  49. data/spec/data/convert_test/auto_indent/correct_test_auto_indent.txt +3 -0
  50. data/spec/data/convert_test/auto_indent/test_auto_indent.txt +4 -0
  51. data/spec/data/convert_test/auto_join_bracket/correct_test_auto_join_bracket.txt +12 -1
  52. data/spec/data/convert_test/auto_join_bracket/test_auto_join_bracket.txt +12 -0
  53. data/spec/data/convert_test/auto_join_line/test_auto_join_line.txt +0 -0
  54. data/spec/data/convert_test/convert_page_break/test_convert_page_break.txt +0 -0
  55. data/spec/data/convert_test/english/correct_test_english.txt +26 -0
  56. data/spec/data/convert_test/english/test_english.txt +27 -0
  57. data/spec/data/convert_test/force_indent_special_chapter/test_force_indent_special_chapter.txt +0 -0
  58. data/spec/data/convert_test/horizontal_ellipsis/test_horizontal_ellipsis.txt +0 -0
  59. data/spec/data/convert_test/kanji_num/test_kanji_num.txt +0 -0
  60. data/spec/data/convert_test/nonokagi/test_nonokagi.txt +0 -0
  61. data/spec/data/convert_test/replace/correct_test_replace.txt +1 -1
  62. data/spec/data/convert_test/replace/replace.txt +0 -0
  63. data/spec/data/convert_test/replace/test_replace.txt +0 -0
  64. data/spec/data/convert_test/ruby/correct_test_ruby.txt +3 -1
  65. data/spec/data/convert_test/ruby/test_ruby.txt +3 -0
  66. data/spec/data/convert_test/ruby_youon/test_ruby_youon.txt +0 -0
  67. data/spec/data/convert_test/sesame/test_sesame.txt +0 -0
  68. data/spec/data/convert_test/to_odd_leader/test_to_odd_leader.txt +0 -0
  69. data/spec/generator/convert_spec_gen.rb +2 -3
  70. data/spec/spec_helper.rb +2 -2
  71. metadata +29 -162
  72. data/lib/ruby.rb +0 -152
@@ -9,7 +9,7 @@ require "open3"
9
9
  # 雑多なお助けメソッド群
10
10
  #
11
11
  module Helper
12
- extend self
12
+ module_function
13
13
 
14
14
  HOST_OS = RbConfig::CONFIG["host_os"]
15
15
 
@@ -191,7 +191,7 @@ module Helper
191
191
  sleep(sleep_time)
192
192
  end
193
193
  }.tap { |th|
194
- if Helper::engine_jruby?
194
+ if Helper.engine_jruby?
195
195
  # MEMO:
196
196
  # Open3.capture3 - 全く動かない
197
197
  # `` バッククウォート - 出力が文字化けする
@@ -77,7 +77,7 @@ class Illustration
77
77
 
78
78
  def create_illust_path(basename)
79
79
  illust_abs_dir = File.join(@setting.archive_path, ILLUST_DIR)
80
- Dir.mkdir(illust_abs_dir) unless File.exists?(illust_abs_dir)
80
+ Dir.mkdir(illust_abs_dir) unless File.exist?(illust_abs_dir)
81
81
  File.join(illust_abs_dir, basename)
82
82
  end
83
83
 
data/lib/ini.rb CHANGED
@@ -22,7 +22,6 @@ class Ini
22
22
  end
23
23
 
24
24
  def self.load_file(file)
25
- text = ""
26
25
  case
27
26
  when file.kind_of?(String)
28
27
  text = open(file, "r:BOM|UTF-8") { |fp| fp.read }
@@ -26,7 +26,7 @@ class Inspector
26
26
 
27
27
  def self.read_messages(setting)
28
28
  inspect_log = File.join(setting.archive_path, INSPECT_LOG_NAME)
29
- if File.exists?(inspect_log)
29
+ if File.exist?(inspect_log)
30
30
  File.read(inspect_log)
31
31
  else
32
32
  nil
@@ -194,7 +194,7 @@ class Inspector
194
194
  target_line_count = 0
195
195
  dont_indent_line_count = 0
196
196
  data.scan(/^[^#{IGNORE_INDENT_CHAR}]/).tap { |a|
197
- target_line_count = a.count
197
+ target_line_count = a.size
198
198
  }.each { |line|
199
199
  head = line[0]
200
200
  if head != " " && head != " "
@@ -33,7 +33,7 @@ module Inventory
33
33
  end
34
34
  return nil unless dir
35
35
  @inventory_file_path = File.join(dir, name + ".yaml")
36
- if File.exists?(@inventory_file_path)
36
+ if File.exist?(@inventory_file_path)
37
37
  self.merge!(YAML.load_file(@inventory_file_path))
38
38
  end
39
39
  end
@@ -61,7 +61,7 @@ end
61
61
  # end
62
62
  def load_converter(title, archive_path)
63
63
  converter_path = File.join(archive_path, "converter.rb")
64
- if File.exists?(converter_path)
64
+ if File.exist?(converter_path)
65
65
  if Helper.os_windows?
66
66
  # TODO: RubyのバグでUTF-8なパスをrequireが見えてない。修正されたら消す
67
67
  unless $converter_load_once[archive_path]
@@ -7,22 +7,10 @@ require "singleton"
7
7
  require "stringio"
8
8
  require_relative "color"
9
9
 
10
- class String
11
- def escape
12
- TermColor.escape(self)
13
- end
14
-
15
- if RUBY_VERSION < "2.0.0"
16
- def termcolor
17
- TermColor.parse(self.dup.force_encoding(Encoding::ASCII_8BIT))
18
- end
19
- end
20
- end
21
-
22
10
  if $disable_color
23
11
  class String
24
12
  def termcolor
25
- self.gsub(/<\/?.+?>/, "").gsub("&lt;", "<").gsub("&gt;", ">")
13
+ TermColorLight.strip_tag(self)
26
14
  end
27
15
  end
28
16
  end
@@ -121,7 +109,7 @@ class LoggerError < StringIO
121
109
  end
122
110
 
123
111
  def error(str)
124
- warn "<bold><red>[ERROR]</red></bold> #{TermColor.escape(str)}".termcolor
112
+ warn "<bold><red>[ERROR]</red></bold> #{str.escape}".termcolor
125
113
  end
126
114
 
127
115
  $stdout = Logger.get
@@ -3,7 +3,6 @@
3
3
  # Copyright 2013 whiteleaf. All rights reserved.
4
4
  #
5
5
 
6
- require "pony"
7
6
  require "yaml"
8
7
  require_relative "narou"
9
8
 
@@ -21,7 +20,7 @@ class Mailer
21
20
  this = instance
22
21
  this.clear
23
22
  setting_file_path = File.join(Narou.get_root_dir, SETTING_FILE)
24
- if File.exists?(setting_file_path)
23
+ if File.exist?(setting_file_path)
25
24
  options = YAML.load_file(setting_file_path)
26
25
  unless options.delete(:complete)
27
26
  raise SettingUncompleteError, "設定ファイルの書き換えが終了していないようです。\n" +
@@ -48,6 +47,7 @@ class Mailer
48
47
  end
49
48
 
50
49
  def send(message, attached_file_path = nil)
50
+ require "pony"
51
51
  @error_message = ""
52
52
  params = @options.dup
53
53
  params[:body] = message
@@ -11,7 +11,7 @@ if Helper.engine_jruby?
11
11
  end
12
12
 
13
13
  module Narou
14
- extend self
14
+ module_function
15
15
 
16
16
  LOCAL_SETTING_DIR = ".narou"
17
17
  GLOBAL_SETTING_DIR = ".narousetting"
@@ -55,7 +55,7 @@ module Narou
55
55
  def get_global_setting_dir
56
56
  return @@global_setting_dir if @@global_setting_dir
57
57
  @@global_setting_dir = File.expand_path(File.join("~", GLOBAL_SETTING_DIR))
58
- unless File.exists?(@@global_setting_dir)
58
+ unless File.exist?(@@global_setting_dir)
59
59
  FileUtils.mkdir(@@global_setting_dir)
60
60
  end
61
61
  @@global_setting_dir
@@ -100,7 +100,7 @@ module Narou
100
100
  end
101
101
 
102
102
  def aozoraepub3_directory?(path)
103
- File.exists?(create_aozoraepub3_jar_path(path))
103
+ File.exist?(create_aozoraepub3_jar_path(path))
104
104
  end
105
105
 
106
106
  #
@@ -115,14 +115,14 @@ module Narou
115
115
  global_setting_aozora_path = Inventory.load("global_setting", :global)["aozoraepub3dir"]
116
116
  if global_setting_aozora_path
117
117
  aozora_jar_path = create_aozoraepub3_jar_path(global_setting_aozora_path)
118
- if File.exists?(aozora_jar_path)
118
+ if File.exist?(aozora_jar_path)
119
119
  @@aozora_jar_path = aozora_jar_path
120
120
  return aozora_jar_path
121
121
  end
122
122
  end
123
123
  [Narou.get_root_dir, Narou.get_script_dir].each do |dir|
124
124
  aozora_jar_path = create_aozoraepub3_jar_path(dir, AOZORAEPUB3_DIR)
125
- if File.exists?(aozora_jar_path)
125
+ if File.exist?(aozora_jar_path)
126
126
  @@aozora_jar_path = aozora_jar_path
127
127
  return aozora_jar_path
128
128
  end
@@ -75,13 +75,13 @@ class NovelConverter
75
75
 
76
76
  def self.stash_aozora_fonts_directory
77
77
  fonts_path = File.join(File.dirname(Narou.get_aozoraepub3_path), "template/OPS/fonts")
78
- return unless File.exists?(fonts_path)
78
+ return unless File.exist?(fonts_path)
79
79
  FileUtils.mv(fonts_path, fonts_path + "_hide")
80
80
  end
81
81
 
82
82
  def self.visible_aozora_fonts_directory
83
83
  fonts_path = File.join(File.dirname(Narou.get_aozoraepub3_path), "template/OPS/fonts")
84
- return unless File.exists?(fonts_path + "_hide")
84
+ return unless File.exist?(fonts_path + "_hide")
85
85
  FileUtils.mv(fonts_path + "_hide", fonts_path)
86
86
  end
87
87
 
@@ -301,7 +301,7 @@ class NovelConverter
301
301
  [".jpg", ".png", ".jpeg"].each do |ext|
302
302
  filename = "cover#{ext}"
303
303
  cover_path = File.join(archive_path, filename)
304
- if File.exists?(cover_path)
304
+ if File.exist?(cover_path)
305
305
  return filename
306
306
  end
307
307
  end
@@ -350,7 +350,7 @@ class NovelConverter
350
350
  site_setting = find_site_setting
351
351
  html.set_illust_setting({current_url: site_setting["illust_current_url"],
352
352
  grep_pattern: site_setting["illust_grep_pattern"]})
353
- progressbar = ProgressBar.new(@toc["subtitles"].count)
353
+ progressbar = ProgressBar.new(@toc["subtitles"].size)
354
354
  @toc["subtitles"].each_with_index do |subinfo, i|
355
355
  progressbar.output(i)
356
356
  section = load_novel_section(subinfo)
@@ -96,7 +96,7 @@ class NovelSetting
96
96
  def load_replace_pattern
97
97
  @replace_pattern = []
98
98
  replace_txt_path = File.join(@archive_path, REPLACE_NAME)
99
- if File.exists?(replace_txt_path)
99
+ if File.exist?(replace_txt_path)
100
100
  open(replace_txt_path, "r:BOM|UTF-8") do |fp|
101
101
  fp.each do |line|
102
102
  line.sub!(/[\r\n]+\z/, "")
@@ -35,7 +35,7 @@ class SiteSetting
35
35
  match_data = nil
36
36
  keys.each do |key|
37
37
  setting_value = self[key] or next
38
- (setting_value.kind_of?(Array) ? setting_value : [setting_value]).each do |value|
38
+ [*setting_value].each do |value|
39
39
  match_data = source.match(/#{value}/m)
40
40
  if match_data
41
41
  @match_values[key] = value # yamlのキーでもmatch_valuesに設定しておくが、
@@ -24,7 +24,7 @@ class Template
24
24
  dest_filepath = File.join(dest_filepath, src_filename)
25
25
  end
26
26
  unless overwrite
27
- return if File.exists?(dest_filepath)
27
+ return if File.exist?(dest_filepath)
28
28
  end
29
29
  result = get(src_filename, _binding) or return nil
30
30
  if Helper.os_windows?
@@ -46,7 +46,7 @@ class Template
46
46
  @@src_filename = src_filename
47
47
  [Narou.get_root_dir, Narou.get_script_dir].each do |dir|
48
48
  path = File.join(dir, TEMPLATE_DIR, src_filename + ".erb")
49
- next unless File.exists?(path)
49
+ next unless File.exist?(path)
50
50
  src = open(path, "r:BOM|UTF-8") { |fp| fp.read }
51
51
  result = ERB.new(src, nil, "-").result(_binding)
52
52
  return result
@@ -3,4 +3,5 @@
3
3
  # Copyright 2013 whiteleaf. All rights reserved.
4
4
  #
5
5
 
6
- Version = "1.6.4"
6
+ Version = "1.7.0"
7
+
data/narou.bat CHANGED
File without changes
@@ -11,7 +11,7 @@ module Narou
11
11
  end
12
12
  end
13
13
  at_exit do
14
- if File.exists?("commitversion")
14
+ if File.exist?("commitversion")
15
15
  FileUtils.rm("commitversion")
16
16
  end
17
17
  end
@@ -32,138 +32,27 @@ Gem::Specification.new do |gem|
32
32
  install_message = <<-EOS
33
33
  #{"*" * 79}
34
34
 
35
- 1.6.0 : 2014/08/28
35
+ 1.7.0 : 2014/09/27
36
36
  ------------------
37
37
  #### 追加機能
38
- - **iBooks** での管理に対応しました
39
- + Mac OS X Mavericks以上が対象です
40
- + `narou s device=ibooks` で変更できます
41
- + 初回登録時はiBooksでEPUBファイルを開くので、ウィンドウが大量に開くことに
42
- ご注意ください。次回以降はiBooksの管理フォルダを直接更新してウィンドウが
43
- 開くことはありません
44
- - **JRuby** での実行に対応しました(Windowsでは環境変数JAVA_OPTSに
45
- -Dfile.encoding=UTF8を設定して下さい)
46
- - `diff` コマンドで外部ツールがなくても更新された部分の差分を表示できるように
47
- なりました
48
- + `difftool` が設定されていない場合、独自の差分表示処理を行います。
49
- 小説用なので一文字単位の修正がわかりやすいように調整してあります
38
+ - `list` コマンドの `--filter` オプションに `frozen` 及び `nonfrozen` が追加
39
+ されました。凍結状態のフィルタリングが可能になります。また、同時に複数の値を
40
+ 受け付けるようになりました
50
41
 
51
- ![diff使用時のイメージ](https://raw.github.com/wiki/whiteleaf7/narou/images/diff_cap.png)
52
- - `tag` コマンドが追加されました
53
- + 小説に自由にタグを付けることができ、絞り込み等で使用出来ます
54
- + タグを追加: `narou tag -a akatsuki 0`
55
- + タグが付いた小説を表示: `narou tag akatsuki`
56
- + コマンドの対象小説をタグで指定: `narou update akatsuki`
57
- + その他詳細な説明は `narou tag -h` を参照して下さい
58
- - `list` コマンドが拡張されます
59
- + `--site` オプション(短縮: -s)が追加されました。掲載小説サイト名を合わせて
60
- 表示します
61
- + `--author` オプション(短縮:-a)が追加されました。作者名を合わせて表示します
62
- + `--tag` オプション(短縮: -t)が追加されました。タグで小説を検索出来ます
63
- * `narou l -t tagname` 、 `narou l -t "tag1 tag2"`
64
- * `narou l -t` と引数を省略すると全ての小説をタグつきで表示
65
- + `--grep` オプション(短縮: -g)が追加されました。リストの中から指定された
66
- 文字列で検索します。最終的に表示される内容から検索するため、作者名やサイト
67
- 名等そのままでは表示されない要素から検索したい場合、それぞれを表示するオプ
68
- ションも合わせて指定して下さい
69
- * 例1: リストから作者名に“紫炎”が含まれる小説を探したい場合
70
- - `narou list --author --grep 紫炎` 或いは `narou l -ag 紫炎`
71
- * 例2: 小説家になろう以外の小説を表示したい場合
72
- - `narou list --site --grep "-小説家になろう"` 或いは
73
- `narou l -sg "-小説家になろう"` (-をつけることでNOT検索)
74
- * 例3: ハーメルンの小説からSAOを含む小説を探す
75
- - `narou l -sg "ハーメルン SAO"` (スペース区切りによるAND検索)
76
- + listコマンドの結果をパイプで他のコマンドに接続できるようになりました
77
- * 例1: ハーメルに掲載されている小説にhamelnタグを付けたい
78
- - `narou l -sg ハーメルン | narou t -a hameln`
79
- * 例2: 短編を全て凍結したい
80
- - `narou l -f ss | narou freeze --on`
81
- * 注意点として、パイプでつないだ場合は remove コマンドは確認メッセージを
82
- 出さずに削除します
83
- - `convert` コマンドに `--ignore-force` オプションが追加されました。
84
- `narou s force.設定名=値` として強制上書きされる設定を一時的に無効にします
85
- - 空改行の削除処理を制御する `enable_pack_blank_line` オプションが追加されました
86
- + デフォルトでは有効です。無効にするには各小説の setting.ini に
87
- `enable_pack_blank_line=false` を追加するか、
88
- `narou s force.enable_pack_blank_line=false` を実行して下さい
89
- - `freeze` コマンドに強制凍結及び解除する `--on` 及び `--off` オプションが追加
90
- されました
42
+ narou list -f frozen (凍結された小説のみ表示)
43
+ narou list -f nonfrozen (凍結されていない小説のみ表示)
44
+ narou list -f "ss nonfrozen" (凍結されていない短編を表示)
91
45
 
92
46
  #### 仕様変更
93
- - `update.strong` の挙動を、「当日分は必ずDLする」から「当日分は内容を見て更新
94
- されているか確認する」に変更しました。またタイムスタンプを記録するようにし、
95
- アップデート時のパフォーマンスを向上させました
96
- - デバイス設定時に最低限必要な関連項目を設定変更するようになりました
97
- - 空改行の間引き具合を若干弱くしました
98
- - `list` コマンドの `--type` オプションを `--kind` (短縮:-k)に変更しました
99
- - 差分オブジェクトの書式を `20YY.MM.DD@hh;mm;ss` から `20YY.MM.DD@hh.mm.ss` に
100
- 変更します
101
- + このバージョンから反映。以前のバージョンで作成された差分は旧書式のままです
102
- - 新着のみの更新の場合差分データを作成しないように変更しました
103
- - `backup` コマンドで作成するZIPファイルの内部ファイルパス文字エンコーディング
104
- をOS毎に変更するようにしました
105
- + Windows = Windows-31J、その他OS = UTF-8
106
- - `flag` コマンドは非推奨になり、tagコマンドに統一されます。今後完結フラグを立
107
- てる場合、 `narou tag -a end 0` として下さい。flagコマンドは1.7.0で廃止される
108
- 予定です
109
- + flagデータをtagデータに移行する場合は `narou flag --convert-tag` を実行
110
- して下さい
111
- - 完結の情報を自動で付与するようになりました。完結を検知したら end タグを追加
112
- します
113
- + 現在は小説家になろう関連サイトとハーメルンのみ自動検知します
114
- - 選択肢を選ぶときエンターを押す必要がなくなりました
115
- - このバージョンからセマンティックバージョニングに移行します
116
- + Major.Minor.Teen という形式で、特別なアップデートでMajor、追加機能を含む
117
- アップデートでMinor、バグ修正のみのアップデートでTeenの番号を増やします
47
+ - 英文判定文字に `&:;_-` を追加しました
48
+ + 今までおかしかった例:Tuez-les tous, Dieu reconnaitra les siens)
49
+ - 8文字以上の半角アルファベットは全角に変換せずに半角のままになります
118
50
 
119
51
  #### Bug Fix
120
- - 小説が掲載サイトから削除されていない時(500や503)にも自動凍結していたのを修正
121
- - iBooksで閲覧時章タイトルページのレイアウトが崩れていたのを修正
122
- - iBooksで閲覧時Arcadiaの掲載アドレスがあるページでエラーがでていたのを修正 #47
123
- - ハーメルンで作者名が正常に取得できない場合があったのを修正 #48
124
- - ハーメルンで連載形式の短編が1話目しか取得できていなかったのを修正 #49
125
- - 自動字下げの判定処理が正常に動作していなかったのを修正
126
- - `diff` コマンドの差分表示時に更新日が挿入されない場合があったのを修正
127
- - `diff` コマンドで小説家になろう以外の小説の差分がHTMLタグ付きのまま表示されて
128
- いたのを修正
129
- - 未対応のURLを入力した場合にエラーが出るようになっていたのを修正
130
- - 小説家になろうの短編のあらすじで改行が無視されていたのを修正
131
- - 小説家になろうの短編のあらすじで先頭に縦棒(|)が入ってしまう問題に対応 #46
132
- - 小説家になろうの挿絵を認識出来ない場合があったのを修正
133
- - 前書き・後書き内にある挿絵を単ページ化出来なかったのを修正 #8
134
- - 漢数字変換で対応桁数以上を変換しようとしてクラッシュしていたのを修正
135
- - その他ヘルプ文の訂正や無駄な処理削減等多数の細かい調整
52
+ - 行頭が英文で始まる行がオートインデントできていなかったのを修正
136
53
 
137
- 1.6.1 : 2014/09/05
138
- ------------------
139
- #### Bug Fix
140
- - Ruby1.9.3において `tag` コマンドが使用出来ない問題を修正
141
- - flag データを設定し、その後削除した場合に flag --convert-tag コマンドがクラッシュする問題を修正
142
-
143
- 1.6.2 : 2014/09/08
144
- ------------------
145
- #### 仕様変更
146
- - あらすじだけ変更された場合も更新とみなすようになりました
147
-
148
- #### Bug Fix
149
- - `download.wait-steps` でウェイトを入れるタイミングがおかしくなっていたため、
150
- 503エラーが頻発するようになっていたのを修正
151
- - 完結しているにもかかわらず完結タグが付与されない場合があったのを修正。また、
152
- 完結していた小説が連載を再開した場合、完結タグを削除するようになりました
153
- - 話数が減っているにも関わらずダイジェスト化検知出来ない場合があったのを修正
154
-
155
- 1.6.3 : 2014/09/11
156
- ------------------
157
- #### Bug Fix
158
- - ハーメルン、Arcadiaにおいて小説が削除されている場合にエラーが出ていたのを修正
159
- - 1話も投稿されていない小説でエラーが出ていたのを修正
160
-
161
- 1.6.4 : 2014/09/17
162
- ------------------
163
- #### 追加機能
164
- - `list` コマンドに `--echo` オプション(短縮:-e)を追加しました。パイプやリダ
165
- イレクトを経由してもリストをそのまま表示します。また、ANSIColorコードの削除
166
- も同時に行うので、--no-color オプションは必要ありません
54
+ #### その他
55
+ - 起動にかかる時間及び表示処理速度を向上させました(起動時間がv1.6に比べて約50%短縮)
167
56
 
168
57
 
169
58
  narou コマンドのインストール or アップデートが完了しました。
@@ -182,7 +71,7 @@ narou コマンドのインストール or アップデートが完了しまし
182
71
  gem.files = `git ls-files`.split("\n") << Narou.create_git_commit_version
183
72
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
184
73
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
185
- gem.add_runtime_dependency 'termcolor', '~> 1.2', '>= 1.2.2'
74
+ gem.add_runtime_dependency 'termcolorlight', '~> 1.0', '>= 1.0.0'
186
75
  gem.add_runtime_dependency 'rubyzip', '~> 1.1', '>= 1.1.0'
187
76
  gem.add_runtime_dependency 'pony', '~> 1.8'
188
77
  gem.add_runtime_dependency 'diff-lcs', '~> 1.2', '>= 1.2.5'
data/narou.rb CHANGED
@@ -6,7 +6,7 @@
6
6
  # Copyright 2013 whiteleaf. All rights reserved.
7
7
  #
8
8
 
9
- $debug = File.exists?(File.join(File.expand_path(File.dirname($0)), "debug"))
9
+ $debug = File.exist?(File.join(File.expand_path(File.dirname($0)), "debug"))
10
10
  Encoding.default_external = Encoding::UTF_8
11
11
 
12
12
  if ARGV.delete("--time")
@@ -53,7 +53,7 @@ converter "n4259s 異世界迷宮で奴隷ハーレムを" do
53
53
  @in_parameter_block = false
54
54
  io.each do |line|
55
55
  line.rstrip!
56
- if !comments_block?(line)
56
+ unless comments_block?(line)
57
57
  level_convert!(line)
58
58
  if in_parameter_block?(line)
59
59
  non_close_parameter = true
@@ -16,7 +16,7 @@ converter "n8725k ログ・ホライズン" do
16
16
  if element_type == "body"
17
17
  if data =~ /[||]([^《]+)《(、+)》/
18
18
  if $1.length == $2.length
19
- data.gsub!(/[||]([^《]+)《(、+)》/) do |match|
19
+ data.gsub!(/[||]([^《]+)《(、+)》/) do
20
20
  "[#傍点]" + $1 + "[#傍点終わり]"
21
21
  end
22
22
  end