From 70aaae3b3c98fb6357c846ad54ce2367e9682f50 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Fri, 4 Oct 2019 20:57:14 +0000
Subject: latex2e (4oct19)

git-svn-id: svn://tug.org/texlive/trunk@52286 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/base/utf8-2018.def | 321 +++++++++++++++++++++++++
 1 file changed, 321 insertions(+)
 create mode 100644 Master/texmf-dist/tex/latex/base/utf8-2018.def

(limited to 'Master/texmf-dist/tex/latex/base/utf8-2018.def')

diff --git a/Master/texmf-dist/tex/latex/base/utf8-2018.def b/Master/texmf-dist/tex/latex/base/utf8-2018.def
new file mode 100644
index 00000000000..576ad88d444
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/base/utf8-2018.def
@@ -0,0 +1,321 @@
+%%
+%% This is file `utf8-2018.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% utf8ienc.dtx  (with options: `utf8-2018')
+%% 
+%% This is a generated file.
+%% 
+%% The source is maintained by the LaTeX Project team and bug
+%% reports for it can be opened at https://latex-project.org/bugs.html
+%% (but please observe conditions on bug reports sent to that address!)
+%% 
+%% 
+%% Copyright (C) 1993-2019
+%% The LaTeX3 Project and any individual authors listed elsewhere
+%% in this file.
+%% 
+%% This file was generated from file(s) of the LaTeX base system.
+%% --------------------------------------------------------------
+%% 
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%    https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008 or later.
+%% 
+%% This file has the LPPL maintenance status "maintained".
+%% 
+%% This file may only be distributed together with a copy of the LaTeX
+%% base system. You may however distribute the LaTeX base system without
+%% such generated files.
+%% 
+%% The list of all files belonging to the LaTeX base distribution is
+%% given in the file `manifest.txt'. See also `legal.txt' for additional
+%% information.
+%% 
+%% The list of derived (unpacked) files belonging to the distribution
+%% and covered by LPPL is defined by the unpacking scripts (with
+%% extension .ins) which are part of the distribution.
+\ProvidesFile{utf8.def}
+   [2018/10/05 v1.2f UTF-8 support for inputenc]
+\makeatletter
+\catcode`\ \saved@space@catcode
+\long\def\UTFviii@two@octets#1#2{\expandafter
+    \UTFviii@defined\csname u8:#1\string#2\endcsname}
+\long\def\UTFviii@three@octets#1#2#3{\expandafter
+    \UTFviii@defined\csname u8:#1\string#2\string#3\endcsname}
+\long\def\UTFviii@four@octets#1#2#3#4{\expandafter
+    \UTFviii@defined\csname u8:#1\string#2\string#3\string#4\endcsname}
+\def\UTFviii@defined#1{%
+  \ifx#1\relax
+     \if\relax\expandafter\UTFviii@checkseq\string#1\relax\relax
+      \UTFviii@undefined@err{#1}%
+     \else
+      \PackageError{inputenc}{Invalid UTF-8 byte sequence}%
+                             \UTFviii@invalid@help
+     \fi
+  \else\expandafter
+    #1%
+  \fi
+}
+\def\UTFviii@invalid@err#1{%
+ \PackageError{inputenc}{Invalid UTF-8 byte "\UTFviii@hexnumber{`#1}}%
+                        \UTFviii@invalid@help}
+\def\UTFviii@invalid@help{%
+   The document does not appear to be in UTF-8 encoding.\MessageBreak
+   Try adding \noexpand\UseRawInputEncoding as the first line of the file\MessageBreak
+   or specify an encoding such as \noexpand\usepackage[latin1]{inputenc}\MessageBreak
+   in the document preamble.\MessageBreak
+   Alternatively, save the file in UTF-8 using your editor or another tool}
+\def\UTFviii@undefined@err#1{%
+  \PackageError{inputenc}{Unicode character \expandafter
+                          \UTFviii@splitcsname\string#1\relax
+                          \MessageBreak
+                          not set up for use with LaTeX}%
+                         {You may provide a definition with\MessageBreak
+                          \noexpand\DeclareUnicodeCharacter}%
+   }
+\def\UTFviii@checkseq#1:#2#3{%
+ \ifnum`#2<"80 %
+   \ifx\relax#3\else1\fi
+ \else
+   \ifnum`#2<"C0 %
+     1 %
+   \else
+     \expandafter\expandafter\expandafter\UTFviii@check@continue
+     \expandafter\expandafter\expandafter#3%
+   \fi
+  \fi}
+\def\UTFviii@check@continue#1{%
+  \ifx\relax#1%
+  \else
+  \ifnum`#1<"80 1\else\ifnum`#1>"BF 1\fi\fi
+  \expandafter\UTFviii@check@continue
+  \fi
+}
+\begingroup
+\catcode`\~13
+\catcode`\"12
+\def\UTFviii@loop{%
+  \uccode`\~\count@
+  \uppercase\expandafter{\UTFviii@tmp}%
+  \advance\count@\@ne
+  \ifnum\count@<\@tempcnta
+  \expandafter\UTFviii@loop
+  \fi}
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@undefined@err{:\string~}}}
+    \count@"1
+    \@tempcnta9
+\UTFviii@loop
+    \count@11
+    \@tempcnta12
+\UTFviii@loop
+    \count@14
+    \@tempcnta32
+\UTFviii@loop
+    \count@"80
+    \@tempcnta"C2
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@invalid@err\string~}}
+\UTFviii@loop
+    \count@"C2
+    \@tempcnta"E0
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@two@octets\string~}}
+\UTFviii@loop
+    \count@"E0
+    \@tempcnta"F0
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@three@octets\string~}}
+\UTFviii@loop
+    \count@"F0
+    \@tempcnta"F5
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@four@octets\string~}}
+\UTFviii@loop
+    \count@"F5
+    \@tempcnta"100
+    \def\UTFviii@tmp{\xdef~{\noexpand\UTFviii@invalid@err\string~}}
+\UTFviii@loop
+\endgroup
+\@inpenc@test
+\ifx\@begindocumenthook\@undefined
+  \makeatother
+  \endinput \fi
+\begingroup
+\catcode`\"=12
+\catcode`\<=12
+\catcode`\.=12
+\catcode`\,=12
+\catcode`\;=12
+\catcode`\!=12
+\catcode`\~=13
+\gdef\DeclareUnicodeCharacter#1#2{%
+  \count@"#1\relax
+  \wlog{ \space\space defining Unicode char U+#1 (decimal \the\count@)}%
+  \begingroup
+    \parse@XML@charref
+    \def\UTFviii@two@octets##1##2{\csname u8:##1\string##2\endcsname}%
+    \def\UTFviii@three@octets##1##2##3{\csname u8:##1%
+                                     \string##2\string##3\endcsname}%
+    \def\UTFviii@four@octets##1##2##3##4{\csname u8:##1%
+                           \string##2\string##3\string##4\endcsname}%
+    \expandafter\expandafter\expandafter
+    \expandafter\expandafter\expandafter
+    \expandafter
+     \gdef\UTFviii@tmp{\IeC{#2}}%
+   \endgroup
+}
+\gdef\parse@XML@charref{%
+  \ifnum\count@<"A0\relax
+    \ifnum\catcode\count@=13
+      \uccode`\~=\count@\uppercase{\def\UTFviii@tmp{\@empty\@empty~}}%
+    \else
+      \PackageError{inputenc}%
+                   {Cannot define non-active Unicode char value < 00A0}%
+                   \@eha
+      \def\UTFviii@tmp{\UTFviii@tmp}%
+    \fi
+  \else\ifnum\count@<"800\relax
+     \parse@UTFviii@a,%
+     \parse@UTFviii@b C\UTFviii@two@octets.,%
+  \else\ifnum\count@<"10000\relax
+     \parse@UTFviii@a;%
+     \parse@UTFviii@a,%
+     \parse@UTFviii@b E\UTFviii@three@octets.{,;}%
+   \else
+     \ifnum\count@>"10FFFF\relax
+           \PackageError{inputenc}%
+                {\UTFviii@hexnumber\count@\space too large for Unicode}%
+                {Values between 0 and 10FFFF are permitted}%
+      \fi
+     \parse@UTFviii@a;%
+     \parse@UTFviii@a,%
+     \parse@UTFviii@a!%
+     \parse@UTFviii@b F\UTFviii@four@octets.{!,;}%
+    \fi
+    \fi
+  \fi
+}
+\gdef\parse@UTFviii@a#1{%
+     \@tempcnta\count@
+     \divide\count@ 64
+     \@tempcntb\count@
+     \multiply\count@ 64
+     \advance\@tempcnta-\count@
+     \advance\@tempcnta 128
+     \uccode`#1\@tempcnta
+     \count@\@tempcntb}
+\gdef\parse@UTFviii@b#1#2#3#4{%
+     \advance\count@ "#10\relax
+     \uccode`#3\count@
+     \uppercase{\gdef\UTFviii@tmp{#2#3#4}}}
+\ifx\numexpr\@undefined
+\gdef\decode@UTFviii#1{0}
+\else
+\gdef\decode@UTFviii#1\relax{%
+  \expandafter\UTFviii@cleanup
+    \the\numexpr\dec@de@UTFviii#1\relax)))))\@empty}
+\gdef\UTFviii@cleanup#1)#2\@empty{#1}
+\gdef\dec@de@UTFviii#1{%
+\ifx\relax#1%
+\else
+  \ifnum`#1>"EF
+    ((((`#1-"F0)%
+  \else
+    \ifnum`#1>"DF
+      (((`#1-"E0)%
+    \else
+      \ifnum`#1>"BF
+        ((`#1-"C0)%
+      \else
+        \ifnum`#1>"7F
+        )*64+(`#1-"80)%
+        \else
+        +`#1 %
+        \fi
+      \fi
+    \fi
+  \fi
+  \expandafter\dec@de@UTFviii
+\fi}
+\fi
+\ifx\numexpr\@undefined
+\global\let\UTFviii@hexnumber\@firstofone
+\global\UTFviii@hexdigit\hexnumber@
+\else
+\gdef\UTFviii@hexnumber#1{%
+\ifnum#1>15 %
+\expandafter\UTFviii@hexnumber\expandafter{\the\numexpr(#1-8)/16\relax}%
+\fi
+\UTFviii@hexdigit{\numexpr#1\ifnum#1>0-((#1-8)/16)*16\fi\relax}%
+}
+\gdef\UTFviii@hexdigit#1{\ifcase\numexpr#1\relax
+  0\or1\or2\or3\or4\or5\or6\or7\or8\or9\or
+  A\or B\or C\or D\or E\or F\fi}
+\fi
+\gdef\UTFviii@hexcodepoint#1{U+%
+ \ifnum#1<16 0\fi
+ \ifnum#1<256 0\fi
+ \ifnum#1<4096 0\fi
+ \UTFviii@hexnumber{#1}%
+}%
+\gdef\UTFviii@splitcsname#1:#2\relax{%
+#2 (\expandafter\UTFviii@hexcodepoint\expandafter{%
+                     \the\numexpr\decode@UTFviii#2\relax})%
+}
+\endgroup
+\@onlypreamble\DeclareUnicodeCharacter
+\@onlypreamble\parse@XML@charref
+\@onlypreamble\parse@UTFviii@a
+\@onlypreamble\parse@UTFviii@b
+\begingroup
+  \def\cdp@elt#1#2#3#4{%
+    \wlog{Now handling font encoding #1 ...}%
+    \lowercase{%
+        \InputIfFileExists{#1enc.dfu}}%
+           {\wlog{... processing UTF-8 mapping file for font %
+                     encoding #1}%
+            \catcode`\ 9\relax}%
+          {\wlog{... no UTF-8 mapping file for font encoding #1}}%
+  }
+  \cdp@list
+\endgroup
+\def\DeclareFontEncoding@#1#2#3{%
+  \expandafter
+  \ifx\csname T@#1\endcsname\relax
+    \def\cdp@elt{\noexpand\cdp@elt}%
+    \xdef\cdp@list{\cdp@list\cdp@elt{#1}%
+                    {\default@family}{\default@series}%
+                    {\default@shape}}%
+    \expandafter\let\csname#1-cmd\endcsname\@changed@cmd
+    \begingroup
+      \wlog{Now handling font encoding #1 ...}%
+      \lowercase{%
+        \InputIfFileExists{#1enc.dfu}}%
+           {\wlog{... processing UTF-8 mapping file for font %
+                      encoding #1}}%
+           {\wlog{... no UTF-8 mapping file for font encoding #1}}%
+    \endgroup
+  \else
+     \@font@info{Redeclaring font encoding #1}%
+  \fi
+  \global\@namedef{T@#1}{#2}%
+  \global\@namedef{M@#1}{\default@M#3}%
+  \xdef\LastDeclaredEncoding{#1}%
+  }
+\DeclareUnicodeCharacter{00A9}{\textcopyright}
+\DeclareUnicodeCharacter{00AA}{\textordfeminine}
+\DeclareUnicodeCharacter{00AE}{\textregistered}
+\DeclareUnicodeCharacter{00BA}{\textordmasculine}
+\DeclareUnicodeCharacter{02C6}{\textasciicircum}
+\DeclareUnicodeCharacter{02DC}{\textasciitilde}
+\DeclareUnicodeCharacter{200C}{\textcompwordmark}
+\DeclareUnicodeCharacter{2026}{\textellipsis}
+\DeclareUnicodeCharacter{2122}{\texttrademark}
+\DeclareUnicodeCharacter{2423}{\textvisiblespace}
+\DeclareUnicodeCharacter{FEFF}{\ifhmode\nobreak\fi}
+\endinput
+%%
+%% End of file `utf8-2018.def'.
-- 
cgit v1.2.3

