metanorma-cli 1.2.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +28 -26
- data/README.adoc +11 -0
- data/a +1 -1
- data/lib/metanorma/cli/command.rb +4 -0
- data/lib/metanorma/cli/commands/template_repo.rb +20 -0
- data/lib/metanorma/cli/errors.rb +8 -0
- data/lib/metanorma/cli/template_repo.rb +62 -0
- data/lib/metanorma/cli/ui.rb +4 -0
- data/lib/metanorma/cli/version.rb +1 -1
- data/lib/metanorma/cli.rb +6 -1
- data/tmp/my-custom-csd/Makefile +18 -2
- data/tmp/my-document/Makefile +18 -2
- data/tmp/my-local-document/Makefile +18 -2
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88193e8fa2e31b1e2d7361f669af82c64a64e44729240a573c3abcc221c30112
|
4
|
+
data.tar.gz: 0c1a39a506344e02866e3b364daa02c6e06af304b9384d0b6b462389a6c5260a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 866e19a6269a9bacd36767729e89ee8be8c208532176e7d61cda7065b8b08f47f44df4e480ecb9f95f1adecc15f2a8a92eb598838dd59a583ba922487b3f3ef2
|
7
|
+
data.tar.gz: d0b4ab37ca0166b489d22e90b51206c10db13a5f9e98ed53d4de9ce9be183f6bf470d4314f7144b0094926b2d589a3e0a3f76807dd67328e06cbf9e998aad090
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
metanorma-cli (1.2.
|
4
|
+
metanorma-cli (1.2.1)
|
5
5
|
git (~> 1.5)
|
6
6
|
isodoc (~> 0.10.0)
|
7
7
|
metanorma (~> 0.3.9)
|
@@ -40,7 +40,7 @@ GEM
|
|
40
40
|
ffi (1.11.1)
|
41
41
|
gb-agencies (0.0.5)
|
42
42
|
git (1.5.0)
|
43
|
-
html2doc (0.8.
|
43
|
+
html2doc (0.8.12)
|
44
44
|
asciimath (~> 1.0.7)
|
45
45
|
htmlentities (~> 4.3.4)
|
46
46
|
image_size
|
@@ -54,7 +54,7 @@ GEM
|
|
54
54
|
nokogiri
|
55
55
|
image_size (2.0.1)
|
56
56
|
iso-639 (0.2.8)
|
57
|
-
isodoc (0.10.
|
57
|
+
isodoc (0.10.1)
|
58
58
|
asciimath
|
59
59
|
html2doc (~> 0.8.11)
|
60
60
|
htmlentities (~> 4.3.4)
|
@@ -69,16 +69,16 @@ GEM
|
|
69
69
|
isoics (0.1.7)
|
70
70
|
json (2.2.0)
|
71
71
|
liquid (4.0.3)
|
72
|
-
metanorma (0.3.
|
72
|
+
metanorma (0.3.13)
|
73
73
|
asciidoctor
|
74
74
|
htmlentities
|
75
|
-
metanorma-acme (1.2.
|
75
|
+
metanorma-acme (1.2.1)
|
76
76
|
asciidoctor (~> 1.5.7)
|
77
77
|
htmlentities (~> 4.3.4)
|
78
78
|
isodoc (~> 0.10.0)
|
79
79
|
metanorma-standoc (~> 1.2.0)
|
80
80
|
ruby-jing
|
81
|
-
metanorma-csand (1.2.
|
81
|
+
metanorma-csand (1.2.1)
|
82
82
|
asciidoctor (~> 1.5.7)
|
83
83
|
asciimath
|
84
84
|
htmlentities (~> 4.3.4)
|
@@ -90,10 +90,10 @@ GEM
|
|
90
90
|
ruby-jing
|
91
91
|
thread_safe
|
92
92
|
uuidtools
|
93
|
-
metanorma-csd (1.2.
|
93
|
+
metanorma-csd (1.2.1)
|
94
94
|
isodoc (~> 0.10.0)
|
95
95
|
metanorma-standoc (~> 1.2.0)
|
96
|
-
metanorma-gb (1.2.
|
96
|
+
metanorma-gb (1.2.1)
|
97
97
|
gb-agencies (~> 0.0.4)
|
98
98
|
htmlentities (~> 4.3.4)
|
99
99
|
isodoc (~> 0.10.0)
|
@@ -102,12 +102,12 @@ GEM
|
|
102
102
|
metanorma-ietf (1.0.3)
|
103
103
|
isodoc (~> 0.10.0)
|
104
104
|
metanorma-standoc (~> 1.2.0)
|
105
|
-
metanorma-iso (1.2.
|
105
|
+
metanorma-iso (1.2.1)
|
106
106
|
asciidoctor (~> 1.5.7)
|
107
107
|
isodoc (~> 0.10.0)
|
108
108
|
metanorma-standoc (~> 1.2.0)
|
109
109
|
ruby-jing
|
110
|
-
metanorma-m3d (1.2.
|
110
|
+
metanorma-m3d (1.2.1)
|
111
111
|
asciidoctor (~> 1.5.7)
|
112
112
|
asciimath
|
113
113
|
htmlentities (~> 4.3.4)
|
@@ -119,7 +119,7 @@ GEM
|
|
119
119
|
ruby-jing
|
120
120
|
thread_safe
|
121
121
|
uuidtools
|
122
|
-
metanorma-nist (0.1.
|
122
|
+
metanorma-nist (0.1.2)
|
123
123
|
asciidoctor (~> 1.5.7)
|
124
124
|
htmlentities (~> 4.3.4)
|
125
125
|
isodoc (~> 0.10.0)
|
@@ -128,14 +128,14 @@ GEM
|
|
128
128
|
ruby-jing
|
129
129
|
twitter_cldr
|
130
130
|
tzinfo-data
|
131
|
-
metanorma-ogc (0.1.
|
131
|
+
metanorma-ogc (0.1.1)
|
132
132
|
asciidoctor (~> 1.5.7)
|
133
133
|
htmlentities (~> 4.3.4)
|
134
134
|
iso-639
|
135
135
|
isodoc (~> 0.10.0)
|
136
136
|
metanorma-standoc (~> 1.2.0)
|
137
137
|
ruby-jing
|
138
|
-
metanorma-standoc (1.2.
|
138
|
+
metanorma-standoc (1.2.1)
|
139
139
|
asciidoctor (~> 1.5.7)
|
140
140
|
concurrent-ruby
|
141
141
|
html2doc (~> 0.8.11)
|
@@ -146,7 +146,7 @@ GEM
|
|
146
146
|
ruby-jing
|
147
147
|
sterile (~> 1.0.14)
|
148
148
|
unicode2latex (~> 0.0.1)
|
149
|
-
metanorma-unece (0.1.
|
149
|
+
metanorma-unece (0.1.1)
|
150
150
|
asciidoctor (~> 1.5.7)
|
151
151
|
htmlentities (~> 4.3.4)
|
152
152
|
iso-639
|
@@ -163,9 +163,9 @@ GEM
|
|
163
163
|
nokogiri (1.8.5)
|
164
164
|
mini_portile2 (~> 2.3.0)
|
165
165
|
optout (0.0.2)
|
166
|
-
public_suffix (3.1.
|
166
|
+
public_suffix (3.1.1)
|
167
167
|
rake (12.3.2)
|
168
|
-
relaton (0.4.
|
168
|
+
relaton (0.4.1)
|
169
169
|
algoliasearch
|
170
170
|
relaton-gb (~> 0.5.0)
|
171
171
|
relaton-iec (~> 0.3.0)
|
@@ -174,35 +174,36 @@ GEM
|
|
174
174
|
relaton-iso-bib (~> 0.2.0)
|
175
175
|
relaton-itu (~> 0.2.0)
|
176
176
|
relaton-nist (~> 0.2.0)
|
177
|
-
relaton-bib (0.2.
|
177
|
+
relaton-bib (0.2.3)
|
178
178
|
addressable
|
179
179
|
nokogiri (~> 1.8.4)
|
180
|
-
relaton-cli (0.2.
|
180
|
+
relaton-cli (0.2.1)
|
181
181
|
liquid
|
182
182
|
relaton (~> 0.4)
|
183
183
|
thor
|
184
|
-
relaton-gb (0.5.
|
184
|
+
relaton-gb (0.5.1)
|
185
185
|
cnccs (~> 0.1.1)
|
186
186
|
gb-agencies (~> 0.0.1)
|
187
187
|
relaton-iso-bib (~> 0.2.0)
|
188
|
-
relaton-iec (0.3.
|
188
|
+
relaton-iec (0.3.1)
|
189
189
|
addressable
|
190
190
|
relaton-iso-bib (~> 0.2.0)
|
191
|
-
relaton-ietf (0.5.
|
191
|
+
relaton-ietf (0.5.3)
|
192
192
|
relaton-iso-bib (~> 0.2.0)
|
193
|
-
relaton-iso (0.5.
|
193
|
+
relaton-iso (0.5.1)
|
194
194
|
algoliasearch
|
195
195
|
relaton-iec (~> 0.3.0)
|
196
196
|
relaton-iso-bib (~> 0.2.0)
|
197
|
-
relaton-iso-bib (0.2.
|
197
|
+
relaton-iso-bib (0.2.3)
|
198
198
|
isoics (~> 0.1.6)
|
199
199
|
nokogiri (~> 1.8.4)
|
200
200
|
relaton-bib (~> 0.2.0)
|
201
201
|
ruby_deep_clone (~> 0.8.0)
|
202
|
-
relaton-itu (0.2.
|
202
|
+
relaton-itu (0.2.1)
|
203
203
|
relaton-iso-bib (~> 0.2.0)
|
204
|
-
relaton-nist (0.2.
|
204
|
+
relaton-nist (0.2.2)
|
205
205
|
relaton-bib (~> 0.2.0)
|
206
|
+
rubyzip
|
206
207
|
roman-numerals (0.3.0)
|
207
208
|
rspec (3.8.0)
|
208
209
|
rspec-core (~> 3.8.0)
|
@@ -212,7 +213,7 @@ GEM
|
|
212
213
|
mixlib-shellout (~> 2.0)
|
213
214
|
rspec (~> 3.2)
|
214
215
|
rspec-its (~> 1.2)
|
215
|
-
rspec-core (3.8.
|
216
|
+
rspec-core (3.8.2)
|
216
217
|
rspec-support (~> 3.8.0)
|
217
218
|
rspec-expectations (3.8.4)
|
218
219
|
diff-lcs (>= 1.2.0, < 2.0)
|
@@ -227,6 +228,7 @@ GEM
|
|
227
228
|
ruby-jing (0.0.1)
|
228
229
|
optout (>= 0.0.2)
|
229
230
|
ruby_deep_clone (0.8.0)
|
231
|
+
rubyzip (1.2.3)
|
230
232
|
sassc (2.0.1)
|
231
233
|
ffi (~> 1.9)
|
232
234
|
rake
|
data/README.adoc
CHANGED
@@ -195,6 +195,17 @@ using for that specific processor.
|
|
195
195
|
metanorma version --type iso
|
196
196
|
----
|
197
197
|
|
198
|
+
=== Add new template repository (`metanorma template-repo add`)
|
199
|
+
|
200
|
+
The `template-repo add` interface allows you to add your custom template
|
201
|
+
repository to metanorma, so next time when you need to generate a new document
|
202
|
+
then you can directly use that name to use your custom template from that
|
203
|
+
repository.
|
204
|
+
|
205
|
+
[source, sh]
|
206
|
+
----
|
207
|
+
metanorma template-repo add my-iso https://github.com/you/my-iso-template
|
208
|
+
----
|
198
209
|
|
199
210
|
== Credits
|
200
211
|
|
data/a
CHANGED
@@ -1 +1 @@
|
|
1
|
-
git add lib/metanorma/cli/version.rb
|
1
|
+
git add lib/metanorma/cli/version.rb spec/metanorma_spec.rb
|
@@ -2,6 +2,7 @@ require "thor"
|
|
2
2
|
require "metanorma/cli/compiler"
|
3
3
|
require "metanorma/cli/generator"
|
4
4
|
require "metanorma/cli/git_template"
|
5
|
+
require "metanorma/cli/commands/template_repo"
|
5
6
|
|
6
7
|
module Metanorma
|
7
8
|
module Cli
|
@@ -60,6 +61,9 @@ module Metanorma
|
|
60
61
|
UI.say("Couldn't load #{type}, please provide a valid type!")
|
61
62
|
end
|
62
63
|
|
64
|
+
desc "template-repo", "Manage metanorma templates repository"
|
65
|
+
subcommand :template_repo, Metanorma::Cli::Commands::TemplateRepo
|
66
|
+
|
63
67
|
private
|
64
68
|
|
65
69
|
def single_type_extensions(type)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require "metanorma/cli/template_repo"
|
2
|
+
|
3
|
+
module Metanorma
|
4
|
+
module Cli
|
5
|
+
module Commands
|
6
|
+
class TemplateRepo < Thor
|
7
|
+
desc "add NAME SOURCE", "Add new metanorma templates repository"
|
8
|
+
option :overwrite, aliases: "-y", type: :boolean, desc: "Overwrite existing template"
|
9
|
+
|
10
|
+
def add(name, source)
|
11
|
+
Metanorma::Cli::TemplateRepo.add(name, source, options)
|
12
|
+
UI.say("Template repo: #{name} has been added successfully")
|
13
|
+
|
14
|
+
rescue Errors::DuplicateTemplateError
|
15
|
+
UI.error("Duplicate metanorma template")
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require "yaml"
|
2
|
+
|
3
|
+
module Metanorma
|
4
|
+
module Cli
|
5
|
+
class TemplateRepo
|
6
|
+
def initialize(options = {})
|
7
|
+
@name = options.fetch(:name)
|
8
|
+
@source = options.fetch(:source)
|
9
|
+
@type = options.fetch(:type, "custom")
|
10
|
+
@overwrite = options.fetch(:overwrite, false)
|
11
|
+
end
|
12
|
+
|
13
|
+
def add
|
14
|
+
create_template_config
|
15
|
+
add_new_template(name, source, type)
|
16
|
+
write_to_template_config(templates)
|
17
|
+
|
18
|
+
templates[:templates]
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.add(name, source, options = {})
|
22
|
+
new(options.merge(name: name, source: source)).add
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
attr_reader :name, :source, :type, :overwrite
|
28
|
+
|
29
|
+
def templates
|
30
|
+
@templates ||= YAML.load(template_config_file.read)
|
31
|
+
end
|
32
|
+
|
33
|
+
def template_config_file
|
34
|
+
@template_config_file ||= Cli.home_directory.join("config.yml")
|
35
|
+
end
|
36
|
+
|
37
|
+
def create_template_config
|
38
|
+
unless template_config_file.exist?
|
39
|
+
unless template_config_file.dirname.exist?
|
40
|
+
FileUtils.mkdir_p(template_config_file.dirname)
|
41
|
+
end
|
42
|
+
|
43
|
+
write_to_template_config({templates: []})
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
def write_to_template_config(templates)
|
48
|
+
File.write(template_config_file, templates.to_yaml)
|
49
|
+
end
|
50
|
+
|
51
|
+
def add_new_template(name, source, type)
|
52
|
+
names = templates[:templates].map { |template| template[:name].to_s }
|
53
|
+
|
54
|
+
if names.include?(name.to_s) && overwrite == false
|
55
|
+
raise Errors::DuplicateTemplateError.new("Duplicate metanorma template")
|
56
|
+
end
|
57
|
+
|
58
|
+
templates[:templates].push({ name: name, source: source, type: type })
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
data/lib/metanorma/cli/ui.rb
CHANGED
data/lib/metanorma/cli.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require "metanorma"
|
2
2
|
require "metanorma/cli/version"
|
3
|
+
require "metanorma/cli/errors"
|
3
4
|
require "metanorma/cli/command"
|
4
5
|
|
5
6
|
module Metanorma
|
@@ -68,7 +69,11 @@ module Metanorma
|
|
68
69
|
end
|
69
70
|
|
70
71
|
def self.templates_path
|
71
|
-
|
72
|
+
home_directory.join("templates")
|
73
|
+
end
|
74
|
+
|
75
|
+
def self.home_directory
|
76
|
+
Pathname.new(Dir.home).join(".metanorma")
|
72
77
|
end
|
73
78
|
|
74
79
|
def self.writable_templates_path?
|
data/tmp/my-custom-csd/Makefile
CHANGED
@@ -1,14 +1,19 @@
|
|
1
1
|
#!make
|
2
2
|
SHELL := /bin/bash
|
3
|
+
# Ensure the xml2rfc cache directory exists locally
|
4
|
+
IGNORE := $(shell mkdir -p $(HOME)/.cache/xml2rfc)
|
3
5
|
|
4
6
|
FORMAT_MARKER := mn-output-
|
5
7
|
FORMATS := $(shell grep "$(FORMAT_MARKER)" *.adoc | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
|
6
8
|
|
7
9
|
SRC := $(filter-out README.adoc, $(wildcard *.adoc))
|
8
10
|
XML := $(patsubst %.adoc,%.xml,$(SRC))
|
11
|
+
XMLRFC3 := $(patsubst %.adoc,%.v3.xml,$(SRC))
|
9
12
|
HTML := $(patsubst %.adoc,%.html,$(SRC))
|
10
13
|
DOC := $(patsubst %.adoc,%.doc,$(SRC))
|
11
14
|
PDF := $(patsubst %.adoc,%.pdf,$(SRC))
|
15
|
+
TXT := $(patsubst %.adoc,%.txt,$(SRC))
|
16
|
+
NITS := $(patsubst %.adoc,%.nits,$(wildcard draft-*.adoc))
|
12
17
|
WSD := $(wildcard models/*.wsd)
|
13
18
|
XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
|
14
19
|
PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
|
@@ -27,10 +32,21 @@ OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
|
|
27
32
|
|
28
33
|
all: images $(OUT_FILES)
|
29
34
|
|
30
|
-
%.xml %.html %.doc %.pdf: %.adoc | bundle
|
35
|
+
%.v3.xml %.xml %.html %.doc %.pdf %.txt: %.adoc | bundle
|
31
36
|
FILENAME=$^; \
|
32
37
|
${COMPILE_CMD}
|
33
38
|
|
39
|
+
draft-%.nits: draft-%.txt
|
40
|
+
VERSIONED_NAME=`grep :name: draft-$*.adoc | cut -f 2 -d ' '`; \
|
41
|
+
cp $^ $${VERSIONED_NAME}.txt && \
|
42
|
+
idnits --verbose $${VERSIONED_NAME}.txt > $@ && \
|
43
|
+
cp $@ $${VERSIONED_NAME}.nits && \
|
44
|
+
cat $${VERSIONED_NAME}.nits
|
45
|
+
|
46
|
+
%.nits:
|
47
|
+
|
48
|
+
nits: $(NITS)
|
49
|
+
|
34
50
|
images: $(PNG)
|
35
51
|
|
36
52
|
images/%.png: models/%.wsd
|
@@ -112,6 +128,6 @@ watch-serve: $(NODE_BIN_DIR)/run-p
|
|
112
128
|
|
113
129
|
publish:
|
114
130
|
mkdir -p published && \
|
115
|
-
cp -a $(basename $(SRC))
|
131
|
+
cp -a $(wildcard $(addsuffix .*,$(basename $(SRC)))) published/ && \
|
116
132
|
cp $(firstword $(HTML)) published/index.html; \
|
117
133
|
if [ -d "images" ]; then cp -a images published; fi
|
data/tmp/my-document/Makefile
CHANGED
@@ -1,14 +1,19 @@
|
|
1
1
|
#!make
|
2
2
|
SHELL := /bin/bash
|
3
|
+
# Ensure the xml2rfc cache directory exists locally
|
4
|
+
IGNORE := $(shell mkdir -p $(HOME)/.cache/xml2rfc)
|
3
5
|
|
4
6
|
FORMAT_MARKER := mn-output-
|
5
7
|
FORMATS := $(shell grep "$(FORMAT_MARKER)" *.adoc | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
|
6
8
|
|
7
9
|
SRC := $(filter-out README.adoc, $(wildcard *.adoc))
|
8
10
|
XML := $(patsubst %.adoc,%.xml,$(SRC))
|
11
|
+
XMLRFC3 := $(patsubst %.adoc,%.v3.xml,$(SRC))
|
9
12
|
HTML := $(patsubst %.adoc,%.html,$(SRC))
|
10
13
|
DOC := $(patsubst %.adoc,%.doc,$(SRC))
|
11
14
|
PDF := $(patsubst %.adoc,%.pdf,$(SRC))
|
15
|
+
TXT := $(patsubst %.adoc,%.txt,$(SRC))
|
16
|
+
NITS := $(patsubst %.adoc,%.nits,$(wildcard draft-*.adoc))
|
12
17
|
WSD := $(wildcard models/*.wsd)
|
13
18
|
XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
|
14
19
|
PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
|
@@ -27,10 +32,21 @@ OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
|
|
27
32
|
|
28
33
|
all: images $(OUT_FILES)
|
29
34
|
|
30
|
-
%.xml %.html %.doc %.pdf: %.adoc | bundle
|
35
|
+
%.v3.xml %.xml %.html %.doc %.pdf %.txt: %.adoc | bundle
|
31
36
|
FILENAME=$^; \
|
32
37
|
${COMPILE_CMD}
|
33
38
|
|
39
|
+
draft-%.nits: draft-%.txt
|
40
|
+
VERSIONED_NAME=`grep :name: draft-$*.adoc | cut -f 2 -d ' '`; \
|
41
|
+
cp $^ $${VERSIONED_NAME}.txt && \
|
42
|
+
idnits --verbose $${VERSIONED_NAME}.txt > $@ && \
|
43
|
+
cp $@ $${VERSIONED_NAME}.nits && \
|
44
|
+
cat $${VERSIONED_NAME}.nits
|
45
|
+
|
46
|
+
%.nits:
|
47
|
+
|
48
|
+
nits: $(NITS)
|
49
|
+
|
34
50
|
images: $(PNG)
|
35
51
|
|
36
52
|
images/%.png: models/%.wsd
|
@@ -112,6 +128,6 @@ watch-serve: $(NODE_BIN_DIR)/run-p
|
|
112
128
|
|
113
129
|
publish:
|
114
130
|
mkdir -p published && \
|
115
|
-
cp -a $(basename $(SRC))
|
131
|
+
cp -a $(wildcard $(addsuffix .*,$(basename $(SRC)))) published/ && \
|
116
132
|
cp $(firstword $(HTML)) published/index.html; \
|
117
133
|
if [ -d "images" ]; then cp -a images published; fi
|
@@ -1,14 +1,19 @@
|
|
1
1
|
#!make
|
2
2
|
SHELL := /bin/bash
|
3
|
+
# Ensure the xml2rfc cache directory exists locally
|
4
|
+
IGNORE := $(shell mkdir -p $(HOME)/.cache/xml2rfc)
|
3
5
|
|
4
6
|
FORMAT_MARKER := mn-output-
|
5
7
|
FORMATS := $(shell grep "$(FORMAT_MARKER)" *.adoc | cut -f 2 -d ' ' | tr ',' '\n' | sort | uniq | tr '\n' ' ')
|
6
8
|
|
7
9
|
SRC := $(filter-out README.adoc, $(wildcard *.adoc))
|
8
10
|
XML := $(patsubst %.adoc,%.xml,$(SRC))
|
11
|
+
XMLRFC3 := $(patsubst %.adoc,%.v3.xml,$(SRC))
|
9
12
|
HTML := $(patsubst %.adoc,%.html,$(SRC))
|
10
13
|
DOC := $(patsubst %.adoc,%.doc,$(SRC))
|
11
14
|
PDF := $(patsubst %.adoc,%.pdf,$(SRC))
|
15
|
+
TXT := $(patsubst %.adoc,%.txt,$(SRC))
|
16
|
+
NITS := $(patsubst %.adoc,%.nits,$(wildcard draft-*.adoc))
|
12
17
|
WSD := $(wildcard models/*.wsd)
|
13
18
|
XMI := $(patsubst models/%,xmi/%,$(patsubst %.wsd,%.xmi,$(WSD)))
|
14
19
|
PNG := $(patsubst models/%,images/%,$(patsubst %.wsd,%.png,$(WSD)))
|
@@ -27,10 +32,21 @@ OUT_FILES := $(foreach F,$(_OUT_FILES),$($F))
|
|
27
32
|
|
28
33
|
all: images $(OUT_FILES)
|
29
34
|
|
30
|
-
%.xml %.html %.doc %.pdf: %.adoc | bundle
|
35
|
+
%.v3.xml %.xml %.html %.doc %.pdf %.txt: %.adoc | bundle
|
31
36
|
FILENAME=$^; \
|
32
37
|
${COMPILE_CMD}
|
33
38
|
|
39
|
+
draft-%.nits: draft-%.txt
|
40
|
+
VERSIONED_NAME=`grep :name: draft-$*.adoc | cut -f 2 -d ' '`; \
|
41
|
+
cp $^ $${VERSIONED_NAME}.txt && \
|
42
|
+
idnits --verbose $${VERSIONED_NAME}.txt > $@ && \
|
43
|
+
cp $@ $${VERSIONED_NAME}.nits && \
|
44
|
+
cat $${VERSIONED_NAME}.nits
|
45
|
+
|
46
|
+
%.nits:
|
47
|
+
|
48
|
+
nits: $(NITS)
|
49
|
+
|
34
50
|
images: $(PNG)
|
35
51
|
|
36
52
|
images/%.png: models/%.wsd
|
@@ -112,6 +128,6 @@ watch-serve: $(NODE_BIN_DIR)/run-p
|
|
112
128
|
|
113
129
|
publish:
|
114
130
|
mkdir -p published && \
|
115
|
-
cp -a $(basename $(SRC))
|
131
|
+
cp -a $(wildcard $(addsuffix .*,$(basename $(SRC)))) published/ && \
|
116
132
|
cp $(firstword $(HTML)) published/index.html; \
|
117
133
|
if [ -d "images" ]; then cp -a images published; fi
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-06-
|
11
|
+
date: 2019-06-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -367,9 +367,12 @@ files:
|
|
367
367
|
- lib/metanorma-cli.rb
|
368
368
|
- lib/metanorma/cli.rb
|
369
369
|
- lib/metanorma/cli/command.rb
|
370
|
+
- lib/metanorma/cli/commands/template_repo.rb
|
370
371
|
- lib/metanorma/cli/compiler.rb
|
372
|
+
- lib/metanorma/cli/errors.rb
|
371
373
|
- lib/metanorma/cli/generator.rb
|
372
374
|
- lib/metanorma/cli/git_template.rb
|
375
|
+
- lib/metanorma/cli/template_repo.rb
|
373
376
|
- lib/metanorma/cli/ui.rb
|
374
377
|
- lib/metanorma/cli/version.rb
|
375
378
|
- metanorma-cli.gemspec
|
@@ -418,7 +421,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
418
421
|
version: '0'
|
419
422
|
requirements: []
|
420
423
|
rubyforge_project:
|
421
|
-
rubygems_version: 2.7.
|
424
|
+
rubygems_version: 2.7.6
|
422
425
|
signing_key:
|
423
426
|
specification_version: 4
|
424
427
|
summary: Metanorma is the standard of standards; the metanorma gem allows you to create
|