jekyll-diagrams 0.7.1 → 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/.gitignore +4 -4
- data/.travis.yml +89 -24
- data/Dockerfile +25 -0
- data/README.md +68 -19
- data/Rakefile +13 -6
- data/lib/jekyll-diagrams/block.rb +3 -2
- data/lib/jekyll-diagrams/blockdiag.rb +3 -8
- data/lib/jekyll-diagrams/erd.rb +20 -18
- data/lib/jekyll-diagrams/graphviz.rb +6 -4
- data/lib/jekyll-diagrams/mermaid.rb +9 -12
- data/lib/jekyll-diagrams/nomnoml.rb +19 -0
- data/lib/jekyll-diagrams/plantuml.rb +4 -2
- data/lib/jekyll-diagrams/renderer.rb +16 -4
- data/lib/jekyll-diagrams/smcat.rb +19 -21
- data/lib/jekyll-diagrams/svgbob.rb +25 -0
- data/lib/jekyll-diagrams/syntrax.rb +18 -16
- data/lib/jekyll-diagrams/util.rb +19 -19
- data/lib/jekyll-diagrams/vega.rb +30 -0
- data/lib/jekyll-diagrams/version.rb +1 -1
- data/lib/jekyll-diagrams/wavedrom.rb +14 -12
- data/lib/jekyll-diagrams.rb +3 -0
- data/test/dummy_site/{_posts/2020-01-01-graphviz-test.md → apt/graphviz.md} +1 -4
- data/test/dummy_site/{_posts/2020-01-07-erd-test.md → cabal/erd.md} +1 -2
- data/test/dummy_site/cargo/svgbob.md +14 -0
- data/test/dummy_site/index.md +4 -0
- data/test/dummy_site/{_posts/2020-01-03-plantuml-test.md → java/plantuml.md} +1 -4
- data/test/dummy_site/{_posts/2020-01-04-mermaid-test.md → npm/mermaid.md} +1 -4
- data/test/dummy_site/npm/nomnoml.md +27 -0
- data/test/dummy_site/{_posts/2020-01-06-smcat-test.md → npm/smcat.md} +1 -4
- data/test/dummy_site/npm/vega.md +103 -0
- data/test/dummy_site/{_posts/2020-01-05-wavedrom-test.md → npm/wavedrom.md} +1 -4
- data/test/dummy_site/{_posts/2020-01-02-blockdiag-test.md → pip/blockdiag.md} +1 -4
- data/test/dummy_site/pip/syntrax.md +13 -0
- metadata +29 -18
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e3f1fe990807c62c25fe99620086be43c6ee2686466a343ca5ae3c46bc22a62b
|
|
4
|
+
data.tar.gz: be24cab35d4b8afdd58956532d200b9010d3e4ef33a1961e532b9d1a857eac41
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2852b19ce85eef87ae1e362d63047aadf101f3867c8027650c49c3f9118533ba4615a36b1f748ea16cf373ab774729f04c8870c6a15d2f2268b447e926209901
|
|
7
|
+
data.tar.gz: 448d85033efb665594918b9ef20a0827de05407757afc3440311f43e45f4d184cae890f8bfc63fd900c3ee4e092e3ceb9557c42aac01263bdbc867bd1d659154
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
|
@@ -1,25 +1,90 @@
|
|
|
1
1
|
language: ruby
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
2
|
+
|
|
3
|
+
dist: bionic
|
|
4
|
+
|
|
5
|
+
cache:
|
|
6
|
+
apt: true
|
|
7
|
+
bundler: true
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
fast_finish: true
|
|
11
|
+
allow_failures:
|
|
12
|
+
- name: Cabal Packages
|
|
13
|
+
env: DIAGRAM=cabal
|
|
14
|
+
cache:
|
|
15
|
+
directories:
|
|
16
|
+
- "$HOME/.cabal"
|
|
17
|
+
addons:
|
|
18
|
+
apt:
|
|
19
|
+
update: true
|
|
20
|
+
packages:
|
|
21
|
+
- cabal-install
|
|
22
|
+
before_install:
|
|
23
|
+
- cabal update
|
|
24
|
+
- cabal install erd
|
|
25
|
+
include:
|
|
26
|
+
- name: Apt Packages
|
|
27
|
+
env: DIAGRAM=apt
|
|
28
|
+
addons:
|
|
29
|
+
apt:
|
|
30
|
+
update: true
|
|
31
|
+
packages:
|
|
32
|
+
- graphviz
|
|
33
|
+
|
|
34
|
+
- name: Cargo Packages
|
|
35
|
+
env: DIAGRAM=cargo
|
|
36
|
+
cache: cargo
|
|
37
|
+
addons:
|
|
38
|
+
apt:
|
|
39
|
+
update: true
|
|
40
|
+
packages:
|
|
41
|
+
- cargo
|
|
42
|
+
before_install:
|
|
43
|
+
- cargo install svgbob_cli
|
|
44
|
+
|
|
45
|
+
- name: Java Packages
|
|
46
|
+
env: DIAGRAM=java
|
|
47
|
+
addons:
|
|
48
|
+
apt:
|
|
49
|
+
update: true
|
|
50
|
+
packages:
|
|
51
|
+
- default-jre-headless
|
|
52
|
+
|
|
53
|
+
- name: Npm Packages
|
|
54
|
+
env: DIAGRAM=npm
|
|
55
|
+
cache: npm
|
|
56
|
+
addons:
|
|
57
|
+
apt:
|
|
58
|
+
update: true
|
|
59
|
+
packages:
|
|
60
|
+
- npm
|
|
61
|
+
before_install:
|
|
62
|
+
- npm install -g mermaid.cli nomnoml state-machine-cat
|
|
63
|
+
- npm install -g vega-cli vega-lite wavedrom-cli
|
|
64
|
+
|
|
65
|
+
- name: Pip Packages
|
|
66
|
+
env: DIAGRAM=pip
|
|
67
|
+
cache: pip
|
|
68
|
+
addons:
|
|
69
|
+
apt:
|
|
70
|
+
update: true
|
|
71
|
+
packages:
|
|
72
|
+
- libpython3-dev
|
|
73
|
+
- libpango1.0-dev
|
|
74
|
+
- python3-pip
|
|
75
|
+
- python3-setuptools
|
|
76
|
+
- python3-cairo
|
|
77
|
+
- python3-gi
|
|
78
|
+
before_install:
|
|
79
|
+
- pip3 install blockdiag seqdiag actdiag nwdiag syntrax
|
|
80
|
+
|
|
81
|
+
script: bundle exec rake 'dummy_site:build[$DIAGRAM]'
|
|
82
|
+
|
|
83
|
+
deploy:
|
|
84
|
+
provider: rubygems
|
|
85
|
+
api_key:
|
|
86
|
+
secure: b8mpSmo1IqW0DWhqwbZtrNWS/XIUGdLvtFuvBptdA979lpb9aDFfWaFgHnZ6IahP2djRT1yRx6fg/6cp2ZShC/FdpekeASEUn4KGz+1kNh/rfSYPQV5Cs7nkw9i2/WWmze4al5cS7IhnOr2vYXlGTZZeC6Lb+3eQHtVJYQpG3bGwg9ozyekYC2VWQdzFVAvLsjAGMEi2S5GQobbmfN5FvUZb4dnnl3crI+q0NoDkafpzZBcH8ITTZyttZDU26JIptXM5qRGZGGYSREzCc3frLpoIbAB1Vbz/A4+RF8wecsmBMOPNCPWWMvjtgkII5fHmDF/cXAnbktVzG3ECNIGmv7UPA64Mjgl9WZKZH1rujDievVz9aRryA8jIIBbbfqNZeQ+SwP3401vPLSW7yWWJdkPrFMe9+OpV47azmdTVG0PmIdPhkSOI4s3sR0BAFp6TPgaLEH1zrm3sPfLkkVD5XGfQTlI7KIS4e68qGHC2mO5LGXby8SMMp+5/+A5Pzo0dbtXtOJxNwI+iZEhNJh49Qgwc/Cd0cRbFXGWOBMNDozW95LlrDWw9rdwWE4HjuEWfwRbQGydymp+CskkKne7bz4F27UbHI0ougdekI+TaY5w6UL12rZhwbutxASLH0d+dT2OR+rC7prbJRjcwpxEFt/DwiGsVepgB8Uwge8CPSYI=
|
|
87
|
+
gem: jekyll-diagrams
|
|
88
|
+
on:
|
|
89
|
+
tags: true
|
|
90
|
+
repo: zhustec/jekyll-diagrams
|
data/Dockerfile
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
FROM ubuntu:bionic
|
|
2
|
+
|
|
3
|
+
RUN set -eux; \
|
|
4
|
+
apt-get update; \
|
|
5
|
+
apt-get install -y --no-install-recommends build-essential cabal-install \
|
|
6
|
+
cargo default-jre-headless git graphviz libpango1.0-dev \
|
|
7
|
+
libpython3-dev npm python3-pip python3-cairo python3-gi \
|
|
8
|
+
python3-setuptools ruby ruby-dev
|
|
9
|
+
|
|
10
|
+
RUN set -eux; \
|
|
11
|
+
gem update -N --system; \
|
|
12
|
+
gem install -N bundler; \
|
|
13
|
+
npm install -g --silent mermaid.cli nomnoml state-machine-cat wavedrom-cli; \
|
|
14
|
+
pip3 install blockdiag seqdiag actdiag nwdiag syntrax
|
|
15
|
+
|
|
16
|
+
WORKDIR /opt/jekyll-diagrams
|
|
17
|
+
|
|
18
|
+
COPY . .
|
|
19
|
+
|
|
20
|
+
# RUN set -eux; \
|
|
21
|
+
# apt-get install -y --no-install-recommends cabal-install; \
|
|
22
|
+
# cabal update; \
|
|
23
|
+
# cabal install erd
|
|
24
|
+
|
|
25
|
+
# RUN bundle install
|
data/README.md
CHANGED
|
@@ -7,19 +7,33 @@
|
|
|
7
7
|
|
|
8
8
|
Jekyll Diagrams is a jekyll plugins for creating amazing diagrams, including:
|
|
9
9
|
|
|
10
|
-
- [
|
|
11
|
-
- [
|
|
12
|
-
- [
|
|
13
|
-
- [
|
|
14
|
-
- [
|
|
15
|
-
- [
|
|
16
|
-
- [
|
|
10
|
+
- [Installation](#installation)
|
|
11
|
+
- [Configuration](#configuration)
|
|
12
|
+
- [Usage](#usage)
|
|
13
|
+
- [Blockdiag](#blockdiag)
|
|
14
|
+
- [Erd](#erd)
|
|
15
|
+
- [Graphviz](#graphviz)
|
|
16
|
+
- [Mermaid](#mermaid)
|
|
17
|
+
- [Nomnoml](#nomnoml)
|
|
18
|
+
- [PlantUML](#plantuml)
|
|
19
|
+
- [State Machine Cat](#state-machine-cat)
|
|
20
|
+
- [Svgbob](#svgbob)
|
|
21
|
+
- [Syntrax](#syntrax)
|
|
22
|
+
- [Vega](#vega)
|
|
23
|
+
- [Wavedrom](#wavedrom)
|
|
24
|
+
- [Contributing](#contributing)
|
|
25
|
+
- [License](#license)
|
|
17
26
|
|
|
18
27
|
## Installation
|
|
19
28
|
|
|
20
|
-
|
|
29
|
+
Add the following to your site's `_config.yml`:
|
|
21
30
|
|
|
22
|
-
|
|
31
|
+
```yaml
|
|
32
|
+
plugins:
|
|
33
|
+
- jekyll-diagrams
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
And the following to your site's `Gemfile`:
|
|
23
37
|
|
|
24
38
|
```ruby
|
|
25
39
|
group :jekyll_plugins do
|
|
@@ -27,23 +41,23 @@ group :jekyll_plugins do
|
|
|
27
41
|
end
|
|
28
42
|
```
|
|
29
43
|
|
|
30
|
-
|
|
44
|
+
Finally run:
|
|
31
45
|
|
|
32
46
|
```bash
|
|
33
|
-
$ bundle
|
|
47
|
+
$ bundle install
|
|
34
48
|
```
|
|
35
49
|
|
|
36
|
-
|
|
50
|
+
## Configuration
|
|
37
51
|
|
|
38
|
-
|
|
39
|
-
$ gem install jekyll-diagrams
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
And then add this line to your application's `_config.yml` file:
|
|
52
|
+
All configurations are at `_config.yml` file under `jekyll-diagrams`, e.g:
|
|
43
53
|
|
|
44
54
|
```yaml
|
|
45
|
-
|
|
46
|
-
|
|
55
|
+
jekyll-diagrams:
|
|
56
|
+
graphviz:
|
|
57
|
+
# configurations for graphviz
|
|
58
|
+
blockdiag:
|
|
59
|
+
# configurations for blockdiag
|
|
60
|
+
# and so on
|
|
47
61
|
```
|
|
48
62
|
|
|
49
63
|
## Usage
|
|
@@ -210,6 +224,35 @@ jekyll-diagrams:
|
|
|
210
224
|
- `height`: Height of the page. (default: 600)
|
|
211
225
|
- `backgroundColor`: Background color. Example: transparent, red, '#F0F0F0'. (default: white)
|
|
212
226
|
|
|
227
|
+
### Nomnoml
|
|
228
|
+
|
|
229
|
+
#### Examples
|
|
230
|
+
|
|
231
|
+
```text
|
|
232
|
+
{% nomnoml %}
|
|
233
|
+
[Pirate|eyeCount: Int|raid();pillage()|
|
|
234
|
+
[beard]--[parrot]
|
|
235
|
+
[beard]-:>[foul mouth]
|
|
236
|
+
]
|
|
237
|
+
|
|
238
|
+
[<abstract>Marauder]<:--[Pirate]
|
|
239
|
+
[Pirate]- 0..7[mischief]
|
|
240
|
+
[jollyness]->[Pirate]
|
|
241
|
+
[jollyness]->[rum]
|
|
242
|
+
[jollyness]->[singing]
|
|
243
|
+
[Pirate]-> *[rum|tastiness: Int|swig()]
|
|
244
|
+
[Pirate]->[singing]
|
|
245
|
+
[singing]<->[rum]
|
|
246
|
+
|
|
247
|
+
[<start>st]->[<state>plunder]
|
|
248
|
+
[plunder]->[<choice>more loot]
|
|
249
|
+
[more loot]->[st]
|
|
250
|
+
[more loot] no ->[<end>e]
|
|
251
|
+
|
|
252
|
+
[<actor>Sailor] - [<usecase>shiver me;timbers]
|
|
253
|
+
{% endnomnoml %}
|
|
254
|
+
```
|
|
255
|
+
|
|
213
256
|
### PlantUML
|
|
214
257
|
|
|
215
258
|
#### Prerequisites
|
|
@@ -273,6 +316,8 @@ jekyll-diagrams:
|
|
|
273
316
|
- `engine`: `dot|circo|fdp|neato|osage|twopi` (Default: `dot`)
|
|
274
317
|
- `direction`: `top-down|bottom-top|left-right|right-left` (Default: `top-down`)
|
|
275
318
|
|
|
319
|
+
### Svgbob
|
|
320
|
+
|
|
276
321
|
### Syntrax
|
|
277
322
|
|
|
278
323
|
#### Prerequisites
|
|
@@ -303,6 +348,10 @@ jekyll-diagrams:
|
|
|
303
348
|
transparent: 'Transparent background'
|
|
304
349
|
```
|
|
305
350
|
|
|
351
|
+
### Vega
|
|
352
|
+
|
|
353
|
+
### Wavedrom
|
|
354
|
+
|
|
306
355
|
## Contributing
|
|
307
356
|
|
|
308
357
|
Bug reports and pull requests are welcome on GitHub at https://github.com/zhustec/jekyll-diagrams. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
data/Rakefile
CHANGED
|
@@ -9,13 +9,20 @@ end
|
|
|
9
9
|
|
|
10
10
|
task default: :test
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
namespace :dummy_site do
|
|
13
|
+
DUMMY_SITE_PATH = File.expand_path('test/dummy_site', __dir__)
|
|
14
|
+
DIAGRAMS = %w(apt cabal cargo java npm pip)
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
%w(build serve).each do |action|
|
|
17
|
+
desc "#{action.capitalize} the dummy site"
|
|
18
|
+
task action.to_sym, :diagram do |t, args|
|
|
19
|
+
args.with_defaults(diagram: '')
|
|
20
|
+
diagram = args[:diagram]
|
|
21
|
+
path = File.join(DUMMY_SITE_PATH, diagram)
|
|
18
22
|
|
|
19
|
-
|
|
23
|
+
Dir.chdir(DUMMY_SITE_PATH) do
|
|
24
|
+
%x(bundle install && bundle exec jekyll #{action} --config _config.yml -s #{path})
|
|
25
|
+
end
|
|
26
|
+
end
|
|
20
27
|
end
|
|
21
28
|
end
|
|
@@ -2,6 +2,7 @@ module Jekyll
|
|
|
2
2
|
module Diagrams
|
|
3
3
|
class Block < Liquid::Block
|
|
4
4
|
include Renderer
|
|
5
|
+
include Util
|
|
5
6
|
|
|
6
7
|
def render(context)
|
|
7
8
|
svg = render_svg(super.to_s, read_config(context))
|
|
@@ -13,9 +14,9 @@ module Jekyll
|
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def read_config(context)
|
|
16
|
-
|
|
17
|
+
config_for(context, block_name)
|
|
17
18
|
end
|
|
18
|
-
|
|
19
|
+
|
|
19
20
|
def wrap_class(content)
|
|
20
21
|
"<div class='jekyll-diagrams diagrams #{block_name}'>#{content}</div>"
|
|
21
22
|
end
|
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
require 'open3'
|
|
2
|
-
require 'tempfile'
|
|
3
|
-
|
|
4
1
|
module Jekyll
|
|
5
2
|
module Diagrams
|
|
6
3
|
class BlockdiagBlock < Block
|
|
7
|
-
CONFIGURATIONS = %w(config font fontmap size).freeze
|
|
4
|
+
CONFIGURATIONS = %w( config font fontmap size ).freeze
|
|
8
5
|
|
|
9
6
|
def render_svg(code, config)
|
|
10
7
|
command = build_command(config)
|
|
11
|
-
|
|
8
|
+
|
|
12
9
|
render_with_tempfile(command, code) do |command, input, output|
|
|
13
10
|
"#{command} #{input} -o #{output}"
|
|
14
11
|
end
|
|
15
12
|
end
|
|
16
13
|
|
|
17
14
|
def read_config(context)
|
|
18
|
-
|
|
19
|
-
Util.config_for(context, block_name)
|
|
20
|
-
)
|
|
15
|
+
config_for(context, 'blockdiag').merge(config_for(context, block_name))
|
|
21
16
|
end
|
|
22
17
|
|
|
23
18
|
def build_command(config)
|
data/lib/jekyll-diagrams/erd.rb
CHANGED
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
module Jekyll
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
command = 'erd --fmt=svg'
|
|
13
|
-
command << ' --dot-entity' if config.has_key?('dot-entity')
|
|
2
|
+
module Diagrams
|
|
3
|
+
class ErdBlock < Block
|
|
4
|
+
CONFIGURATIONS = %w( config edge ).freeze
|
|
5
|
+
|
|
6
|
+
def render_svg(code, config)
|
|
7
|
+
command = build_command(config)
|
|
8
|
+
|
|
9
|
+
svg = render_with_stdin_stdout(command, code)
|
|
10
|
+
svg.sub!(/^<\?xml(([^>]|\n)*>\n?){2}/, '')
|
|
11
|
+
end
|
|
14
12
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
def build_command(config)
|
|
14
|
+
command = 'erd --fmt=svg'
|
|
15
|
+
command << ' --dot-entity' if config.has_key?('dot-entity')
|
|
18
16
|
|
|
19
|
-
|
|
17
|
+
CONFIGURATIONS.each do |conf|
|
|
18
|
+
command << " --#{conf}=#{config[conf]}" if config.has_key?(conf)
|
|
20
19
|
end
|
|
20
|
+
|
|
21
|
+
command
|
|
21
22
|
end
|
|
22
23
|
end
|
|
23
24
|
end
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
Liquid::Template.register_tag(:erd, Jekyll::Diagrams::ErdBlock)
|
|
@@ -7,9 +7,11 @@ module Jekyll
|
|
|
7
7
|
'N' => 'node_attribute',
|
|
8
8
|
'E' => 'edge_attribute'
|
|
9
9
|
}.freeze
|
|
10
|
-
|
|
10
|
+
|
|
11
11
|
def render_svg(code, config)
|
|
12
|
-
|
|
12
|
+
command = build_command(config)
|
|
13
|
+
|
|
14
|
+
svg = render_with_stdin_stdout(command, code)
|
|
13
15
|
svg.sub!(/^<\?xml(([^>]|\n)*>\n?){2}/, '')
|
|
14
16
|
end
|
|
15
17
|
|
|
@@ -18,9 +20,9 @@ module Jekyll
|
|
|
18
20
|
|
|
19
21
|
CONFIGRATIONS.each do |prefix, conf|
|
|
20
22
|
next unless config.has_key?(conf)
|
|
21
|
-
|
|
23
|
+
|
|
22
24
|
attrs = config[conf]
|
|
23
|
-
|
|
25
|
+
|
|
24
26
|
attrs = case attrs
|
|
25
27
|
when String
|
|
26
28
|
attrs
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
module Jekyll
|
|
2
2
|
module Diagrams
|
|
3
3
|
class MermaidBlock < Block
|
|
4
|
-
CONFIGURATIONS =
|
|
5
|
-
'theme' => 'default',
|
|
6
|
-
'width' => 800,
|
|
7
|
-
'height' => 600,
|
|
8
|
-
'backgroundColor' => 'white'
|
|
9
|
-
}.freeze
|
|
4
|
+
CONFIGURATIONS = %w( backgroundColor height theme width).freeze
|
|
10
5
|
|
|
11
6
|
def render_svg(code, config)
|
|
12
|
-
|
|
7
|
+
command = build_command(config)
|
|
8
|
+
|
|
9
|
+
render_with_tempfile(command, code) do |command, input, output|
|
|
13
10
|
"#{command} --input #{input} --output #{output}"
|
|
14
11
|
end
|
|
15
12
|
end
|
|
16
|
-
|
|
13
|
+
|
|
17
14
|
def build_command(config)
|
|
18
15
|
command = 'mmdc'
|
|
19
16
|
command << ' --transparent' if config.has_key?('transparent')
|
|
20
|
-
command << " --puppeteerConfigFile #{
|
|
17
|
+
command << " --puppeteerConfigFile #{vendor_path('mermaid_puppeteer_config.json')}"
|
|
21
18
|
|
|
22
|
-
CONFIGURATIONS.
|
|
23
|
-
command << " --#{conf} #{
|
|
19
|
+
CONFIGURATIONS.each do |conf|
|
|
20
|
+
command << " --#{conf} #{config[conf]}" if config.has_key?(conf)
|
|
24
21
|
end
|
|
25
22
|
|
|
26
23
|
command
|
|
@@ -28,5 +25,5 @@ module Jekyll
|
|
|
28
25
|
end
|
|
29
26
|
end
|
|
30
27
|
end
|
|
31
|
-
|
|
28
|
+
|
|
32
29
|
Liquid::Template.register_tag(:mermaid, Jekyll::Diagrams::MermaidBlock)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Jekyll
|
|
2
|
+
module Diagrams
|
|
3
|
+
class NomnomlBlock < Block
|
|
4
|
+
def render_svg(code, config)
|
|
5
|
+
command = build_command(config)
|
|
6
|
+
|
|
7
|
+
render_with_stdout(command, code) do |command, input|
|
|
8
|
+
"#{command} #{input}"
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def build_command(config)
|
|
13
|
+
'nomnoml'
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
Liquid::Template.register_tag(:nomnoml, Jekyll::Diagrams::NomnomlBlock)
|
|
@@ -2,7 +2,9 @@ module Jekyll
|
|
|
2
2
|
module Diagrams
|
|
3
3
|
class PlantUMLBlock < Block
|
|
4
4
|
def render_svg(code, config)
|
|
5
|
-
|
|
5
|
+
command = build_command(config)
|
|
6
|
+
|
|
7
|
+
svg = render_with_stdin_stdout(command, code)
|
|
6
8
|
svg.sub!(/^<\?xml([^>]|\n)*>\n?/, '')
|
|
7
9
|
end
|
|
8
10
|
|
|
@@ -10,7 +12,7 @@ module Jekyll
|
|
|
10
12
|
options = 'java'
|
|
11
13
|
options << ' -Djava.awt.headless=true'
|
|
12
14
|
options << ' -jar '
|
|
13
|
-
options <<
|
|
15
|
+
options << vendor_path('plantuml.1.2020.1.jar')
|
|
14
16
|
options << ' -tsvg -pipe'
|
|
15
17
|
end
|
|
16
18
|
end
|
|
@@ -4,6 +4,8 @@ require 'tempfile'
|
|
|
4
4
|
module Jekyll
|
|
5
5
|
module Diagrams
|
|
6
6
|
module Renderer
|
|
7
|
+
extend self
|
|
8
|
+
|
|
7
9
|
def render_with_stdin_stdout(command, content)
|
|
8
10
|
command = yield command if block_given?
|
|
9
11
|
|
|
@@ -13,19 +15,29 @@ module Jekyll
|
|
|
13
15
|
def render_with_stdin(command, content)
|
|
14
16
|
Tempfile.open(['jekyll_diagrams_output', ".svg"]) do |output|
|
|
15
17
|
output.close
|
|
16
|
-
command = yield command, output.path
|
|
18
|
+
command = yield command, output.path if block_given?
|
|
17
19
|
|
|
18
20
|
render_with_command(command, output.path, stdin_data: content)
|
|
19
21
|
end
|
|
20
22
|
end
|
|
21
23
|
|
|
24
|
+
def render_with_stdout(command, content)
|
|
25
|
+
Tempfile.open('jekyll_diagrams_input') do |input|
|
|
26
|
+
File.write(input.path, content)
|
|
27
|
+
|
|
28
|
+
command = yield command, input.path if block_given?
|
|
29
|
+
|
|
30
|
+
render_with_command(command, :stdout)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
22
34
|
def render_with_tempfile(command, content)
|
|
23
35
|
Tempfile.open('jekyll_diagrams_input') do |input|
|
|
24
36
|
File.write(input.path, content)
|
|
25
|
-
|
|
37
|
+
|
|
26
38
|
Tempfile.open(['jekyll_diagrams_output', ".svg"]) do |output|
|
|
27
39
|
output.close
|
|
28
|
-
command = yield command, input.path, output.path
|
|
40
|
+
command = yield command, input.path, output.path if block_given?
|
|
29
41
|
|
|
30
42
|
render_with_command(command, output.path)
|
|
31
43
|
end
|
|
@@ -39,7 +51,7 @@ module Jekyll
|
|
|
39
51
|
raise "#{command} failed: #{stdout.empty? ? stderr : stdout}"
|
|
40
52
|
end
|
|
41
53
|
|
|
42
|
-
output == :stdout ? stdout : File.read(output)
|
|
54
|
+
output == :stdout ? stdout : File.read(output)
|
|
43
55
|
end
|
|
44
56
|
end
|
|
45
57
|
end
|
|
@@ -1,31 +1,29 @@
|
|
|
1
1
|
module Jekyll
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
'input-type' => 'smcat',
|
|
6
|
-
'engine' => 'dot',
|
|
7
|
-
'direction' => 'top-down'
|
|
8
|
-
}.freeze
|
|
2
|
+
module Diagrams
|
|
3
|
+
class SMCatBlock < Block
|
|
4
|
+
CONFIGURATIONS = %w( direction engine input-type ).freeze
|
|
9
5
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"#{command} #{input} --output-to #{output}"
|
|
13
|
-
end
|
|
6
|
+
def render_svg(code, config)
|
|
7
|
+
command = build_command(config)
|
|
14
8
|
|
|
15
|
-
|
|
9
|
+
svg = render_with_stdout(command, code) do |command, input|
|
|
10
|
+
"#{command} #{input} -"
|
|
16
11
|
end
|
|
17
|
-
|
|
18
|
-
def build_command(config)
|
|
19
|
-
command = 'smcat'
|
|
20
12
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
13
|
+
svg.sub!(/^<\?xml(([^>]|\n)*>\n?){2}/, '')
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def build_command(config)
|
|
17
|
+
command = 'smcat'
|
|
24
18
|
|
|
25
|
-
|
|
19
|
+
CONFIGURATIONS.each do |conf|
|
|
20
|
+
command << " --#{conf} #{config[conf]}" if config.has_key?(conf)
|
|
26
21
|
end
|
|
22
|
+
|
|
23
|
+
command
|
|
27
24
|
end
|
|
28
25
|
end
|
|
29
26
|
end
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
Liquid::Template.register_tag(:smcat, Jekyll::Diagrams::SMCatBlock)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
module Jekyll
|
|
2
|
+
module Diagrams
|
|
3
|
+
class SvgbobBlock < Block
|
|
4
|
+
CONFIGURATIONS = %w( font-family font-size scale stroke-width ).freeze
|
|
5
|
+
|
|
6
|
+
def render_svg(code, config)
|
|
7
|
+
command = build_command(config)
|
|
8
|
+
|
|
9
|
+
render_with_stdin_stdout(command, code)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def build_command(config)
|
|
13
|
+
command = 'svgbob'
|
|
14
|
+
|
|
15
|
+
CONFIGURATIONS.each do |conf|
|
|
16
|
+
command << " --#{conf} #{config[conf]}" if config.has_key?(conf)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
command
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
Liquid::Template.register_tag(:svgbob, Jekyll::Diagrams::SvgbobBlock)
|
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
module Jekyll
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
module Diagrams
|
|
3
|
+
class SyntraxBlock < Block
|
|
4
|
+
CONFIGURATIONS = %w( scale style ).freeze
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
def render_svg(code, config)
|
|
7
|
+
command = build_command(config)
|
|
8
|
+
|
|
9
|
+
render_with_tempfile(command, code) do |command, input, output|
|
|
10
|
+
"#{command} --input #{input} --output #{output}"
|
|
10
11
|
end
|
|
11
|
-
|
|
12
|
-
def build_command(config)
|
|
13
|
-
command = 'syntrax'
|
|
12
|
+
end
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
end
|
|
14
|
+
def build_command(config)
|
|
15
|
+
command = 'syntrax'
|
|
18
16
|
|
|
19
|
-
|
|
17
|
+
CONFIGURATIONS.each do |conf|
|
|
18
|
+
command << " --#{conf} #{config[conf]}" if config.has_key?(conf)
|
|
20
19
|
end
|
|
20
|
+
|
|
21
|
+
command
|
|
21
22
|
end
|
|
22
23
|
end
|
|
23
24
|
end
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
Liquid::Template.register_tag(:syntrax, Jekyll::Diagrams::SyntraxBlock)
|
data/lib/jekyll-diagrams/util.rb
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
module Jekyll
|
|
2
2
|
module Diagrams
|
|
3
3
|
module Util
|
|
4
|
-
|
|
5
|
-
def diagrams_config(context)
|
|
6
|
-
site_config = context.registers[:site].config
|
|
7
|
-
new_config = site_config.fetch('jekyll-diagrams', {})
|
|
8
|
-
old_config = site_config.fetch('diagrams', {})
|
|
9
|
-
|
|
10
|
-
return new_config if old_config.empty?
|
|
11
|
-
|
|
12
|
-
Jekyll.warn "Configuration `diagram` in _config.yml will be depreated"
|
|
13
|
-
Jekyll.warn " Rename it to `jekyll-diagram` instead."
|
|
4
|
+
extend self
|
|
14
5
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
diagrams_config(context).fetch(name, {})
|
|
20
|
-
end
|
|
6
|
+
def diagrams_config(context)
|
|
7
|
+
site_config = context.registers[:site].config
|
|
8
|
+
new_config = site_config.fetch('jekyll-diagrams', {})
|
|
9
|
+
old_config = site_config.fetch('diagrams', {})
|
|
21
10
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
11
|
+
return new_config if old_config.empty?
|
|
12
|
+
|
|
13
|
+
Jekyll.warn "Configuration `diagram` in _config.yml will be depreated"
|
|
14
|
+
Jekyll.warn " Rename it to `jekyll-diagram` instead."
|
|
15
|
+
|
|
16
|
+
old_config.merge(new_config)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def config_for(context, name)
|
|
20
|
+
diagrams_config(context).fetch(name, {})
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def vendor_path(file = '')
|
|
24
|
+
File.join(File.expand_path('../../vendor', __dir__), file)
|
|
25
25
|
end
|
|
26
26
|
end
|
|
27
27
|
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
module Jekyll
|
|
2
|
+
module Diagrams
|
|
3
|
+
class VegaBlock < Block
|
|
4
|
+
CONFIGURATIONS = %w( scale )
|
|
5
|
+
|
|
6
|
+
def render_svg(code, config)
|
|
7
|
+
command = build_command(config)
|
|
8
|
+
|
|
9
|
+
render_with_stdin_stdout(command, code)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def build_command(config)
|
|
13
|
+
command = case block_name
|
|
14
|
+
when 'vega'
|
|
15
|
+
'vg2svg'
|
|
16
|
+
when 'vegalite'
|
|
17
|
+
'vl2svg'
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
CONFIGURATIONS.each do |conf|
|
|
21
|
+
command << " --#{conf} #{config[conf]}" if config.has_key?(conf)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
%i(vega vegalite).each do |tag|
|
|
29
|
+
Liquid::Template.register_tag(tag, Jekyll::Diagrams::VegaBlock)
|
|
30
|
+
end
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
module Jekyll
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def build_command(config)
|
|
11
|
-
'wavedrom-cli'
|
|
2
|
+
module Diagrams
|
|
3
|
+
class WavedromBlock < Block
|
|
4
|
+
def render_svg(code, config)
|
|
5
|
+
command = build_command(config)
|
|
6
|
+
|
|
7
|
+
render_with_tempfile(command, code) do |command, input, output|
|
|
8
|
+
"#{command} --input #{input} --svg #{output}"
|
|
12
9
|
end
|
|
13
10
|
end
|
|
11
|
+
|
|
12
|
+
def build_command(config)
|
|
13
|
+
'wavedrom-cli'
|
|
14
|
+
end
|
|
14
15
|
end
|
|
15
16
|
end
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
Liquid::Template.register_tag(:wavedrom, Jekyll::Diagrams::WavedromBlock)
|
data/lib/jekyll-diagrams.rb
CHANGED
|
@@ -6,6 +6,9 @@ require_relative 'jekyll-diagrams/blockdiag'
|
|
|
6
6
|
require_relative 'jekyll-diagrams/erd'
|
|
7
7
|
require_relative 'jekyll-diagrams/graphviz'
|
|
8
8
|
require_relative 'jekyll-diagrams/mermaid'
|
|
9
|
+
require_relative 'jekyll-diagrams/nomnoml'
|
|
9
10
|
require_relative 'jekyll-diagrams/plantuml'
|
|
11
|
+
require_relative 'jekyll-diagrams/svgbob'
|
|
10
12
|
require_relative 'jekyll-diagrams/smcat'
|
|
13
|
+
require_relative 'jekyll-diagrams/vega'
|
|
11
14
|
require_relative 'jekyll-diagrams/wavedrom'
|
data/test/dummy_site/index.md
CHANGED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: home
|
|
3
|
+
title: Nomnoml Test
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{% nomnoml %}
|
|
7
|
+
[Pirate|eyeCount: Int|raid();pillage()|
|
|
8
|
+
[beard]--[parrot]
|
|
9
|
+
[beard]-:>[foul mouth]
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
[<abstract>Marauder]<:--[Pirate]
|
|
13
|
+
[Pirate]- 0..7[mischief]
|
|
14
|
+
[jollyness]->[Pirate]
|
|
15
|
+
[jollyness]->[rum]
|
|
16
|
+
[jollyness]->[singing]
|
|
17
|
+
[Pirate]-> *[rum|tastiness: Int|swig()]
|
|
18
|
+
[Pirate]->[singing]
|
|
19
|
+
[singing]<->[rum]
|
|
20
|
+
|
|
21
|
+
[<start>st]->[<state>plunder]
|
|
22
|
+
[plunder]->[<choice>more loot]
|
|
23
|
+
[more loot]->[st]
|
|
24
|
+
[more loot] no ->[<end>e]
|
|
25
|
+
|
|
26
|
+
[<actor>Sailor] - [<usecase>shiver me;timbers]
|
|
27
|
+
{% endnomnoml %}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: home
|
|
3
|
+
title: Vega Test
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{% vega %}
|
|
7
|
+
{
|
|
8
|
+
"$schema": "https://vega.github.io/schema/vega/v5.json",
|
|
9
|
+
"description": "A basic bar chart example, with value labels shown upon mouse hover.",
|
|
10
|
+
"width": 400,
|
|
11
|
+
"height": 200,
|
|
12
|
+
"padding": 5,
|
|
13
|
+
|
|
14
|
+
"data": [
|
|
15
|
+
{
|
|
16
|
+
"name": "table",
|
|
17
|
+
"values": [
|
|
18
|
+
{"category": "A", "amount": 28},
|
|
19
|
+
{"category": "B", "amount": 55},
|
|
20
|
+
{"category": "C", "amount": 43},
|
|
21
|
+
{"category": "D", "amount": 91},
|
|
22
|
+
{"category": "E", "amount": 81},
|
|
23
|
+
{"category": "F", "amount": 53},
|
|
24
|
+
{"category": "G", "amount": 19},
|
|
25
|
+
{"category": "H", "amount": 87}
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
|
|
30
|
+
"signals": [
|
|
31
|
+
{
|
|
32
|
+
"name": "tooltip",
|
|
33
|
+
"value": {},
|
|
34
|
+
"on": [
|
|
35
|
+
{"events": "rect:mouseover", "update": "datum"},
|
|
36
|
+
{"events": "rect:mouseout", "update": "{}"}
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
|
|
41
|
+
"scales": [
|
|
42
|
+
{
|
|
43
|
+
"name": "xscale",
|
|
44
|
+
"type": "band",
|
|
45
|
+
"domain": {"data": "table", "field": "category"},
|
|
46
|
+
"range": "width",
|
|
47
|
+
"padding": 0.05,
|
|
48
|
+
"round": true
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "yscale",
|
|
52
|
+
"domain": {"data": "table", "field": "amount"},
|
|
53
|
+
"nice": true,
|
|
54
|
+
"range": "height"
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
|
|
58
|
+
"axes": [
|
|
59
|
+
{ "orient": "bottom", "scale": "xscale" },
|
|
60
|
+
{ "orient": "left", "scale": "yscale" }
|
|
61
|
+
],
|
|
62
|
+
|
|
63
|
+
"marks": [
|
|
64
|
+
{
|
|
65
|
+
"type": "rect",
|
|
66
|
+
"from": {"data":"table"},
|
|
67
|
+
"encode": {
|
|
68
|
+
"enter": {
|
|
69
|
+
"x": {"scale": "xscale", "field": "category"},
|
|
70
|
+
"width": {"scale": "xscale", "band": 1},
|
|
71
|
+
"y": {"scale": "yscale", "field": "amount"},
|
|
72
|
+
"y2": {"scale": "yscale", "value": 0}
|
|
73
|
+
},
|
|
74
|
+
"update": {
|
|
75
|
+
"fill": {"value": "steelblue"}
|
|
76
|
+
},
|
|
77
|
+
"hover": {
|
|
78
|
+
"fill": {"value": "red"}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"type": "text",
|
|
84
|
+
"encode": {
|
|
85
|
+
"enter": {
|
|
86
|
+
"align": {"value": "center"},
|
|
87
|
+
"baseline": {"value": "bottom"},
|
|
88
|
+
"fill": {"value": "#333"}
|
|
89
|
+
},
|
|
90
|
+
"update": {
|
|
91
|
+
"x": {"scale": "xscale", "signal": "tooltip.category", "band": 0.5},
|
|
92
|
+
"y": {"scale": "yscale", "signal": "tooltip.amount", "offset": -2},
|
|
93
|
+
"text": {"signal": "tooltip.amount"},
|
|
94
|
+
"fillOpacity": [
|
|
95
|
+
{"test": "datum === tooltip", "value": 0},
|
|
96
|
+
{"value": 1}
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
}
|
|
103
|
+
{% endvega %}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: home
|
|
3
|
+
title: Syntrax Test
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{% syntrax %}
|
|
7
|
+
indentstack(10,
|
|
8
|
+
line(opt('-'), choice('0', line('1-9', loop(None, '0-9'))),
|
|
9
|
+
opt('.', loop('0-9', None))),
|
|
10
|
+
|
|
11
|
+
line(opt(choice('e', 'E'), choice(None, '+', '-'), loop('0-9', None)))
|
|
12
|
+
)
|
|
13
|
+
{% endsyntrax %}
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jekyll-diagrams
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- zhustec
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-
|
|
11
|
+
date: 2020-03-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: jekyll
|
|
@@ -81,6 +81,7 @@ extra_rdoc_files: []
|
|
|
81
81
|
files:
|
|
82
82
|
- ".gitignore"
|
|
83
83
|
- ".travis.yml"
|
|
84
|
+
- Dockerfile
|
|
84
85
|
- Gemfile
|
|
85
86
|
- LICENSE
|
|
86
87
|
- README.md
|
|
@@ -92,23 +93,30 @@ files:
|
|
|
92
93
|
- lib/jekyll-diagrams/erd.rb
|
|
93
94
|
- lib/jekyll-diagrams/graphviz.rb
|
|
94
95
|
- lib/jekyll-diagrams/mermaid.rb
|
|
96
|
+
- lib/jekyll-diagrams/nomnoml.rb
|
|
95
97
|
- lib/jekyll-diagrams/plantuml.rb
|
|
96
98
|
- lib/jekyll-diagrams/renderer.rb
|
|
97
99
|
- lib/jekyll-diagrams/smcat.rb
|
|
100
|
+
- lib/jekyll-diagrams/svgbob.rb
|
|
98
101
|
- lib/jekyll-diagrams/syntrax.rb
|
|
99
102
|
- lib/jekyll-diagrams/util.rb
|
|
103
|
+
- lib/jekyll-diagrams/vega.rb
|
|
100
104
|
- lib/jekyll-diagrams/version.rb
|
|
101
105
|
- lib/jekyll-diagrams/wavedrom.rb
|
|
102
106
|
- test/dummy_site/Gemfile
|
|
103
107
|
- test/dummy_site/_config.yml
|
|
104
|
-
- test/dummy_site/
|
|
105
|
-
- test/dummy_site/
|
|
106
|
-
- test/dummy_site/
|
|
107
|
-
- test/dummy_site/_posts/2020-01-04-mermaid-test.md
|
|
108
|
-
- test/dummy_site/_posts/2020-01-05-wavedrom-test.md
|
|
109
|
-
- test/dummy_site/_posts/2020-01-06-smcat-test.md
|
|
110
|
-
- test/dummy_site/_posts/2020-01-07-erd-test.md
|
|
108
|
+
- test/dummy_site/apt/graphviz.md
|
|
109
|
+
- test/dummy_site/cabal/erd.md
|
|
110
|
+
- test/dummy_site/cargo/svgbob.md
|
|
111
111
|
- test/dummy_site/index.md
|
|
112
|
+
- test/dummy_site/java/plantuml.md
|
|
113
|
+
- test/dummy_site/npm/mermaid.md
|
|
114
|
+
- test/dummy_site/npm/nomnoml.md
|
|
115
|
+
- test/dummy_site/npm/smcat.md
|
|
116
|
+
- test/dummy_site/npm/vega.md
|
|
117
|
+
- test/dummy_site/npm/wavedrom.md
|
|
118
|
+
- test/dummy_site/pip/blockdiag.md
|
|
119
|
+
- test/dummy_site/pip/syntrax.md
|
|
112
120
|
- test/test_helper.rb
|
|
113
121
|
- vendor/mermaid_puppeteer_config.json
|
|
114
122
|
- vendor/plantuml.1.2020.1.jar
|
|
@@ -131,8 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
131
139
|
- !ruby/object:Gem::Version
|
|
132
140
|
version: '0'
|
|
133
141
|
requirements: []
|
|
134
|
-
|
|
135
|
-
rubygems_version: 2.7.6.2
|
|
142
|
+
rubygems_version: 3.0.6
|
|
136
143
|
signing_key:
|
|
137
144
|
specification_version: 4
|
|
138
145
|
summary: Jekyll plugins for diagrams support, including Graphviz, Blockdiag, PlantUML
|
|
@@ -140,12 +147,16 @@ summary: Jekyll plugins for diagrams support, including Graphviz, Blockdiag, Pla
|
|
|
140
147
|
test_files:
|
|
141
148
|
- test/dummy_site/Gemfile
|
|
142
149
|
- test/dummy_site/_config.yml
|
|
143
|
-
- test/dummy_site/
|
|
144
|
-
- test/dummy_site/
|
|
145
|
-
- test/dummy_site/
|
|
146
|
-
- test/dummy_site/_posts/2020-01-04-mermaid-test.md
|
|
147
|
-
- test/dummy_site/_posts/2020-01-05-wavedrom-test.md
|
|
148
|
-
- test/dummy_site/_posts/2020-01-06-smcat-test.md
|
|
149
|
-
- test/dummy_site/_posts/2020-01-07-erd-test.md
|
|
150
|
+
- test/dummy_site/apt/graphviz.md
|
|
151
|
+
- test/dummy_site/cabal/erd.md
|
|
152
|
+
- test/dummy_site/cargo/svgbob.md
|
|
150
153
|
- test/dummy_site/index.md
|
|
154
|
+
- test/dummy_site/java/plantuml.md
|
|
155
|
+
- test/dummy_site/npm/mermaid.md
|
|
156
|
+
- test/dummy_site/npm/nomnoml.md
|
|
157
|
+
- test/dummy_site/npm/smcat.md
|
|
158
|
+
- test/dummy_site/npm/vega.md
|
|
159
|
+
- test/dummy_site/npm/wavedrom.md
|
|
160
|
+
- test/dummy_site/pip/blockdiag.md
|
|
161
|
+
- test/dummy_site/pip/syntrax.md
|
|
151
162
|
- test/test_helper.rb
|