isodoc 2.10.2 → 2.10.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e19ba3a2fd2440b24be729cbba835907ac504ca7c762f673632de52881922f1
4
- data.tar.gz: 6b3fff1e5f4feebc785588093eee4fb81a1da3dc37ff1417b2e30445e353dbcc
3
+ metadata.gz: d57eb699105f5f1b40c5b31cf51259a1bd60b458ac2b6ab0326beaa915c63750
4
+ data.tar.gz: 99b2d95988e2f1bb989f0779a60298c57fe08e69127bc07f063bd813403e5858
5
5
  SHA512:
6
- metadata.gz: 8751365f532c1123f30df8480fca7021cb90122c419e963b4ba46fb6ece8bca0c4bd1593d4c3d3f987f5db5dde295012e01a59af5392929dc3db972db5bb50c9
7
- data.tar.gz: '006383549c57caf4cb72ef35b51aaad6ada733981858f2188eb7515f08d8d1e964b7a27e47d723199737c6dc70cd7c379775804ee28b55757fda18a1c77dcb63'
6
+ metadata.gz: 5657c1f981918049eab6e6cd2d17d9d929309714025936dc27256f4ce0ec6b04b3c60a8bbd8839daec8eb322515425349cba06972ef888706ed44ea886cd8527
7
+ data.tar.gz: 1129bf0dbb9d6e31ef5a8fc50d2dd1f63aa70658c4ffdc60329c6e60fd6da3ffb7127fb32c99609ddd68da4b703f8712f0487820362081d1752d2ac983f5b079
@@ -1,3 +1,4 @@
1
+ @charset "UTF-8";
1
2
  html, body, div, span, applet, object, iframe,
2
3
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
3
4
  a, abbr, acronym, address, big, cite, code,
@@ -169,12 +170,15 @@ table.rouge-line-table pre {
169
170
  overflow-x: visible;
170
171
  font-size: 100%; }
171
172
 
173
+ /* header § links */
172
174
  a.header {
173
175
  color: inherit;
174
176
  text-decoration: none; }
175
177
 
176
178
  a.header:hover {
177
- color: #a53221; }
179
+ color: #a53221 !important;
180
+ background: inherit;
181
+ box-shadow: none; }
178
182
 
