Skip to content

Commit 82cda70

Browse files
committed
refactor i18n yaml to prevent overwriting parent non-English YAML with local English file: metanorma/isodoc#549
1 parent 1c0d92e commit 82cda70

File tree

3 files changed

+22
-11
lines changed

3 files changed

+22
-11
lines changed

Gemfile.devel

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
gem "isodoc", git: "https://github.com/metanorma/isodoc", branch: "fix/i18n-yaml-inheritance"
2+
gem "metanorma-iso", git: "https://github.com/metanorma/metanorma-iso", branch: "fix/i18n-yaml-inheritance"

lib/isodoc/iec/i18n.rb

+7-11
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,15 @@
11
module IsoDoc
22
module Iec
33
class I18n < IsoDoc::Iso::I18n
4+
def load_file(fname)
5+
f = File.join(File.dirname(__FILE__), fname)
6+
File.exist?(f) ? YAML.load_file(f) : {}
7+
end
8+
49
def load_yaml1(lang, script)
5-
y = if lang == "en"
6-
YAML.load_file(File.join(File.dirname(__FILE__), "i18n-en.yaml"))
7-
elsif lang == "fr"
8-
YAML.load_file(File.join(File.dirname(__FILE__), "i18n-fr.yaml"))
9-
elsif lang == "zh" && script == "Hans"
10-
YAML.load_file(File.join(File.dirname(__FILE__), "i18n-zh-Hans.yaml"))
11-
else
12-
YAML.load_file(File.join(File.dirname(__FILE__), "i18n-en.yaml"))
13-
end
14-
super.deep_merge(y)
10+
y = load_file("i18n-#{yaml_lang(lang, script)}.yaml")
11+
y.empty? ? load_file("i18n-en.yaml").merge(super) : super.deep_merge(y)
1512
end
1613
end
1714
end
1815
end
19-

lib/metanorma/iec/biblio.rng

+13
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,16 @@
374374
<ref name="image"/>
375375
</element>
376376
</define>
377+
<define name="depiction">
378+
<element name="depiction">
379+
<optional>
380+
<attribute name="scope"/>
381+
</optional>
382+
<zeroOrMore>
383+
<ref name="image"/>
384+
</zeroOrMore>
385+
</element>
386+
</define>
377387
<define name="NameWithVariants">
378388
<element name="primary">
379389
<ref name="LocalizedString"/>
@@ -760,6 +770,9 @@
760770
<optional>
761771
<ref name="validity"/>
762772
</optional>
773+
<optional>
774+
<ref name="depiction"/>
775+
</optional>
763776
</define>
764777
<define name="ReducedBibliographicItem">
765778
<optional>

0 commit comments

Comments
 (0)