Module: Metanorma::Plugin::Glossarist::Sanitize

Defined in:
lib/metanorma/plugin/glossarist/sanitize.rb

Constant Summary collapse

REF_REGEX =
/{{(urn:[^,{}]+),([^}]+?)}}(.*)$/m

Class Method Summary collapse

Class Method Details

.references(str) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/metanorma/plugin/glossarist/sanitize.rb', line 9

def self.references(str)
  return str unless str&.match?(REF_REGEX)

  str.gsub(REF_REGEX) do
    m = Regexp.last_match
    urn = Metanorma::Utils.to_ncname(m[1]).gsub(":", "_")
    "{{#{urn},#{m[2]}}}#{m[3]}"
  end
end