Sha256: 01f00dd0ab1eb4d4128fe7af6b1a2f2c9f6ae4211af2414b74e165030ad56854

Contents?: true

Size: 828 Bytes

Versions: 11

Compression:

Stored size: 828 Bytes

Contents

require "yaml"
require "isodoc-i18n"

module IsoDoc
  class RelatonRenderI18n < I18n
    def load_yaml1(lang, script)
      case lang
      when "en", "fr", "ru", "de", "es", "ar"
        load_yaml2(lang)
      when "zh"
        case script
        when "Hans", "Hant" then load_yaml2("zh-#{script}")
        else load_yaml2("zh-Hans")
        end
      else load_yaml2("en")
      end
    end

    def load_yaml2(str)
      YAML.load_file(File.join(File.dirname(__FILE__),
                               "../isodoc-yaml/i18n-#{str}.yaml"))
    end

    # force bidi for all i18n strings in Arabic,
    # because of the potential for script mixing
    def cleanup_entities(hash, is_xml: true)
      ret = super
      if @lang == "ar" && /%/.match?(ret)
        ret = "&#x61c;#{ret}&#x61c;"
      end
      ret
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
relaton-render-0.5.14 lib/isodoc/i18n.rb
relaton-render-0.5.13 lib/isodoc/i18n.rb
relaton-render-0.5.12 lib/isodoc/i18n.rb
relaton-render-0.5.11 lib/isodoc/i18n.rb
relaton-render-0.5.10 lib/isodoc/i18n.rb
relaton-render-0.5.9 lib/isodoc/i18n.rb
relaton-render-0.5.8 lib/isodoc/i18n.rb
relaton-render-0.5.7 lib/isodoc/i18n.rb
relaton-render-0.5.6 lib/isodoc/i18n.rb
relaton-render-0.5.5 lib/isodoc/i18n.rb
relaton-render-0.5.4 lib/isodoc/i18n.rb