metanorma-generic 1.7.2 → 1.7.3
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/.github/workflows/rake.yml +27 -8
- data/README.adoc +1 -3
- data/lib/asciidoctor/generic/converter.rb +4 -3
- data/lib/asciidoctor/generic/front.rb +5 -0
- data/lib/asciidoctor/generic/isodoc.rng +13 -0
- data/lib/isodoc/generic/base_convert.rb +0 -8
- data/lib/isodoc/generic/html_convert.rb +2 -2
- data/lib/isodoc/generic/metadata.rb +7 -0
- data/lib/isodoc/generic/pdf_convert.rb +2 -2
- data/lib/isodoc/generic/utils.rb +2 -1
- data/lib/isodoc/generic/word_convert.rb +2 -8
- data/lib/metanorma/generic.rb +4 -0
- data/lib/metanorma/generic/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c325e9aa02cddaf26372e0199b21c55338e5abff1b8a1e8a25007567fb03b799
|
4
|
+
data.tar.gz: b6fc284631a359dc78e4f83744d1fbda26211b1692d74417b5a45af254b0266b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a0496b1c8cb2ef30e8265d08eaf4c0206f110a6687f6e2acc7d9e172e2e1975e266f9740ac628fa492d5b151ecad4a171653f9cc8704625e76359676231b6364
|
7
|
+
data.tar.gz: 3a4fd80dfd4fd4540950837182bf860676d4ea15f6a09cc207f64ab2025c2a54b0fa9aa84ba324585f6dcee41632ff38117b00a1dc8594c6d215e8b6779cc0e8
|
data/.github/workflows/rake.yml
CHANGED
@@ -4,7 +4,8 @@ name: rake
|
|
4
4
|
|
5
5
|
on:
|
6
6
|
push:
|
7
|
-
branches: [ master ]
|
7
|
+
branches: [ master, main ]
|
8
|
+
tags: [ v* ]
|
8
9
|
pull_request:
|
9
10
|
|
10
11
|
jobs:
|
@@ -31,14 +32,32 @@ jobs:
|
|
31
32
|
steps:
|
32
33
|
- uses: actions/checkout@master
|
33
34
|
|
34
|
-
-
|
35
|
-
uses: ruby/setup-ruby@v1
|
35
|
+
- uses: ruby/setup-ruby@v1
|
36
36
|
with:
|
37
37
|
ruby-version: ${{ matrix.ruby }}
|
38
|
-
bundler-cache: true
|
39
38
|
|
40
|
-
-
|
41
|
-
|
39
|
+
- uses: actions/cache@v1
|
40
|
+
with:
|
41
|
+
path: vendor/bundle
|
42
|
+
key: bundle-${{ matrix.os }}-${{ matrix.ruby }}-${{ hashFiles('**/*.gemspec') }}
|
43
|
+
restore-keys: bundle-${{ matrix.os }}-${{ matrix.ruby }}
|
44
|
+
|
45
|
+
- run: bundle config set path 'vendor/bundle'
|
46
|
+
|
47
|
+
- run: bundle install --jobs 4 --retry 3
|
42
48
|
|
43
|
-
-
|
44
|
-
|
49
|
+
- run: bundle exec rake
|
50
|
+
|
51
|
+
notify:
|
52
|
+
name: Trigger notify workflow
|
53
|
+
needs: rake
|
54
|
+
runs-on: ubuntu-latest
|
55
|
+
steps:
|
56
|
+
- name: Trigger notify workflow
|
57
|
+
uses: Sibz/github-status-action@v1
|
58
|
+
with:
|
59
|
+
authToken: ${{ secrets.GITHUB_TOKEN }}
|
60
|
+
context: 'tests-passed-successfully'
|
61
|
+
description: 'Tests passed successfully'
|
62
|
+
state: 'success'
|
63
|
+
sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
data/README.adoc
CHANGED
@@ -3,9 +3,7 @@
|
|
3
3
|
Formerly known as metanorma-acme
|
4
4
|
|
5
5
|
image:https://img.shields.io/gem/v/metanorma-generic.svg["Gem Version", link="https://rubygems.org/gems/metanorma-generic"]
|
6
|
-
image:https://github.com/metanorma/metanorma-generic/workflows/
|
7
|
-
image:https://github.com/metanorma/metanorma-generic/workflows/ubuntu/badge.svg["Build Status (ubuntu)", link="https://github.com/metanorma/metanorma-generic/actions?workflow=ubuntu"]
|
8
|
-
image:https://github.com/metanorma/metanorma-generic/workflows/windows/badge.svg["Build Status (Windows)", link="https://github.com/metanorma/metanorma-generic/actions?workflow=windows"]
|
6
|
+
image:https://github.com/metanorma/metanorma-generic/workflows/rake/badge.svg["Build Status", link="https://github.com/metanorma/metanorma-generic/actions?workflow=rake"]
|
9
7
|
image:https://codeclimate.com/github/metanorma/metanorma-acme/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-acme"]
|
10
8
|
image:https://img.shields.io/github/issues-pr-raw/metanorma/metanorma-generic.svg["Pull Requests", link="https://github.com/metanorma/metanorma-generic/pulls"]
|
11
9
|
image:https://img.shields.io/github/commits-since/metanorma/metanorma-generic/latest.svg["Commits since latest",link="https://github.com/metanorma/metanorma-generic/releases"]
|
@@ -35,10 +35,11 @@ module Asciidoctor
|
|
35
35
|
|
36
36
|
def doctype(node)
|
37
37
|
d = super
|
38
|
-
configuration.doctypes or return d == "article" ?
|
38
|
+
configuration.doctypes or return d == "article" ?
|
39
|
+
(configuration.default_doctype || "standard") : d
|
39
40
|
type = configuration.default_doctype ||
|
40
|
-
|
41
|
-
unless
|
41
|
+
configuration.doctypes.keys.dig(0) || "standard"
|
42
|
+
unless configuration.doctypes.keys.include? d
|
42
43
|
@log.add("Document Attributes", nil,
|
43
44
|
"#{d} is not a legal document type: reverting to '#{type}'")
|
44
45
|
d = type
|
@@ -63,6 +63,11 @@ module Asciidoctor
|
|
63
63
|
end
|
64
64
|
end
|
65
65
|
|
66
|
+
def metadata_doctype(node, xml)
|
67
|
+
d = doctype(node)
|
68
|
+
xml.doctype d, attr_code(abbreviation: configuration&.doctypes&.dig(d))
|
69
|
+
end
|
70
|
+
|
66
71
|
EXT_STRUCT = %w(_output _attribute _list).freeze
|
67
72
|
|
68
73
|
def metadata_ext_hash(node, ext, hash)
|
@@ -24,6 +24,14 @@
|
|
24
24
|
<start>
|
25
25
|
<ref name="standard-document"/>
|
26
26
|
</start>
|
27
|
+
<define name="doctype">
|
28
|
+
<element name="doctype">
|
29
|
+
<optional>
|
30
|
+
<attribute name="abbreviation"/>
|
31
|
+
</optional>
|
32
|
+
<ref name="DocumentType"/>
|
33
|
+
</element>
|
34
|
+
</define>
|
27
35
|
<define name="hyperlink">
|
28
36
|
<element name="link">
|
29
37
|
<attribute name="target">
|
@@ -141,6 +149,11 @@
|
|
141
149
|
<data type="boolean"/>
|
142
150
|
</attribute>
|
143
151
|
</optional>
|
152
|
+
<optional>
|
153
|
+
<attribute name="key">
|
154
|
+
<data type="boolean"/>
|
155
|
+
</attribute>
|
156
|
+
</optional>
|
144
157
|
<oneOrMore>
|
145
158
|
<ref name="dt"/>
|
146
159
|
<ref name="dd"/>
|
@@ -4,14 +4,6 @@ require "fileutils"
|
|
4
4
|
module IsoDoc
|
5
5
|
module Generic
|
6
6
|
module BaseConvert
|
7
|
-
=begin
|
8
|
-
def baselocation(loc)
|
9
|
-
return nil if loc.nil?
|
10
|
-
File.expand_path(File.join(
|
11
|
-
File.dirname(self.class::_file || __FILE__), "..", "..", "..", loc))
|
12
|
-
end
|
13
|
-
=end
|
14
|
-
|
15
7
|
def cleanup(docxml)
|
16
8
|
super
|
17
9
|
term_cleanup(docxml)
|
@@ -33,7 +33,7 @@ module IsoDoc
|
|
33
33
|
configuration.html_headerfont || '"Overpass",sans-serif'
|
34
34
|
),
|
35
35
|
monospacefont: configuration.html_monospacefont || '"Space Mono",monospace'
|
36
|
-
}
|
36
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
37
37
|
end
|
38
38
|
|
39
39
|
def default_file_locations(_options)
|
@@ -48,7 +48,7 @@ module IsoDoc
|
|
48
48
|
html_doc_path("scripts.html"),
|
49
49
|
i18nyaml: (configuration.i18nyaml.is_a?(String) ?
|
50
50
|
baselocation(configuration.i18nyaml) : nil)
|
51
|
-
}
|
51
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
52
52
|
end
|
53
53
|
|
54
54
|
=begin
|
@@ -63,6 +63,13 @@ module IsoDoc
|
|
63
63
|
!(Array(stages).map { |m| m.downcase }.include? status.downcase)
|
64
64
|
end
|
65
65
|
|
66
|
+
def doctype(isoxml, _out)
|
67
|
+
super
|
68
|
+
b = isoxml&.at(ns("//bibdata/ext/doctype#{currlang}")) ||
|
69
|
+
isoxml&.at(ns("//bibdata/ext/doctype#{NOLANG}")) || return
|
70
|
+
a = b["abbreviation"] and set(:doctype_abbr, a)
|
71
|
+
end
|
72
|
+
|
66
73
|
def xmlhash2hash(h)
|
67
74
|
ret = {}
|
68
75
|
return ret if h.nil? || h[:kind] != "element"
|
@@ -27,7 +27,7 @@ module IsoDoc
|
|
27
27
|
headerfont: (options[:script] == "Hans" ? '"SimHei",sans-serif' :
|
28
28
|
configuration.html_headerfont || '"Overpass",sans-serif'),
|
29
29
|
monospacefont: configuration.html_monospacefont || '"Space Mono",monospace'
|
30
|
-
}
|
30
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
31
31
|
end
|
32
32
|
|
33
33
|
def default_file_locations(_options)
|
@@ -40,7 +40,7 @@ module IsoDoc
|
|
40
40
|
html_doc_path("html_generic_intro.html"),
|
41
41
|
scripts_pdf: baselocation(configuration.scripts_pdf) ||
|
42
42
|
html_doc_path("scripts.pdf.html")
|
43
|
-
}
|
43
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
44
44
|
end
|
45
45
|
|
46
46
|
def googlefonts
|
data/lib/isodoc/generic/utils.rb
CHANGED
@@ -9,8 +9,9 @@ module IsoDoc
|
|
9
9
|
File.join(File.dirname(__FILE__), loc)
|
10
10
|
end
|
11
11
|
|
12
|
-
|
12
|
+
def baselocation(loc)
|
13
13
|
return nil if loc.nil?
|
14
|
+
return "" if loc.empty?
|
14
15
|
f = defined?(self.class::_file) ? (self.class::_file || __FILE__) :
|
15
16
|
__FILE__
|
16
17
|
File.expand_path(File.join(
|
@@ -32,7 +32,7 @@ module IsoDoc
|
|
32
32
|
configuration.word_headerfont || '"Arial",sans-serif'
|
33
33
|
),
|
34
34
|
monospacefont: configuration.word_monospacefont || '"Courier New",monospace'
|
35
|
-
}
|
35
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
36
36
|
end
|
37
37
|
|
38
38
|
def default_file_locations(options)
|
@@ -51,15 +51,9 @@ module IsoDoc
|
|
51
51
|
baselocation(configuration.i18nyaml) : nil),
|
52
52
|
ulstyle: "l3",
|
53
53
|
olstyle: "l2",
|
54
|
-
}
|
54
|
+
}.transform_values { |v| v&.empty? ? nil : v }
|
55
55
|
end
|
56
56
|
|
57
|
-
=begin
|
58
|
-
def configuration
|
59
|
-
Metanorma::Generic.configuration
|
60
|
-
end
|
61
|
-
=end
|
62
|
-
|
63
57
|
include BaseConvert
|
64
58
|
include Init
|
65
59
|
end
|
data/lib/metanorma/generic.rb
CHANGED
@@ -85,6 +85,10 @@ module Metanorma
|
|
85
85
|
|
86
86
|
def set_default_values_from_yaml_file(config_file)
|
87
87
|
default_config_options = YAML.load(File.read(config_file))
|
88
|
+
if default_config_options["doctypes"]&.is_a? Array
|
89
|
+
default_config_options["doctypes"] = default_config_options["doctypes"].
|
90
|
+
each_with_object({}) { |k, m| m[k] = nil }
|
91
|
+
end
|
88
92
|
CONFIG_ATTRS.each do |attr_name|
|
89
93
|
instance_variable_set("@#{attr_name}", default_config_options[attr_name.to_s])
|
90
94
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-generic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-11-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: htmlentities
|