isodoc 2.8.0 → 2.8.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7399ef0fe36a0b345f15af67b09daec6f68ed36ce2226af1469ace300d4e3fa9
4
- data.tar.gz: 5d03fbb31c3a38b11ca47d34a1673326f68e7db9f577de5995944b4c1e77d1f1
3
+ metadata.gz: 5ff28b434a38c7f524cf93b662000f07a4d65e879a3be5e8f6ca7a2a20b86581
4
+ data.tar.gz: 23de3231f18a9fb9a1d85ba08f6cadfbd13f1ccfe554983101287995b9a98279
5
5
  SHA512:
6
- metadata.gz: 3b5fb43c2a320525f7a1ce8e30d376ee687fd3295e16aa9336e846db7f93958d130e50b896216cbc651e4b33037840c97d9df2b6a9f578cc8dfef34a89bed098
7
- data.tar.gz: 5b9bb3130bde935c9d420c02092d5c341ed2bdb18e7a5aaa2e718a58798c165c8130b7a036ff4619b19ef2655d41223a7f13b5c110bd0e5b2881a877920d0119
6
+ metadata.gz: 2348ea597acce91ae0066bfe265ad86c802f81a5ec1167a76515df8ab030b3f64243ede70cc5a782ba6264b5d23a514940bc47eab5a07172b37485eb1efd854f
7
+ data.tar.gz: 642053a1a9d3a8266b18d9ef035c85320cfac99bb9960cfb14f3d27cb72b00725e51fd270f0bbe47959ba397efb3639626342e7bb503dd251d6713ce7b0de08f
data/isodoc.gemspec CHANGED
@@ -28,22 +28,19 @@ Gem::Specification.new do |spec|
28
28
  end
29
29
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
30
30
 
31
- spec.add_dependency "html2doc", "~> 1.7.1"
32
- spec.add_dependency "htmlentities", "~> 4.3.4"
31
+ spec.add_dependency "html2doc", "~> 1.8.1"
33
32
  # spec.add_dependency "isodoc-i18n", "~> 1.1.0" # already in relaton-render and mn-requirements
34
- spec.add_dependency "liquid", "~> 5"
35
- #spec.add_dependency "relaton-cli"
33
+ # spec.add_dependency "relaton-cli"
36
34
  # spec.add_dependency "metanorma-utils", "~> 1.5.0" # already in isodoc-i18n
37
35
  spec.add_dependency "mn2pdf"
38
36
  spec.add_dependency "mn-requirements", "~> 0.3.4"
39
37
 
40
- spec.add_dependency "relaton-render", "~> 0.6.0"
38
+ spec.add_dependency "relaton-render", "~> 0.7.0"
41
39
  spec.add_dependency "roman-numerals"
42
40
  spec.add_dependency "rouge", "~> 4.0"
43
41
  spec.add_dependency "thread_safe"
44
42
  spec.add_dependency "twitter_cldr", ">= 6.6.0"
45
43
  spec.add_dependency "uuidtools"
46
- spec.add_dependency "vectory", "~> 0.6"
47
44
 
48
45
  spec.add_development_dependency "debug"
49
46
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
@@ -66,8 +66,8 @@ module IsoDoc
66
66
  def resize_images(docxml)
67
67
  docxml.xpath("//*[local-name() = 'img' or local-name() = 'svg']")
68
68
  .each do |i|
69
- i["width"], i["height"] = Html2Doc.new({})
70
- .image_resize(i, image_localfile(i), @maxheight, @maxwidth)
69
+ i["width"], i["height"] = Vectory::ImageResize.new
70
+ .call(i, image_localfile(i), @maxheight, @maxwidth)
71
71
  end
72
72
  docxml
73
73
  end
@@ -77,8 +77,7 @@ module IsoDoc
77
77
  FileUtils.rm_rf tmpimagedir
78
78
  FileUtils.mkdir tmpimagedir
79
79
  docxml.xpath("//*[local-name() = 'img']").each do |i|
80
- next if /^data:/.match? i["src"]
81
-
80
+ /^data:/.match? i["src"] and next
82
81
  @datauriimage ? datauri(i) : move_image1(i)
83
82
  end
84
83
  docxml
@@ -119,7 +119,8 @@ module IsoDoc
119
119
  end
