metanorma-iec 2.1.13 → 2.2.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 +0 -1
- data/lib/isodoc/iec/iec.international-standard.xsl +55 -12
- data/lib/isodoc/iec/presentation_xml_convert.rb +4 -4
- data/lib/metanorma/iec/basicdoc.rng +3 -0
- data/lib/metanorma/iec/isodoc.rng +1 -0
- data/lib/metanorma/iec/version.rb +1 -1
- data/metanorma-iec.gemspec +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe5f071488c1b489abdf32da76363aaa976af39d6bfb84631225a3d08ad630bd
|
4
|
+
data.tar.gz: 94c952903d02e5de6934ed33ec9a45caa1fe930025c6391cc94d857c386e6ce5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b60c7395b02c317a03675b08f70be8b09b75d19b963aebcbf2355caa0f6ed7b832ede96e628aa3203546c0f27daaa75999e629b4cd89ff4473dc8ddcf34588d3
|
7
|
+
data.tar.gz: 0c13485be861d7abef84dadce587fbbc1306c2f2a4a95faefbcdd6029905a7e27534d14f1c9b551a1c950d939abbb56a7ccd67d034c8883dcd29bee25a264877
|
data/.gitignore
CHANGED
@@ -4637,6 +4637,10 @@
|
|
4637
4637
|
<xsl:variable name="footnote_inline">
|
4638
4638
|
<fo:inline xsl:use-attribute-sets="fn-num-style">
|
4639
4639
|
|
4640
|
+
<xsl:if test="following-sibling::*[1][local-name() = 'fn']">
|
4641
|
+
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
4642
|
+
</xsl:if>
|
4643
|
+
|
4640
4644
|
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
4641
4645
|
<xsl:value-of select="$current_fn_number_text"/>
|
4642
4646
|
</fo:basic-link>
|
@@ -5807,6 +5811,23 @@
|
|
5807
5811
|
<xsl:apply-templates/>
|
5808
5812
|
</xsl:template>
|
5809
5813
|
|
5814
|
+
<!-- Don't break standard's numbers -->
|
5815
|
+
<!-- Example : <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
5816
|
+
<xsl:template match="*[local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" priority="2">
|
5817
|
+
<xsl:choose>
|
5818
|
+
<xsl:when test="ancestor::*[local-name() = 'table']"><xsl:apply-templates/></xsl:when>
|
5819
|
+
<xsl:when test="following-sibling::*[2][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']">
|
5820
|
+
<fo:inline keep-with-next.within-line="always"><xsl:apply-templates/></fo:inline>
|
5821
|
+
</xsl:when>
|
5822
|
+
<xsl:otherwise>
|
5823
|
+
<xsl:apply-templates/>
|
5824
|
+
</xsl:otherwise>
|
5825
|
+
</xsl:choose>
|
5826
|
+
</xsl:template>
|
5827
|
+
<xsl:template match="text()[not(ancestor::*[local-name() = 'table']) and preceding-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear'] and following-sibling::*[1][local-name() = 'span'][@class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']]" priority="2">
|
5828
|
+
<fo:inline keep-with-next.within-line="always"><xsl:value-of select="."/></fo:inline>
|
5829
|
+
</xsl:template>
|
5830
|
+
|
5810
5831
|
<!-- ========================= -->
|
5811
5832
|
<!-- END Rich text formatting -->
|
5812
5833
|
<!-- ========================= -->
|
@@ -6202,7 +6223,7 @@
|
|
6202
6223
|
<xsl:choose>
|
6203
6224
|
<xsl:when test="@colspan">
|
6204
6225
|
<xsl:variable name="td">
|
6205
|
-
<xsl:element name="
|
6226
|
+
<xsl:element name="{local-name()}">
|
6206
6227
|
<xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
|
6207
6228
|
<xsl:if test="local-name()='th'">
|
6208
6229
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6217,7 +6238,7 @@
|
|
6217
6238
|
</xsl:call-template>
|
6218
6239
|
</xsl:when>
|
6219
6240
|
<xsl:otherwise>
|
6220
|
-
<xsl:element name="
|
6241
|
+
<xsl:element name="{local-name()}">
|
6221
6242
|
<xsl:apply-templates select="@*" mode="simple-table-colspan"/>
|
6222
6243
|
<xsl:if test="local-name()='th'">
|
6223
6244
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
@@ -6284,7 +6305,7 @@
|
|
6284
6305
|
<xsl:variable name="currentRow" select="."/>
|
6285
6306
|
|
6286
6307
|
<xsl:variable name="normalizedTDs">
|
6287
|
-
<xsl:for-each select="xalan:nodeset($previousRow)
|
6308
|
+
<xsl:for-each select="xalan:nodeset($previousRow)//*[self::td or self::th]">
|
6288
6309
|
<xsl:choose>
|
6289
6310
|
<xsl:when test="@rowspan > 1">
|
6290
6311
|
<xsl:copy>
|
@@ -6296,7 +6317,7 @@
|
|
6296
6317
|
</xsl:copy>
|
6297
6318
|
</xsl:when>
|
6298
6319
|
<xsl:otherwise>
|
6299
|
-
<xsl:copy-of select="$currentRow
|
6320
|
+
<xsl:copy-of select="$currentRow/*[self::td or self::th][1 + count(current()/preceding-sibling::*[self::td or self::th][not(@rowspan) or (@rowspan = 1)])]"/>
|
6300
6321
|
</xsl:otherwise>
|
6301
6322
|
</xsl:choose>
|
6302
6323
|
</xsl:for-each>
|
@@ -6970,12 +6991,6 @@
|
|
6970
6991
|
|
6971
6992
|
<fo:block-container margin-left="0mm">
|
6972
6993
|
|
6973
|
-
<!-- <xsl:if test="$namespace = 'iho'">
|
6974
|
-
<xsl:if test="ancestor::iho:td">
|
6975
|
-
<xsl:attribute name="font-size">12pt</xsl:attribute>
|
6976
|
-
</xsl:if>
|
6977
|
-
</xsl:if> -->
|
6978
|
-
|
6979
6994
|
<fo:block>
|
6980
6995
|
|
6981
6996
|
<fo:inline xsl:use-attribute-sets="note-name-style">
|
@@ -7479,6 +7494,31 @@
|
|
7479
7494
|
<xsl:apply-templates mode="svg_update"/>
|
7480
7495
|
</xsl:copy>
|
7481
7496
|
</xsl:template>
|
7497
|
+
|
7498
|
+
<!-- regex for 'display: inline-block;' -->
|
7499
|
+
<xsl:variable name="regex_svg_style_notsupported">display(\s|\h)*:(\s|\h)*inline-block(\s|\h)*;</xsl:variable>
|
7500
|
+
<xsl:template match="*[local-name() = 'svg']//*[local-name() = 'style']/text()" mode="svg_update">
|
7501
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.), $regex_svg_style_notsupported, '')"/>
|
7502
|
+
</xsl:template>
|
7503
|
+
|
7504
|
+
<!-- replace
|
7505
|
+
stroke="rgba(r, g, b, alpha)" to
|
7506
|
+
stroke="rgb(r,g,b)" stroke-opacity="alpha", and
|
7507
|
+
fill="rgba(r, g, b, alpha)" to
|
7508
|
+
fill="rgb(r,g,b)" fill-opacity="alpha" -->
|
7509
|
+
<xsl:template match="@*[local-name() = 'stroke' or local-name() = 'fill'][starts-with(normalize-space(.), 'rgba')]" mode="svg_update">
|
7510
|
+
<xsl:variable name="components_">
|
7511
|
+
<xsl:call-template name="split">
|
7512
|
+
<xsl:with-param name="pText" select="substring-before(substring-after(., '('), ')')"/>
|
7513
|
+
<xsl:with-param name="sep" select="','"/>
|
7514
|
+
</xsl:call-template>
|
7515
|
+
</xsl:variable>
|
7516
|
+
<xsl:variable name="components" select="xalan:nodeset($components_)"/>
|
7517
|
+
<xsl:variable name="att_name" select="local-name()"/>
|
7518
|
+
<xsl:attribute name="{$att_name}"><xsl:value-of select="concat('rgb(', $components/item[1], ',', $components/item[2], ',', $components/item[3], ')')"/></xsl:attribute>
|
7519
|
+
<xsl:attribute name="{$att_name}-opacity"><xsl:value-of select="$components/item[4]"/></xsl:attribute>
|
7520
|
+
</xsl:template>
|
7521
|
+
|
7482
7522
|
<!-- ============== -->
|
7483
7523
|
<!-- END: svg_update -->
|
7484
7524
|
<!-- ============== -->
|
@@ -10440,7 +10480,9 @@
|
|
10440
10480
|
<!-- Update xml -->
|
10441
10481
|
<!-- ===================================== -->
|
10442
10482
|
<!-- =========================================================================== -->
|
10443
|
-
<!-- STEP1:
|
10483
|
+
<!-- STEP1: -->
|
10484
|
+
<!-- - Re-order elements in 'preface', 'sections' based on @displayorder -->
|
10485
|
+
<!-- - Ignore 'span' without style -->
|
10444
10486
|
<!-- =========================================================================== -->
|
10445
10487
|
<xsl:template match="@*|node()" mode="update_xml_step1">
|
10446
10488
|
<xsl:copy>
|
@@ -10523,7 +10565,8 @@
|
|
10523
10565
|
</xsl:copy>
|
10524
10566
|
</xsl:template>
|
10525
10567
|
|
10526
|
-
|
10568
|
+
<!-- Example with 'class': <span class="stdpublisher">ISO</span> <span class="stddocNumber">10303</span>-<span class="stddocPartNumber">1</span>:<span class="stdyear">1994</span> -->
|
10569
|
+
<xsl:template match="*[local-name() = 'span'][@style or @class = 'stdpublisher' or @class = 'stddocNumber' or @class = 'stddocPartNumber' or @class = 'stdyear']" mode="update_xml_step1" priority="2">
|
10527
10570
|
<xsl:copy>
|
10528
10571
|
<xsl:copy-of select="@*"/>
|
10529
10572
|
<xsl:apply-templates mode="update_xml_step1"/>
|
@@ -124,7 +124,7 @@ module IsoDoc
|
|
124
124
|
p = d.parent
|
125
125
|
designation_annotate(p, d.at(ns("./name")))
|
126
126
|
m << { lang: lg, script: Metanorma::Utils.default_script(lg),
|
127
|
-
designation: l10n_recursive(p.remove, lg).
|
127
|
+
designation: to_xml(l10n_recursive(p.remove, lg)).strip }
|
128
128
|
end
|
129
129
|
end
|
130
130
|
|
@@ -183,7 +183,7 @@ module IsoDoc
|
|
183
183
|
ref = node.at(ns("./xref | ./eref | ./termref"))
|
184
184
|
label = @i18n.relatedterms[node["type"]].upcase
|
185
185
|
node.replace(l10n("<p>#{label}: " \
|
186
|
-
"#{p.children
|
186
|
+
"#{to_xml(p.children)} (#{to_xml(ref)})</p>"))
|
187
187
|
@i18n = @i18n_lg["default"]
|
188
188
|
end
|
189
189
|
|
@@ -205,9 +205,9 @@ module IsoDoc
|
|
205
205
|
|
206
206
|
def termsource1_iev(elem)
|
207
207
|
while elem&.next_element&.name == "termsource"
|
208
|
-
elem << "; #{elem.next_element.remove.children
|
208
|
+
elem << "; #{to_xml(elem.next_element.remove.children)}"
|
209
209
|
end
|
210
|
-
elem.children = l10n("#{@i18n.source}: #{elem.children.
|
210
|
+
elem.children = l10n("#{@i18n.source}: #{to_xml(elem.children).strip}")
|
211
211
|
end
|
212
212
|
|
213
213
|
def termexample(docxml)
|
data/metanorma-iec.gemspec
CHANGED
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.test_files = `git ls-files -- {spec}/*`.split("\n")
|
31
31
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
32
32
|
|
33
|
-
spec.add_dependency "metanorma-iso", "~> 2.
|
33
|
+
spec.add_dependency "metanorma-iso", "~> 2.3.0"
|
34
34
|
spec.add_dependency "ruby-jing"
|
35
35
|
|
36
36
|
spec.add_development_dependency "debug"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-iec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-iso
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.3.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.3.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: ruby-jing
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -270,7 +270,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
270
270
|
- !ruby/object:Gem::Version
|
271
271
|
version: '0'
|
272
272
|
requirements: []
|
273
|
-
rubygems_version: 3.3.
|
273
|
+
rubygems_version: 3.3.26
|
274
274
|
signing_key:
|
275
275
|
specification_version: 4
|
276
276
|
summary: metanorma-iec lets you write IEC standards in AsciiDoc.
|