rsyntaxtree 1.2.5 → 1.2.6
Sign up to get free protection for your applications and to get access to all the features.
- 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
|