120
120
 
121
121
  def title(isoxml, _out)
122
- main = isoxml.at(ns("//bibdata/title[@language='#{@lang}']"))&.text
122
+ main = isoxml.at(ns("//bibdata/title[@language='#{@lang}']"))
123
+ &.children&.to_xml
123
124
  set(:doctitle, main)
124
125
  end
125
126
 
@@ -58,8 +58,8 @@ module IsoDoc
58
58
  def iso?(org)
59
59
  name = org&.at(ns("./name"))&.text
60
60
  abbrev = org&.at(ns("./abbreviation"))&.text
61
- (abbrev == "ISO" ||
62
- name == "International Organization for Standardization")
61
+ abbrev == "ISO" ||
62
+ name == "International Organization for Standardization"
63
63
  end
64
64
 
65
65
  def agency1(xml)
@@ -59,21 +59,8 @@ module IsoDoc
59
59
  x = bibdata.at(ns("./edition")) or return
60
60
  /^\d+$/.match?(x.text) or return
61
61
  @i18n.edition_ordinal or return
62
- edn = edition_translate1(x.text.to_i) or return
63
- tag_translate(x, @lang,
64
- @i18n.edition_ordinal.sub(/%(Spellout|Ordinal)?/, edn))
65
- end
66
-
67
- def edition_translate1(num)
68
- ruleset = case @i18n.edition_ordinal
69
- when /%Spellout/ then "SpelloutRules"
70
- when /%Ordinal/ then "OrdinalRules"
71
- else "Digit"
72
- end
73
- ruleset == "Digit" and return num.to_s
74
- ed = @c.decode(@i18n.edition)
75
- @i18n.inflect_ordinal(num, @i18n.inflection&.dig(ed) || {},
76
- ruleset)
62
+ tag_translate(x, @lang, @i18n
63
+ .populate("edition_ordinal", { "var1" => x.text.to_i }))
77
64
  end
78
65
 
79
66
  def tag_translate(tag, lang, value)
@@ -102,6 +102,43 @@ module IsoDoc
102
102
 
103
103
  def inline_format(docxml)
104
104
  custom_charset(docxml)
105
+ text_transform(docxml)
106
+ end
107
+
108
+ def text_transform(docxml)
109
+ docxml.xpath(ns("//span[contains(@style, 'text-transform')]")).each do |s|
110
+ text_transform1(s)
111
+ end
112
+ end
113
+
114
+ def text_transform1(span)
115
+ m = span["style"].split(/;\s*/)
116
+ i = m.index { |x| /^text-transform/.match?(x) }
117
+ value = m[i].sub(/^text-transform:/, "")
118
+ change_case(span, value, true)
119
+ m[i] = "text-transform:none"
120
+ span["style"] = m.join(";")
121
+ end
122
+
123
+ def change_case(span, value, seen_space)
124
+ span.traverse do |s|
125
+ s.text? or next
126
+ case value
127
+ when "uppercase" then s.replace s.text.upcase
128
+ when "lowercase" then s.replace s.text.downcase
129
+ when "capitalize"
130
+ s.replace conditional_capitalize(s.text, seen_space)
131
+ end
132
+ seen_space = /\s$/.match?(s.text)
133
+ end
134
+ end
135
+
136
+ def conditional_capitalize(text, seen_space)
137
+ m = text.split(/(?<=\s)/)
138
+ ((seen_space ? 0 : 1)...m.size).each do |i|
139
+ m[i] = m[i].capitalize
140
+ end
141
+ m.join
105
142
  end
106
143
 
107
144
  def custom_charset(docxml)
@@ -16,7 +16,7 @@ module IsoDoc
16
16
  s = docxml.at(ns("//sections")) ||
17
17
  docxml.at(ns("//preface"))&.after("<sections/>")&.next_element ||
18
18
  docxml.at(ns("//annex | //bibliography"))&.before("<sections/>")
19
- &.previous_element or return
19
+ &.previous_element or return
20
20
  docxml.xpath(ns(@xrefs.klass.norm_ref_xpath)).each do |r|
21
21
  s << r.remove
22
22
  end
@@ -163,7 +163,7 @@ module IsoDoc
163
163
  # else, use both ordinal, as prefix, and ids
