narou 2.4.1 → 2.4.2

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: 84d9279d93153de077c9219712b23ae1213b4567
4
- data.tar.gz: 931e3a076a1f18b7170e35c828c1141cd77de3ef
3
+ metadata.gz: 7c91bfba58151c94f6edb7d839ca9ccf428e349d
4
+ data.tar.gz: f6c3f79bec382c7f9b7e1b1d6e9a72f4e10f045a
5
5
  SHA512:
6
- metadata.gz: 0c5bbe26be7fdae850e6333d56fcff6083614c9114128f19dc4687a14d3ba104d80b60f0212a373f05e5e2d22ca14c26a26984b5096818e9a08e962d1fb6a9fa
7
- data.tar.gz: 586850fdb42f648a08575b3f5ced281313313a2447abd326c3745b7a5554edc051354edafdc78b7789759dc63fad19fe9bbb843a62b72f055ecd85431ee5a8ae
6
+ metadata.gz: 27708fb0d5083ea2d2521c54b06d82984a4f218cb56b45b4ee6711e4fc85b11d80592a6c2ccc5a9738ce06b6c5ecbfdb4a79bde2d38e08086b32f93e2fc7e750
7
+ data.tar.gz: 4f0f637784fd7b702bb7d4cb13c7c4bf413016233407a41a838913c6f4d73a39e1f7241966a034a8b5ee9ba3a330a08b02ae49b6548cee2bdfae75d1852cb583
@@ -2,6 +2,16 @@
2
2
  更新履歴 - ChangeLog
3
3
  ====================
4
4
 
5
+ 2.4.2 : 2015/06/07
6
+ ------------------
7
+ #### Bug Fix
8
+ - WEB UI のタグ検索結果がページリロードで解除されてしまう不具合を修正
9
+ - WEB UI で最新話掲載日を更新したあとにリストを更新するように修正
10
+ - 小説家になろうのルビ仕様に追随してない場合があったのを修正
11
+ - ハーメルン、ムーンライトノベルズの小説をNコードでDL出来ない不具合を修正
12
+ - v2.4.0以前にDLした短編が更新できなくなっていた不具合を修正
13
+
14
+
5
15
  2.4.1 : 2015/05/24
6
16
  ------------------
7
17
  #### 追加機能
data/README.md CHANGED
@@ -26,6 +26,17 @@ Narou.rb ― 「小説家になろう」「小説を読もう!」ダウンロ
26
26
  更新履歴 - ChangeLog
27
27
  --------------------
28
28
 
29
+
30
+ 2.4.2 : 2015/06/07
31
+ ------------------
32
+ #### Bug Fix
33
+ - WEB UI のタグ検索結果がページリロードで解除されてしまう不具合を修正
34
+ - WEB UI で最新話掲載日を更新したあとにリストを更新するように修正
35
+ - 小説家になろうのルビ仕様に追随してない場合があったのを修正
36
+ - ハーメルン、ムーンライトノベルズの小説をNコードでDL出来ない不具合を修正
37
+ - v2.4.0以前にDLした短編が更新できなくなっていた不具合を修正
38
+
39
+
29
40
  2.4.1 : 2015/05/24
30
41
  ------------------
31
42
  #### 追加機能
@@ -886,6 +886,12 @@ class ConverterBase
886
886
  def to_ruby(match, m1, m2, openclose_symbols)
887
887
  last_char = m1[-1]
888
888
  case
889
+ when m2[0] == " "
890
+ # 先頭が半角スペースはNG
891
+ match
892
+ when m2 =~ / {2,}$/
893
+ # 末尾の半角スペースが2個以上はNG(1個はOK)
894
+ match
889
895
  when last_char == "|"
890
896
  # 直前に|がある場合ルビ化は抑制される
891
897
  "#{m1[0...-1]}#{openclose_symbols[0]}#{m2}#{openclose_symbols[1]}"
@@ -404,7 +404,7 @@ class Downloader
404
404
  end
405
405
  end
406
406
 
407
- id_and_title = "#{@id} #{@title}"
407
+ id_and_title = "ID:#{@id} #{@title}"
408
408
 
409
409
  return_status =
410
410
  case
@@ -447,7 +447,7 @@ class Downloader
447
447
  Command::Tag.execute!([@id, "--add", "end", "--color", "white"])
448
448
  end
449
449
  msg = old_toc.empty? ? "完結しているようです" : "完結したようです"
450
- puts "<cyan>ID:#{id_and_title.escape} は#{msg}</cyan>".termcolor
450
+ puts "<cyan>#{id_and_title.escape} は#{msg}</cyan>".termcolor
451
451
  return_status = :ok