179
183
  a.header:visited {
180
184
  color: inherit;
@@ -197,6 +201,11 @@ a.anchor::before {
197
201
  display: block;
198
202
  padding-top: .1em; }
199
203
 
204
+ a.anchor:hover {
205
+ color: #a53221;
206
+ background: inherit;
207
+ box-shadow: none; }
208
+
200
209
  h1 > a.anchor:hover,
201
210
  h2 > a.anchor:hover,
202
211
  h3 > a.anchor:hover,
@@ -1,3 +1,4 @@
1
+ @charset "UTF-8";
1
2
  html, body, div, span, applet, object, iframe,
2
3
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
3
4
  a, abbr, acronym, address, big, cite, code,
@@ -169,12 +170,15 @@ table.rouge-line-table pre {
169
170
  overflow-x: visible;
170
171
  font-size: 100%; }
171
172
 
173
+ /* header § links */
172
174
  a.header {
173
175
  color: inherit;
174
176
  text-decoration: none; }
175
177
 
176
178
  a.header:hover {
177
- color: #a53221; }
179
+ color: #a53221 !important;
180
+ background: inherit;
181
+ box-shadow: none; }
178
182
 
179
183
  a.header:visited {
180
184
  color: inherit;
@@ -197,6 +201,11 @@ a.anchor::before {
197
201
  display: block;
198
202
  padding-top: .1em; }
199
203
 
204
+ a.anchor:hover {
205
+ color: #a53221;
206
+ background: inherit;
207
+ box-shadow: none; }
208
+
200
209
  h1 > a.anchor:hover,
201
210
  h2 > a.anchor:hover,
202
211
  h3 > a.anchor:hover,
@@ -200,11 +200,13 @@ table.rouge-line-table pre {
200
200
  font-size: 100%;
201
201
  }
202
202
 
203
- a.header{color:inherit;text-decoration:none}
204
- a.header:hover{color:#a53221}
205
- a.header:visited{color:inherit;text-decoration:none}
203
+ /* header § links */
204
+ a.header{color:inherit;text-decoration:none;}
205
+ a.header:hover{color:#a53221 !important;background:inherit;box-shadow:none;}
206
+ a.header:visited{color:inherit;text-decoration:none;}
206
207
  a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
207
208
  a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
209
+ a.anchor:hover{color:#a53221;background:inherit;box-shadow:none;}
208
210
  h1>a.anchor:hover,
209
211
  h2>a.anchor:hover,
210
212
  h3>a.anchor:hover,
@@ -48,6 +48,8 @@ module IsoDoc
48
48
  set(:doctype, status_print(b))
49
49
  b1 = isoxml&.at(ns("//bibdata/ext/doctype#{currlang}"))&.text || b
50
50
  set(:doctype_display, status_print(b1))
51
+ b = isoxml&.at(ns("//bibdata/ext/subdoctype#{NOLANG}"))&.text || return
52
+ set(:subdoctype, status_print(b))
51
53
  end
52
54
 
53
55
  def docstatus(xml, _out)
@@ -79,12 +79,12 @@ module IsoDoc
79
79
 
80
80
  def parse_localize_number
81
81
  @localizenumber or return {}
82
- m = %r{(?<group>[^#])?(?<groupdigits>#+0)(?<decimal>.)(?<fractdigits>#+)(?<fractgroup>[^#])?}
82
+ m = %r{(?<grp>[^#])?(?<grpdig>#+0)(?<decpt>.)(?<frdig>#+)(?<frgrp>[^#])?}
83
83
  .match(@localizenumber) or return {}
84
- ret = { decimal: m[:decimal], group_digits: m[:groupdigits].size,
85
- fraction_group_digits: m[:fractdigits].size,
86
- group: m[:group] || "",
87
- fraction_group: m[:fractgroup] || "" }.compact
84
+ ret = { decimal: m[:decpt], group_digits: m[:grpdig].size,
85
+ fraction_group_digits: m[:frdig].size,
86
+ group: m[:grp] || "",
87
+ fraction_group: m[:frgrp] || "" }.compact
88
88
  %i(group fraction_group).each { |x| ret[x] == " " and ret[x] = "\u00A0" }
89
89
  ret
90
90
  end
@@ -3,6 +3,7 @@ module IsoDoc
3
3
  def metadata(docxml)
4
4
  toc_metadata(docxml)
5
5
  fonts_metadata(docxml)
6
+ attachments_extract(docxml)
6
7
  preprocess_xslt_insert(docxml)
7
8
  a = docxml.at(ns("//bibdata")) or return
8
9
  a.next =
@@ -10,6 +11,22 @@ module IsoDoc
10
11
  "</localized-strings>"
11
12
  end
12
13
 
14
+ def attachments_extract(docxml)
15
+ docxml.at(ns("//metanorma-extension/attachment")) or return
16
+ dir = File.join(@localdir, "_#{@outputfile}_attachments")
17
+ FileUtils.rm_rf(dir)
18
+ FileUtils.mkdir_p(dir)
19
+ docxml.xpath(ns("//metanorma-extension/attachment")).each do |a|
20
+ save_attachment(a, dir)
21
+ end
22
+ end
23
+
24
+ def save_attachment(attachment, dir)
25
+ n = File.join(dir, attachment["name"])
26
+ c = attachment.text.sub(%r{^data:[^;]+;(?:charset=[^;]+;)?base64,}, "")
27
+ File.open(n, "wb") { |f| f.write(Base64.strict_decode64(c)) }
28
+ end
29
+
13
30
  def extension_insert(xml, path = [])
14
31
  ins = extension_insert_pt(xml)
15
32
  path.each do |n|
@@ -25,7 +25,9 @@ module IsoDoc
25
25
  def hidden_items(docxml)
26
26
  docxml.xpath(ns("//references[bibitem/@hidden = 'true']")).each do |x|
27
27
  x.at(ns("./bibitem[not(@hidden = 'true')]")) and next
28
- x.elements.map(&:name).any? { |n| n != "bibitem" } and next
28
+ x.elements.map(&:name).any? do |n|
29
+ !%w(title bibitem).include?(n)
30
+ end and next
29
31
  x["hidden"] = "true"
30
32
  end
31
33
  end
@@ -18,10 +18,13 @@ module IsoDoc
18
18
  super
19
19
  end
20
20
 
21
- def convert1(docxml, _filename, _dir)
21
+ def convert1(docxml, filename, dir)
22
+ @outputdir = dir
23
+ @outputfile = filename
22
24
  docid_prefixes(docxml) # feeds @xrefs.parse citation processing
23
25
  @xrefs.parse docxml
24
- info docxml, nil
26
+ @xrefs.klass.meta = @meta
27
+ @xrefs.klass.info docxml, nil
25
28
  conversions(docxml)
26
29
  docxml.root["type"] = "presentation"
27
30
  docxml.to_xml.gsub("&lt;", "&#x3c;").gsub("&gt;", "&#x3e;")
@@ -120,7 +123,7 @@ module IsoDoc
120
123
  def metanorma_extension_insert_pt(xml)
121
124
  xml.at(ns("//metanorma-extension")) ||
122
125
  xml.at(ns("//bibdata"))&.after("<metanorma-extension/>")
123
- &.next_element ||
126
+ &.next_element ||
124
127
  xml.root.elements.first.before("<metanorma-extension/>")
125
128
  .previous_element
126
129
  end
@@ -1,3 +1,3 @@
1
1
  module IsoDoc
2
- VERSION = "2.10.2".freeze
2
+ VERSION = "2.10.3".freeze
3
3
  end
@@ -89,7 +89,7 @@ deprecated: 推奨しない用語
89
89
  source: 出典
90
90
  and: and
91
91
  all_parts: 規格群
92
- edition_ordinal: "第3版{{ var1 }}版"
92
+ edition_ordinal: "第{{ var1 }}版"
93
93
  edition: 版
94
94
  version: version
95
95
  toc_figures: List of figures
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: isodoc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.2
4
+ version: 2.10.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-06 00:00:00.000000000 Z
11
+ date: 2024-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: html2doc