164
164
  def biblio_ref_entry_code(ordinal, ids, _id, _standard, datefn, _bib)
165
165
  # standard and id = nil
166
- ret = (ids[:ordinal] || ids[:metanorma] || "[#{ordinal}]")
166
+ ret = ids[:ordinal] || ids[:metanorma] || "[#{ordinal}]"
167
167
  if ids[:sdo]
168
168
  ret = prefix_bracketed_ref(ret)
169
169
  ret += "#{ids[:sdo]}#{datefn}, "
@@ -1,3 +1,3 @@
1
1
  module IsoDoc
2
- VERSION = "2.8.0".freeze
2
+ VERSION = "2.8.2".freeze
3
3
  end
@@ -99,7 +99,7 @@ module IsoDoc
99
99
  def word_tab_clean(docxml)
100
100
  docxml.xpath("//p[@class='Biblio']//span[@style='mso-tab-count:1']")
101
101
  .each do |s|
102
- s.next.text? or next
102
+ s.next&.text? or next
103
103
  s.next.replace(@c.encode(s.next.text.sub(/^\s+/, ""), :hexadecimal))
104
104
  end
105
105
  end
@@ -30,6 +30,7 @@ external_terms_boilerplate: |
30
30
  <p> لأغراض هذا المستند ، تنطبق المصطلحات والتعريفات الواردة في%. </ p>
31
31
  internal_external_terms_boilerplate: |
32
32
  <p>لأغراض هذه الوثيقة ،تنطبق المصطلحات والتعاريف الواردة في % وما يلي.</p>
33
+ no_information_available: "[لا توجد معلومات متاحة]"
33
34
  term_defined_in: "(%)"
34
35
  binary_and: "%1 و %2"
35
36
  multiple_and: "%1, و %2"
@@ -45,6 +46,7 @@ ordinal_keys: [gender]
45
46
  SpelloutRules:
46
47
  f: spellout-ordinal-feminine
47
48
  m: spellout-ordinal-masculine
49
+ OrdinalRules: digits-ordinal
48
50
  note: ملاحظة
49
51
  note_xref: ملاحظة
50
52
  termnote: ملاحظة % للقيد
@@ -74,7 +76,7 @@ deprecated: مهمل
74
76
  source: مصدر
75
77
  and: و
76
78
  all_parts: كل الأجزاء
77
- edition_ordinal: "الطبعة؜ %Spellout؜"
79
+ edition_ordinal: "ﺎﻠﻄﺒﻋﺓ؜ {{ var1 | ordinal_word: 'edition', '' }}
78
80
  edition: الطبعة؜ ؜
79
81
  version: الإصدار
80
82
  toc_figures: جدول الأرقام
@@ -195,4 +197,5 @@ inflection:
195
197
  sg: صفحة
196
198
  pl: صفحات
197
199
  الطبعة؜:
198
- gender: f
200
+ grammar:
201
+ gender: f
@@ -32,6 +32,7 @@ external_terms_boilerplate: |
32
32
  <p>Für die Zwecke dieses Dokuments gelten die in % angegebenen Begriffe und Definitionen.</p>
33
33
  internal_external_terms_boilerplate: |
34
34
  <p>Für die Zwecke dieses Dokuments gelten die in % und im Folgenden aufgeführten Begriffe und Definitionen.</p>
35
+ no_information_available: "[KEINE INFORMATION VERFÜGBAR]"
35
36
  term_defined_in: "(%)"
36
37
  binary_and: "%1 und %2"
37
38
  multiple_and: "%1, und %2"
@@ -51,6 +52,13 @@ SpelloutRules:
51
52
  m.pl: spellout-ordinal
52
53
  f.pl: spellout-ordinal
53
54
  n.pl: spellout-ordinal
55
+ OrdinalRules:
56
+ m.sg: spellout-ordinal-r
57
+ f.sg: spellout-ordinal
58
+ n.sg: spellout-ordinal-s
59
+ m.pl: spellout-ordinal
60
+ f.pl: spellout-ordinal
61
+ n.pl: spellout-ordinal
54
62
  note: HINWEIS
55
63
  note_xref: Hinweis
56
64
  termnote: Hinweis % zum Eintrag
@@ -80,7 +88,7 @@ deprecated: VERALTET
80
88
  source: QUELLE
