aozora2html 2.0.0 → 3.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rubocop.yml +19 -0
- data/.github/workflows/ruby.yml +5 -3
- data/.gitignore +1 -0
- data/.rubocop.yml +38 -151
- data/.rubocop_todo.yml +7 -0
- data/CHANGELOG.md +41 -0
- data/Gemfile +2 -0
- data/Guardfile +3 -1
- data/HACKING.md +45 -0
- data/README.md +14 -6
- data/Rakefile +12 -5
- data/aozora2html.gemspec +25 -23
- data/bin/aozora2html +21 -19
- data/lib/aozora2html/accent_parser.rb +62 -54
- data/lib/aozora2html/error.rb +5 -4
- data/lib/aozora2html/header.rb +20 -18
- data/lib/aozora2html/i18n.rb +40 -20
- data/lib/aozora2html/midashi_counter.rb +32 -0
- data/lib/aozora2html/ruby_buffer.rb +63 -28
- data/lib/aozora2html/string_refinements.rb +36 -0
- data/lib/aozora2html/style_stack.rb +6 -0
- data/lib/aozora2html/tag/accent.rb +10 -12
- data/lib/aozora2html/tag/block.rb +11 -9
- data/lib/aozora2html/tag/chitsuki.rb +6 -2
- data/lib/aozora2html/tag/dakuten_katakana.rb +10 -8
- data/lib/aozora2html/tag/decorate.rb +4 -3
- data/lib/aozora2html/tag/dir.rb +4 -2
- data/lib/aozora2html/tag/editor_note.rb +7 -4
- data/lib/aozora2html/tag/embed_gaiji.rb +15 -11
- data/lib/aozora2html/tag/font_size.rb +5 -2
- data/lib/aozora2html/tag/gaiji.rb +4 -3
- data/lib/aozora2html/tag/img.rb +4 -4
- data/lib/aozora2html/tag/indent.rb +3 -3
- data/lib/aozora2html/tag/inline.rb +10 -7
- data/lib/aozora2html/tag/inline_caption.rb +4 -2
- data/lib/aozora2html/tag/inline_font_size.rb +4 -3
- data/lib/aozora2html/tag/inline_keigakomi.rb +4 -2
- data/lib/aozora2html/tag/inline_yokogumi.rb +4 -3
- data/lib/aozora2html/tag/jisage.rb +3 -1
- data/lib/aozora2html/tag/jizume.rb +3 -0
- data/lib/aozora2html/tag/kaeriten.rb +4 -2
- data/lib/aozora2html/tag/keigakomi.rb +15 -9
- data/lib/aozora2html/tag/kunten.rb +4 -4
- data/lib/aozora2html/tag/midashi.rb +3 -1
- data/lib/aozora2html/tag/multiline.rb +3 -0
- data/lib/aozora2html/tag/multiline_caption.rb +6 -8
- data/lib/aozora2html/tag/multiline_chitsuki.rb +3 -1
- data/lib/aozora2html/tag/multiline_jisage.rb +3 -1
- data/lib/aozora2html/tag/multiline_midashi.rb +6 -3
- data/lib/aozora2html/tag/multiline_style.rb +5 -3
- data/lib/aozora2html/tag/multiline_yokogumi.rb +6 -9
- data/lib/aozora2html/tag/okurigana.rb +4 -2
- data/lib/aozora2html/tag/oneline_chitsuki.rb +3 -2
- data/lib/aozora2html/tag/oneline_indent.rb +8 -1
- data/lib/aozora2html/tag/oneline_jisage.rb +3 -0
- data/lib/aozora2html/tag/reference_mentioned.rb +22 -21
- data/lib/aozora2html/tag/ruby.rb +174 -70
- data/lib/aozora2html/tag/un_embed_gaiji.rb +8 -2
- data/lib/aozora2html/tag.rb +40 -38
- data/lib/aozora2html/tag_parser.rb +23 -16
- data/lib/aozora2html/text_buffer.rb +50 -0
- data/lib/aozora2html/utils.rb +113 -50
- data/lib/aozora2html/version.rb +3 -1
- data/lib/aozora2html/yaml_loader.rb +8 -2
- data/lib/aozora2html/zip.rb +4 -0
- data/lib/aozora2html.rb +1329 -3
- data/lib/extensions.rb +2 -34
- data/lib/jstream.rb +96 -25
- data/sample/chukiichiran_kinyurei.html +42 -29
- data/sample/chukiichiran_kinyurei.txt +16 -3
- metadata +80 -83
- data/.travis.yml +0 -12
- data/lib/t2hs.rb +0 -1607
- data/test/test_aozora2html.rb +0 -379
- data/test/test_aozora_accent_parser.rb +0 -31
- data/test/test_command_parse.rb +0 -213
- data/test/test_compat.rb +0 -11
- data/test/test_dakuten_katakana_tag.rb +0 -27
- data/test/test_decorate_tag.rb +0 -24
- data/test/test_dir_tag.rb +0 -24
- data/test/test_editor_note_tag.rb +0 -22
- data/test/test_exception.rb +0 -23
- data/test/test_font_size_tag.rb +0 -41
- data/test/test_gaiji_tag.rb +0 -49
- data/test/test_header.rb +0 -60
- data/test/test_helper.rb +0 -5
- data/test/test_i18n.rb +0 -23
- data/test/test_img_tag.rb +0 -23
- data/test/test_inline_caption_tag.rb +0 -24
- data/test/test_inline_font_size_tag.rb +0 -34
- data/test/test_inline_keigakomi_tag.rb +0 -24
- data/test/test_inline_yokogumi_tag.rb +0 -24
- data/test/test_jizume_tag.rb +0 -25
- data/test/test_jstream.rb +0 -57
- data/test/test_kaeriten_tag.rb +0 -24
- data/test/test_keigakomi_tag.rb +0 -31
- data/test/test_midashi_tag.rb +0 -38
- data/test/test_multiline_caption_tag.rb +0 -25
- data/test/test_multiline_midashi_tag.rb +0 -55
- data/test/test_multiline_style_tag.rb +0 -25
- data/test/test_multiline_yokogumi_tag.rb +0 -25
- data/test/test_okurigana_tag.rb +0 -24
- data/test/test_ruby_parse.rb +0 -130
- data/test/test_ruby_tag.rb +0 -24
- data/test/test_tag_parser.rb +0 -80
@@ -1,25 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
require 'aozora2html'
|
3
|
-
|
4
|
-
class MultilineStyleTagTest < Test::Unit::TestCase
|
5
|
-
def setup
|
6
|
-
@parser = Object.new
|
7
|
-
stub(@parser).block_allowed_context?{true}
|
8
|
-
end
|
9
|
-
|
10
|
-
def test_multiline_style_new
|
11
|
-
tag = Aozora2Html::Tag::MultilineStyle.new(@parser,"style1")
|
12
|
-
assert_equal Aozora2Html::Tag::MultilineStyle, tag.class
|
13
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Block)
|
14
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Multiline)
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_to_s
|
18
|
-
tag = Aozora2Html::Tag::MultilineStyle.new(@parser,"s1")
|
19
|
-
assert_equal "<div class=\"s1\">", tag.to_s
|
20
|
-
assert_equal "</div>", tag.close_tag
|
21
|
-
end
|
22
|
-
|
23
|
-
def teardown
|
24
|
-
end
|
25
|
-
end
|
@@ -1,25 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
require 'aozora2html'
|
3
|
-
|
4
|
-
class MultilineYokogumiTagTest < Test::Unit::TestCase
|
5
|
-
def setup
|
6
|
-
@parser = Object.new
|
7
|
-
stub(@parser).block_allowed_context?{true}
|
8
|
-
end
|
9
|
-
|
10
|
-
def test_multiline_yokogumi_new
|
11
|
-
tag = Aozora2Html::Tag::MultilineYokogumi.new(@parser)
|
12
|
-
assert_equal Aozora2Html::Tag::MultilineYokogumi, tag.class
|
13
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Block)
|
14
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Multiline)
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_to_s
|
18
|
-
tag = Aozora2Html::Tag::MultilineYokogumi.new(@parser)
|
19
|
-
assert_equal "<div class=\"yokogumi\">", tag.to_s
|
20
|
-
assert_equal "</div>", tag.close_tag
|
21
|
-
end
|
22
|
-
|
23
|
-
def teardown
|
24
|
-
end
|
25
|
-
end
|
data/test/test_okurigana_tag.rb
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
require 'test_helper'
|
3
|
-
require 'aozora2html'
|
4
|
-
|
5
|
-
class OkuriganaTagTest < Test::Unit::TestCase
|
6
|
-
def setup
|
7
|
-
@parser = Object.new
|
8
|
-
stub(@parser).block_allowed_context?{true}
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_okurigana_new
|
12
|
-
tag = Aozora2Html::Tag::Okurigana.new(@parser,"aaa")
|
13
|
-
assert_equal Aozora2Html::Tag::Okurigana, tag.class
|
14
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Inline)
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_to_s
|
18
|
-
tag = Aozora2Html::Tag::Okurigana.new(@parser,"テスト".encode("shift_jis"))
|
19
|
-
assert_equal "<sup class=\"okurigana\">テスト</sup>", tag.to_s.encode("utf-8")
|
20
|
-
end
|
21
|
-
|
22
|
-
def teardown
|
23
|
-
end
|
24
|
-
end
|
data/test/test_ruby_parse.rb
DELETED
@@ -1,130 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
require 'test_helper'
|
3
|
-
require 'aozora2html'
|
4
|
-
|
5
|
-
class RubyParseTest < Test::Unit::TestCase
|
6
|
-
def setup
|
7
|
-
end
|
8
|
-
|
9
|
-
def test_parse_ruby1
|
10
|
-
src = "青空文庫《あおぞらぶんこ》\r\n"
|
11
|
-
parsed = parse_text(src)
|
12
|
-
expected = "<ruby><rb>青空文庫</rb><rp>(</rp><rt>あおぞらぶんこ</rt><rp>)</rp></ruby><br />\r\n"
|
13
|
-
assert_equal expected, parsed
|
14
|
-
end
|
15
|
-
|
16
|
-
def test_parse_ruby1b
|
17
|
-
src = "身装《みなり》\r\n"
|
18
|
-
parsed = parse_text(src)
|
19
|
-
expected = "<ruby><rb>身装</rb><rp>(</rp><rt>みなり</rt><rp>)</rp></ruby><br />\r\n"
|
20
|
-
assert_equal expected, parsed
|
21
|
-
end
|
22
|
-
|
23
|
-
def test_parse_ruby2
|
24
|
-
src = "霧の|ロンドン警視庁《スコットランドヤード》\r\n"
|
25
|
-
parsed = parse_text(src)
|
26
|
-
expected = "霧の<ruby><rb>ロンドン警視庁</rb><rp>(</rp><rt>スコットランドヤード</rt><rp>)</rp></ruby><br />\r\n"
|
27
|
-
assert_equal expected, parsed
|
28
|
-
end
|
29
|
-
|
30
|
-
def test_parse_ruby2b
|
31
|
-
src = "いかにも最|猛者《もさ》のように\r\n"
|
32
|
-
parsed = parse_text(src)
|
33
|
-
expected = "いかにも最<ruby><rb>猛者</rb><rp>(</rp><rt>もさ</rt><rp>)</rp></ruby>のように<br />\r\n"
|
34
|
-
assert_equal expected, parsed
|
35
|
-
end
|
36
|
-
|
37
|
-
def test_parse_ruby3
|
38
|
-
src = "〆切《しめきり》を逃れるために、市ヶ谷《いちがや》から転々《てんてん》と、居を移した。\r\n"
|
39
|
-
parsed = parse_text(src)
|
40
|
-
expected = "<ruby><rb>〆切</rb><rp>(</rp><rt>しめきり</rt><rp>)</rp></ruby>を逃れるために、<ruby><rb>市ヶ谷</rb><rp>(</rp><rt>いちがや</rt><rp>)</rp></ruby>から<ruby><rb>転々</rb><rp>(</rp><rt>てんてん</rt><rp>)</rp></ruby>と、居を移した。<br />\r\n"
|
41
|
-
assert_equal expected, parsed
|
42
|
-
end
|
43
|
-
|
44
|
-
def test_parse_ruby4
|
45
|
-
src = "水鉢を置いた※[#「木+靈」、第3水準1-86-29]子窓《れんじまど》の下には\r\n"
|
46
|
-
parsed = parse_text(src)
|
47
|
-
expected = "水鉢を置いた<ruby><rb><img src=\"../../../gaiji/1-86/1-86-29.png\" alt=\"※(「木+靈」、第3水準1-86-29)\" class=\"gaiji\" />子窓</rb><rp>(</rp><rt>れんじまど</rt><rp>)</rp></ruby>の下には<br />\r\n"
|
48
|
-
assert_equal expected, parsed
|
49
|
-
end
|
50
|
-
|
51
|
-
def test_parse_ruby5
|
52
|
-
src = "それが彼の 〔E'tude〕《エチュード》 だった。\r\n"
|
53
|
-
parsed = parse_text(src)
|
54
|
-
expected = "それが彼の <ruby><rb><img src=\"../../../gaiji/1-09/1-09-32.png\" alt=\"※(アキュートアクセント付きE)\" class=\"gaiji\" />tude</rb><rp>(</rp><rt>エチュード</rt><rp>)</rp></ruby> だった。<br />\r\n"
|
55
|
-
assert_equal expected, parsed
|
56
|
-
end
|
57
|
-
|
58
|
-
def test_parse_ruby6
|
59
|
-
src = "青空文庫[#「青空文庫」の左に「あおぞらぶんこ」のルビ]\r\n"
|
60
|
-
parsed = parse_text(src)
|
61
|
-
expected = "青空文庫<span class=\"notes\">[#「青空文庫」の左に「あおぞらぶんこ」のルビ]</span><br />\r\n"
|
62
|
-
assert_equal expected, parsed
|
63
|
-
end
|
64
|
-
|
65
|
-
def test_parse_ruby7
|
66
|
-
src = "青空文庫《あおぞらぶんこ》[#「青空文庫」の左に「aozora bunko」のルビ]\r\n"
|
67
|
-
parsed = parse_text(src)
|
68
|
-
expected = %Q|<ruby><rb>青空文庫</rb><rp>(</rp><rt>あおぞらぶんこ</rt><rp>)</rp></ruby><span class="notes">[#「青空文庫」の左に「aozora bunko」のルビ]</span><br />\r\n|
|
69
|
-
assert_equal expected, parsed
|
70
|
-
end
|
71
|
-
|
72
|
-
def test_parse_ruby8
|
73
|
-
src = "大空文庫[#「大空文庫」に「ママ」の注記]\r\n"
|
74
|
-
parsed = parse_text(src)
|
75
|
-
expected = %Q|<ruby><rb>大空文庫</rb><rp>(</rp><rt>ママ</rt><rp>)</rp></ruby><br />\r\n|
|
76
|
-
assert_equal expected, parsed
|
77
|
-
end
|
78
|
-
|
79
|
-
def test_parse_ruby9
|
80
|
-
src = "大空文庫[#「大空文庫」の左に「ママ」の注記]\r\n"
|
81
|
-
parsed = parse_text(src)
|
82
|
-
expected = %Q|大空文庫<span class="notes">[#「大空文庫」の左に「ママ」の注記]</span><br />\r\n|
|
83
|
-
assert_equal expected, parsed
|
84
|
-
end
|
85
|
-
|
86
|
-
def test_parse_ruby10
|
87
|
-
src = "大空文庫《あおぞらぶんこ》[#「大空文庫」の左に「ママ」の注記]\r\n"
|
88
|
-
parsed = parse_text(src)
|
89
|
-
expected = %Q|<ruby><rb>大空文庫</rb><rp>(</rp><rt>あおぞらぶんこ</rt><rp>)</rp></ruby><span class="notes">[#「大空文庫」の左に「ママ」の注記]</span><br />\r\n|
|
90
|
-
assert_equal expected, parsed
|
91
|
-
end
|
92
|
-
|
93
|
-
def test_parse_ruby11
|
94
|
-
src = "大空文庫《あおぞらぶんこ》[#「大空文庫」の左に「ママ」の注記]\r\n"
|
95
|
-
parsed = parse_text(src)
|
96
|
-
expected = %Q|<ruby><rb>大空文庫</rb><rp>(</rp><rt>あおぞらぶんこ</rt><rp>)</rp></ruby><span class="notes">[#「大空文庫」の左に「ママ」の注記]</span><br />\r\n|
|
97
|
-
assert_equal expected, parsed
|
98
|
-
end
|
99
|
-
|
100
|
-
def test_parse_ruby12
|
101
|
-
src = "大空文庫《あおぞらぶんこ》[#「大空文庫」に「ママ」の注記]\r\n"
|
102
|
-
assert_raise(Aozora2Html::Error.new("同じ箇所に2つのルビはつけられません".encode("shift_jis"))) do
|
103
|
-
_parsed = parse_text(src)
|
104
|
-
end
|
105
|
-
end
|
106
|
-
|
107
|
-
def test_parse_ruby13
|
108
|
-
src = "[#注記付き]名※[#二の字点、1-2-22][#「(銘々)」の注記付き終わり]\r\n"
|
109
|
-
parsed = parse_text(src)
|
110
|
-
expected = %Q|<ruby><rb>名<img src="../../../gaiji/1-02/1-02-22.png" alt="※(二の字点、1-2-22)" class="gaiji" /></rb><rp>(</rp><rt>(銘々)</rt><rp>)</rp></ruby><br />\r\n|
|
111
|
-
assert_equal expected, parsed
|
112
|
-
end
|
113
|
-
|
114
|
-
def parse_text(input_text)
|
115
|
-
input = StringIO.new(input_text.encode("shift_jis"))
|
116
|
-
output = StringIO.new
|
117
|
-
parser = Aozora2Html.new(input, output)
|
118
|
-
parser.instance_eval{@section=:tail}
|
119
|
-
catch(:terminate) do
|
120
|
-
loop do
|
121
|
-
parser.parse
|
122
|
-
end
|
123
|
-
end
|
124
|
-
|
125
|
-
output.string.encode("utf-8")
|
126
|
-
end
|
127
|
-
|
128
|
-
end
|
129
|
-
|
130
|
-
|
data/test/test_ruby_tag.rb
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
require 'test_helper'
|
3
|
-
require 'aozora2html'
|
4
|
-
|
5
|
-
class RubyTagTest < Test::Unit::TestCase
|
6
|
-
def setup
|
7
|
-
@parser = Object.new
|
8
|
-
stub(@parser).block_allowed_context?{true}
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_ruby_new
|
12
|
-
tag = Aozora2Html::Tag::Ruby.new(@parser,"aaa".encode("shift_jis"),"bb")
|
13
|
-
assert_equal Aozora2Html::Tag::Ruby, tag.class
|
14
|
-
assert_equal true, tag.kind_of?(Aozora2Html::Tag::Inline)
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_to_s
|
18
|
-
tag = Aozora2Html::Tag::Ruby.new(@parser,"テスト".encode("shift_jis"),"てすと".encode("shift_jis"))
|
19
|
-
assert_equal "<ruby><rb>テスト</rb><rp>(</rp><rt>てすと</rt><rp>)</rp></ruby>", tag.to_s.encode("utf-8")
|
20
|
-
end
|
21
|
-
|
22
|
-
def teardown
|
23
|
-
end
|
24
|
-
end
|
data/test/test_tag_parser.rb
DELETED
@@ -1,80 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
require 'test_helper'
|
3
|
-
require 'aozora2html'
|
4
|
-
require 'fileutils'
|
5
|
-
require 'tmpdir'
|
6
|
-
|
7
|
-
class TagParserTest < Test::Unit::TestCase
|
8
|
-
def setup
|
9
|
-
@jisx0213 = Aozora2Html::Tag::EmbedGaiji.use_jisx0213
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_parse_katakana
|
13
|
-
str = "テスト!あいうえお\r\n".encode("shift_jis")
|
14
|
-
strio = StringIO.new(str)
|
15
|
-
stream = Jstream.new(strio)
|
16
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"!".encode("shift_jis"),{},[]).process
|
17
|
-
expected = "テスト"
|
18
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_parse_bouten
|
22
|
-
str = "腹がへっても[#「腹がへっても」に傍点]、ひもじゅうない[#「ひもじゅうない」に傍点]とかぶりを振っている…\r\n".encode("shift_jis")
|
23
|
-
strio = StringIO.new(str)
|
24
|
-
stream = Jstream.new(strio)
|
25
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
26
|
-
expected = '<em class="sesame_dot">腹がへっても</em>、<em class="sesame_dot">ひもじゅうない</em>とかぶりを振っている'
|
27
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
28
|
-
end
|
29
|
-
|
30
|
-
def test_parse_gaiji
|
31
|
-
str = "※[#「てへん+劣」、第3水準1-84-77]…\r\n".encode("shift_jis")
|
32
|
-
strio = StringIO.new(str)
|
33
|
-
stream = Jstream.new(strio)
|
34
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
35
|
-
expected = '<img src="../../../gaiji/1-84/1-84-77.png" alt="※(「てへん+劣」、第3水準1-84-77)" class="gaiji" />'
|
36
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
37
|
-
end
|
38
|
-
|
39
|
-
def test_parse_gaiji_a
|
40
|
-
str = "※[#「口+世」、ページ数-行数]…\r\n".encode("shift_jis")
|
41
|
-
strio = StringIO.new(str)
|
42
|
-
stream = Jstream.new(strio)
|
43
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
44
|
-
expected = '※<span class="notes">[#「口+世」、ページ数-行数]</span>'
|
45
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
46
|
-
end
|
47
|
-
|
48
|
-
def test_parse_gaiji_b
|
49
|
-
str = "※[#二の字点、1-2-22]…\r\n".encode("shift_jis")
|
50
|
-
strio = StringIO.new(str)
|
51
|
-
stream = Jstream.new(strio)
|
52
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
53
|
-
expected = '<img src="../../../gaiji/1-02/1-02-22.png" alt="※(二の字点、1-2-22)" class="gaiji" />'
|
54
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
55
|
-
end
|
56
|
-
|
57
|
-
def test_parse_gaiji_kaeri
|
58
|
-
str = "自[#二]女王國[#一]東度[#レ]海千餘里。…\r\n".encode("shift_jis")
|
59
|
-
strio = StringIO.new(str)
|
60
|
-
stream = Jstream.new(strio)
|
61
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
62
|
-
expected = '自<sub class="kaeriten">二</sub>女王國<sub class="kaeriten">一</sub>東度<sub class="kaeriten">レ</sub>海千餘里。'
|
63
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
64
|
-
end
|
65
|
-
|
66
|
-
def test_parse_gaiji_jisx0213
|
67
|
-
Aozora2Html::Tag::EmbedGaiji.use_jisx0213 = true
|
68
|
-
str = "※[#「てへん+劣」、第3水準1-84-77]…\r\n".encode("shift_jis")
|
69
|
-
strio = StringIO.new(str)
|
70
|
-
stream = Jstream.new(strio)
|
71
|
-
command, _raw = Aozora2Html::TagParser.new(stream,"…".encode("shift_jis"),{},[]).process
|
72
|
-
expected = '挘'
|
73
|
-
assert_equal expected, command.to_s.encode("utf-8")
|
74
|
-
end
|
75
|
-
|
76
|
-
def teardown
|
77
|
-
Aozora2Html::Tag::EmbedGaiji.use_jisx0213 = @jisx0213
|
78
|
-
end
|
79
|
-
end
|
80
|
-
|