diff options
author | Karl Berry <karl@freefriends.org> | 2019-12-06 23:21:03 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-12-06 23:21:03 +0000 |
commit | 56fb16c2752f7dd9e214dbaca2a14458acad4019 (patch) | |
tree | b2ac01cae38e90d39d3e5679b8ba4cefcc6fa77e /Master/texmf-dist/tex/latex/atveryend/atveryend.sty | |
parent | c5c2bd1f0d38f86118286ecc793f880fba69ac63 (diff) |
atveryend split from oberdiek (7dec19)
git-svn-id: svn://tug.org/texlive/trunk@53049 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/atveryend/atveryend.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/atveryend/atveryend.sty | 716 |
1 files changed, 716 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/atveryend/atveryend.sty b/Master/texmf-dist/tex/latex/atveryend/atveryend.sty new file mode 100644 index 00000000000..4bee0887134 --- /dev/null +++ b/Master/texmf-dist/tex/latex/atveryend/atveryend.sty @@ -0,0 +1,716 @@ +%% +%% This is file `atveryend.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% atveryend.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Project: atveryend +%% Version: 2019/12/05 v1.10 +%% +%% Copyright (C) +%% 2009-2011 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work 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. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/atveryend/issues +%% +%% +%% This work consists of the main source file atveryend.dtx +%% and the derived files +%% atveryend.sty, atveryend.pdf, atveryend.ins, atveryend.drv, +%% atveryend-test1.tex. +%% +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode123=1 % { + \catcode125=2 % } + \catcode64=11 % @ + \def\x{\endgroup + \expandafter\edef\csname AtVeryEnd@AtEnd\endcsname{% + \endlinechar=\the\endlinechar\relax + \catcode13=\the\catcode13\relax + \catcode32=\the\catcode32\relax + \catcode35=\the\catcode35\relax + \catcode61=\the\catcode61\relax + \catcode64=\the\catcode64\relax + \catcode123=\the\catcode123\relax + \catcode125=\the\catcode125\relax + }% + }% +\x\catcode61\catcode48\catcode32=10\relax% +\catcode13=5 % ^^M +\endlinechar=13 % +\catcode35=6 % # +\catcode64=11 % @ +\catcode123=1 % { +\catcode125=2 % } +\def\TMP@EnsureCode#1#2{% + \edef\AtVeryEnd@AtEnd{% + \AtVeryEnd@AtEnd + \catcode#1=\the\catcode#1\relax + }% + \catcode#1=#2\relax +} +\TMP@EnsureCode{9}{10}% (tab) +\TMP@EnsureCode{39}{12}% ' +\TMP@EnsureCode{40}{12}% ( +\TMP@EnsureCode{41}{12}% ) +\TMP@EnsureCode{42}{12}% * +\TMP@EnsureCode{45}{12}% - +\TMP@EnsureCode{46}{12}% . +\TMP@EnsureCode{47}{12}% / +\TMP@EnsureCode{62}{12}% > +\TMP@EnsureCode{91}{12}% [ +\TMP@EnsureCode{93}{12}% ] +\TMP@EnsureCode{96}{12}% ` +\edef\AtVeryEnd@AtEnd{\AtVeryEnd@AtEnd\noexpand\endinput} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{atveryend}% + [2019/12/05 v1.10 Hooks at the very end of document (HO)] +\def\AtVeryEnd@ifundefined#1{% + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname #1\endcsname\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi +} +\let\AtVeryEnd@BeforeClearDocumentHook\@empty +\let\AtVeryEnd@AfterLastShipoutHook\@empty +\let\AtVeryEnd@AtVeryEndDocumentHook\@empty +\let\AtVeryEnd@AtEndAfterFileListHook\@empty +\let\AtVeryEnd@AtVeryVeryEndHook\@empty +\newcommand*{\BeforeClearDocument}{% + \g@addto@macro\AtVeryEnd@BeforeClearDocumentHook +} +\newcommand*{\AfterLastShipout}{% + \g@addto@macro\AtVeryEnd@AfterLastShipoutHook +} +\newcommand*{\AtVeryEndDocument}{% + \g@addto@macro\AtVeryEnd@AtVeryEndDocumentHook +} +\newcommand*{\AtEndAfterFileList}{% + \g@addto@macro\AtVeryEnd@AtEndAfterFileListHook +} +\newcommand*{\AtVeryVeryEnd}{% + \g@addto@macro\AtVeryEnd@AtVeryVeryEndHook +} +\newcommand*{\Call@BeforeClearDocument}{% + \let\BeforeClearDocument\@firstofone + \ifx\AtVeryEnd@BeforeClearDocumentHook\@empty + \PackageInfo{atveryend}{Empty hook `BeforeClearDocument'}% + \else + \PackageInfo{atveryend}{Executing hook `BeforeClearDocument'}% + \AtVeryEnd@BeforeClearDocumentHook + \fi + \global\let\AtVeryEnd@BeforeClearDocumentHook\@undefined + \global\let\Call@BeforeClearDocument\relax +} +\newcommand*{\Call@AfterLastShipout}{% + \let\AfterLastShipout\@firstofone + \ifx\AtVeryEnd@AfterLastShipoutHook\@empty + \PackageInfo{atveryend}{Empty hook `AfterLastShipout'}% + \else + \PackageInfo{atveryend}{Executing hook `AfterLastShipout'}% + \AtVeryEnd@AfterLastShipoutHook + \fi + \global\let\AtVeryEnd@AfterLastShipoutHook\@undefined + \global\let\Call@AfterLastShipout\relax +} +\newcommand*{\Call@AtVeryEndDocument}{% + \let\AtVeryEndDocument\@firstofone + \ifx\AtVeryEnd@AtVeryEndDocumentHook\@empty + \PackageInfo{atveryend}{Empty hook `AtVeryEndDocument'}% + \else + \PackageInfo{atveryend}{Executing hook `AtVeryEndDocument'}% + \AtVeryEnd@AtVeryEndDocumentHook + \fi + \global\let\AtVeryEnd@AtVeryEndDocumentHook\@undefined + \global\let\Call@AtVeryEndDocument\relax +} +\newcommand*{\Call@AtEndAfterFileList}{% + \Call@AtVeryEndDocument + \let\AtEndAfterFileList\@firstofone + \ifx\AtVeryEnd@AtEndAfterFileListHook\@empty + \PackageInfo{atveryend}{Empty hook `AtEndAfterFileList'}% + \else + \PackageInfo{atveryend}{Executing hook `AtEndAfterFileList'}% + \AtVeryEnd@AtEndAfterFileListHook + \fi + \global\let\AtVeryEnd@AtEndAfterFileListHook\@undefined + \global\let\Call@AtEndAfterFileList\relax +} +\newcommand*{\Call@AtVeryVeryEnd}{% + \Call@AtEndAfterFileList + \let\AtVeryVeryEnd\@firstofone + \ifx\AtVeryEnd@AtVeryVeryEndHook\@empty + \PackageInfo{atveryend}{Empty hook `AtVeryVeryEnd'}% + \else + \PackageInfo{atveryend}{Executing hook `AtVeryVeryEnd'}% + \AtVeryEnd@AtVeryVeryEndHook + \fi + \global\let\AtVeryEnd@AtVeryVeryEndHook\@undefined + \global\let\Call@AtVeryVeryEnd\relax +} +\def\AtVeryEnd@test@standard{% + \let\AtEndDocument\@firstofone + \@enddocumenthook + \@checkend{document}% + \clearpage + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter + \input\jobname.aux % + \fi + \@dofilelist + \ifdim \font@submax >\fontsubfuzz\relax + \@font@warning{Size substitutions with differences\MessageBreak + up to \font@submax\space have occurred.\@gobbletwo}% + \fi + \@defaultsubs + \@refundefined + \if@filesw + \ifx \@multiplelabels \relax + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. % + Rerun to get cross-references right}% + \fi + \else + \@multiplelabels + \fi + \fi + \endgroup + \deadcycles\z@ + \@@end +} +\def\AtVeryEnd@enddocument@standard{% + \let\AtEndDocument\@firstofone + \@enddocumenthook + \@checkend{document}% + \Call@BeforeClearDocument + \clearpage + \Call@AfterLastShipout + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter + \input\jobname.aux % + \fi + \Call@AtVeryEndDocument + \@dofilelist + \Call@AtEndAfterFileList + \ifdim \font@submax >\fontsubfuzz\relax + \@font@warning{Size substitutions with differences\MessageBreak + up to \font@submax\space have occurred.\@gobbletwo}% + \fi + \@defaultsubs + \@refundefined + \if@filesw + \ifx \@multiplelabels \relax + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. % + Rerun to get cross-references right}% + \fi + \else + \@multiplelabels + \fi + \fi + \endgroup + \deadcycles\z@ + \Call@AtVeryVeryEnd + \@@end +} +\expandafter\def\csname AtVeryEnd@test@standard20110627\endcsname{% + \let\AtEndDocument\@firstofone + \@enddocumenthook + \@checkend{document}% + \clearpage + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter + \@@input\jobname.aux % + \fi + \@dofilelist + \ifdim \font@submax >\fontsubfuzz\relax + \@font@warning{Size substitutions with differences\MessageBreak + up to \font@submax\space have occurred.\@gobbletwo}% + \fi + \@defaultsubs + \@refundefined + \if@filesw + \ifx \@multiplelabels \relax + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. % + Rerun to get cross-references right}% + \fi + \else + \@multiplelabels + \fi + \fi + \endgroup + \deadcycles\z@ + \@@end +} +\expandafter\def\csname AtVeryEnd@enddocument@standard20110627\endcsname{% + \let\AtEndDocument\@firstofone + \@enddocumenthook + \@checkend{document}% + \Call@BeforeClearDocument + \clearpage + \Call@AfterLastShipout + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter + \@@input\jobname.aux % + \fi + \Call@AtVeryEndDocument + \@dofilelist + \Call@AtEndAfterFileList + \ifdim \font@submax >\fontsubfuzz\relax + \@font@warning{Size substitutions with differences\MessageBreak + up to \font@submax\space have occurred.\@gobbletwo}% + \fi + \@defaultsubs + \@refundefined + \if@filesw + \ifx \@multiplelabels \relax + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. % + Rerun to get cross-references right}% + \fi + \else + \@multiplelabels + \fi + \fi + \endgroup + \deadcycles\z@ + \Call@AtVeryVeryEnd + \@@end +} +\expandafter\def\expandafter\AtVeryEnd@test@booklet\expandafter{% + \expandafter\twoupclearpage + \AtVeryEnd@test@standard +} +\expandafter\def\expandafter\AtVeryEnd@enddocument@booklet\expandafter{% + \expandafter\twoclearpage + \AtVeryEnd@enddocument@standard +} +\def\AtVeryEnd@test@dinbrief{% + \@checkend{document} % + \newpage + \begingroup + \if@filesw + \ifnum\c@labelgen>0 % + \immediate\closeout\@mainlbl + \makeatletter + \input \jobname@lbl\relax + \clearpage + \fi + \immediate\closeout\@mainaux + \fi + \endgroup + \deadcycles\z@ + \@@end +} +\def\AtVeryEnd@enddocument@dinbrief{% + \@checkend{document}% + \Call@BeforeClearDocument + \newpage + \Call@AfterLastShipout + \begingroup + \if@filesw + \ifnum\c@labelgen>\z@ + \immediate\closeout\@mainlbl + \makeatletter + \input \jobname@lbl\relax + \clearpage + \fi + \immediate\closeout\@mainaux + \fi + \Call@AtVeryEndDocument + \csname @dofilelist\endcsname + \Call@AtEndAfterFileList + \endgroup + \deadcycles\z@ + \Call@AtVeryVeryEnd + \@@end +} +\def\AtVeryEnd@test@combine{% + \@enddocumenthook + \@checkend{document}% + \clearpage + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \immediate\closeout\@partaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter \input\c@lmainauxfile %% change here + \fi + \c@lenddoca %% a replacement + \@refundefined + \endgroup + \deadcycles\z@ + \@@end +} +\def\AtVeryEnd@enddocument@combine{% + \@enddocumenthook + \@checkend{document}% + \Call@BeforeClearDocument + \clearpage + \Call@AfterLastShipout + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \immediate\closeout\@partaux + \let\@setckpt\@gobbletwo + \let\@newl@bel\@testdef + \@tempswafalse + \makeatletter \input\c@lmainauxfile %% change here + \fi + \Call@AtVeryEndDocument + \c@lenddoca %% a replacement + \@refundefined + \endgroup + \deadcycles\z@ + \Call@AtVeryVeryEnd + \@@end +} +\long\def\AtVeryEnd@test@c@lenddoca{% + \@dofilelist + \ifdim\font@submax>\fontsubfuzz\relax + \@font@warning{% + Size substitutions with differences\MessageBreak + up to \font@submax\space have occured.\@gobbletwo + }% + \fi + \@defaultsubs + \if@filesw + \ifx\@multiplelabels\relax + \if@tempswa + \@latex@warning@no@line{% + Label(s) may have changed. % + Rerun to get cross-references right% + }% + \fi + \else + \@multiplelabels + \fi + \fi +} +\ifx\AtVeryEnd@c@lenddoca\c@lenddoca + \def\c@lenddoca{% + \@dofilelist + \Call@AtEndAfterFileList + \ifdim\font@submax>\fontsubfuzz\relax + \@font@warning{% + Size substitutions with differences\MessageBreak + up to \font@submax\space have occured.\@gobbletwo + }% + \fi + \@defaultsubs + \if@filesw + \ifx\@multiplelabels\relax + \if@tempswa + \@latex@warning@no@line{% + Label(s) may have changed. % + Rerun to get cross-references right% + }% + \fi + \else + \@multiplelabels + \fi + \fi + }% +\fi +\def\AtVeryEnd@test@jpsj{% + \if@lastpagebalancing + \global\let\@outputdblcol=\balancing@outputdblcol + \fi + \@checkend{document}% + \clearpage + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \def\global\@namedef##1##2{}% + \def\newlabel{\@testdef r}% + \def\bibcite{\@testdef b}% + \@tempswafalse + \makeatletter + \input \jobname.aux % + \if@tempswa + \@warning{% + Label(s) may have changed. % + Rerun to get cross-references right% + }% + \fi + \fi + \endgroup + \deadcycles\z@ + \@@end +} +\def\AtVeryEnd@enddocument@jpsj{% + \if@lastpagebalancing + \global\let\@outputdblcol=\balancing@outputdblcol + \fi + \@checkend{document}% + \Call@BeforeClearDocument + \clearpage + \Call@AfterLastShipout + \begingroup + \if@filesw + \immediate\closeout\@mainaux + \def\global\@namedef##1##2{}% + \def\newlabel{\@testdef r}% + \def\bibcite{\@testdef b}% + \@tempswafalse + \makeatletter + \input \jobname.aux % + \if@tempswa + \@warning{% + Label(s) may have changed. % + Rerun to get cross-references right% + }% + \fi + \fi + \Call@AtVeryEndDocument + \csname @dofilelist\endcsname + \Call@AtEndAfterFileList + \endgroup + \deadcycles\z@ + \Call@AtVeryVeryEnd + \@@end +} +\def\AtVeryEnd@Test#1#2{% + \expandafter\ifx\csname AtVeryEnd@test@#2\endcsname#1% + \expandafter\let\expandafter#1% + \csname AtVeryEnd@enddocument@#2\endcsname + \begingroup + \let\on@line\@empty + \PackageInfo{atveryend}{% + \string#1 detected (#2)% + }% + \endgroup + \expandafter\AtVeryEnd@SkipToNil + \fi +} +\def\AtVeryEnd@SkipToNil#1\@nil{} +\def\AtVeryEnd@RedefEndDocument#1{% + \ifx#1\@undefined + \else + \AtVeryEnd@Test#1{standard20110627}% + \AtVeryEnd@Test#1{standard}% + \AtVeryEnd@Test#1{booklet}% + \AtVeryEnd@Test#1{dinbrief}% + \AtVeryEnd@Test#1{combine}% + \AtVeryEnd@Test#1{jpsj}% + \AtVeryEnd@SkipToNil + \@nil + \fi +} +\AtVeryEnd@RedefEndDocument\enddocument +\AtVeryEnd@RedefEndDocument\AP@enddocument % afterpage.sty +\AtVeryEnd@RedefEndDocument\hyper@back@cite@enddocument % htx-bc.sty +\AtVeryEnd@RedefEndDocument\hyper@enddocument % hyper.sty +\AtVeryEnd@RedefEndDocument\hyper@fn@enddocument % hyper.sty +\AtVeryEnd@RedefEndDocument\cweb@save@enddocument % cweb.cls +\AtVeryEnd@RedefEndDocument\prev@enddocument % flushend.sty +\AtVeryEnd@RedefEndDocument\endorigdocument % gaceta.cls +\AtVeryEnd@RedefEndDocument\keependdoc % aguplus.sty +\AtVeryEnd@RedefEndDocument\EMenddocument % t-angles.sty +\AtVeryEnd@RedefEndDocument\docmute@enddocument % docmute.sty +\AtVeryEnd@RedefEndDocument\a@enddocument % alatex.sty +\AtVeryEnd@RedefEndDocument\enddocumentasusual % frenchle.sty +\AtVeryEnd@RedefEndDocument\old@enddocument % uwthesis.cls +\def\AtVeryEnd@document{document}% +\def\AtVeryEnd@RedefCheckEnd{% + \expandafter\def\expandafter\@checkend + \expandafter##\expandafter1\expandafter{% + \@checkend{##1}% + \def\AtVeryEnd@temp{##1}% + \ifx\AtVeryEnd@temp\AtVeryEnd@document + \let\AtVeryEnd@OrgClearpage\clearpage + \def\clearpage{% + \let\clearpage\AtVeryEnd@OrgClearpage + \Call@BeforeClearDocument + \clearpage + \Call@AfterLastShipout + }% + \fi + }% + \aftergroup\AtVeryEnd@RedefCheckEnd +}% +\AtBeginDocument{% + \AtEndDocument{% + \AtVeryEnd@RedefCheckEnd + }% +} +\AtEndDocument{% + \@ifundefined{@dofilelist}{% + \gdef\@dofilelist{% + \Call@AtVeryEndDocument + \Call@AtEndAfterFileList + }% + }{% + \begingroup + \toks@\expandafter{\@dofilelist}% + \xdef\@dofilelist{% + \noexpand\Call@AtVeryEndDocument + \the\toks@ + \noexpand\Call@AtEndAfterFileList + }% + \endgroup + }% +} +\AtBeginDocument{% + \@ifpackageloaded{scrlfile}{% + \AtVeryEnd@ifundefined{BeforeClosingMainAux}{}{% + \BeforeClosingMainAux{\Call@AfterLastShipout}% + }% + \AtVeryEnd@ifundefined{AfterReadingMainAux}{}{% + \AfterReadingMainAux{\Call@AtVeryEndDocument}% + }% + }{}% + \@ifpackageloaded{etoolbox}{% + \AtVeryEnd@ifundefined{AfterEndDocument}{}{% + \AfterEndDocument{\Call@AtVeryEndDocument}% + }% + }{}% +} +\def\AtVeryEnd@temp{% + \AtBeginDocument{% + \let\@startlabels\startlabels + \let\@mlabel\mlabel + \if@filesw + \immediate\write\@mainaux{\string\@startlabels}% + \fi + }% + \AtEndDocument{% + \if@filesw + \immediate\write\@mainaux{\string\clearpage}% + \fi + }% +} +\ifx\makelabels\AtVeryEnd@temp +\else + \expandafter\AtVeryEnd@AtEnd +\fi% +\let\AtVeryEnd@PatchLetter=N% +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname endletter\endcsname\relax +\else + \long\def\AtVeryEnd@TestEndLetter#1\@auxout#2#3\AtVeryEnd@Nil{% + \def\AtVeryEnd@temp{#2}% + \ifx\AtVeryEnd@temp\@empty + \else + \@onelevel@sanitize\AtVeryEnd@temp + \edef\AtVeryEnd@StringMlabel{% + \string\string + \string\@mlabel + \expandafter\@gobble\string\{% + }% + \def\AtVeryEnd@CatchFirst##1##2##3##4##5##6##7##8{% + ##1##2##3##4##5##6##7##8\AtVeryEnd@CatchSecond + }% + \def\AtVeryEnd@CatchSecond##1##2##3##4##5##6##7##8##9\@nil{% + ##1##2##3##4##5##6##7##8% + }% + \edef\AtVeryEnd@temp{% + \expandafter\AtVeryEnd@CatchFirst\AtVeryEnd@temp + {}{}{}{}{}{}{}{}% + {}{}{}{}{}{}{}{}% + \@nil + }% + \ifx\AtVeryEnd@temp\AtVeryEnd@StringMlabel + \expandafter\def\expandafter\endletter\expandafter{% + \endletter + \begingroup + \let\\=\relax + \let\protect\@unexpandable@protect + \let\@mlabel=\relax + \edef\x{\endgroup + \noexpand\AtEndDocument{% + \@gobble#2% + }% + }% + \x + }% + \let\AtVeryEnd@PatchLetter=Y% + \fi + \fi + }% + \expandafter\AtVeryEnd@TestEndLetter\endletter + \@auxout{}\AtVeryEnd@Nil +\fi +\ifx\AtVeryEnd@PatchLetter Y% + \begingroup + \let\on@line\@empty + \PackageInfo{atveryend}{% + \@backslashchar makelabels detected. % + Moving labels\MessageBreak + from `.aux' file to \@backslashchar AtEndDocument% + }% + \endgroup + \def\makelabels{% + \AtBeginDocument{% + \let\@startlabels\startlabels + \let\@mlabel\mlabel + }% + }% + \AtEndDocument{% + \AtVeryEnd@ifundefined{@startlabels}{% + }{% + \clearpage + \@startlabels + }% + }% + \AfterLastShipout{% + \let\@startlabels\relax + \let\@mlabel\@gobbletwo + }% +\else + \PackageWarningNoLine{atveryend}{% + \@backslashchar makelabels detected, but labels cannot\MessageBreak + be moved to \@backslashchar AtEndDocument, because\MessageBreak + \@backslashchar endletter is not in expected form% + }% +\fi +\AtVeryEnd@AtEnd% +%% \section{Installation} +\endinput +%% +%% End of file `atveryend.sty'. |