81
89
  and: und
82
90
  all_parts: Alle Teile
83
- edition_ordinal: "%Spellout Auflage"
91
+ edition_ordinal: "{{ var1 | ordinal_word: 'edition', '' }} Auflage"
84
92
  edition: Auflage
85
93
  version: Version
86
94
  toc_figures: Abbildungsverzeichnis
@@ -201,4 +209,5 @@ inflection:
201
209
  sg: Seite
202
210
  pl: Seiten
203
211
  Auflage:
204
- gender: f
212
+ grammar:
213
+ gender: f
@@ -38,6 +38,7 @@ external_terms_boilerplate: |
38
38
  internal_external_terms_boilerplate: |
39
39
  <p>For the purposes of this document, the terms and definitions
40
40
  given in % and the following apply.</p>
41
+ no_information_available: "[NO INFORMATION AVAILABLE]"
41
42
  term_defined_in: "(%)"
42
43
  binary_and: "%1 and %2"
43
44
  multiple_and: "%1, and %2"
@@ -51,6 +52,7 @@ nested_xref: "%1, %2"
51
52
  list_nested_xref: "%1 %2"
52
53
  ordinal_keys: []
53
54
  SpelloutRules: spellout-ordinal
55
+ OrdinalRules: digits-ordinal
54
56
  note: NOTE
55
57
  note_xref: Note
56
58
  termnote: Note % to entry
@@ -89,7 +91,7 @@ deprecated: DEPRECATED
89
91
  source: SOURCE
90
92
  and: and
91
93
  all_parts: All Parts
92
- edition_ordinal: "%Spellout edition"
94
+ edition_ordinal: "{{ var1 | ordinal_word: '', '' }} edition"
93
95
  edition: edition
94
96
  version: version
95
97
  toc_figures: List of figures
@@ -34,6 +34,7 @@ external_terms_boilerplate: |
34
34
  <p>Para los propósitos de este documento, se aplican los términos y definiciones dados en %.</p>
35
35
  internal_external_terms_boilerplate: |
36
36
  <p>Para los propósitos de este documento, se aplican los términos y definiciones dados en % y los siguientes.</p>
37
+ no_information_available: "[NO HAY INFORMACIÓN DISPONIBLE]"
37
38
  term_defined_in: "(%)"
38
39
  binary_and: "%1 y %2"
39
40
  multiple_and: "%1, y %2"
@@ -51,6 +52,11 @@ SpelloutRules:
51
52
  f.sg: spellout-ordinal-feminine
52
53
  m.pl: spellout-ordinal-masculine-plural
53
54
  f.pl: spellout-ordinal-feminine-plural
55
+ OrdinalRules:
56
+ m.sg: digits-ordinal-masculine
57
+ f.sg: digits-ordinal-feminine
58
+ m.pl: digits-ordinal-masculine-plural
59
+ f.pl: digits-ordinal-feminine-plural
54
60
  note: NOTA
55
61
  note_xref: Nota
56
62
  termnote: Nota % a la entrada
@@ -80,7 +86,7 @@ deprecated: OBSOLETO
80
86
  source: FUENTE
81
87
  and: y
82
88
  all_parts: Todas las partes
83
- edition_ordinal: "%Spellout edición"
89
+ edition_ordinal: "{{ var1 | ordinal_word: 'edition', '' }} edición"
84
90
  edition: edición
85
91
  version: versión
86
92
  toc_figures: Table de figuras
@@ -201,4 +207,5 @@ inflection:
201
207
  sg: Página
202
208
  pl: Páginas
203
209
  edición:
204
- gender: f
210
+ grammar:
211
+ gender: f
@@ -31,6 +31,7 @@ external_terms_boilerplate: |
31
31
  <p>Pour les besoins du présent document, les termes et définitions de % s’appliquent.</p>
32
32
  internal_external_terms_boilerplate: |
33
33
  <p>Pour les besoins du présent document, les termes et définitions de % ainsi que les suivants, s’appliquent.</p>
34
+ no_information_available: "[PAS D’INFORMATION DISPONIBLE]"
34
35
  term_defined_in: "(%)"
35
36
  binary_and: "%1 et %2"
36
37
  multiple_and: "%1, et %2"
