rsyntaxtree 1.2.5 → 1.2.6
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/.tags +462 -459
- data/Dockerfile +19 -0
- data/Gemfile +0 -3
- data/README.md +16 -14
- data/Rakefile +14 -2
- data/bin/rsyntaxtree +1 -1
- data/{devel → dev}/generate_examples.rb +25 -9
- data/docs/.gitignore +0 -0
- data/docs/404.html +0 -0
- data/docs/Gemfile +0 -0
- data/docs/_config.yml +0 -0
- data/docs/_examples/000.md +0 -0
- data/docs/_examples/001.md +0 -0
- data/docs/_examples/002.md +0 -0
- data/docs/_examples/003.md +0 -0
- data/docs/_examples/004.md +0 -0
- data/docs/_examples/005.md +0 -0
- data/docs/_examples/006.md +0 -0
- data/docs/_examples/007.md +0 -0
- data/docs/_examples/008.md +0 -0
- data/docs/_examples/009.md +0 -0
- data/docs/_examples/010.md +0 -0
- data/docs/_examples/011.md +0 -0
- data/docs/_examples/012.md +0 -0
- data/docs/_examples/013.md +0 -0
- data/docs/_examples/014.md +0 -0
- data/docs/_examples/015.md +0 -0
- data/docs/_examples/016.md +0 -0
- data/docs/_examples/017.md +0 -0
- data/docs/_examples/018.md +0 -0
- data/docs/_examples/019.md +0 -0
- data/docs/_examples/020.md +0 -0
- data/docs/_examples/021.md +0 -0
- data/docs/_examples/022.md +0 -0
- data/docs/_examples/023.md +0 -0
- data/docs/_examples/024.md +0 -0
- data/docs/_examples/025.md +0 -0
- data/docs/_examples/026.md +0 -0
- data/docs/_examples/027.md +0 -0
- data/docs/_examples/028.md +0 -0
- data/docs/_examples/029.md +0 -0
- data/docs/_examples/030.md +0 -0
- data/docs/_examples/031.md +0 -0
- data/docs/_examples/032.md +0 -0
- data/docs/_examples/033.md +0 -0
- data/docs/_examples/034.md +0 -0
- data/docs/_examples/035.md +0 -0
- data/docs/_examples/036.md +0 -0
- data/docs/_examples/037.md +0 -0
- data/docs/_examples/038.md +0 -0
- data/docs/_examples/039.md +0 -0
- data/docs/_examples/040.md +0 -0
- data/docs/_examples/041.md +0 -0
- data/docs/_examples/042.md +0 -0
- data/docs/_examples/043.md +0 -0
- data/docs/_examples/044.md +1 -1
- data/docs/_examples/045.md +0 -0
- data/docs/_examples/046.md +440 -0
- data/docs/_includes/box_and_circle_table.html +0 -0
- data/docs/_includes/escape_char_table.html +0 -0
- data/docs/_includes/social_media_links.html +0 -0
- data/docs/_layouts/default.html +0 -0
- data/docs/assets/css/style.scss +0 -0
- data/docs/assets/img/000.png +0 -0
- data/docs/assets/img/001.png +0 -0
- data/docs/assets/img/002.png +0 -0
- data/docs/assets/img/003.png +0 -0
- data/docs/assets/img/004.png +0 -0
- data/docs/assets/img/005.png +0 -0
- data/docs/assets/img/006.png +0 -0
- data/docs/assets/img/007.png +0 -0
- data/docs/assets/img/008.png +0 -0
- data/docs/assets/img/009.png +0 -0
- data/docs/assets/img/010.png +0 -0
- data/docs/assets/img/011.png +0 -0
- data/docs/assets/img/012.png +0 -0
- data/docs/assets/img/013.png +0 -0
- data/docs/assets/img/014.png +0 -0
- data/docs/assets/img/015.png +0 -0
- data/docs/assets/img/016.png +0 -0
- data/docs/assets/img/017.png +0 -0
- data/docs/assets/img/018.png +0 -0
- data/docs/assets/img/019.png +0 -0
- data/docs/assets/img/020.png +0 -0
- data/docs/assets/img/021.png +0 -0
- data/docs/assets/img/022.png +0 -0
- data/docs/assets/img/023.png +0 -0
- data/docs/assets/img/024.png +0 -0
- data/docs/assets/img/025.png +0 -0
- data/docs/assets/img/026.png +0 -0
- data/docs/assets/img/027.png +0 -0
- data/docs/assets/img/028.png +0 -0
- data/docs/assets/img/029.png +0 -0
- data/docs/assets/img/030.png +0 -0
- data/docs/assets/img/031.png +0 -0
- data/docs/assets/img/032.png +0 -0
- data/docs/assets/img/033.png +0 -0
- data/docs/assets/img/034.png +0 -0
- data/docs/assets/img/035.png +0 -0
- data/docs/assets/img/036.png +0 -0
- data/docs/assets/img/037.png +0 -0
- data/docs/assets/img/038.png +0 -0
- data/docs/assets/img/039.png +0 -0
- data/docs/assets/img/040.png +0 -0
- data/docs/assets/img/041.png +0 -0
- data/docs/assets/img/042.png +0 -0
- data/docs/assets/img/043.png +0 -0
- data/docs/assets/img/044.png +0 -0
- data/docs/assets/img/045.png +0 -0
- data/docs/assets/img/046.png +0 -0
- data/docs/assets/img/elements/circle.png +0 -0
- data/docs/assets/img/elements/circle_abc.png +0 -0
- data/docs/assets/img/elements/circle_bold.png +0 -0
- data/docs/assets/img/elements/circle_hatched.png +0 -0
- data/docs/assets/img/elements/circle_one.png +0 -0
- data/docs/assets/img/elements/connector.png +0 -0
- data/docs/assets/img/elements/connector_bold.png +0 -0
- data/docs/assets/img/elements/square.png +0 -0
- data/docs/assets/img/elements/square_abc.png +0 -0
- data/docs/assets/img/elements/square_bold.png +0 -0
- data/docs/assets/img/elements/square_hatched.png +0 -0
- data/docs/assets/img/elements/square_one.png +0 -0
- data/docs/assets/img/favicon/apple-touch-icon.png +0 -0
- data/docs/assets/img/favicon/favicon-16x16.png +0 -0
- data/docs/assets/img/favicon/favicon-32x32.png +0 -0
- data/docs/assets/img/favicon/favicon.ico +0 -0
- data/docs/assets/svg/000.svg +32 -32
- data/docs/assets/svg/001.svg +14 -14
- data/docs/assets/svg/002.svg +32 -32
- data/docs/assets/svg/003.svg +24 -24
- data/docs/assets/svg/004.svg +35 -35
- data/docs/assets/svg/005.svg +15 -15
- data/docs/assets/svg/006.svg +20 -20
- data/docs/assets/svg/007.svg +26 -26
- data/docs/assets/svg/008.svg +30 -30
- data/docs/assets/svg/009.svg +29 -29
- data/docs/assets/svg/010.svg +47 -47
- data/docs/assets/svg/011.svg +24 -24
- data/docs/assets/svg/012.svg +29 -29
- data/docs/assets/svg/013.svg +119 -119
- data/docs/assets/svg/014.svg +82 -82
- data/docs/assets/svg/015.svg +28 -28
- data/docs/assets/svg/016.svg +375 -375
- data/docs/assets/svg/017.svg +44 -44
- data/docs/assets/svg/018.svg +32 -32
- data/docs/assets/svg/019.svg +168 -168
- data/docs/assets/svg/020.svg +57 -57
- data/docs/assets/svg/021.svg +52 -52
- data/docs/assets/svg/022.svg +90 -90
- data/docs/assets/svg/023.svg +51 -51
- data/docs/assets/svg/024.svg +18 -18
- data/docs/assets/svg/025.svg +116 -116
- data/docs/assets/svg/026.svg +18 -18
- data/docs/assets/svg/027.svg +58 -58
- data/docs/assets/svg/028.svg +16 -16
- data/docs/assets/svg/029.svg +72 -72
- data/docs/assets/svg/030.svg +35 -35
- data/docs/assets/svg/031.svg +10 -10
- data/docs/assets/svg/032.svg +45 -45
- data/docs/assets/svg/033.svg +35 -35
- data/docs/assets/svg/034.svg +43 -43
- data/docs/assets/svg/035.svg +37 -37
- data/docs/assets/svg/036.svg +14 -14
- data/docs/assets/svg/037.svg +6 -6
- data/docs/assets/svg/038.svg +39 -39
- data/docs/assets/svg/039.svg +2 -2
- data/docs/assets/svg/040.svg +89 -89
- data/docs/assets/svg/041.svg +49 -49
- data/docs/assets/svg/042.svg +10 -10
- data/docs/assets/svg/043.svg +124 -124
- data/docs/assets/svg/044.svg +3 -3
- data/docs/assets/svg/045.svg +60 -60
- data/docs/assets/svg/046.svg +990 -0
- data/docs/documentation.md +0 -0
- data/docs/documentation_ja.md +0 -0
- data/docs/examples.html +2 -2
- data/docs/index.html +0 -0
- data/lib/rsyntaxtree/element.rb +1 -6
- data/lib/rsyntaxtree/string_parser.rb +4 -4
- data/lib/rsyntaxtree/svg_graph.rb +13 -13
- data/lib/rsyntaxtree/version.rb +1 -1
- data/lib/rsyntaxtree.rb +4 -2
- metadata +8 -7
- data/docs/assets/img/014_.png +0 -0
- data/fonts/NotoEmoji-Bold.ttf +0 -0
- data/fonts/NotoEmoji-Regular.ttf +0 -0
data/Dockerfile
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
FROM ruby:3.2.0-alpine3.17
|
|
2
|
+
ENV WORKSPACE /rsyntaxtree
|
|
3
|
+
WORKDIR $WORKSPACE
|
|
4
|
+
|
|
5
|
+
RUN apk update && \
|
|
6
|
+
apk upgrade && \
|
|
7
|
+
apk add --no-cache linux-headers libxml2-dev make gcc libc-dev bash && \
|
|
8
|
+
apk add --no-cache librsvg librsvg-dev imagemagick imagemagick-dev xz-dev libbz2 && \
|
|
9
|
+
apk add --no-cache gobject-introspection gobject-introspection-dev && \
|
|
10
|
+
apk add --no-cache -t .build-packages --no-cache build-base curl-dev wget gcompat
|
|
11
|
+
|
|
12
|
+
ADD Gemfile $WORKSPACE
|
|
13
|
+
RUN bundle install -j4
|
|
14
|
+
|
|
15
|
+
ADD . $WORKSPACE
|
|
16
|
+
RUN mkdir -p /usr/share/fonts/yh
|
|
17
|
+
COPY ./fonts/* /usr/share/fonts/yh/
|
|
18
|
+
RUN fc-cache -fv
|
|
19
|
+
CMD ["/bin/bash"]
|
data/Gemfile
CHANGED
data/README.md
CHANGED
|
@@ -70,20 +70,22 @@ Usage:
|
|
|
70
70
|
1) rsyntaxtree [options] "[VP [VP [V set] [NP bracket notation]] [ADV here]]"
|
|
71
71
|
2) rsyntaxtree [options] "/path/to/text/file"
|
|
72
72
|
where [options] are:
|
|
73
|
-
-o, --outdir=<s>
|
|
74
|
-
-f, --format=<s>
|
|
75
|
-
-l, --leafstyle=<s>
|
|
76
|
-
-n, --fontstyle=<s>
|
|
77
|
-
-t, --font=<s>
|
|
78
|
-
-s, --fontsize=<i>
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
-
|
|
85
|
-
-
|
|
86
|
-
-h, --
|
|
73
|
+
-o, --outdir=<s> Output directory (default: ./)
|
|
74
|
+
-f, --format=<s> Output format: png, gif, jpg, pdf, or svg (default: png)
|
|
75
|
+
-l, --leafstyle=<s> visual style of tree leaves: auto, triangle, bar, or nothing (default: auto)
|
|
76
|
+
-n, --fontstyle=<s> Font style (available when ttf font is specified): sans, serif, cjk, mono (default: sans)
|
|
77
|
+
-t, --font=<s> Path to a ttf font used to generate tree (optional)
|
|
78
|
+
-s, --fontsize=<i> Size: 8-26 (default: 16)
|
|
79
|
+
-i, --linewidth=<i> Size: 1-5 (default: 1)
|
|
80
|
+
-m, --margin=<i> Margin: 0-10 (default: 1)
|
|
81
|
+
-v, --vheight=<f> Connector Height: 0.5-5.0 (default: 2.0)
|
|
82
|
+
-c, --color=<s> Color text and bars: modern, traditional, or off (default: modern)
|
|
83
|
+
-y, --symmetrize=<s> Generate radically symmetrical, balanced tree: on or off (default: off)
|
|
84
|
+
-r, --transparent=<s> Make background transparent: on or off (default: off)
|
|
85
|
+
-p, --polyline=<s> draw polyline connectors: on or off (default: off)
|
|
86
|
+
-h, --hide-default-connectors=<s> make default connectors transparent: on or off (default: off)
|
|
87
|
+
-e, --version Print version and exit
|
|
88
|
+
--help Show this message
|
|
87
89
|
```
|
|
88
90
|
|
|
89
91
|
See the [documentation](https://yohasebe.github.io/rsyntaxtree/documentation) for more detailed info about the syntax.
|
data/Rakefile
CHANGED
|
@@ -13,7 +13,19 @@ Rake::TestTask.new do |task|
|
|
|
13
13
|
task.warning = false
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
-
desc "Generate SVG and PNG example images"
|
|
16
|
+
desc "Generate SVG and PNG example images locally"
|
|
17
17
|
task :generate do
|
|
18
|
-
require_relative "
|
|
18
|
+
require_relative "dev/generate_examples"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
desc "Docker image Build"
|
|
22
|
+
task :docker_build do
|
|
23
|
+
`docker build ./ -t rsyntaxtree:devel`
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
desc "Generate SVG and PNG example images using Docker mage"
|
|
27
|
+
task :docker_generate do
|
|
28
|
+
docpath = File.expand_path(File.join(__dir__, "docs"))
|
|
29
|
+
`docker run --rm -v #{docpath}:/rsyntaxtree/hostdocs rsyntaxtree:devel ruby /rsyntaxtree/dev/generate_examples.rb /rsyntaxtree/hostdocs`
|
|
30
|
+
`cat #{docpath}/generate_examples.log`
|
|
19
31
|
end
|
data/bin/rsyntaxtree
CHANGED
|
@@ -1,19 +1,27 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
require "yaml"
|
|
5
|
+
require_relative '../lib/rsyntaxtree'
|
|
6
|
+
require_relative '../lib/rsyntaxtree/utils'
|
|
7
|
+
|
|
8
|
+
directory = nil
|
|
9
|
+
directory = ARGV[0] if File.exist? ARGV[0]
|
|
10
|
+
doc_dir = File.expand_path(directory || File.join(__dir__, "..", "docs"))
|
|
11
|
+
examples_dir = File.join(doc_dir, "_examples")
|
|
12
|
+
svg_dir = File.join(doc_dir, "assets", "svg")
|
|
13
|
+
png_dir = File.join(doc_dir, "assets", "img")
|
|
14
|
+
|
|
15
|
+
logfile = File.open(File.join(doc_dir, "generate_examples.log"), "w")
|
|
16
|
+
|
|
7
17
|
Dir.glob("*.md", base: examples_dir).map do |md|
|
|
8
18
|
md = File.join(examples_dir, md)
|
|
9
19
|
config = YAML.load_file(md)
|
|
10
20
|
rst = File.read(md).scan(/```([^`]+)```/m).last.first
|
|
11
21
|
begin
|
|
12
22
|
RSyntaxTree::RSGenerator.check_data(rst)
|
|
13
|
-
rescue StandardError
|
|
14
|
-
puts "Error detected in #{md}"
|
|
15
|
-
pp e
|
|
16
|
-
exit
|
|
23
|
+
rescue StandardError
|
|
24
|
+
logfile.puts "Error detected in #{md}"
|
|
17
25
|
end
|
|
18
26
|
|
|
19
27
|
opts = {
|
|
@@ -78,14 +86,22 @@ Dir.glob("*.md", base: examples_dir).map do |md|
|
|
|
78
86
|
rsg = RSyntaxTree::RSGenerator.new(opts)
|
|
79
87
|
|
|
80
88
|
File.open(File.join(svg_dir, "#{name}.svg"), "w") do |f|
|
|
81
|
-
puts "Creating svg file: #{name}.svg"
|
|
89
|
+
logfile.puts "Creating svg file: #{name}.svg"
|
|
82
90
|
svg = rsg.draw_svg
|
|
83
91
|
f.write(svg)
|
|
92
|
+
rescue StandardError => e
|
|
93
|
+
logfile.puts "Processing #{name}.svg"
|
|
94
|
+
logfile.puts e.message
|
|
84
95
|
end
|
|
85
96
|
|
|
86
97
|
File.open(File.join(png_dir, "#{name}.png"), "w") do |f|
|
|
87
|
-
puts "Creating png file: #{name}.png"
|
|
98
|
+
logfile.puts "Creating png file: #{name}.png"
|
|
88
99
|
png = rsg.draw_png
|
|
89
100
|
f.write(png)
|
|
101
|
+
rescue StandardError => e
|
|
102
|
+
logfile.puts "Processing #{name}.png"
|
|
103
|
+
logfile.puts e.message
|
|
90
104
|
end
|
|
91
105
|
end
|
|
106
|
+
|
|
107
|
+
logfile.close
|
data/docs/.gitignore
CHANGED
|
File without changes
|
data/docs/404.html
CHANGED
|
File without changes
|
data/docs/Gemfile
CHANGED
|
File without changes
|
data/docs/_config.yml
CHANGED
|
File without changes
|
data/docs/_examples/000.md
CHANGED
|
File without changes
|
data/docs/_examples/001.md
CHANGED
|
File without changes
|
data/docs/_examples/002.md
CHANGED
|
File without changes
|
data/docs/_examples/003.md
CHANGED
|
File without changes
|
data/docs/_examples/004.md
CHANGED
|
File without changes
|
data/docs/_examples/005.md
CHANGED
|
File without changes
|
data/docs/_examples/006.md
CHANGED
|
File without changes
|
data/docs/_examples/007.md
CHANGED
|
File without changes
|
data/docs/_examples/008.md
CHANGED
|
File without changes
|
data/docs/_examples/009.md
CHANGED
|
File without changes
|
data/docs/_examples/010.md
CHANGED
|
File without changes
|
data/docs/_examples/011.md
CHANGED
|
File without changes
|
data/docs/_examples/012.md
CHANGED
|
File without changes
|
data/docs/_examples/013.md
CHANGED
|
File without changes
|
data/docs/_examples/014.md
CHANGED
|
File without changes
|
data/docs/_examples/015.md
CHANGED
|
File without changes
|
data/docs/_examples/016.md
CHANGED
|
File without changes
|
data/docs/_examples/017.md
CHANGED
|
File without changes
|
data/docs/_examples/018.md
CHANGED
|
File without changes
|
data/docs/_examples/019.md
CHANGED
|
File without changes
|
data/docs/_examples/020.md
CHANGED
|
File without changes
|
data/docs/_examples/021.md
CHANGED
|
File without changes
|
data/docs/_examples/022.md
CHANGED
|
File without changes
|
data/docs/_examples/023.md
CHANGED
|
File without changes
|
data/docs/_examples/024.md
CHANGED
|
File without changes
|
data/docs/_examples/025.md
CHANGED
|
File without changes
|
data/docs/_examples/026.md
CHANGED
|
File without changes
|
data/docs/_examples/027.md
CHANGED
|
File without changes
|
data/docs/_examples/028.md
CHANGED
|
File without changes
|
data/docs/_examples/029.md
CHANGED
|
File without changes
|
data/docs/_examples/030.md
CHANGED
|
File without changes
|
data/docs/_examples/031.md
CHANGED
|
File without changes
|
data/docs/_examples/032.md
CHANGED
|
File without changes
|
data/docs/_examples/033.md
CHANGED
|
File without changes
|
data/docs/_examples/034.md
CHANGED
|
File without changes
|
data/docs/_examples/035.md
CHANGED
|
File without changes
|
data/docs/_examples/036.md
CHANGED
|
File without changes
|
data/docs/_examples/037.md
CHANGED
|
File without changes
|
data/docs/_examples/038.md
CHANGED
|
File without changes
|
data/docs/_examples/039.md
CHANGED
|
File without changes
|
data/docs/_examples/040.md
CHANGED
|
File without changes
|
data/docs/_examples/041.md
CHANGED
|
File without changes
|
data/docs/_examples/042.md
CHANGED
|
File without changes
|
data/docs/_examples/043.md
CHANGED
|
File without changes
|
data/docs/_examples/044.md
CHANGED
data/docs/_examples/045.md
CHANGED
|
File without changes
|