diff options
Diffstat (limited to 'Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua')
-rw-r--r-- | Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua b/Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua index f93e776717f..fb921a631a3 100644 --- a/Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua +++ b/Master/texmf-dist/scripts/make4ht/filters/make4ht-entities-to-unicode.lua @@ -1,13 +1,15 @@ -- convert Unicode characters encoded as XML entities back to Unicode --- list of disabled characters -local disabled = { ["&"] = "&", ["<"] = "<", [">"] = ">" } local utfchar = unicode.utf8.char +-- list of disabled characters +local disabled = { ["&"] = "&", ["<"] = "<", [">"] = ">"} return function(content) - return content:gsub("%&%#x([A-Fa-f0-9]+);", function(entity) + local content = content:gsub("%&%#x([A-Fa-f0-9]+);", function(entity) -- convert hexadecimal entity to Unicode local newchar = utfchar(tonumber(entity, 16)) -- we don't want to break XML validity with forbidden characters return disabled[newchar] or newchar end) + -- the non-breaking space character cause issues in the ODT opening + return content:gsub(string.char(160), " ") end |