@@ -48,6 +49,11 @@ SpelloutRules:
48
49
  f.sg: spellout-ordinal-feminine
49
50
  m.pl: spellout-ordinal-masculine-plural
50
51
  f.pl: spellout-ordinal-feminine-plural
52
+ OrdinalRules:
53
+ m.sg: digits-ordinal-masculine
54
+ f.sg: digits-ordinal-feminine
55
+ m.pl: digits-ordinal-masculine-plural
56
+ f.pl: digits-ordinal-feminine-plural
51
57
  note: NOTE
52
58
  note_xref: Note
53
59
  termnote: Note % à l’article
@@ -79,7 +85,7 @@ edition: édition
79
85
  version: version
80
86
  and: et
81
87
  all_parts: toutes les parties
82
- edition_ordinal: "%Spellout édition"
88
+ edition_ordinal: "{{ var1 | ordinal_word: 'edition', '' }} édition"
83
89
  edition: édition
84
90
  toc_figures: Table des figures
85
91
  toc_tables: Table des tableaux
@@ -199,4 +205,5 @@ inflection:
199
205
  sg: Page
200
206
  pl: Pages
201
207
  édition:
202
- gender: f
208
+ grammar:
209
+ gender: f
@@ -31,6 +31,7 @@ external_terms_boilerplate: |
31
31
  <p>この規格で用いる主な用語及び定義は,% による。</p>
32
32
  internal_external_terms_boilerplate: |
33
33
  <p>この規格で用いる主な用語及び定義は,次によるほか,% による。</p>
34
+ no_information_available: "[情報はありません]"
34
35
  term_defined_in: "(%)"
35
36
  binary_and: "%1 and %2"
36
37
  multiple_and: "%1, and %2"
@@ -45,6 +46,7 @@ list_nested_xref: "%1の%2"
45
46
  no_conflate_xref_locations: true
46
47
  ordinal_keys: []
47
48
  SpelloutRules: spellout-ordinal
49
+ OrdinalRules: digits-ordinal
48
50
  note: 注記
49
51
  note_xref: 注記
50
52
  termnote: 注釈%
@@ -86,8 +88,8 @@ deprecated: 推奨しない用語
86
88
  source: 出典
87
89
  and: and
88
90
  all_parts: 規格群
89
- edition_ordinal: "%Spellout edition"
90
- edition: edition
91
+ edition_ordinal: "第3版{{ var1 }}版"
92
+ edition:
91
93
  version: version
92
94
  toc_figures: List of figures
93
95
  toc_tables: List of tables
@@ -37,6 +37,7 @@ external_terms_boilerplate: |
37
37
  internal_external_terms_boilerplate: |
38
38
  <p>Для целей этого документа применяются
39
39
  термины и определения, данные в % и следующие.</p>
40
+ no_information_available: "[ИНФОРМАЦИЯ ОТСУТСТВУЕТ]"
40
41
  term_defined_in: "(%)"
41
42
  binary_and: "%1 и %2"
42
43
  multiple_and: "%1, и %2"
@@ -48,14 +49,81 @@ chain_from: "%1 от %2"
48
49
  chain_to: "%1 до %2"
49
50
  nested_xref: "%1, %2"
50
51
  list_nested_xref: "%1 %2"
51
- ordinal_keys: [gender,number]
52
+ ordinal_keys: [gender,number,case]
52
53
  SpelloutRules:
