From 0ed350c60624a3a8d3de8982910e34f8b306b6d2 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 21 Mar 2021 22:18:35 +0000 Subject: hyph-utf main (21mar21) git-svn-id: svn://tug.org/texlive/trunk@58609 c570f23f-e606-0410-a88d-b1316a301751 --- .../source/generic/hyph-utf8/lib/tex/hyphen/converter.rb | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'Master/texmf-dist/source/generic/hyph-utf8/lib/tex/hyphen/converter.rb') 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 -- cgit v1.2.3