452
452
  end
453
453
  else
@@ -456,7 +456,7 @@ class Downloader
456
456
  $stdout.silence do
457
457
  Command::Tag.execute!([@id, "--delete", "end"])
458
458
  end
459
- puts "<cyan>ID:#{id_and_title.escape} は連載を再開したようです</cyan>".termcolor
459
+ puts "<cyan>#{id_and_title.escape} は連載を再開したようです</cyan>".termcolor
460
460
  return_status = :ok
461
461
  end
462
462
  end
@@ -692,11 +692,11 @@ class Downloader
692
692
  source.match(message)
693
693
  end
694
694
 
695
- def self.get_toc_source(setting)
696
- toc_url = setting["toc_url"]
695
+ def get_toc_source
696
+ toc_url = @setting["toc_url"]
697
697
  return nil unless toc_url
698
698
  toc_source = ""
699
- cookie = setting["cookie"] || ""
699
+ cookie = @setting["cookie"] || ""
700
700
  open(toc_url, "Cookie" => cookie) do |toc_fp|
701
701
  if toc_fp.base_uri.to_s != toc_url
702
702
  # リダイレクトされた場合。
@@ -704,12 +704,12 @@ class Downloader
704
704
  # 目次の定義が微妙に ncode.syosetu.com と違うので、設定を取得し直す
705
705
  s = Downloader.get_sitesetting_by_target(toc_fp.base_uri.to_s)
706
706
  raise DownloaderNotFoundError unless s # 非公開や削除等でトップページへリダイレクトされる場合がある
707
- setting.clear # 今まで使っていたのは一旦クリア
708
- setting = s
709
- toc_url = setting["toc_url"]
707
+ @setting.clear # 今まで使っていたのは一旦クリア
708
+ @setting = s
709
+ toc_url = @setting["toc_url"]
710
710
  end
711
- toc_source = Helper.pretreatment_source(toc_fp.read, setting["encoding"])
712
- raise DownloaderNotFoundError if detect_error_message(setting, toc_source)
711
+ toc_source = Helper.pretreatment_source(toc_fp.read, @setting["encoding"])
712
+ raise DownloaderNotFoundError if Downloader.detect_error_message(@setting, toc_source)
713
713
  end
714
714
  toc_source
715
715
  end
@@ -718,7 +718,7 @@ class Downloader
718
718
  # 目次データを取得する
719
719
  #
720
720
  def get_latest_table_of_contents(old_toc, through_error: false)
721
- toc_source = Downloader.get_toc_source(@setting)
721
+ toc_source = get_toc_source
722
722
  return nil unless toc_source
723
723
  @setting.multi_match(toc_source, "tcode")
724
724
  #if @setting["narou_api_url"]
@@ -844,6 +844,9 @@ class Downloader
844
844
  end
845
845
  latest_subupdate > old_subupdate
846
846
  else
847
+ # 古いバージョンだと old_subdate が nil なので判定出来ないため
848
+ next true unless old_subdate
849
+
847
850
  if strong_update
848
851
  if __strdate_to_ymd(old_subdate) == latest_section_timestamp_ymd
849
852
  next different_check.call
@@ -3,5 +3,5 @@
3
3
  # Copyright 2013 whiteleaf. All rights reserved.
4
4
  #
5
5
 
6
- Version = "2.4.1"
6
+ Version = "2.4.2"
7
7
 
@@ -576,6 +576,7 @@ class Narou::AppServer < Sinatra::Base
576
576
  post "/api/update_general_lastup" do
577
577
  Narou::Worker.push do
578
578
  CommandLine.run!(["update", "--gl"])
579
+ @@push_server.send_all(:"table.reload")
579
580
  end
580
581
  end
581
582
 
