Module: LaTeX::Decode::Base

Defined in:
lib/latex/decode/base.rb

Class Method Summary collapse

Class Method Details

.normalize(string) ⇒ Object



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/latex/decode/base.rb', line 41

def normalize (string)
  string.gsub!(/\\(?:i|j)\b/) { |m| m == '\\i' ? 'ı' : 'ȷ' }

				# \foo\ bar -> \foo{} bar
  string.gsub!(/(\\[a-zA-Z]+)\\(\s+)/, '\1{}\2')

				# Aaaa\o, -> Aaaa\o{},
  string.gsub!(/([^{]\\\w)([;,.:%])/, '\1{}\2')

				# \c cb -> \c{cb}
				string.gsub!(/(\\[^\sij])\s+([[:alpha:]]+)\b/i, '\1{\2}')

				# \c {cb} -> \c{cb}
				string.gsub!(/(\\[^\sij])\s+(\{[^\}]*\})/i, '\1\2')
				
  string
end

.strip_braces(string) ⇒ Object



59
60
61
62
63
# File 'lib/latex/decode/base.rb', line 59

def strip_braces (string)
  string.gsub!(/(^|[^\\])([\{\}]+)/, '\1')
  string.gsub!(/\\(\{|\})/, '\1')
  string
end