summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/base/ltfinal.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-10-04 20:57:14 +0000
committerKarl Berry <karl@freefriends.org>2019-10-04 20:57:14 +0000
commit70aaae3b3c98fb6357c846ad54ce2367e9682f50 (patch)
treef0446e015c31510a11ada780ad4978dce03ad104 /Master/texmf-dist/source/latex/base/ltfinal.dtx
parentbe53f9d0af947622afca67b99c89a90d5c08dbd4 (diff)
latex2e (4oct19)
git-svn-id: svn://tug.org/texlive/trunk@52286 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/base/ltfinal.dtx')
-rw-r--r--Master/texmf-dist/source/latex/base/ltfinal.dtx37
1 files changed, 33 insertions, 4 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltfinal.dtx b/Master/texmf-dist/source/latex/base/ltfinal.dtx
index 998710371ac..47641e96010 100644
--- a/Master/texmf-dist/source/latex/base/ltfinal.dtx
+++ b/Master/texmf-dist/source/latex/base/ltfinal.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1993-2018
+% Copyright (C) 1993-2019
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
%
@@ -13,7 +13,7 @@
% 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 2005/12/01 or later.
+% version 2008 or later.
%
% This file has the LPPL maintenance status "maintained".
%
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltfinal.dtx}
- [2018/08/24 v2.1f LaTeX Kernel (Final Settings)]
+ [2019/09/14 v2.1h LaTeX Kernel (Final Settings)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltfinal.dtx}
@@ -664,7 +664,7 @@
% \end{macro}
%
% \changes{v2.1d}{2018/04/08}{Delay full UTF-8 handling to \cs{everyjob}}
-% \changes{v2.18}{2018/05/11}{Make invalit UTF-8 also safe, for legacy filesystem encodings}
+% \changes{v2.18}{2018/05/11}{Make invalid UTF-8 also safe, for legacy filesystem encodings}
% \begin{macrocode}
\edef\inputencodingname{utf8}%
\input{utf8.def}
@@ -709,6 +709,7 @@
\let\UseRawInputEncoding\relax
% \end{macrocode}
%
+% This ends the skipped code in Unicode engines:
% \begin{macrocode}
\fi
%</2ekernel|latexrelease>
@@ -717,6 +718,21 @@
%<latexrelease> {\UTFviii@invalid}{UTF-8 default}%
% \end{macrocode}
%
+% The first block of commands got only introduced in 2019 but we
+% revert all of Unicode support in one go not jump to the
+% intermediate version.
+% \begin{macrocode}
+%<latexrelease> \let\UTFviii@two@octets@combine\@undefined
+%<latexrelease> \let\UTFviii@three@octets@combine\@undefined
+%<latexrelease> \let\UTFviii@four@octets@combine\@undefined
+%<latexrelease> \let\UTFviii@two@octets@string\@undefined
+%<latexrelease> \let\UTFviii@three@octets@string\@undefined
+%<latexrelease> \let\UTFviii@four@octets@string\@undefined
+%<latexrelease> \let\UTFviii@two@octets@noexpand\@undefined
+%<latexrelease> \let\UTFviii@three@octets@noexpand\@undefined
+%<latexrelease> \let\UTFviii@four@octets@noexpand\@undefined
+% \end{macrocode}
+%
% \begin{macrocode}
%<latexrelease>\@tempcnta=0
%<latexrelease>\loop
@@ -912,15 +928,28 @@
\def\i{I}\def\j{J}%
\def\reserved@a##1##2{\let##1##2\reserved@a}%
\expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
+% \end{macrocode}
+% Tell UTF-8 processing to process chars even though we are in an \cs{protected@edef}.
+% \changes{v2.1h}{2019/09/14}{Expand UTF8 chrs when case changing (github/177)}
+% \begin{macrocode}
+ \let\UTF@two@octets@noexpand\@empty
+ \let\UTF@three@octets@noexpand\@empty
+ \let\UTF@four@octets@noexpand\@empty
\protected@edef\reserved@a{\uppercase{#1}}%
\reserved@a
}}
\DeclareRobustCommand{\MakeLowercase}[1]{{%
\def\reserved@a##1##2{\let##2##1\reserved@a}%
\expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
+ \let\UTF@two@octets@noexpand\@empty
+ \let\UTF@three@octets@noexpand\@empty
+ \let\UTF@four@octets@noexpand\@empty
\protected@edef\reserved@a{\lowercase{#1}}%
\reserved@a
}}
+% \end{macrocode}
+%
+% \begin{macrocode}
\def\@uclclist{\oe\OE\o\O\ae\AE
\dh\DH\dj\DJ\l\L\ng\NG\ss\SS\th\TH}
% \end{macrocode}