diff options
author | Karl Berry <karl@freefriends.org> | 2015-04-13 13:48:08 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-04-13 13:48:08 +0000 |
commit | 013bf3bc293cf08e4b4167cb42180bc355f399c0 (patch) | |
tree | 5235dfbae8830590c7fc6a0c70ecd3c84d22c677 /Master/texmf-dist/source/latex/base/ltfinal.dtx | |
parent | bacfc70aefdbc2ec3496c976ad12fe9ef26604e1 (diff) |
latex2e 2015/01/01
git-svn-id: svn://tug.org/texlive/trunk@36834 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.dtx | 144 |
1 files changed, 138 insertions, 6 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltfinal.dtx b/Master/texmf-dist/source/latex/base/ltfinal.dtx index 614f4cb73cf..72b09cc8567 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-2014 +% Copyright 1993-2015 % The LaTeX3 Project and any individual authors listed elsewhere % in this file. % @@ -33,7 +33,7 @@ %<*driver> % \fi \ProvidesFile{ltfinal.dtx} - [2014/09/29 v1.1e LaTeX Kernel (Final Settings)] + [2015/03/26 v2.0e LaTeX Kernel (Final Settings)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltfinal.dtx} @@ -48,13 +48,14 @@ Chris Rowley\and Rainer Sch\"opf} \begin{document} -\maketitle + \MaintainedByLaTeXTeam{latex} + \maketitle \DocInput{ltfinal.dtx} \end{document} %</driver> % \fi % -% \CheckSum{472} +% \CheckSum{558} % % \section{Final settings} % This section contains the final settings for \LaTeX. It initialises @@ -109,6 +110,75 @@ % \end{macro} % \end{macro} % \end{macro} +% +% +%\begin{macro}{\newmarks} +% \changes{v2.0a}{2014/12/30}{macro added} +% \changes{v2.0b}{2015/01/23}{use reserved count 256} +% Allocate extended marks types if etex is active. +% Placed here at the end of the format +% to increase compatibility with count allocations +% in earlier releases. +% \begin{macrocode} +%</2ekernel> +%<*2ekernel|latexrelease> +%<latexrelease>\IncludeInRelease{2015/01/01}% +%<latexrelease> {\newmarks}{Extended Allocation}% +% \end{macrocode} +% +% \begin{macrocode} +\ifx\marks\@undefined\else +\def\newmarks{% + \e@alloc\marks \e@alloc@chardef{\count256}\e@alloc@top\e@alloc@top} +\fi +% \end{macrocode} +% +% \begin{macrocode} +%</2ekernel|latexrelease> +%<latexrelease>\EndIncludeInRelease +%<latexrelease>\IncludeInRelease{0000/00/00}% +%<latexrelease> {\newmarks}{Extended Allocation}% +%<latexrelease>\let\newmarks\@undefined +%<latexrelease>\EndIncludeInRelease +%<*2ekernel> +% \end{macrocode} +% \end{macro} +% +%\begin{macro}{\newXeTeXintercharclass} +% \changes{v2.0a}{2014/12/30}{macro added} +% \changes{v2.0b}{2015/01/23}{use reserved count 257} +% Allocate |\XeTeXintercharclass| types if xetex is active. +% previously defined in |xetex.ini|. +% +% \begin{macrocode} +%</2ekernel> +%<*2ekernel|latexrelease> +%<latexrelease>\IncludeInRelease{2015/01/01}% +%<latexrelease> {\newXeTeXintercharclass}{Extended Allocation}% +% \end{macrocode} +% +% Classes allocatedfrom 4 (1,2 and 3 are used by CJK), up to 254. +% \begin{macrocode} +\ifx\XeTeXcharclass\@undefined +\else +\count257=\thr@@ +\def\newXeTeXintercharclass{% + \e@alloc\XeTeXcharclass\chardef{\count257}\@cclv\@cclv} +\fi +% \end{macrocode} +% +% \begin{macrocode} +%</2ekernel|latexrelease> +%<latexrelease>\EndIncludeInRelease +%<latexrelease>\IncludeInRelease{0000/00/00}% +%<latexrelease> {\newXeTeXintercharclass}{Extended Allocation}% +%<latexrelease>\let\xe@alloc@intercharclass\@undefined +%<latexrelease>\EndIncludeInRelease +%<*2ekernel> +% \end{macrocode} +% \end{macro} +% +% % The default values of the picture and |\fbox| parameters: % \begin{macrocode} \unitlength = 1pt @@ -140,7 +210,44 @@ % \end{macrocode} % % \subsection{Lccodes for hyphenation} -% +% +% \changes{v2.0a}{2015/01/03}{Unicode data loading added} +% \changes{v2.0c}{2015/01/24}{Skip T1-code entirely with Unicode engines} +% \changes{v2.0d}{2015/03/26}{Use renamed +% \texttt{unicode-letters.def}} +% For $7$- and $8$-bit engines the assumption of T1 encodings is the +% basis for the hyphenation patterns. That's not the case for the Unicode +% engines, where the assumption is engine-native working. The file +% |unicode-letters.def| contains data extracted from the +% master Unicode Consortium +% information covering not only |\lccode| but also other related data. The +% |\lccode| part of that at least needs to be loaded before hyphenation is +% tackled: Xe\TeX{} follows the standard \TeX{} route of building patterns +% into the format. Lua\TeX{} doesn't require this data be loaded \emph{here} +% but it does need to be loaded somewhere. Rather than test for the Unicode +% engines by name, the approach here is to look for the extended math mode +% handling both provide: any other engine developed in this area will +% presumably also provide |\Umathcode| (older Xe\TeX{} versions use +% |\XeTeXmathcode| so that is covered too). +% \begin{macrocode} +\ifnum 0% + \ifx\Umathcode\@undefined\else 1\fi + \ifx\XeTeXmathcode\@undefined\else 1\fi + >\z@ + \message{ Unicode character data,} + \input{unicode-letters.def} +% \end{macrocode} +% \changes{v2.0d}{2015/02/03}{Set \cs{lccode} for \texttt{-} with Unicode +% engines} +% There is one over-ride that makes sense here (see below for the same for +% $8$-bit engines): setting the lccode for |-| to itself. +% \begin{macrocode} + \lccode`\- =`\- % default hyphen char +% \end{macrocode} +% The alternative is that a ``traditional'' engine is in use. +% \begin{macrocode} +\else +% \end{macrocode} % \changes{v1.1b}{1998/05/20}{Set up lccodes before loading % hyphenation files: pr/2639} % We set things up so that hyphenation files can assume that the @@ -226,6 +333,21 @@ \lccode 23 =23 % textcompwordmark in T1 % \end{macrocode} % +% End of the conditional to select either Unicode or T1 encoding defaults. +% \begin{macrocode} +\fi +% \end{macrocode} +% +% This is as good a place as any to active a few Xe\TeX{}-specific +% settings +% \begin{macrocode} +\ifx\XeTeXuseglyphmetrics\@undefined +\else + \XeTeXuseglyphmetrics=1 % + \XeTeXdashbreakstate=1 % +\fi +% \end{macrocode} +% % \subsection{Hyphenation} % % \changes{v0.1a}{1994/03/07}{move code here from lhyphen.dtx} @@ -372,7 +494,16 @@ % this for non-ASCII characters. % \changes{v1.0n}{1994/06/09}{For \TeX2, do not set codes for higher % half of character table.} -% \begin{macrocode} +% \changes{v2.0a}{2015/01/03}{Skip resetting codes with Unicode engines} +% For the Unicode engines (Xe\TeX{} and Lua\TeX{}) there is no need to +% do any of this: they use hyphenation data which does not alter any +% of the set up and so this entire block is skipped. +% \begin{macrocode} +\ifnum 0% + \ifx\Umathcode\@undefined\else 1\fi + \ifx\XeTeXmathcode\@undefined\else 1\fi + >\z@ +\else \def\reserved@c#1{% \count@=#1\advance\count@ by -"20 \uccode#1=\count@ @@ -419,6 +550,7 @@ % {Added extra \cs{lcode}, hoping it does no harm in T1 (pr/1969)} % \begin{macrocode} \lccode`\^^[=`\^^[ % oe in OT1 +\fi % End of reset block for 8-bit engines % \end{macrocode} % % \begin{macro}{\MakeUppercase} |