rsyntaxtree 0.7.7 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/bin/rsyntaxtree +6 -6
- data/fonts/NotoSansMath-Regular.ttf +0 -0
- data/fonts/latinmodern-math.otf +0 -0
- data/fonts/lmroman10-bold.otf +0 -0
- data/fonts/lmroman10-bolditalic.otf +0 -0
- data/fonts/lmroman10-italic.otf +0 -0
- data/fonts/lmroman10-regular.otf +0 -0
- data/lib/rsyntaxtree/graph.rb +2 -2
- data/lib/rsyntaxtree/string_parser.rb +12 -12
- data/lib/rsyntaxtree/svg_graph.rb +5 -10
- data/lib/rsyntaxtree/tree_graph.rb +23 -19
- data/lib/rsyntaxtree/version.rb +1 -1
- data/lib/rsyntaxtree.rb +15 -2
- data/rsyntaxtree.gemspec +2 -5
- metadata +25 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a93fb86aba069b61d5095d8cd565153b36ea9cdc0bd9903b2ffc656bae5986cb
|
4
|
+
data.tar.gz: a11db6cdb80b0ccdc118761a4f2131915bffd3dc1a13343be4df662e13bb88b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8ce0bbb49b1c7207aa5d65958e9185dd2e28c762bf39304077b37d03c8e7a2e32b79f2b490d110a6223d1b1ca7df591f43ec82bbc7532f5f4a6c406107e55d72
|
7
|
+
data.tar.gz: 66849abf7520966907cece66a1f12fc3eb29384911ddda5f518ad23ecdf7249d589edebfec98c42f35f468c1dea7204e285a38ddb37e510610bec08807d6d154
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
### Web Interface
|
6
6
|
|
7
|
-
|
7
|
+
See updates and a working web interface available at <https://yohasebe.com/rsyntaxtree>.
|
8
8
|
|
9
9
|
### Installation
|
10
10
|
|
@@ -25,7 +25,7 @@ where [options] are:
|
|
25
25
|
-o, --outdir=<s> Output directory (default: ./)
|
26
26
|
-f, --format=<s> Output format: png, pdf, or svg (default: png)
|
27
27
|
-l, --leafstyle=<s> visual style of tree leaves: auto, triangle, bar, or nothing (default: auto)
|
28
|
-
-n, --fontstyle=<s> Font style: sans, serif, cjk (default: sans)
|
28
|
+
-n, --fontstyle=<s> Font style: sans, serif, cjk, math (default: sans)
|
29
29
|
-t, --font=<s> Path to a ttf font used to generate tree (optional)
|
30
30
|
-s, --fontsize=<i> Size: 8-26 (default: 16)
|
31
31
|
-c, --color=<s> Color text and bars: on or off (default: on)
|
data/bin/rsyntaxtree
CHANGED
@@ -20,9 +20,9 @@ EOS
|
|
20
20
|
:default => "./"
|
21
21
|
opt :format, "Output format: png, gif, jpg, pdf, or svg",
|
22
22
|
:default => "png"
|
23
|
-
opt :leafstyle, "visual style of tree leaves: auto, triangle, bar, or nothing",
|
23
|
+
opt :leafstyle, "visual style of tree leaves: auto, triangle, bar, or nothing",
|
24
24
|
:default => "auto"
|
25
|
-
opt :fontstyle, "Font style (available when ttf font is specified): sans, serif, cjk",
|
25
|
+
opt :fontstyle, "Font style (available when ttf font is specified): sans, serif, cjk, math",
|
26
26
|
:default => "sans"
|
27
27
|
opt :font, "Path to a ttf font used to generate tree (optional)", :type => String
|
28
28
|
opt :fontsize, "Size: 8-26",
|
@@ -32,17 +32,17 @@ EOS
|
|
32
32
|
opt :vheight, "Connector Height: 0.5-2.0",
|
33
33
|
:default => 1.0
|
34
34
|
opt :color, "Color text and bars: on or off",
|
35
|
-
:default => "on"
|
35
|
+
:default => "on"
|
36
36
|
opt :symmetrize, "Generate symmetrical, balanced tree: on or off",
|
37
|
-
:default => "on"
|
37
|
+
:default => "on"
|
38
38
|
opt :autosub, "Put subscript numbers to nodes: on or off",
|
39
|
-
:default => "off"
|
39
|
+
:default => "off"
|
40
40
|
end
|
41
41
|
|
42
42
|
Optimist::die :outdir, "must be an exsting directory path" unless FileTest::directory?(opts[:outdir])
|
43
43
|
Optimist::die :format, "must be png, jpg, gif, or svg" unless /\A(png|jpg|gif|pdf|svg)\z/ =~ opts[:format]
|
44
44
|
Optimist::die :leafstyle, "must be auto, triangle, bar, or nothing" unless /\A(auto|triangle|bar|nothing)\z/ =~ opts[:leafstyle]
|
45
|
-
Optimist::die :fontstyle, "must be sans, serif, cjk" unless /\A(sans|serif|cjk)\z/ =~ opts[:fontstyle]
|
45
|
+
Optimist::die :fontstyle, "must be sans, serif, cjk, math" unless /\A(sans|serif|cjk|math)\z/ =~ opts[:fontstyle]
|
46
46
|
Optimist::die :font, "must be path to an existing ttf font" if opts[:font] && !File::exists?(opts[:font])
|
47
47
|
Optimist::die :fontsize, "must be in the range of 8-26" unless opts[:fontsize] >= 8 && opts[:fontsize] <= 26
|
48
48
|
Optimist::die :color, "must be either on or off" unless /\A(on|off)\z/ =~ opts[:color]
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/rsyntaxtree/graph.rb
CHANGED
@@ -62,7 +62,7 @@ class Graph
|
|
62
62
|
|
63
63
|
gc = Draw.new
|
64
64
|
gc.annotate(background, 0, 0, 0, 0, text) do |gc|
|
65
|
-
gc.font = font
|
65
|
+
gc.font = font
|
66
66
|
gc.pointsize = font_size
|
67
67
|
gc.gravity = CenterGravity
|
68
68
|
gc.stroke = 'none'
|
@@ -286,7 +286,7 @@ class Graph
|
|
286
286
|
|
287
287
|
def get_txt_only(text)
|
288
288
|
text = text.strip
|
289
|
-
if /\A([
|
289
|
+
if /\A([\+\-\=\*\~]+).+/ =~ text
|
290
290
|
prefix = $1
|
291
291
|
prefix_l = Regexp.escape(prefix)
|
292
292
|
prefix_r = Regexp.escape(prefix.reverse)
|
@@ -17,18 +17,18 @@
|
|
17
17
|
require 'elementlist'
|
18
18
|
require 'element'
|
19
19
|
|
20
|
-
def escape_high_ascii(string)
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
end
|
20
|
+
# def escape_high_ascii(string)
|
21
|
+
# html = ""
|
22
|
+
# string.length.times do |i|
|
23
|
+
# ch = string[i]
|
24
|
+
# if(ch < 127)
|
25
|
+
# html += ch.chr
|
26
|
+
# else
|
27
|
+
# html += sprintf("&#%d;", ch)
|
28
|
+
# end
|
29
|
+
# end
|
30
|
+
# html
|
31
|
+
# end
|
32
32
|
|
33
33
|
class StringParser
|
34
34
|
|
@@ -18,10 +18,11 @@ require 'graph'
|
|
18
18
|
|
19
19
|
class SVGGraph < Graph
|
20
20
|
|
21
|
-
def initialize(e_list, metrics, symmetrize, color, leafstyle, multibyte, fontstyle, font_size)
|
21
|
+
def initialize(e_list, metrics, symmetrize, color, leafstyle, multibyte, fontstyle, font, font_size)
|
22
22
|
|
23
23
|
# Store class-specific parameters
|
24
|
-
@
|
24
|
+
@fontstyle = fontstyle
|
25
|
+
@font = multibyte ? font_cjk : font
|
25
26
|
@font_size = font_size
|
26
27
|
|
27
28
|
super(e_list, metrics, symmetrize, color, leafstyle, multibyte, @font, @font_size)
|
@@ -87,15 +88,12 @@ EOD
|
|
87
88
|
sub = ""
|
88
89
|
end
|
89
90
|
|
90
|
-
if /\A
|
91
|
+
if /\A\=(.+)\=\z/ =~ main
|
91
92
|
main = $1
|
92
93
|
main_decoration= "overline"
|
93
94
|
elsif /\A\-(.+)\-\z/ =~ main
|
94
95
|
main = $1
|
95
96
|
main_decoration= "underline"
|
96
|
-
elsif /\A\=(.+)\=\z/ =~ main
|
97
|
-
main = $1
|
98
|
-
main_decoration= "line-through"
|
99
97
|
else
|
100
98
|
main_decoration= ""
|
101
99
|
end
|
@@ -124,15 +122,12 @@ EOD
|
|
124
122
|
main_width = img_get_txt_width(main, @font, @font_size)
|
125
123
|
|
126
124
|
if sub != ""
|
127
|
-
if /\A
|
125
|
+
if /\A\=(.+)\=\z/ =~ sub
|
128
126
|
sub = $1
|
129
127
|
sub_decoration= "overline"
|
130
128
|
elsif /\A\-(.+)\-\z/ =~ sub
|
131
129
|
sub = $1
|
132
130
|
sub_decoration= "underline"
|
133
|
-
elsif /\A\=(.+)\=\z/ =~ sub
|
134
|
-
sub = $1
|
135
|
-
sub_decoration= "line-through"
|
136
131
|
else
|
137
132
|
sub_decoration= ""
|
138
133
|
end
|
@@ -20,7 +20,7 @@ include Magick
|
|
20
20
|
class TreeGraph < Graph
|
21
21
|
|
22
22
|
def initialize(e_list, metrics, symmetrize, color, leafstyle, multibyte,
|
23
|
-
fontstyle, font, font_it, font_bd, font_itbd, font_cjk, font_size,
|
23
|
+
fontstyle, font, font_it, font_bd, font_itbd, font_math, font_cjk, font_size,
|
24
24
|
margin)
|
25
25
|
|
26
26
|
# Store class-specific parameters
|
@@ -30,6 +30,7 @@ class TreeGraph < Graph
|
|
30
30
|
@font_it = font_it
|
31
31
|
@font_bd = font_bd
|
32
32
|
@font_itbd = font_itbd
|
33
|
+
@font_math = font_math
|
33
34
|
@font_cjk = font_cjk
|
34
35
|
@margin = margin
|
35
36
|
|
@@ -62,10 +63,13 @@ class TreeGraph < Graph
|
|
62
63
|
def to_blob(fileformat='PNG')
|
63
64
|
draw
|
64
65
|
@im.border!(@margin, @margin, "white")
|
65
|
-
return @im.to_blob do
|
66
|
-
|
67
|
-
|
68
|
-
end
|
66
|
+
# return @im.to_blob do
|
67
|
+
# self.format = fileformat
|
68
|
+
# self.interlace = PlaneInterlace
|
69
|
+
# end
|
70
|
+
@im.format = fileformat
|
71
|
+
@im.interlace = PlaneInterlace
|
72
|
+
return @im.to_blob
|
69
73
|
end
|
70
74
|
|
71
75
|
:private
|
@@ -94,19 +98,18 @@ class TreeGraph < Graph
|
|
94
98
|
sub = ""
|
95
99
|
end
|
96
100
|
|
97
|
-
if /\A
|
101
|
+
if /\A\=(.+)\=\z/ =~ main
|
98
102
|
main = $1
|
99
103
|
main_decoration = OverlineDecoration
|
100
104
|
elsif /\A\-(.+)\-\z/ =~ main
|
101
105
|
main = $1
|
102
106
|
main_decoration = UnderlineDecoration
|
103
|
-
elsif /\A\=(.+)\=\z/ =~ main
|
104
|
-
main = $1
|
105
|
-
main_decoration = LineThroughDecoration
|
106
107
|
else
|
107
108
|
main_decoration = NoDecoration
|
108
109
|
end
|
109
110
|
|
111
|
+
main_font = @font
|
112
|
+
|
110
113
|
if /\A\*\*\*(.+)\*\*\*\z/ =~ main
|
111
114
|
main = $1
|
112
115
|
if !@multibyte
|
@@ -122,32 +125,30 @@ class TreeGraph < Graph
|
|
122
125
|
if !@multibyte
|
123
126
|
main_font = @font_it
|
124
127
|
end
|
125
|
-
|
126
|
-
|
128
|
+
end
|
129
|
+
|
130
|
+
if /\A\~(.+)\~\z/ =~ main
|
131
|
+
main = $1
|
132
|
+
main_font = @font_math
|
127
133
|
end
|
128
134
|
|
129
135
|
# Calculate text size for the main and the
|
130
136
|
# subscript part of the element
|
131
|
-
# symbols for underline/overline removed temporarily
|
132
137
|
|
133
138
|
main_width = img_get_txt_width(main, main_font, @font_size)
|
134
139
|
|
135
|
-
if /\A
|
140
|
+
if /\A\=(.+)\=\z/ =~ sub
|
136
141
|
sub = $1
|
137
142
|
sub_decoration = OverlineDecoration
|
138
143
|
elsif /\A\-(.+)\-\z/ =~ sub
|
139
144
|
sub = $1
|
140
145
|
@gc.decorate(UnderlineDecoration)
|
141
146
|
sub_decoration = UnderlineDecoration
|
142
|
-
elsif /\A\=(.+)\=\z/ =~ sub
|
143
|
-
sub = $1
|
144
|
-
sub_decoration = LineThroughDecoration
|
145
147
|
else
|
146
148
|
sub_decoration = NoDecoration
|
147
149
|
end
|
148
150
|
|
149
151
|
sub_font = @font
|
150
|
-
|
151
152
|
if /\A\*\*\*(.+)\*\*\*\z/ =~ sub
|
152
153
|
sub = $1
|
153
154
|
if !@multibyte
|
@@ -163,8 +164,11 @@ class TreeGraph < Graph
|
|
163
164
|
if !@multibyte
|
164
165
|
sub_font = @font_it
|
165
166
|
end
|
166
|
-
|
167
|
-
|
167
|
+
end
|
168
|
+
|
169
|
+
if /\A~(.+)~\z/ =~ sub
|
170
|
+
sub = $1
|
171
|
+
sub_font = @font_math
|
168
172
|
end
|
169
173
|
|
170
174
|
if sub != ""
|
data/lib/rsyntaxtree/version.rb
CHANGED
data/lib/rsyntaxtree.rb
CHANGED
@@ -62,6 +62,7 @@ class RSGenerator
|
|
62
62
|
new_params[:font_it] = FONT_DIR + "/NotoSans-Italic.ttf"
|
63
63
|
new_params[:font_bd] = FONT_DIR + "/NotoSans-Bold.ttf"
|
64
64
|
new_params[:font_bdit] = FONT_DIR + "/NotoSans-BoldItalic.ttf"
|
65
|
+
new_params[:font_math] = FONT_DIR + "/NotoSansMath-Regular.ttf"
|
65
66
|
new_params[:font_cjk] = FONT_DIR + "/NotoSansCJKjp-Regular.otf"
|
66
67
|
new_params[:fontstyle] = "sans"
|
67
68
|
elsif value == "noto-serif" || value == "serif"
|
@@ -69,6 +70,7 @@ class RSGenerator
|
|
69
70
|
new_params[:font_it] = FONT_DIR + "/NotoSerif-Italic.ttf"
|
70
71
|
new_params[:font_bd] = FONT_DIR + "/NotoSerif-Bold.ttf"
|
71
72
|
new_params[:font_bdit] = FONT_DIR + "/NotoSerif-BoldItalic.ttf"
|
73
|
+
new_params[:font_math] = FONT_DIR + "/NotoSansMath-Regular.ttf"
|
72
74
|
new_params[:font_cjk] = FONT_DIR + "/NotoSerifCJKjp-Regular.otf"
|
73
75
|
new_params[:fontstyle] = "serif"
|
74
76
|
elsif value == "cjk zenhei" || value == "cjk"
|
@@ -76,14 +78,24 @@ class RSGenerator
|
|
76
78
|
new_params[:font_it] = FONT_DIR + "/NotoSans-Italic.ttf"
|
77
79
|
new_params[:font_bd] = FONT_DIR + "/NotoSans-Bold.ttf"
|
78
80
|
new_params[:font_bdit] = FONT_DIR + "/NotoSans-BoldItalic.ttf"
|
81
|
+
new_params[:font_math] = FONT_DIR + "/NotoSansMath-Regular.ttf"
|
79
82
|
new_params[:font_cjk] = FONT_DIR + "/wqy-zenhei.ttf"
|
80
83
|
new_params[:fontstyle] = "sans"
|
84
|
+
elsif value == "modern-math" || value == "math"
|
85
|
+
new_params[:font] = FONT_DIR + "/latinmodern-math.otf"
|
86
|
+
new_params[:font_it] = FONT_DIR + "/lmroman10-italic.otf"
|
87
|
+
new_params[:font_bd] = FONT_DIR + "/lmroman10-bold.otf"
|
88
|
+
new_params[:font_bdit] = FONT_DIR + "/lmroman10-bolditalic.otf"
|
89
|
+
new_params[:font_math] = FONT_DIR + "/latinmodern-math.otf"
|
90
|
+
new_params[:font_cjk] = FONT_DIR + "/NotoSerifCJKjp-Regular.otf"
|
91
|
+
new_params[:fontstyle] = "math"
|
81
92
|
end
|
82
93
|
else
|
83
94
|
new_params[key] = value
|
84
95
|
end
|
85
96
|
end
|
86
97
|
|
98
|
+
# defaults to the following
|
87
99
|
@params = {
|
88
100
|
:symmetrize => true,
|
89
101
|
:color => true,
|
@@ -100,6 +112,7 @@ class RSGenerator
|
|
100
112
|
:font_it => "/NotoSans-Italic.ttf",
|
101
113
|
:font_bd => "/NotoSans-Bold.ttf",
|
102
114
|
:font_bdit => "/NotoSans-BoldItalic.ttf",
|
115
|
+
:font_math => "/NotoSansMath-Regular.ttf"
|
103
116
|
}
|
104
117
|
@metrics = {
|
105
118
|
:e_width => 120,
|
@@ -149,7 +162,7 @@ class RSGenerator
|
|
149
162
|
elist = sp.get_elementlist
|
150
163
|
graph = SVGGraph.new(elist, @metrics,
|
151
164
|
@params[:symmetrize], @params[:color], @params[:leafstyle], @params[:multibyte],
|
152
|
-
@params[:fontstyle], @params[:fontsize],
|
165
|
+
@params[:fontstyle], @params[:font], @params[:fontsize],
|
153
166
|
)
|
154
167
|
graph.svg_data
|
155
168
|
end
|
@@ -161,7 +174,7 @@ class RSGenerator
|
|
161
174
|
elist = sp.get_elementlist
|
162
175
|
graph = TreeGraph.new(elist, @metrics,
|
163
176
|
@params[:symmetrize], @params[:color], @params[:leafstyle], @params[:multibyte],
|
164
|
-
@params[:fontstyle], @params[:font], @params[:font_it], @params[:font_bd], @params[:font_bdit],
|
177
|
+
@params[:fontstyle], @params[:font], @params[:font_it], @params[:font_bd], @params[:font_bdit], @params[:font_math],
|
165
178
|
@params[:font_cjk], @params[:fontsize], @params[:margin],
|
166
179
|
)
|
167
180
|
graph.to_blob(@params[:format])
|
data/rsyntaxtree.gemspec
CHANGED
@@ -12,14 +12,11 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.summary = %q{RSyntaxTree is a graphical syntax tree generator written in Ruby}
|
13
13
|
s.description = %q{Yet another syntax tree generator made with Ruby and RMagick}
|
14
14
|
s.licenses = ["MIT"]
|
15
|
-
|
16
|
-
s.rubyforge_project = "rsyntaxtree"
|
17
|
-
|
18
15
|
s.files = `git ls-files`.split("\n")
|
19
16
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
17
|
s.require_paths = ["lib"]
|
21
18
|
|
22
19
|
# specify any dependencies here; for example:
|
23
|
-
s.add_runtime_dependency
|
24
|
-
s.add_runtime_dependency
|
20
|
+
s.add_runtime_dependency 'rmagick', '~> 4.2', '>= 4.2.3'
|
21
|
+
s.add_runtime_dependency 'optimist', '~> 3.0', '>= 3.0.1'
|
25
22
|
end
|
metadata
CHANGED
@@ -1,43 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rsyntaxtree
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yoichiro Hasebe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rmagick
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '4.2'
|
17
20
|
- - ">="
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
22
|
+
version: 4.2.3
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '4.2'
|
24
30
|
- - ">="
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
32
|
+
version: 4.2.3
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: optimist
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
30
36
|
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '3.0'
|
31
40
|
- - ">="
|
32
41
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
42
|
+
version: 3.0.1
|
34
43
|
type: :runtime
|
35
44
|
prerelease: false
|
36
45
|
version_requirements: !ruby/object:Gem::Requirement
|
37
46
|
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '3.0'
|
38
50
|
- - ">="
|
39
51
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
52
|
+
version: 3.0.1
|
41
53
|
description: Yet another syntax tree generator made with Ruby and RMagick
|
42
54
|
email:
|
43
55
|
- yohasebe@gmail.com
|
@@ -56,11 +68,17 @@ files:
|
|
56
68
|
- fonts/NotoSans-Italic.ttf
|
57
69
|
- fonts/NotoSans-Regular.ttf
|
58
70
|
- fonts/NotoSansCJKjp-Regular.otf
|
71
|
+
- fonts/NotoSansMath-Regular.ttf
|
59
72
|
- fonts/NotoSerif-Bold.ttf
|
60
73
|
- fonts/NotoSerif-BoldItalic.ttf
|
61
74
|
- fonts/NotoSerif-Italic.ttf
|
62
75
|
- fonts/NotoSerif-Regular.ttf
|
63
76
|
- fonts/NotoSerifCJKjp-Regular.otf
|
77
|
+
- fonts/latinmodern-math.otf
|
78
|
+
- fonts/lmroman10-bold.otf
|
79
|
+
- fonts/lmroman10-bolditalic.otf
|
80
|
+
- fonts/lmroman10-italic.otf
|
81
|
+
- fonts/lmroman10-regular.otf
|
64
82
|
- fonts/wqy-zenhei.ttf
|
65
83
|
- lib/rsyntaxtree.rb
|
66
84
|
- lib/rsyntaxtree/element.rb
|
@@ -92,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
92
110
|
- !ruby/object:Gem::Version
|
93
111
|
version: '0'
|
94
112
|
requirements: []
|
95
|
-
rubygems_version: 3.2.
|
113
|
+
rubygems_version: 3.2.11
|
96
114
|
signing_key:
|
97
115
|
specification_version: 4
|
98
116
|
summary: RSyntaxTree is a graphical syntax tree generator written in Ruby
|