diff options
author | Karl Berry <karl@freefriends.org> | 2021-03-21 22:18:35 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-03-21 22:18:35 +0000 |
commit | 0ed350c60624a3a8d3de8982910e34f8b306b6d2 (patch) | |
tree | 58ff50b634e1f80f22619664753141eb76a65805 /Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb | |
parent | 0f67bb16431a1ef46f820429fa885994b04cabc1 (diff) |
hyph-utf main (21mar21)
git-svn-id: svn://tug.org/texlive/trunk@58609 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb')
-rw-r--r-- | Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb b/Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb index 3b966d45a40..d270767c1b8 100644 --- a/Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb +++ b/Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb @@ -1,18 +1,22 @@ # encoding: UTF-8 -require 'scanf' -require 'byebug' - module TeX module Hyphen class Converter + def self.scan_line(line) + m = line.match /^(0x\h{2})\tU\+(\h{4})(?:\t(1?)(?:\t(\w+)))?$/ + return nil unless m + + return m[1].to_i(16), m[2].to_i(16).chr(Encoding::UTF_8), m[3].to_i, m[4] + end + def read(conversion) @mapping = { } File.read(conversion).each_line do |line| next if line =~ /^#/ - eightbit, usv = line.scanf "0x%02X\tU+%04X" - @mapping[eightbit] = usv.chr(Encoding::UTF_8) + eightbit, usv = Converter.scan_line line + @mapping[eightbit] = usv.chr end end @@ -28,7 +32,6 @@ module TeX if doconvert puts (line.strip.each_byte.map do |byte| - byebug unless @mapping[byte] @mapping[byte] end || '').join end |