53
- m.sg: spellout-ordinal-masculine
54
- f.sg: spellout-ordinal-feminine
55
- n.sg: spellout-ordinal-neuter
56
- m.pl: spellout-ordinal-plural
57
- f.pl: spellout-ordinal-plural
58
- n.pl: spellout-ordinal-plural
54
+ m.sg.nom: spellout-ordinal-masculine
55
+ m.sg.gen: spellout-ordinal-masculine-genitive
56
+ m.sg.dat: spellout-ordinal-masculine-dative
57
+ m.sg.acc: spellout-ordinal-masculine-accusative
58
+ m.sg.loc: spellout-ordinal-masculine-locative
59
+ m.sg.ins: spellout-ordinal-masculine-ablative
60
+ f.sg.nom: spellout-ordinal-feminine
61
+ f.sg.gen: spellout-ordinal-feminine-genitive
62
+ f.sg.dat: spellout-ordinal-feminine-dative
63
+ f.sg.acc: spellout-ordinal-feminine-accusative
64
+ f.sg.loc: spellout-ordinal-feminine-locative
65
+ f.sg.ins: spellout-ordinal-feminine-ablative
66
+ n.sg.nom: spellout-ordinal-neuter
67
+ n.sg.gen: spellout-ordinal-neuter-genitive
68
+ n.sg.dat: spellout-ordinal-neuter-dative
69
+ n.sg.acc: spellout-ordinal-neuter-accusative
70
+ n.sg.loc: spellout-ordinal-neuter-locative
71
+ n.sg.ins: spellout-ordinal-neuter-ablative
72
+ m.pl.nom: spellout-ordinal-plural
73
+ m.pl.gen: spellout-ordinal-plural-genitive
74
+ m.pl.dat: spellout-ordinal-plural-dative
75
+ m.pl.acc: spellout-ordinal-plural-accusative
76
+ m.pl.loc: spellout-ordinal-plural-locative
77
+ m.pl.ins: spellout-ordinal-plural-ablative
78
+ f.pl.nom: spellout-ordinal-plural
79
+ f.pl.gen: spellout-ordinal-plural-genitive
80
+ f.pl.dat: spellout-ordinal-plural-dative
81
+ f.pl.acc: spellout-ordinal-plural-accusative
82
+ f.pl.loc: spellout-ordinal-plural-locative
83
+ f.pl.ins: spellout-ordinal-plural-ablative
84
+ n.pl.nom: spellout-ordinal-plural
85
+ n.pl.gen: spellout-ordinal-plural-genitive
86
+ n.pl.dat: spellout-ordinal-plural-dative
87
+ n.pl.acc: spellout-ordinal-plural-accusative
88
+ n.pl.loc: spellout-ordinal-plural-locative
89
+ n.pl.ins: spellout-ordinal-plural-ablative
90
+ OrdinalRules:
91
+ m.sg.nom: digits-ordinal-masculine
92
+ m.sg.gen: digits-ordinal-masculine-genitive
93
+ m.sg.dat: digits-ordinal-masculine-dative
94
+ m.sg.acc: digits-ordinal-masculine-accusative
95
+ m.sg.loc: digits-ordinal-masculine-locative
96
+ m.sg.ins: digits-ordinal-masculine-ablative
97
+ f.sg.nom: digits-ordinal-feminine
98
+ f.sg.gen: digits-ordinal-feminine-genitive
99
+ f.sg.dat: digits-ordinal-feminine-dative
100
+ f.sg.acc: digits-ordinal-feminine-accusative
101
+ f.sg.loc: digits-ordinal-feminine-locative
102
+ f.sg.ins: digits-ordinal-feminine-ablative
103
+ n.sg.nom: digits-ordinal-neuter
104
+ n.sg.gen: digits-ordinal-neuter-genitive
105
+ n.sg.dat: digits-ordinal-neuter-dative
106
+ n.sg.acc: digits-ordinal-neuter-accusative
107
+ n.sg.loc: digits-ordinal-neuter-locative
108
+ n.sg.ins: digits-ordinal-neuter-ablative
109
+ m.pl.nom: digits-ordinal-plural
110
+ m.pl.gen: digits-ordinal-plural-genitive
111
+ m.pl.dat: digits-ordinal-plural-dative
112
+ m.pl.acc: digits-ordinal-plural-accusative
113
+ m.pl.loc: digits-ordinal-plural-locative
114
+ m.pl.ins: digits-ordinal-plural-ablative
115
+ f.pl.nom: digits-ordinal-plural
116
+ f.pl.gen: digits-ordinal-plural-genitive
117
+ f.pl.dat: digits-ordinal-plural-dative
118
+ f.pl.acc: digits-ordinal-plural-accusative
119
+ f.pl.loc: digits-ordinal-plural-locative
120
+ f.pl.ins: digits-ordinal-plural-ablative
121
+ n.pl.nom: digits-ordinal-plural
122
+ n.pl.gen: digits-ordinal-plural-genitive
123
+ n.pl.dat: digits-ordinal-plural-dative
124
+ n.pl.acc: digits-ordinal-plural-accusative
125
+ n.pl.loc: digits-ordinal-plural-locative
126
+ n.pl.ins: digits-ordinal-plural-ablative
59
127
  note: ПРИМЕЧАНИЕ
