diff --git a/unicodedomino.sty b/unicodedomino.sty index b69897eacff85c4ecd7e8bea769b685878685cff..f52b6f74a8980d4b9d990575c1c4fc83935a4f60 100644 --- a/unicodedomino.sty +++ b/unicodedomino.sty @@ -54,11 +54,22 @@ \expandafter\UTFviii@hexnumber\expandafter{#1}% }% +% same for bytes +\def\unicodedomino@bytehex#1{% + \expandafter\UTFviii@hexdigit\expandafter{\the\numexpr(#1-8)/16\relax}% + \UTFviii@hexdigit{\numexpr#1\ifnum#1>0-((#1-8)/16)*16\fi\relax}% +}% + % override to beautify the output, not strictly necessary but requested \gdef\UTFviii@splitcsname#1:#2\relax{% #2 (\expandafter\unicodedomino@codepoint\expandafter{% \the\numexpr\decode@UTFviii#2\relax})% }% +\def\UTFviii@invalid@err#1{% + \PackageError{inputenc}{% + Invalid UTF-8 byte 0x\unicodedomino@bytehex{\number`#1}% + }\UTFviii@invalid@help% +}% % for invalid encoding output \gdef\unicodedomino@splith@x#1#2\relax{%