@@ -747,6 +747,8 @@ var Narou = (function() {
747
747
  if (e.data.stop_bubbling) e.stopPropagation();
748
748
  var tag_name = $(this).data("tag");
749
749
  $("#tag-search").val(tag_name);
750
+ storage.set("tag_search", tag_name);
751
+ storage.save();
750
752
  self.table.draw();
751
753
  }).on("mousedown", ".tag", args, function(e) {
752
754
  // 範囲選択モードでもクリック出来るように
@@ -261,6 +261,9 @@ $(document).ready(function() {
261
261
  });
262
262
  // タグのイベントを反映
263
263
  tag.registerEvents(table);
264
+ // タグ検索を復元
265
+ $tag_search.val(storage.get("tag_search"));
266
+ table.draw(false);
264
267
  },
265
268
  language: {
266
269
  lengthMenu: "_MENU_ 件分表示",
@@ -32,25 +32,14 @@ Gem::Specification.new do |gem|
32
32
  install_message = <<-EOS
33
33
  #{"*" * 79}
34
34
 
35
- 2.4.1 : 2015/05/24
35
+ 2.4.2 : 2015/06/07
36
36
  ------------------
37
- #### 追加機能
38
- - WEB UI の Update ボタンに「表示されている小説を更新」、「最新話掲載日を更新」
39
- という選択肢を追加しました
40
- + 表示されている小説を更新:見える範囲内の小説を選択せずに更新出来る。タグ検
41
- 索やフィルターで絞り込んだあとにいちいち選択する必要がなくなる
42
- + 最新話掲載日を更新: `narou u --gl` を WEB UI からも実行出来るようにした物
43
-
44
- #### 仕様変更
45
- - WEB UI の項目「最新話掲載日」をArcadia及び暁にも対応させました
46
- + それに伴い `narou u --gl` コマンドもArcadiaと暁に対応します
47
- - `narou u --gl` コマンドが凍結済み小説は無視するように変更しました
48
- - 最新話掲載日の経過日時表記に「3d」(3日以内に掲載)を追加しました
49
-
50
37
  #### Bug Fix
51
- - WEB UI のタグ検索が部分一致になっていたのを完全一致に修正しました
52
- - 連続したミュートが正しく変換できていなかったのを修正
53
-
38
+ - WEB UI のタグ検索結果がページリロードで解除されてしまう不具合を修正
39
+ - WEB UI で最新話掲載日を更新したあとにリストを更新するように修正
40
+ - 小説家になろうのルビ仕様に追随してない場合があったのを修正
41
+ - ハーメルン、ムーンライトノベルズの小説をNコードでDL出来ない不具合を修正
42
+ - v2.4.0以前にDLした短編が更新できなくなっていた不具合を修正
54
43
 
55
44
  #{"*" * 79}
56
45
  EOS
@@ -229,6 +229,46 @@ opqrstu
229
229
  "ここは|東京《トウキヨウ》"
230
230
  end
231
231
  end
232
+
233
+ describe "半角スペースがある場合の挙動" do
234
+ it "ルビにはならない(先頭スペース1個+末尾スペース1個)" do
235
+ expect(to_ruby( \
236
+ "追撃をしない俺に振り返り、再度《 パワースラッシュ 》",
237
+ "追撃をしない俺に振り返り、再度", " パワースラッシュ ", ["《", "》"])).to eq \
238
+ "追撃をしない俺に振り返り、再度《 パワースラッシュ 》"
239
+ end
240
+ it "ルビにはならない(先頭スペース1個)" do
241
+ expect(to_ruby( \
242
+ "追撃をしない俺に振り返り、再度《 パワースラッシュ》",
243
+ "追撃をしない俺に振り返り、再度", " パワースラッシュ", ["《", "》"])).to eq \
244
+ "追撃をしない俺に振り返り、再度《 パワースラッシュ》"
245
+ end
246
+ it "ルビにはならない(末尾スペース2個以上)" do
247
+ expect(to_ruby( \
248
+ "追撃をしない俺に振り返り、再度《パワースラッシュ 》",
249
+ "追撃をしない俺に振り返り、再度", "パワースラッシュ ", ["《", "》"])).to eq \
250
+ "追撃をしない俺に振り返り、再度《パワースラッシュ 》"
251
+ end
252
+ it "ルビにはならない(末尾スペース2個以上)" do
253
+ expect(to_ruby( \
254
+ "追撃をしない俺に振り返り、再度《パワースラッシュ 》",
255
+ "追撃をしない俺に振り返り、再度", "パワースラッシュ ", ["《", "》"])).to eq \
256
+ "追撃をしない俺に振り返り、再度《パワースラッシュ 》"
257
+ end
258
+
259
+ it "ルビになるべき" do
260
+ expect(to_ruby( \
261
+ "追撃をしない俺に振り返り、再度《パワースラッシュ》",
262
+ "追撃をしない俺に振り返り、再度", "パワースラッシュ", ["《", "》"])).to eq \
263
+ "追撃をしない俺に振り返り、|再度《パワースラッシュ》"
264
+ end
265
+ it "ルビになるべき(末尾スペース1個)" do
266
+ expect(to_ruby( \
267
+ "追撃をしない俺に振り返り、再度《パワースラッシュ 》",
268
+ "追撃をしない俺に振り返り、再度", "パワースラッシュ ", ["《", "》"])).to eq \
269
+ "追撃をしない俺に振り返り、|再度《パワースラッシュ 》"
270
+ end
271
+ end
232
272
  end
233
273
  end
234
274
 
@@ -149,3 +149,13 @@ whiteleaf
149
149
   |上条 当麻《かみじょう とうま》  OK(空白分割はなし)
150
150
 
151
151
   年下の住み込み家政婦に布団をはぎ取られ、今まさにナイフを突き付けられている男の名前は「|佐山 貴大《さやま たかひろ》」。
152
+
153
+ [#二分アキ]「あー止めだ止め、様子見は終わりだ。こっから全力で行くぞ」
154
+  ――Action Magic※[#始め二重山括弧] フィジカルブースト ※[#終わり二重山括弧]――
155
+  ――Action Magic※[#始め二重山括弧] ファストステップ ※[#終わり二重山括弧]――
156
+  ――Action Magic※[#始め二重山括弧] シャープエッジ ※[#終わり二重山括弧]――
157
+  ――Action Magic※[#始め二重山括弧] マキシマムパワー ※[#終わり二重山括弧]――
158
+  立て続けにスキルが発動し、おっさんの体が発光する。
159
+  え、何それ、補助魔法? ここからまだパワーアップすんのかよ。
160
+ [#二分アキ]「ちょ、ちょっとそれは大人気ないんじゃない? おじさん」
161
+ [#二分アキ]「うるせぇ、ルーキーども!」
@@ -189,3 +189,17 @@ NEW上条 当麻(にゅー かみじょう とうま)  NG(ルビ
189
189
 
190
190
 
191
191
   年下の住み込み家政婦に布団をはぎ取られ、今まさにナイフを突き付けられている男の名前は「佐山 貴大(さやま たかひろ)」。
192
+
193
+
194
+ 「あー止めだ止め、様子見は終わりだ。こっから全力で行くぞ」
195
+
196
+ ――Action Magic《 フィジカルブースト 》――
197
+ ――Action Magic《 ファストステップ 》――
198
+ ――Action Magic《 シャープエッジ 》――
199
+ ――Action Magic《 マキシマムパワー 》――
200
+
201
+  立て続けにスキルが発動し、おっさんの体が発光する。
202
+  え、何それ、補助魔法? ここからまだパワーアップすんのかよ。
203
+
204
+ 「ちょ、ちょっとそれは大人気ないんじゃない? おじさん」
205
+ 「うるせぇ、ルーキーども!」
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.4.1
4
+ version: 2.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - whiteleaf7
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-23 00:00:00.000000000 Z
11
+ date: 2015-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: termcolorlight
@@ -415,25 +415,14 @@ metadata: {}
415
415
  post_install_message: |
416
416
  *******************************************************************************
417
417
 
418
- 2.4.1 : 2015/05/24
418
+ 2.4.2 : 2015/06/07
419
419
  ------------------
420
- #### 追加機能
421
- - WEB UI の Update ボタンに「表示されている小説を更新」、「最新話掲載日を更新」
422
- という選択肢を追加しました
423
- + 表示されている小説を更新:見える範囲内の小説を選択せずに更新出来る。タグ検
424
- 索やフィルターで絞り込んだあとにいちいち選択する必要がなくなる
425
- + 最新話掲載日を更新: `narou u --gl` を WEB UI からも実行出来るようにした物
426
-
427
- #### 仕様変更
428
- - WEB UI の項目「最新話掲載日」をArcadia及び暁にも対応させました
429
- + それに伴い `narou u --gl` コマンドもArcadiaと暁に対応します
430
- - `narou u --gl` コマンドが凍結済み小説は無視するように変更しました
431
- - 最新話掲載日の経過日時表記に「3d」(3日以内に掲載)を追加しました
432
-
433
420
  #### Bug Fix
434
- - WEB UI のタグ検索が部分一致になっていたのを完全一致に修正しました
435
- - 連続したミュートが正しく変換できていなかったのを修正
436
-
421
+ - WEB UI のタグ検索結果がページリロードで解除されてしまう不具合を修正
422
+ - WEB UI で最新話掲載日を更新したあとにリストを更新するように修正
423
+ - 小説家になろうのルビ仕様に追随してない場合があったのを修正
424
+ - ハーメルン、ムーンライトノベルズの小説をNコードでDL出来ない不具合を修正
425
+ - v2.4.0以前にDLした短編が更新できなくなっていた不具合を修正
437
426
 
438
427
  *******************************************************************************
439
428
  rdoc_options: []