60
128
  note_xref: Примечание
61
129
  termnote: Примечание % к определению
@@ -85,7 +153,7 @@ deprecated: НЕ РЕКОМЕНДУЕТСЯ
85
153
  source: ИСТОЧНИК
86
154
  and: и
87
155
  all_parts: Все части
88
- edition_ordinal: "%Spellout издание"
156
+ edition_ordinal: "{{ var1 | ordinal_word: 'edition', '' }} издание"
89
157
  edition: издание
90
158
  version: версия
91
159
  toc_figures: Таблица фигур
@@ -206,4 +274,5 @@ inflection:
206
274
  sg: Стр.
207
275
  pl: Стр.
208
276
  издание:
209
- gender: n
277
+ grammar:
278
+ gender: n
@@ -33,6 +33,7 @@ external_terms_boilerplate: |
33
33
  <p>% 界定的术语和定义适用于本文件。</p>
34
34
  internal_external_terms_boilerplate: |
35
35
  <p>% 界定的以及下列术语和定义适用于本文件。</p>
36
+ no_information_available: "[无资料]"
36
37
  term_defined_in: "(%)"
37
38
  binary_and: "%1和%2"
38
39
  multiple_and: "%1、和%2"
@@ -46,6 +47,7 @@ nested_xref: "%1, %2"
46
47
  list_nested_xref: "%1 %2"
47
48
  ordinal_keys: []
48
49
  SpelloutRules: spellout-ordinal
50
+ OrdinalRules: digits-ordinal
49
51
  note: 注
50
52
  note_xref: 注
51
53
  termnote: 注%
@@ -75,7 +77,7 @@ deprecated: 被取代
75
77
  source: 定义
76
78
  and: 和
77
79
  all_parts: 所有部分
78
- edition_ordinal: "第%Spellout版"
80
+ edition_ordinal: "第{{ var1 | ordinal_word: '', '' }}版"
79
81
  edition: 版
80
82
  version: 版本
81
83
  toc_figures: 数字列表
data/lib/isodoc.rb CHANGED
@@ -10,7 +10,6 @@ require "html2doc"
10
10
  require "liquid"
11
11
  require "htmlentities"
12
12
  require "relaton-render"
13
- require "vectory"
14
13
 
15
14
  require "isodoc/common"
16
15
  require "isodoc/convert"
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.8.0
4
+ version: 2.8.2
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-01-09 00:00:00.000000000 Z
11
+ date: 2024-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: html2doc
@@ -16,42 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.7.1
19
+ version: 1.8.1
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: 1.7.1
27
- - !ruby/object:Gem::Dependency
28
- name: htmlentities
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: 4.3.4
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: 4.3.4
41
- - !ruby/object:Gem::Dependency
42
- name: liquid
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '5'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '5'
26
+ version: 1.8.1
55
27
  - !ruby/object:Gem::Dependency
56
28
  name: mn2pdf
57
29
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +58,14 @@ dependencies:
86
58
  requirements:
87
59
  - - "~>"
88
60
  - !ruby/object:Gem::Version
89
- version: 0.6.0
61
+ version: 0.7.0
90
62
  type: :runtime
91
63
  prerelease: false
92
64
  version_requirements: !ruby/object:Gem::Requirement
93
65
  requirements:
94
66
  - - "~>"
95
67
  - !ruby/object:Gem::Version
96
- version: 0.6.0
68
+ version: 0.7.0
97
69
  - !ruby/object:Gem::Dependency
98
70
  name: roman-numerals
99
71
  requirement: !ruby/object:Gem::Requirement
@@ -164,20 +136,6 @@ dependencies:
164
136
  - - ">="
165
137
  - !ruby/object:Gem::Version
166
138
  version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: vectory
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - "~>"
172
- - !ruby/object:Gem::Version
173
- version: '0.6'
174
- type: :runtime
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - "~>"
179
- - !ruby/object:Gem::Version
180
- version: '0.6'
181
139
  - !ruby/object:Gem::Dependency
182
140
  name: debug
183
141
  requirement: !ruby/object:Gem::Requirement