summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-11-27 03:00:55 +0000
committerNorbert Preining <norbert@preining.info>2023-11-27 03:00:55 +0000
commitc053caa3ee50538ec23a08c0d35a0ca205b9923d (patch)
tree32e5dc4189b700e7aad1c6515f68933a77a30be4 /macros
parent0d14ad8d416e14dc61b009c524689462ace354d5 (diff)
CTAN sync 202311270300
Diffstat (limited to 'macros')
-rw-r--r--macros/latex/contrib/catoptions/README.md (renamed from macros/latex/contrib/catoptions/README)2
-rw-r--r--macros/latex/contrib/catoptions/doc/catoptions-guide.tex3
-rw-r--r--macros/latex/contrib/catoptions/tex/catoptions.sty33
-rw-r--r--macros/latex/contrib/cidarticle/CHANGELOG.md (renamed from macros/latex/contrib/cid/CHANGELOG.md)6
-rw-r--r--macros/latex/contrib/cidarticle/CONTRIBUTING.md (renamed from macros/latex/contrib/cid/CONTRIBUTING.md)0
-rw-r--r--macros/latex/contrib/cidarticle/README.md (renamed from macros/latex/contrib/cid/README.md)2
-rw-r--r--macros/latex/contrib/cidarticle/cidarticle-author-template.tex68
-rw-r--r--macros/latex/contrib/cidarticle/cidarticle-example.bib51
-rw-r--r--macros/latex/contrib/cidarticle/cidarticle.dtx (renamed from macros/latex/contrib/cid/cid.dtx)93
-rw-r--r--macros/latex/contrib/cidarticle/cidarticle.ins (renamed from macros/latex/contrib/cid/cid.ins)60
-rw-r--r--macros/latex/contrib/cidarticle/cidarticle.pdf (renamed from macros/latex/contrib/cid/cid.pdf)bin444739 -> 445394 bytes
-rw-r--r--macros/latex/contrib/hyperref/ChangeLog.txt29
-rw-r--r--macros/latex/contrib/hyperref/README.md2
-rw-r--r--macros/latex/contrib/hyperref/backref.dtx5
-rw-r--r--macros/latex/contrib/hyperref/doc/backref.pdfbin206681 -> 206469 bytes
-rw-r--r--macros/latex/contrib/hyperref/doc/hyperref-doc.html50
-rw-r--r--macros/latex/contrib/hyperref/doc/hyperref-doc.pdfbin318619 -> 318765 bytes
-rw-r--r--macros/latex/contrib/hyperref/doc/hyperref-doc.tex24
-rw-r--r--macros/latex/contrib/hyperref/doc/hyperref-linktarget.pdfbin440371 -> 440553 bytes
-rw-r--r--macros/latex/contrib/hyperref/doc/hyperref.pdfbin2346477 -> 2343397 bytes
-rw-r--r--macros/latex/contrib/hyperref/doc/nameref.pdfbin172260 -> 172475 bytes
-rw-r--r--macros/latex/contrib/hyperref/hluatex.dtx104
-rw-r--r--macros/latex/contrib/hyperref/hyperref-linktarget.dtx4
-rw-r--r--macros/latex/contrib/hyperref/hyperref-patches.dtx2
-rw-r--r--macros/latex/contrib/hyperref/hyperref.dtx618
-rw-r--r--macros/latex/contrib/hyperref/nameref.dtx26
-rw-r--r--macros/latex/contrib/hyperref/xr-hyper.sty26
-rw-r--r--macros/luatex/generic/penlightplus/penlightplus.lua19
-rw-r--r--macros/luatex/generic/penlightplus/penlightplus.pdfbin63923 -> 65123 bytes
-rw-r--r--macros/luatex/generic/penlightplus/penlightplus.sty56
-rw-r--r--macros/luatex/generic/penlightplus/penlightplus.tex85
-rw-r--r--macros/luatex/latex/yamlvars/yamlvars.lua27
-rw-r--r--macros/luatex/latex/yamlvars/yamlvars.pdfbin82984 -> 83795 bytes
-rw-r--r--macros/luatex/latex/yamlvars/yamlvars.sty15
-rw-r--r--macros/luatex/latex/yamlvars/yamlvars.tex35
35 files changed, 862 insertions, 583 deletions
diff --git a/macros/latex/contrib/catoptions/README b/macros/latex/contrib/catoptions/README.md
index 2efc44bd00..dbce7aaae7 100644
--- a/macros/latex/contrib/catoptions/README
+++ b/macros/latex/contrib/catoptions/README.md
@@ -2,7 +2,7 @@ This is the README file for the 'catoptions' package.
VERSION
-Version 0.2.7h, 2014/08/29
+Version 0.2.7i, 2023/10/29
LOCATION ON CTAN
diff --git a/macros/latex/contrib/catoptions/doc/catoptions-guide.tex b/macros/latex/contrib/catoptions/doc/catoptions-guide.tex
index e286601ac9..8687c26bcd 100644
--- a/macros/latex/contrib/catoptions/doc/catoptions-guide.tex
+++ b/macros/latex/contrib/catoptions/doc/catoptions-guide.tex
@@ -1031,6 +1031,9 @@ In the commands \ffx'{\tsv@loop,\tsv@@parse}, it is always possible to break out
The following change history highlights significant changes that affect user utilities and interfaces; mutations of technical nature are not documented in this section. The numbers on the right-hand side of the following lists are section numbers; the \stsign means the subject features in the package but is not reflected anywhere in this user guide.
\begin{versionhist}
+ \begin{version}{0.2.7i}{2023/10/29}
+ \item Adjust for current \LaTeX\ (DPC).
+ \end{version}
\begin{version}{0.2.7f}{2012/11/17}
\item Bug fix in \fx{\cptonlypreamble}.\vsecref*
\end{version}
diff --git a/macros/latex/contrib/catoptions/tex/catoptions.sty b/macros/latex/contrib/catoptions/tex/catoptions.sty
index cc9336c44f..e159e234ac 100644
--- a/macros/latex/contrib/catoptions/tex/catoptions.sty
+++ b/macros/latex/contrib/catoptions/tex/catoptions.sty
@@ -1,5 +1,5 @@
%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%
-% This is 'catoptions' package, version 0.2.7h, 2014/08/29. %
+% This is 'catoptions' package, version 0.2.7i, 2023/10/29. %
% %
% The catoptions package changes LaTeX package loading internals %
% so that all subsequently loaded packages can rely on having %
@@ -21,6 +21,7 @@
% The LPPL maintenance status of this software is 'author-maintained'. %
% %
% Copyright (c) 2010-2012 Ahmed Musa (amusa22@gmail.com). %
+% Copyright (c) 2023 Ahmed Musa (amusa22@gmail.com), David Carlisle%
%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%
\begingroup
@@ -120,8 +121,10 @@
\@ifdefinable\z@pt{\newdimen\z@pt\z@pt\z@}
\chardef\active=13
\NeedsTeXFormat{LaTeX2e}[2011/06/27]
+%% DPC
\ProvidesPackage{catoptions}
- [2014/08/29 v0.2.7h Securing catcodes and parsing options (AM)]
+ [2023/10/29 v0.2.7i Securing catcodes and parsing options (AM)]
+%% END CHANGE
\ifcase%
\ifx\eTeXversion\cpt@undefined\z@pt\else
\ifnum\eTeXversion<\tw@\z@pt\else\@ne\fi\fi
@@ -129,6 +132,17 @@
{This package requires eTeX version 2 or higher.}%
\expandafter\endinput
\fi
+%% DPC
+%%% New latex option handler is definined
+\ifx\ProcessKeyOptions\@undefined\else
+\PackageWarningNoLine{catoptions}
+ {\MessageBreak catoptions modifies package option handling and is%
+ \MessageBreak incompatible with many other packages.%
+ \MessageBreak For new documents it is recommended to use%
+ \MessageBreak The built in option processor:%
+ \MessageBreak \string\ProcessKeyOptions, see clsguide}
+\fi
+%% END CHANGE
\protected\def\cptloggingall{%
\tracinggroups\@ne\tracingifs\@ne\tracingall\tracingassigns\@ne
}
@@ -4341,6 +4355,9 @@
}
\robust@def*\BeforeStartOfDocument{\grightaddtocs\cpt@beforestartdoc}
\new@def*\cpt@beforestartdoc{}
+%% DPC
+%% since hooks were added \document does not need grouping adjustment
+\ifx \UseOneTimeHook \@undefined
\gleftaddtocs\document{%
\endgroup
\let\BeforeStartOfDocument\@firstofone
@@ -4350,6 +4367,18 @@
\gdef\cpt@docstarted{}%
\begingroup
}
+\else
+\gleftaddtocs\document{%
+% \endgroup
+ \let\BeforeStartOfDocument\@firstofone
+ \cpt@beforestartdoc
+ \let\BeforeStartOfDocument\@notprerr
+ \gundefcs\cpt@beforestartdoc
+ \gdef\cpt@docstarted{}%
+% \begingroup
+}
+\fi
+%% END CHANGE
\robust@def*\AfterStartOfDocument{\grightaddtocs\cpt@afterstartdoc}
\new@def*\cpt@afterstartdoc{}
\robust@def*\AfterAfterStartOfDocument#1{%
diff --git a/macros/latex/contrib/cid/CHANGELOG.md b/macros/latex/contrib/cidarticle/CHANGELOG.md
index afcad4af80..31740965d3 100644
--- a/macros/latex/contrib/cid/CHANGELOG.md
+++ b/macros/latex/contrib/cidarticle/CHANGELOG.md
@@ -5,9 +5,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
## [Unreleased]
+## [1.1] - 2023-11-25
+Renamed all files from `cid*` to `cidarticle*` to avoid any problems with old files on TeX Live/CTAN
+
## [1.0] - 2023-11-21
First official release
-[Unreleased]: https://github.com/sieversMartin/CID/compare/v1.0...HEAD
+[Unreleased]: https://github.com/sieversMartin/CID/compare/v1.1...HEAD
+[1.1]: https://github.com/sieversMartin/CID/releases/tag/v1.1
[1.0]: https://github.com/sieversMartin/CID/releases/tag/v1.0
diff --git a/macros/latex/contrib/cid/CONTRIBUTING.md b/macros/latex/contrib/cidarticle/CONTRIBUTING.md
index b5cd6c56b1..b5cd6c56b1 100644
--- a/macros/latex/contrib/cid/CONTRIBUTING.md
+++ b/macros/latex/contrib/cidarticle/CONTRIBUTING.md
diff --git a/macros/latex/contrib/cid/README.md b/macros/latex/contrib/cidarticle/README.md
index d894dd515b..119bb520d6 100644
--- a/macros/latex/contrib/cid/README.md
+++ b/macros/latex/contrib/cidarticle/README.md
@@ -1,2 +1,2 @@
-# CID
+# cidarticle
Official LaTeX class for submissions to the “Commentarii informaticae didacticae”
diff --git a/macros/latex/contrib/cidarticle/cidarticle-author-template.tex b/macros/latex/contrib/cidarticle/cidarticle-author-template.tex
new file mode 100644
index 0000000000..a6f44e1dc9
--- /dev/null
+++ b/macros/latex/contrib/cidarticle/cidarticle-author-template.tex
@@ -0,0 +1,68 @@
+% !TeX encoding = UTF-8
+% !TeX program = pdflatex
+% !BIB program = biber
+% !TeX spellcheck = de_DE
+
+%%% Um einen Artikel auf deutsch zu schreiben, genügt es die Klasse ohne
+%%% Parameter zu laden.
+\documentclass[]{cidarticle}
+%%% To write an article in English, please use the option ``english'' in order
+%%% to get the correct hyphenation patterns and terms.
+%%% \documentclass[english]{cidarticle}
+%%%
+%%% Die CID-Klasse nutzt biblatex, so dass man die .bib-Datei angeben muss:
+\addbibresource{cidarticle-example.bib} %Beispiel-Bibliography
+
+\usepackage{blindtext} %nur zu Testzwecken
+%%
+\begin{document}
+%%% Mehrere Autoren werden durch \and voneinander getrennt.
+%%% Die Fußnote enthält die Adresse sowie eine E-Mail-Adresse.
+%%% Das optionale Argument (sofern angegeben) wird jeweils für das
+%%% Inhaltsverzeichnis *und* den Kolumnentitel im Kopf der Seite verwendet.
+%%% Die Angaben für den Kolumnentitel können mittels optionalen Arguments
+%%% für \title bzw. \author gesetzt werden.
+\title[Ein Kurztitel wenn der Titel z.B. Fußnoten enthält]{Ein sehr langer Titel über mehrere Zeilen mit sehr vielen
+Worten und noch mehr Buchstaben}
+%%%\subtitle{Untertitel / Subtitle} % if needed
+\author[1]{Vorname1 Nachname1}{vorname.name@affiliation1.de}{0000-0000-0000-0000}
+\author[2]{Firstname2 Lastname2}{vorname.name@affiliation2.de}{0000-0000-0000-0000}
+\author[1]{Firstname3 Lastname 3}{vorname.name@affiliation1.de}{0000-0000-0000-0000}
+\author[1]{Firstname4 Lastname 4}{vorname.name@affiliation1.de}{0000-0000-0000-0000}
+\affil[1]{Universität\\Abteilung\\Straße\\Postleitzahl Ort\\Land}
+\affil[2]{University\\Department\\Address\\Country}
+
+\maketitle
+
+\begin{abstract}
+Die Zusammenfassung sollte etwa 70 bis 150 Worte umfassen und besteht in der Regel aus einem Absatz.
+\end{abstract}
+\begin{keywords}
+Schlagwort1 \and Schlagwort2 %Keyword1 \and Keyword2
+\end{keywords}
+%%% Beginn des Artikeltexts
+\section{Überschrift der Ebene 1}
+\blindtext[2]
+
+\subsection{Referenzen auf Einträge in der Bibliografie}
+Jetzt ein paar Referenzen auf \cite{Bernhard2017} oder auch \cite{ANKOM2014} sowie auf eine Liste \cites[17]{Anderson2012}{Berges2013}{Anderson2001}.
+
+\subsection{Grafiken}
+Hier kommt eine Grafik:
+\begin{figure}
+ \includegraphics[width=\textwidth]{example-image-a}
+ \caption{Eine Beschriftung}
+ \label{fig:Beispielgrafik}
+\end{figure}
+
+Auf die Grafik kann man dann verweisen: \cref{fig:Beispielgrafik}.
+
+\subsection{Mehr Text}
+\blindtext[18]
+
+\subsection{Überschrift der Ebene 2}
+\blindtext[5]
+
+%%% Ausgabe der Bibliographie (biber vorher aufrufen)
+\printbibliography
+\end{document}
diff --git a/macros/latex/contrib/cidarticle/cidarticle-example.bib b/macros/latex/contrib/cidarticle/cidarticle-example.bib
new file mode 100644
index 0000000000..cce7019b55
--- /dev/null
+++ b/macros/latex/contrib/cidarticle/cidarticle-example.bib
@@ -0,0 +1,51 @@
+@collection{Anderson2001,
+ address = {New York and others},
+ title = {A taxonomy for learning, teaching, and assessing},
+ subtitle = {A revision of Bloom's taxonomy of educational objectives (gekürzte Version)},
+ isbn = {978-0-321-08405-7},
+ publisher = {Longman},
+ editor = {Anderson, Lorin W. and Krathwohl, David R.},
+ year = {2001},
+}
+
+@article{Anderson2012,
+ title = {Design-based research},
+ subtitle = {A decade of progress in education research?},
+ author = {Anderson, Terry and Shattuck, Julie},
+ journal = {Educational researcher},
+ volume = {41},
+ number = {1},
+ pages = {16-25},
+ year = {2012},
+ publisher= {Sage Publications Sage CA},
+ location = {Los Angeles, CA}
+}
+
+@inproceedings{Berges2013,
+ author = {Berges, Marc and Hubwieser, Peter and Magenheim, Johannes and Bender, Elena and Bröker, Kathrin and Margaritis-Kopecki, Melanie and Neugebauer, Jonas and Schaper, Niclas and Schubert, Sigrid and Ohrndorf, Laura},
+ title = {Developing a Competency Model for Teaching Computer Science in Schools},
+ year = {2013},
+ isbn = {9781450320788},
+ publisher= {Association for Computing Machinery},
+ location = {New York, NY, USA},
+ doi = {10.1145/2462476.2465607},
+ booktitle= {Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education},
+ pages = {327},
+ location = {Canterbury, England, UK},
+ eventtitle = {ITiCSE '13}
+}
+
+@book{Bernhard2017,
+ title = {Durch Europäisierung zu mehr Durchlässigkeit?: Veränderungsdynamiken des Verhältnisses von beruflicher Bildung zur Hochschulbildung in Deutschland und Frankreich},
+ author = {Bernhard, Nadine},
+ year = {2017},
+ publisher= {Verlag Barbara Budrich}
+}
+
+@online{ANKOM2014,
+ title = {ANKOM -- Übergänge von der beruflichen in die hochschulische Bildung},
+ url = {http://ankom.dzhw.eu/},
+ urldate = {2021-09-20},
+ author = {{Deutsches Zentrum für Hochschul- und Wissenschaftsforschung (GmbH)}},
+ year = {2014}
+}
diff --git a/macros/latex/contrib/cid/cid.dtx b/macros/latex/contrib/cidarticle/cidarticle.dtx
index 7e5d691874..33af4b0eb4 100644
--- a/macros/latex/contrib/cid/cid.dtx
+++ b/macros/latex/contrib/cidarticle/cidarticle.dtx
@@ -14,13 +14,13 @@
\keepsilent
\askforoverwritefalse
\declarepreamble\classpre
---------| -----------------------------------------------------------------
- cid:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
- Author:| Martin Sievers
- Email:| martin.sievers@schoenerpublizieren.de
-License:| Released under the LaTeX Project Public License v1.3c or later
- See:| http://www.latex-project.org/lppl.txt
---------| -----------------------------------------------------------------
+-----------| -----------------------------------------------------------------
+cidarticle:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
+ Author:| Martin Sievers
+ Email:| martin.sievers@schoenerpublizieren.de
+ License:| Released under the LaTeX Project Public License v1.3c or later
+ See:| http://www.latex-project.org/lppl.txt
+-----------| -----------------------------------------------------------------
\endpreamble
\def\templatepre{%
@@ -51,17 +51,17 @@ http://www.latex-project.org/lppl.txt
This work is "maintained" (as per LPPL maintenance status) by
Martin Sievers.
-This work consists of the file cid.dtx
- cid.ins
+This work consists of the file cidarticle.dtx
+ cidarticle.ins
README.md
CHANGELOG.md
- and the derived files cid.pdf
- cid.cls
- cid-author-template.tex
- cid-example.bib
+ and the derived files cidarticle.pdf
+ cidarticle.cls
+ cidarticle-author-template.tex
+ cidarticle-example.bib
\endpostamble
-\usedir{tex/latex/cid}
+\usedir{tex/latex/cidarticle}
\AddGenerationDate
\generate{
\usepreamble\classpre
@@ -70,19 +70,19 @@ This work consists of the file cid.dtx
%</install>
%<install>\endbatchfile
%<*internal>
-\usedir{source/latex/cid}
+\usedir{source/latex/cidarticle}
\generate{
\usepreamble\classpre
\file{\jobname.ins}{\from{\jobname.dtx}{install}}
}
\nopreamble\nopostamble
-\usedir{doc/latex/cid}
+\usedir{doc/latex/cidarticle}
\generate{
\usepreamble\templatepreger
- \file{cid-author-template.tex}{\from{\jobname.dtx}{template}}
+ \file{\jobname-author-template.tex}{\from{\jobname.dtx}{template}}
}
\generate{
- \file{cid-example.bib}{\from{\jobname.dtx}{examplebib}}
+ \file{\jobname-example.bib}{\from{\jobname.dtx}{examplebib}}
}
\ifx\fmtname\nameofplainTeX
\expandafter\endbatchfile
@@ -94,12 +94,12 @@ This work consists of the file cid.dtx
%
% \iffalse
%<*driver>
-\ProvidesFile{cid.dtx}
+\ProvidesFile{cidarticle.dtx}
%</driver>
%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<class>\ProvidesClass{cid}
%<*class>
- [2023/11/21 v1.0 Official class for submissions to the ``Commentarii informaticae didacticae (CID)'']
+ [2023/11/25 v1.1 Official class for submissions to the ``Commentarii informaticae didacticae (CID)'']
%</class>
%<*driver>
\documentclass[a4paper]{ltxdoc}
@@ -122,7 +122,7 @@ This work consists of the file cid.dtx
%\usepackage{hologo}
\usepackage{dtxdescribe}
\usepackage[%
- pdftitle={cid: Official LaTeX class for submissions to the ``Commentarii informaticae didacticae (CID)''},
+ pdftitle={cidarticle: Official LaTeX class for submissions to the ``Commentarii informaticae didacticae (CID)''},
pdfauthor={Martin Sievers},
urlcolor=blue,%
linktoc=both,%
@@ -142,7 +142,7 @@ This work consists of the file cid.dtx
}{}
\DeclareMathSymbol{\powerset}{\mathord}{MnSyC}{180}
-\newcommand{\cid}{\texttt{cid}}
+\newcommand{\cid}{\texttt{cidarticle}}
\newcommand{\CID}{\emph{Commentarii informaticae didacticae}}
\lstset{
basicstyle = \small\ttfamily,
@@ -199,7 +199,7 @@ This work consists of the file cid.dtx
% \GetFileInfo{\jobname.dtx}
% \DoNotIndex{\newcommand,\newenvironment}
%
-% \title{\textsf{cid} -- Official class for submissions to the\\%
+% \title{\textsf{cidarticle} -- Official class for submissions to the\\%
% ``Commentarii informaticae didacticae''\thanks{This file describes version
% \fileversion, last revised \filedate.}}
% \author{Martin Sievers\setcounter{footnote}{6}\thanks{Email:
@@ -211,8 +211,8 @@ This work consists of the file cid.dtx
% \begin{abstract}
% \noindent The \cid{} bundle is used for writing articles to be published in
% the ``Commentarii informaticae didacticae (CID)''.
-% The \LaTeX\ class file is based on the class used for the ``Lecture
-% Notes in Informatics (LNI)'' (\href{https://github.com/gi-ev/LNI}{GitHub}).
+% It is based on the class used for the ``Lecture
+% Notes in Informatics (LNI)''.
% \end{abstract}
%
% \section{Introduction}
@@ -224,6 +224,9 @@ This work consists of the file cid.dtx
% the ``Universitätsverlag Potsdam'' (especially Felix Will and Marco Winkler)
% and the editors of CID 13 (especially Simone Opel)
% for their suggestions and testing.
+%
+% All development is done on GitHub (\url{https://github.com/sieversMartin/CID/}).
+% You are very welcome to contribute by raising issues or pull requests.
%
% \section{Installation}
% This version of the \cid{} bundle is distributed via
@@ -234,14 +237,12 @@ This work consists of the file cid.dtx
% typeset an article for the \CID{} is to use the package manager of your
% distribution.
%
+% There is also a template on Overleaf (\url{https://www.overleaf.com/latex/templates/cid-commentarii-informaticae-didacticae/xgzphtgbbffb}).
%
-% There is also a template on Overleaf.
-%
-% For a manual installation please call \texttt{pdflatex lni.dtx} at least
-% twice and
-% copy all resulting files (cls, tex, pdf) to your local TEXMF tree.
+% For a manual installation please call \texttt{pdflatex cidarticle.dtx} at least
+% twice and copy all resulting files (cls, tex, pdf) to your local TEXMF tree.
% Don't forget to update your file name database.
-% %\newpage
+%
% \section{Usage}
% To use the predefined layout for a (German) submission to the \CID{} just
% load the class file as usual with \cs{documentclass\{cid\}}.
@@ -283,7 +284,7 @@ This work consists of the file cid.dtx
% headers from your document, you can use the option \opt{norunningheads}.
%
% \section{Setting up a document}
-% You can use the file \texttt{cid-author-template.tex} as a starting point
+% You can use the file \texttt{cidarticle-author-template.tex} as a starting point
% for setting up a document for submission. The \cid{} class uses the standard
% ways to build an article.
%
@@ -300,7 +301,7 @@ This work consists of the file cid.dtx
% % !BIB program = biber
% % !TeX encoding = UTF-8
% % !TeX spellcheck = en_US
-% \documentclass[english]{cid}
+% \documentclass[english]{cidarticle}
% \end{examplecode}
%
% \subsection{Title page}\label{sec:titlepage}
@@ -320,7 +321,7 @@ This work consists of the file cid.dtx
% given using an extended \cs{author} macro, which holds not only the name, but also
% email adress and ORCID iD. Moreover the affiliation marker (number) is given as an optional
% argument. Affiliations are added with
-% \cs{affiliations\oarg{number}\marg{information}} where you can use
+% \cs{affil\oarg{number}\marg{information}} where you can use
% \texttt{\textbackslash\textbackslash} to split the address.
% \begin{examplecode}[label={lst:author}]
% \author[1]{Vorname1 Nachname1}{vorname.name@affiliation1.de}{0000-0000-0000-0000}
@@ -363,9 +364,9 @@ This work consists of the file cid.dtx
% \subsubsection{Headings}
% \DescribeMacro{\section}\DescribeMacro{\subsection}%
% \DescribeMacro{\subsubsection}\DescribeMacro{\paragraph}
-% You can use the standard macros \cs{section}, \cs{subsection}, \dots{} for
-% sectioning your text.
-%
+% You can use the standard macros \cs{section}, \cs{subsection}, \cs{subsubsection}
+% and \cs{paragraph} sectioning your text.
+% \vspace{2\baselineskip}
% \subsubsection{Footnotes}
% \DescribeMacro{\footnote}%
% For adding a footnote, just use \cs{footnote\marg{footnote text}} where
@@ -465,7 +466,7 @@ This work consists of the file cid.dtx
% \begin{examplecode}
% % !TeX program = pdflatex
% % !BIB program = biber
-% \documentclass[]{cid}
+% \documentclass[]{cidarticle}
% ...
% \addbibresource{FILENAME.bib}
% ...
@@ -483,7 +484,7 @@ This work consists of the file cid.dtx
%
% \section{Bugs and feature request}
% If you find a bug or have a feature request, please contact me.
-% You can open an ``issue'' at the GitHub website.
+% You can open an ``issue'' at the \href{https://github.com/sieversMartin/CID/}{GitHub website}.
%
% \StopEventually{^^A
% \PrintChanges
@@ -553,7 +554,7 @@ This work consists of the file cid.dtx
\else
\RequirePackage[english,UKenglish,USenglish,ngerman]{babel}
\babelprovide[hyphenrules=ngerman-x-latest]{ngerman}
- \ClassInfo{cid}{Using latest German hyphenation patterns}%
+ \ClassInfo{cidarticle}{Using latest German hyphenation patterns}%
\fi%
% Hint by http://tex.stackexchange.com/a/321067/9075 -> enable "= as dashes
\useshorthands*{"}
@@ -1023,7 +1024,7 @@ This work consists of the file cid.dtx
{\par\global\keywordsfalse}
\let\@RIGsection\section
\pretocmd\@startsection{%
- \ifkeywords\ClassError{cid}%
+ \ifkeywords\ClassError{cidarticle}%
{keywords is an environment, not a macro}%
{Please change \string\keywords\space to an environment}%
\keywordsfalse%
@@ -1461,7 +1462,7 @@ This work consists of the file cid.dtx
% \end{macrocode}
% \begin{macrocode}
\ifusehyperref
- \AddToHook{env/document/begin}[cid/loadhyp]{%
+ \AddToHook{env/document/begin}[cidarticle/loadhyperref]{%
\RequirePackage{hyperref}
\RequirePackage[startatroot]{bookmark}
\RequirePackage{colorprofiles}
@@ -1504,7 +1505,7 @@ This work consists of the file cid.dtx
% \begin{macrocode}
\RequirePackage[all]{hypcap}%
}%
- \DeclareHookRule{env/document/begin}{cid/loadhyp}{before}{biblatex}
+ \DeclareHookRule{env/document/begin}{cidarticle/loadhyperref}{before}{biblatex}
\else
\RequirePackage{tikz}
\usetikzlibrary{svg.path}
@@ -1624,13 +1625,13 @@ This work consists of the file cid.dtx
%<*template>
%%% Um einen Artikel auf deutsch zu schreiben, genügt es die Klasse ohne
%%% Parameter zu laden.
-\documentclass[]{cid}
+\documentclass[]{cidarticle}
%%% To write an article in English, please use the option ``english'' in order
%%% to get the correct hyphenation patterns and terms.
-%%% \documentclass[english]{cid}
+%%% \documentclass[english]{cidarticle}
%%%
%%% Die CID-Klasse nutzt biblatex, so dass man die .bib-Datei angeben muss:
-\addbibresource{cid-example.bib} %Beispiel-Bibliography
+\addbibresource{cidarticle-example.bib} %Beispiel-Bibliography
\usepackage{blindtext} %nur zu Testzwecken
%%
diff --git a/macros/latex/contrib/cid/cid.ins b/macros/latex/contrib/cidarticle/cidarticle.ins
index 126dd3e94b..be207d8dab 100644
--- a/macros/latex/contrib/cid/cid.ins
+++ b/macros/latex/contrib/cidarticle/cidarticle.ins
@@ -1,28 +1,28 @@
%%
-%% This is file `cid.ins',
+%% This is file `cidarticle.ins',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
-%% cid.dtx (with options: `install')
-%% --------| -----------------------------------------------------------------
-%% cid:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
-%% Author:| Martin Sievers
-%% Email:| martin.sievers@schoenerpublizieren.de
-%% License:| Released under the LaTeX Project Public License v1.3c or later
-%% See:| http://www.latex-project.org/lppl.txt
-%% --------| -----------------------------------------------------------------
+%% cidarticle.dtx (with options: `install')
+%% -----------| -----------------------------------------------------------------
+%% cidarticle:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
+%% Author:| Martin Sievers
+%% Email:| martin.sievers@schoenerpublizieren.de
+%% License:| Released under the LaTeX Project Public License v1.3c or later
+%% See:| http://www.latex-project.org/lppl.txt
+%% -----------| -----------------------------------------------------------------
\input docstrip.tex
\keepsilent
\askforoverwritefalse
\declarepreamble\classpre
---------| -----------------------------------------------------------------
- cid:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
- Author:| Martin Sievers
- Email:| martin.sievers@schoenerpublizieren.de
-License:| Released under the LaTeX Project Public License v1.3c or later
- See:| http://www.latex-project.org/lppl.txt
---------| -----------------------------------------------------------------
+-----------| -----------------------------------------------------------------
+cidarticle:| A class for submissions to the ``Commentarii informaticae didacticae (CID)''
+ Author:| Martin Sievers
+ Email:| martin.sievers@schoenerpublizieren.de
+ License:| Released under the LaTeX Project Public License v1.3c or later
+ See:| http://www.latex-project.org/lppl.txt
+-----------| -----------------------------------------------------------------
\endpreamble
\def\templatepre{%
@@ -53,17 +53,17 @@ http://www.latex-project.org/lppl.txt
This work is "maintained" (as per LPPL maintenance status) by
Martin Sievers.
-This work consists of the file cid.dtx
- cid.ins
+This work consists of the file cidarticle.dtx
+ cidarticle.ins
README.md
CHANGELOG.md
- and the derived files cid.pdf
- cid.cls
- cid-author-template.tex
- cid-example.bib
+ and the derived files cidarticle.pdf
+ cidarticle.cls
+ cidarticle-author-template.tex
+ cidarticle-example.bib
\endpostamble
-\usedir{tex/latex/cid}
+\usedir{tex/latex/cidarticle}
\AddGenerationDate
\generate{
\usepreamble\classpre
@@ -83,13 +83,13 @@ This work consists of the file cid.dtx
%% This work is "maintained" (as per LPPL maintenance status) by
%% Martin Sievers.
%%
-%% This work consists of the file cid.dtx
-%% cid.ins
+%% This work consists of the file cidarticle.dtx
+%% cidarticle.ins
%% README.md
%% CHANGELOG.md
-%% and the derived files cid.pdf
-%% cid.cls
-%% cid-author-template.tex
-%% cid-example.bib
+%% and the derived files cidarticle.pdf
+%% cidarticle.cls
+%% cidarticle-author-template.tex
+%% cidarticle-example.bib
%%
-%% End of file `cid.ins'.
+%% End of file `cidarticle.ins'.
diff --git a/macros/latex/contrib/cid/cid.pdf b/macros/latex/contrib/cidarticle/cidarticle.pdf
index a7033364c9..5de6519a8a 100644
--- a/macros/latex/contrib/cid/cid.pdf
+++ b/macros/latex/contrib/cidarticle/cidarticle.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/ChangeLog.txt b/macros/latex/contrib/hyperref/ChangeLog.txt
index d4f1cd0fa3..ba3e25bb7d 100644
--- a/macros/latex/contrib/hyperref/ChangeLog.txt
+++ b/macros/latex/contrib/hyperref/ChangeLog.txt
@@ -1,3 +1,28 @@
+Version: 2023-11-26 v7.01g
+ nameref 2023-11-26 v2.56
+ backref 2023-11-26 v1.44
+
+2023-11-26 David Carlisle
+ * hyperref.dtx: Remove infwarerr
+
+2023-11-26 Ulrike Fischer
+ * xr-hyper.sty: store URL/file name of external documents always to
+ * allow file links even without destinations.
+ * nameref.dtx remove unneeded memoir patch
+ * nameref.dtx remove unneeded titlesec patch
+ * rename \HyPsd@expand@utfvii to \HyPsd@expand@utfviii, issue #309
+ * correct composite declaration, issue #314
+
+2023-11-14 Ulrike Fischer
+ * remove ltxcmds dependency in hluatex.dtx
+ * remove ltxcmds dependency in nameref.dtx (v2.56)
+ * remove ltxcmds dependency in backref.dtx (v1.44)
+
+2023-11-11 David Carlisle
+ * remove ltxcmds dependency
+
+Version: 2023-11-09 v7.01f
+
2023-11-09 Ulrike Fischer
* correct \cyreref to \cyrerev issue 307
* corrent \textddagger definition issue 308
@@ -6,11 +31,9 @@
* remove now unneeded fallbacks for reference commands
* nameref: remove unneeded beamer patch
* nameref: remove unneeded ifthen patch
- * nameref: remove memoir patches, it handles titles itself now
- * nameref: remove outdated titlesec patch.
===========
-Version: 2023-10-27 v7.01e
+Version: 2023-11-?? v7.01e
2023-11-07 Ulrike Fischer
* improve thm code, issue 304
diff --git a/macros/latex/contrib/hyperref/README.md b/macros/latex/contrib/hyperref/README.md
index b6cb9bc4d5..8df7d365ef 100644
--- a/macros/latex/contrib/hyperref/README.md
+++ b/macros/latex/contrib/hyperref/README.md
@@ -1,6 +1,6 @@
# README for hyperref bundle
-Version 2023-11-09 v7.01f
+Version 2023-11-26 v7.01g
## INTRODUCTION
diff --git a/macros/latex/contrib/hyperref/backref.dtx b/macros/latex/contrib/hyperref/backref.dtx
index cfcb77923f..fc12b70ea5 100644
--- a/macros/latex/contrib/hyperref/backref.dtx
+++ b/macros/latex/contrib/hyperref/backref.dtx
@@ -32,7 +32,7 @@
%<driver>\ProvidesFile{backref.drv}
% \fi
% \ProvidesFile{backref.dtx}
- [2023-08-01 v1.43 Bibliographical back referencing]%
+ [2023-11-26 v1.44 Bibliographical back referencing]%
%
%
% \iffalse
@@ -304,7 +304,6 @@
% \begin{macrocode}
\RequirePackage{kvoptions}[2011/06/30]
\RequirePackage{kvsetkeys}[2009/07/30]
-\RequirePackage{ltxcmds}[2009/12/12]
\SetupKeyvalOptions{%
family=backref,%
prefix=BR@,%
@@ -321,7 +320,7 @@
% default for the verbose switch.
% \begin{macrocode}
\DeclareBoolOption[%
- \ltx@ifundefined{ifHy@verbose}{%
+ \@ifundefined{ifHy@verbose}{%
false%
}{%
\ifx\ifHy@verbose\iftrue true\else false\fi
diff --git a/macros/latex/contrib/hyperref/doc/backref.pdf b/macros/latex/contrib/hyperref/doc/backref.pdf
index 3fd7b070cf..3807a0a72b 100644
--- a/macros/latex/contrib/hyperref/doc/backref.pdf
+++ b/macros/latex/contrib/hyperref/doc/backref.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/doc/hyperref-doc.html b/macros/latex/contrib/hyperref/doc/hyperref-doc.html
index d6d79f4428..de480e827f 100644
--- a/macros/latex/contrib/hyperref/doc/hyperref-doc.html
+++ b/macros/latex/contrib/hyperref/doc/hyperref-doc.html
@@ -25,7 +25,7 @@ href="https://github.com/latex3/hyperref/issues" class="url" ><span
class="ec-lmvtt-10x-x-120">https://github.com/latex3/hyperref/issues</span></a><span
class="ec-lmr-12">)</span></div><br />
<div class="date" ><span
-class="ec-lmr-12">2023-11-09 v7.01f</span></div>
+class="ec-lmr-12">2023-11-26 v7.01g</span></div>
</div>
<h3 class="likesectionHead"><a
id="x1-1000"></a>Contents</h3>
@@ -748,7 +748,7 @@ gives back their value.
<h4 class="subsectionHead"><span class="titlemark">4.3 </span> <a
id="x1-90004.3"></a>Links commands</h4>
<!--l. 440--><p class="noindent" >The following commands are provided by all drivers to create links. They can be used by packages if the
-user commands are not sufficient. New drivers must provide this commands with similar
+user commands are not sufficient. New drivers must provide these commands with similar
arguments.
@@ -1027,7 +1027,7 @@ basis.
class="ec-lmvtt-10">unicode</span>) can only be used as package options, and not
in <span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">\hypersetup</span></span></span> as the option settings are processed as the package is read. The following
-tabular lists (hopefully all) these options. Be aware that some of the option do nothing or
+tabular lists (hopefully all) these options. Be aware that some of the options do nothing or
have changed behaviour if the new pdfmanagement and so the new generic <span
class="ec-lmss-10">hyperref </span>driver is
used.
@@ -1364,10 +1364,10 @@ class="td11"></td></tr>
<!--l. 687--><p class="noindent" >Destinations names (also anchor, target or link names) are internal names that identify a position on a
page in the document. They are used in link targets for inner document links or the bookmarks, for
example.
-<!--l. 692--><p class="indent" > Usually anchor are set, if <span
-class="ec-lmvtt-10">\refstepcounter </span>is called. Thus there is a counter name and value. Both are
-used to construct the destination name. By default the counter value follows the counter name separated
-by a dot. Example for the fourth chapter:
+<!--l. 692--><p class="indent" > Usually anchors are set, if <span
+class="ec-lmvtt-10">\refstepcounter </span>is called. Thus there is a counter name and value. Both
+are used to construct the destination name. By default the counter value follows the counter name
+separated by a dot. Example for the fourth chapter:
<blockquote class="quote">
<!--l. 698--><p class="noindent" ><span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">chapter.4</span></span></span></blockquote>
@@ -1520,7 +1520,7 @@ Lua<span class="HoLogo-TeX">T<span class="HoLogo-e">E</span>X</span>):
</pre>
<!--l. 812--><p class="nopar" ></blockquote>
<!--l. 815--><p class="indent" > With option <span
-class="ec-lmvtt-10">destlabel </span>destinations can also named manually, if the destination is not yet
+class="ec-lmvtt-10">destlabel </span>destinations can also be named manually, if the destination is not yet
renamed:
<blockquote class="quote">
<!--l. 818--><p class="noindent" ><span class="obeylines-h"><span class="verb"><span
@@ -1706,7 +1706,7 @@ class="ec-lmri-10">true </span></td><td style="white-space:normal; text-align:
class="td11">
<!--l. 866--><p class="noindent" >In the hypertex driver, the height of links is normally
calculated by the driver as simply the base line of contained
- text; this options forces <span class="obeylines-h"><span class="verb"><span
+ text; this option forces <span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">\special</span></span></span> commands to reflect the
real height of the link (which could contain a graphic) </td>
</tr><tr
@@ -2107,9 +2107,9 @@ class="td11"> <span
class="ec-lmri-10">false </span></td><td style="white-space:normal; text-align:left;" id="TBL-8-11-4"
class="td10">
<!--l. 957--><p class="noindent" >Colors the text of links and anchors. The colors
- chosen depend on the the type of link. At present
- the only types of link distinguished are citations,
- page references, URLs, local file references, and other
+ chosen depend on the type of link. At present the
+ only types of link distinguished are citations, page
+ references, URLs, local file references, and other
links. Unlike colored boxes, the colored text remains
when printing. </td>
</tr><tr
@@ -2436,7 +2436,7 @@ class="ec-lmss-10">hycolor</span>.
<!--l. 1026--><p class="indent" > The bookmark commands are stored in a file called <span
class="ec-lmri-10">jobname</span><span
-class="ec-lmvtt-10">.out</span>. The files is not processed by
+class="ec-lmvtt-10">.out</span>. The file is not processed by
LaTeX&#x00A0;so any markup is passed through. You can postprocess this file as needed; as an aid
for this, the <span
class="ec-lmvtt-10">.out </span>file is not overwritten on the next TeX&#x00A0;run if it is edited to contain the
@@ -2857,9 +2857,9 @@ class="ec-lmvtt-10">CropBox</span></span></span>, <span class="obeylines-h"><sp
class="ec-lmvtt-10">BleedBox</span></span></span>,
<span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">TrimBox</span></span></span>, and <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">ArtBox</span></span></span>. The dafault according
- to the PDF&#x00A0;Refence is <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">CropBox</span></span></span> </td>
+class="ec-lmvtt-10">ArtBox</span></span></span>. The default according
+ to the PDF&#x00A0;Reference is <span class="obeylines-h"><span class="verb"><span
+class="ec-lmvtt-10">CropBox</span></span></span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-33-"><td style="white-space:nowrap; text-align:left;" id="TBL-10-33-1"
class="td01"><span
@@ -2876,9 +2876,9 @@ class="ec-lmvtt-10">CropBox</span></span></span>, <span class="obeylines-h"><sp
class="ec-lmvtt-10">BleedBox</span></span></span>,
<span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">TrimBox</span></span></span>, and <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">ArtBox</span></span></span>. The dafault according
- to the PDF&#x00A0;Refence is <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">CropBox</span></span></span> </td>
+class="ec-lmvtt-10">ArtBox</span></span></span>. The default according
+ to the PDF&#x00A0;Reference is <span class="obeylines-h"><span class="verb"><span
+class="ec-lmvtt-10">CropBox</span></span></span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-34-"><td style="white-space:nowrap; text-align:left;" id="TBL-10-34-1"
class="td01"><span
@@ -2932,9 +2932,9 @@ class="ec-lmvtt-10">CropBox</span></span></span>, <span class="obeylines-h"><sp
class="ec-lmvtt-10">BleedBox</span></span></span>,
<span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">TrimBox</span></span></span>, and <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">ArtBox</span></span></span>. The dafault according
- to the PDF&#x00A0;Refence is <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">CropBox</span></span></span> </td>
+class="ec-lmvtt-10">ArtBox</span></span></span>. The default according
+ to the PDF&#x00A0;Reference is <span class="obeylines-h"><span class="verb"><span
+class="ec-lmvtt-10">CropBox</span></span></span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-38-"><td style="white-space:nowrap; text-align:left;" id="TBL-10-38-1"
class="td01"><span
@@ -2951,9 +2951,9 @@ class="ec-lmvtt-10">CropBox</span></span></span>, <span class="obeylines-h"><sp
class="ec-lmvtt-10">BleedBox</span></span></span>,
<span class="obeylines-h"><span class="verb"><span
class="ec-lmvtt-10">TrimBox</span></span></span>, and <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">ArtBox</span></span></span>. The dafault according
- to the PDF&#x00A0;Refence is <span class="obeylines-h"><span class="verb"><span
-class="ec-lmvtt-10">CropBox</span></span></span> </td>
+class="ec-lmvtt-10">ArtBox</span></span></span>. The default according
+ to the PDF&#x00A0;Reference is <span class="obeylines-h"><span class="verb"><span
+class="ec-lmvtt-10">CropBox</span></span></span> </td>
</tr><tr
style="vertical-align:baseline;" id="TBL-10-39-"><td style="white-space:nowrap; text-align:left;" id="TBL-10-39-1"
class="td01"><span
diff --git a/macros/latex/contrib/hyperref/doc/hyperref-doc.pdf b/macros/latex/contrib/hyperref/doc/hyperref-doc.pdf
index f641b410f2..ad89ac195c 100644
--- a/macros/latex/contrib/hyperref/doc/hyperref-doc.pdf
+++ b/macros/latex/contrib/hyperref/doc/hyperref-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/doc/hyperref-doc.tex b/macros/latex/contrib/hyperref/doc/hyperref-doc.tex
index 0d0c73190b..ae3645dd85 100644
--- a/macros/latex/contrib/hyperref/doc/hyperref-doc.tex
+++ b/macros/latex/contrib/hyperref/doc/hyperref-doc.tex
@@ -166,7 +166,7 @@
}
\makeatother
\title{Hypertext marks in \hologo{LaTeX}: a manual for \xpackage{hyperref}}
-\date{2023-11-09 v7.01f}
+\date{2023-11-26 v7.01g}
\begin{document}
@@ -439,7 +439,7 @@ case more keys gives back their value.
\subsection{Links commands}
The following commands are provided by all drivers to create links.
They can be used by packages if the user commands are not sufficient.
-New drivers must provide this commands with similar arguments.
+New drivers must provide these commands with similar arguments.
\begin{verbatim}
\hyper@anchor {destination name}
@@ -591,7 +591,7 @@ site-wide basis.
Note however that some options (for example \texttt{unicode}) can only be used as
package options, and not in \verb|\hypersetup| as the option settings are processed
as the package is read. The following tabular lists (hopefully all) these options.
-Be aware that some of the option do nothing or have
+Be aware that some of the options do nothing or have
changed behaviour if the new pdfmanagement and so the new generic \xpackage{hyperref} driver is used.
\begin{tabular}{>{\ttfamily}l>{\raggedright\arraybackslash}p{5cm}}
@@ -689,7 +689,7 @@ names that identify a position on a page in the document. They
are used in link targets for inner document links or the bookmarks,
for example.
-Usually anchor are set, if \cs{refstepcounter} is called.
+Usually anchors are set, if \cs{refstepcounter} is called.
Thus there is a counter name and value. Both are used to
construct the destination name. By default the counter value
follows the counter name separated by a dot. Example for
@@ -812,7 +812,7 @@ or \cs{strcmp} of \hologo{XeTeX}, package \xpackage{pdftexcmds} also supports
\end{verbatim}
\end{quote}
-With option \texttt{destlabel} destinations can also named manually,
+With option \texttt{destlabel} destinations can also be named manually,
if the destination is not yet renamed:
\begin{quote}
\verb|\HyperDestRename{|\meta{destination}\verb|}{|\meta{newname}\verb|}|
@@ -864,7 +864,7 @@ shipout, \cs{@currentHpage} is only reliable at shipout. With a
\begin{longtable}{>{\ttfamily}ll>{\itshape}lp{9cm}}
raiselinks & boolean & true & In the hypertex driver, the height of links is normally calculated by the driver as
- simply the base line of contained text; this options forces \verb|\special| commands to
+ simply the base line of contained text; this option forces \verb|\special| commands to
reflect the real height of the link (which could contain a graphic) \\
breaklinks & boolean & both & This option is in \xpackage{hyperref} only used in the dviwindo driver, in all other cases it doesn't do anything sensible---it neither allows nor prevents links to be broken. The ocgx2 package
checks the state of the boolean.\\
@@ -954,7 +954,7 @@ linktoc & text & section & make text (\verb|section|), page number (\v
linktocpage & boolean & false & make page number, not text, be link on TOC, LOF and LOT \\
breaklinks & boolean & false & allow links to break over lines by making links over multiple lines into PDF links to
the same target \\
-colorlinks & boolean & false & Colors the text of links and anchors. The colors chosen depend on the the type of
+colorlinks & boolean & false & Colors the text of links and anchors. The colors chosen depend on the type of
link. At present the only types of link distinguished are citations, page references,
URLs, local file references, and other links.
Unlike colored boxes, the colored
@@ -1024,7 +1024,7 @@ has been loaded.
For further information see description of package \xpackage{hycolor}.
The bookmark commands are stored in a file called
-\textit{jobname}\texttt{.out}. The files is not processed by \LaTeX\ so
+\textit{jobname}\texttt{.out}. The file is not processed by \LaTeX\ so
any markup is passed through. You can postprocess this file as needed;
as an aid for this, the \texttt{.out} file is not overwritten on the
next \TeX\ run if it is edited to contain the line
@@ -1093,11 +1093,11 @@ pdfpicktraybypdfsize
pdfprintarea & name & empty & set /PrintArea of viewer preferences. Possible values are
\verb|MediaBox|, \verb|CropBox|,
\verb|BleedBox|, \verb|TrimBox|, and \verb|ArtBox|.
- The dafault according to the PDF~Refence is \verb|CropBox| \\
+ The default according to the PDF~Reference is \verb|CropBox| \\
pdfprintclip & name & empty & set /PrintClip of viewer preferences. Possible values are
\verb|MediaBox|, \verb|CropBox|,
\verb|BleedBox|, \verb|TrimBox|, and \verb|ArtBox|.
- The dafault according to the PDF~Refence is \verb|CropBox| \\
+ The default according to the PDF~Reference is \verb|CropBox| \\
pdfprintpagerange & n n (n n)*
& empty & set /PrintPageRange of viewer preferences\\
pdfprintscaling & name & empty & page scaling option for print dialog
@@ -1109,11 +1109,11 @@ pdftoolbar & boolean & true & make PDF toolbar visible \\
pdfviewarea & name & empty & set /ViewArea of viewer preferences. Possible values are
\verb|MediaBox|, \verb|CropBox|,
\verb|BleedBox|, \verb|TrimBox|, and \verb|ArtBox|.
- The dafault according to the PDF~Refence is \verb|CropBox| \\
+ The default according to the PDF~Reference is \verb|CropBox| \\
pdfviewclip & name & empty & set /ViewClip of viewer preferences Possible values are
\verb|MediaBox|, \verb|CropBox|,
\verb|BleedBox|, \verb|TrimBox|, and \verb|ArtBox|.
- The dafault according to the PDF~Refence is \verb|CropBox| \\
+ The default according to the PDF~Reference is \verb|CropBox| \\
pdfwindowui & boolean & true & make PDF user interface elements visible \\
unicode & boolean & true & Unicode encoded PDF strings
\end{longtable}
diff --git a/macros/latex/contrib/hyperref/doc/hyperref-linktarget.pdf b/macros/latex/contrib/hyperref/doc/hyperref-linktarget.pdf
index 307ef8a813..d46d33cf45 100644
--- a/macros/latex/contrib/hyperref/doc/hyperref-linktarget.pdf
+++ b/macros/latex/contrib/hyperref/doc/hyperref-linktarget.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/doc/hyperref.pdf b/macros/latex/contrib/hyperref/doc/hyperref.pdf
index 9cbb79825a..a3c73cc5f6 100644
--- a/macros/latex/contrib/hyperref/doc/hyperref.pdf
+++ b/macros/latex/contrib/hyperref/doc/hyperref.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/doc/nameref.pdf b/macros/latex/contrib/hyperref/doc/nameref.pdf
index b1c45978ea..7259897a7a 100644
--- a/macros/latex/contrib/hyperref/doc/nameref.pdf
+++ b/macros/latex/contrib/hyperref/doc/nameref.pdf
Binary files differ
diff --git a/macros/latex/contrib/hyperref/hluatex.dtx b/macros/latex/contrib/hyperref/hluatex.dtx
index 96c5ef9610..cf6970a228 100644
--- a/macros/latex/contrib/hyperref/hluatex.dtx
+++ b/macros/latex/contrib/hyperref/hluatex.dtx
@@ -1,6 +1,6 @@
% \iffalse
% Source File: hluatex.dtx
-% 2023-11-09 v7.01f
+% 2023-11-26 v7.01g
%
% Copyright
% 2016-2019 Oberdiek Package Support Group
@@ -31,7 +31,7 @@
%
% \begin{macrocode}
%<*luatex>
-%% 2023-11-09 v7.01f
+%% 2023-11-26 v7.01g
%% force unicode encoding, see issue #101
%% code mostly copied from hxetex.def
\HyPsd@LoadUnicode
@@ -66,7 +66,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pdf@ifdraftmode{%
- \let\Hy@PutCatalog\ltx@gobble
+ \let\Hy@PutCatalog\@gobble
}{%
\let\Hy@PutCatalog\pdfcatalog
}
@@ -105,7 +105,7 @@
|ifx|\#2|\%%
|else
\\%
- |ltx@ReturnAfterFi{%
+ |Hy@ReturnAfterFi{%
|Hy@ExchangeBackslash#2|@nil
}%
|fi
@@ -116,7 +116,7 @@
\ifx\\#2\\%
\else
\@backslashchar(%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@ExchangeLeftParenthesis#2\@nil
}%
\fi
@@ -126,7 +126,7 @@
\ifx\\#2\\%
\else
\@backslashchar)%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@ExchangeRightParenthesis#2\@nil
}%
\fi
@@ -156,7 +156,7 @@
\fi
\ifHy@setpdfversion
\ifnum\Hy@pdf@majorminor@version<105 %
- \ltx@IfUndefined{pdfobjcompresslevel}{%
+ \@ifundefined{pdfobjcompresslevel}{%
}{%
\ifHy@verbose
\Hy@InfoNoLine{%
@@ -166,19 +166,19 @@
\Hy@pdf@majorversion.\Hy@pdf@minorversion
}%
\fi
- \pdfobjcompresslevel=\ltx@zero
+ \pdfobjcompresslevel=\z@
}%
\fi
\ifnum\Hy@pdfmajorminor@version=\Hy@pdf@majorminor@version\relax
\else
- \let\Hy@temp\ltx@empty
+ \let\Hy@temp\@empty
\def\Hy@temp@A#1#2{%
- \ifnum#1>\ltx@zero
+ \ifnum#1>\z@
\edef\Hy@temp{%
\Hy@temp
\space\space
\the#1\space #2%
- \ifnum#1=\ltx@one\else s\fi
+ \ifnum#1=\@ne\else s\fi
\MessageBreak
}%
\fi
@@ -187,15 +187,15 @@
\Hy@temp@A\lastsavedboxresourceindex{form XObject}%
\Hy@temp@A\lastsavedimageresourceindex{image XObject}%
\Hy@temp@A\pdflastannot{annotation}%
- \ltx@IfUndefined{pdflastlink}{%
+ \@ifundefined{pdflastlink}{%
}{%
\Hy@temp@A\pdflastlink{link}%
}%
- \ifx\Hy@temp\ltx@empty
+ \ifx\Hy@temp\@empty
\Hy@pdfmajorversion=\Hy@pdf@majorversion\relax
\Hy@pdfminorversion=\Hy@pdf@minorversion\relax
\else
- \let\Hy@temp@A\ltx@empty
+ \let\Hy@temp@A\@empty
\ifnum\Hy@pdf@majorminor@version=104 %
\IfFileExists{pdf14.sty}{%
\def\Hy@temp@A{%
@@ -218,7 +218,7 @@
\expandafter\string\Hy@pdfminorversion=\Hy@pdf@minorversion
\string\relax
\ifnum\Hy@pdf@majorminor@version<105 %
- \ltx@ifundefined{pdfobjcompresslevel}{%
+ \@ifundefined{pdfobjcompresslevel}{%
}{%
\MessageBreak
\space\space
@@ -426,7 +426,7 @@
}
\def\hyper@linkstart#1#2{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
@@ -436,7 +436,7 @@
\def\hyper@linkend{\close@pdflink}
\def\hyper@link#1#2#3{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
@@ -742,7 +742,7 @@
\fi
\fi
}{%
- \ltx@IfUndefined{stockwidth}{%
+ \@ifundefined{stockwidth}{%
\ifdim\paperwidth>\z@
\setlength{\pagewidth}{\paperwidth}%
\fi
@@ -813,8 +813,8 @@
\the\lastsavedboxresourceindex\space 0 R%
}%
}%
-\let\HyField@afields\ltx@empty
-\let\HyField@cofields\ltx@empty
+\let\HyField@afields\@empty
+\let\HyField@cofields\@empty
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdflastlink\endcsname\relax
\let\HyField@AddToFields\relax
@@ -826,37 +826,37 @@
but other PDF viewers might complain%
}%
\else
- \let\HyField@AuxAddToFields\ltx@gobble
- \let\HyField@AuxAddToCoFields\ltx@gobbletwo
+ \let\HyField@AuxAddToFields\@gobble
+ \let\HyField@AuxAddToCoFields\@gobbletwo
\def\HyField@AfterAuxOpen{\Hy@AtBeginDocument}%
\def\HyField@ABD@AuxAddToCoFields#1#2{%
\begingroup
\Hy@safe@activestrue
- \let\ltx@secondoftwo\relax
- \ifx\HyField@cofields\ltx@empty
+ \let\@secondoftwo\relax
+ \ifx\HyField@cofields\@empty
\xdef\HyField@cofields{%
- \ltx@secondoftwo{#1}{ #2 0 R}%
+ \@secondoftwo{#1}{ #2 0 R}%
}%
\else
- \let\ltx@secondoftwo\relax
+ \let\@secondoftwo\relax
\def\HyField@AddCoField##1##2##3{%
- \ifx##1\ltx@empty
- \ltx@secondoftwo{#1}{ #2 0 R}%
- \expandafter\ltx@gobble
+ \ifx##1\@empty
+ \@secondoftwo{#1}{ #2 0 R}%
+ \expandafter\@gobble
\else
- \ifnum\pdf@strcmp{##2}{#1}>\ltx@zero
- \ltx@secondoftwo{#1}{ #2 0 R}%
- \ltx@secondoftwo{##2}{##3}%
- \expandafter\expandafter\expandafter\ltx@gobble
+ \ifnum\pdf@strcmp{##2}{#1}>\z@
+ \@secondoftwo{#1}{ #2 0 R}%
+ \@secondoftwo{##2}{##3}%
+ \expandafter\expandafter\expandafter\@gobble
\else
- \ltx@secondoftwo{##2}{##3}%
+ \@secondoftwo{##2}{##3}%
\fi
\fi
\HyField@AddCoField
}%
\xdef\HyField@cofields{%
\expandafter\HyField@AddCoField
- \HyField@cofields\ltx@empty\ltx@empty\ltx@empty
+ \HyField@cofields\@empty\@empty\@empty
}%
\fi
\endgroup
@@ -887,7 +887,7 @@
\expandafter\HyField@@AddToFields\expandafter{%
\the\pdflastlink
}%
- \ifx\Fld@calculate@code\ltx@empty
+ \ifx\Fld@calculate@code\@empty
\else
\begingroup
\Hy@safe@activestrue
@@ -928,7 +928,7 @@
\immediate\pdfobj{%
<<%
/Fields[\HyField@afields]%
- \ifx\HyField@cofields\ltx@empty
+ \ifx\HyField@cofields\@empty
\else
/CO[\romannumeral-`\Q\HyField@cofields]%
\fi
@@ -968,16 +968,16 @@
\fbox{\textcolor{yellow}{\textsf{SubmitP}}}%
}{SubmitP}%
}
-\let\@endForm\ltx@empty
-\let\HyAnn@AbsPageLabel\ltx@empty
-\let\Fld@pageobjref\ltx@empty
-\ltx@IfUndefined{pdfpageref}{%
+\let\@endForm\@empty
+\let\HyAnn@AbsPageLabel\@empty
+\let\Fld@pageobjref\@empty
+\@ifundefined{pdfpageref}{%
}{%
- \ltx@ifpackageloaded{zref-abspage}{%
+ \@ifpackageloaded{zref-abspage}{%
\newcount\HyAnn@Count
- \HyAnn@Count=\ltx@zero
+ \HyAnn@Count=\z@
\def\HyAnn@AbsPageLabel{%
- \global\advance\HyAnn@Count by\ltx@one
+ \global\advance\HyAnn@Count by\@ne
\zref@labelbyprops{HyAnn@\the\HyAnn@Count}{abspage}%
\zref@refused{HyAnn@\the\HyAnn@Count}%
}%
@@ -997,7 +997,7 @@
}
\def\@TextField[#1]#2{% parameters, label
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\let\Fld@value\@empty
\def\Fld@width{\DefaultWidthofText}%
\def\Fld@height{%
@@ -1317,7 +1317,7 @@
\else
\expandafter
\Hy@pstringdef\csname Hy@esc@\string#2\endcsname{#2}%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@@escapeform#3\@nil
}%
\fi
@@ -1750,9 +1750,9 @@
\def\HyPsd@SanitizeOut@BraceLeft#1(#2\@nil{%
#1%
\ifx\\#2\\%
- \expandafter\ltx@gobble
+ \expandafter\@gobble
\else
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\fi
{%
\string\173%
@@ -1762,9 +1762,9 @@
\def\HyPsd@SanitizeOut@BraceRight#1)#2\@nil{%
#1%
\ifx\\#2\\%
- \expandafter\ltx@gobble
+ \expandafter\@gobble
\else
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\fi
{%
\string\175%
@@ -1913,7 +1913,7 @@
\endgroup
\H@old@schapter{#1}%
}
-\ltx@IfUndefined{@chapter}{}{%
+\@ifundefined{@chapter}{}{%
\let\Hy@org@chapter\@chapter
\def\@chapter{%
\def\Hy@next{%
@@ -1923,7 +1923,7 @@
}%
}%
\ifnum\c@secnumdepth>\m@ne
- \ltx@IfUndefined{if@mainmatter}%
+ \@ifundefined{if@mainmatter}%
\iftrue{\csname if@mainmatter\endcsname}%
\let\Hy@next\relax
\fi
diff --git a/macros/latex/contrib/hyperref/hyperref-linktarget.dtx b/macros/latex/contrib/hyperref/hyperref-linktarget.dtx
index 4c13813679..9c3ae090df 100644
--- a/macros/latex/contrib/hyperref/hyperref-linktarget.dtx
+++ b/macros/latex/contrib/hyperref/hyperref-linktarget.dtx
@@ -53,7 +53,7 @@
% }^^A
% }
%
-% \date{Version 2023-11-09 v7.01f}
+% \date{Version 2023-11-26 v7.01g}
%
% \maketitle
% \begin{documentation}
@@ -412,7 +412,7 @@
\cs_new_protected:Npn \@@_target_raise:n #1
{
\mode_if_vertical:TF
- { \UseSocket{hyp/raisedlink}{#1} }
+ { #1 }
{
\Hy@SaveSpaceFactor
\penalty\@M
diff --git a/macros/latex/contrib/hyperref/hyperref-patches.dtx b/macros/latex/contrib/hyperref/hyperref-patches.dtx
index 4a5134a2b2..29595e398b 100644
--- a/macros/latex/contrib/hyperref/hyperref-patches.dtx
+++ b/macros/latex/contrib/hyperref/hyperref-patches.dtx
@@ -55,7 +55,7 @@
% }^^A
% }
%
-% \date{Version 2023-11-09 v7.01f}
+% \date{Version 2023-11-26 v7.01g}
%
% \maketitle
% \begin{documentation}
diff --git a/macros/latex/contrib/hyperref/hyperref.dtx b/macros/latex/contrib/hyperref/hyperref.dtx
index 94d6b909ff..34c1b805d8 100644
--- a/macros/latex/contrib/hyperref/hyperref.dtx
+++ b/macros/latex/contrib/hyperref/hyperref.dtx
@@ -51,7 +51,7 @@
%<puvnenc>\ProvidesFile{puvnenc.def}
%<puarenc>\ProvidesFile{puarenc.def}
%<psdextra>\ProvidesFile{psdextra.def}
-%<!none&!packageEnd> [2023-11-09 v7.01f %
+%<!none&!packageEnd> [2023-11-26 v7.01g %
%<package> Hypertext links for LaTeX]
%<nohyperref> Dummy hyperref (SR)]
%<driver> Hyperref documentation driver file]
@@ -592,13 +592,10 @@
% change 2020-07-24: require newer pdftexcmds and remove fallback code
% for version older than 2010.
% change 2021-08-14: require expl3
+% change 2023-11-26: no longer require pdftexcmds
+% change 2023-11-26: no longer require expl3, we assume kernel is new enough.
% \begin{macrocode}
-\ifx\ExplSyntaxOn\undefined \RequirePackage{expl3}\fi
-\RequirePackage{ltxcmds}[2010/11/12]
\RequirePackage{iftex}[2019/10/24]
-\RequirePackage{pdftexcmds}[2018/09/10]
-% \end{macrocode}
-% \begin{macrocode}
\RequirePackage{infwarerr}[2010/04/08]
\RequirePackage{keyval}[1997/11/10]
\RequirePackage{kvsetkeys}[2007/09/29]
@@ -609,16 +606,16 @@
\RequirePackage{auxhook}[2009/12/14]
\RequirePackage{nameref}[2012/07/28]
\RequirePackage{etoolbox}
-\def\Hy@Error{\@PackageError{hyperref}}
-\def\Hy@Warning{\@PackageWarning{hyperref}}
-\def\Hy@WarningNoLine{\@PackageWarningNoLine{hyperref}}
-\def\Hy@Info{\@PackageInfo{hyperref}}
-\def\Hy@InfoNoLine{\@PackageInfoNoLine{hyperref}}
+\def\Hy@Error{\PackageError{hyperref}}
+\def\Hy@Warning{\PackageWarning{hyperref}}
+\def\Hy@WarningNoLine{\PackageWarningNoLine{hyperref}}
+\def\Hy@Info{\PackageInfo{hyperref}}
+\def\Hy@InfoNoLine#1{\PackageInfo{hyperref}{#1\@gobble}}
\def\Hy@Message#1{%
\GenericWarning{%
(hyperref)\@spaces\@spaces\@spaces\@spaces
}{%
- Package hyperref Message: #1\ltx@gobble
+ Package hyperref Message: #1\@gobble
}%
}
% \end{macrocode}
@@ -634,13 +631,13 @@
% \begin{macrocode}
\def\Hy@VersionCheck#1{%
\begingroup
- \ltx@IfUndefined{ver@hyperref.sty}{%
+ \@ifundefined{ver@hyperref.sty}{%
\Hy@Error{%
This should not happen!\MessageBreak
Missing hyperref version%
}\@ehd
}{%
- \ltx@IfUndefined{ver@#1}{%
+ \@ifundefined{ver@#1}{%
\Hy@Error{%
This should not happen!\MessageBreak
Missing version of `#1'%
@@ -689,31 +686,33 @@
% \subsection{Checks with regular expressions}
%
% \begin{macrocode}
-\ltx@IfUndefined{pdfmatch}{%
+\edef\Hy@leftbracechar{\string{}
+\edef\Hy@rightbracechar{\string}}
+\@ifundefined{pdfmatch}{%
\def\Hy@Match#1#2#3#4#5{}%
}{%
\def\Hy@Match#1#2#3{%
\begingroup
- \edef\^{\ltx@backslashchar\string^}%
- \edef\.{\ltx@backslashchar.}%
- \edef\[{\ltx@backslashchar[}% ]]
- \edef\${\ltx@backslashchar$}%
- \edef\({\ltx@backslashchar(}%
- \edef\){\ltx@backslashchar)}%
- \edef\|{\ltx@backslashchar|}%
- \edef\*{\ltx@backslashchar*}%
- \edef\+{\ltx@backslashchar+}%
- \edef\?{\ltx@backslashchar?}%
- \edef\{{\ltx@backslashchar\ltx@leftbracechar}%
- \edef\}{\ltx@rightbracechar}%
- \edef\\{\ltx@backslashchar\ltx@backslashchar}%
- \let\ \ltx@space
+ \edef\^{\@backslashchar\string^}%
+ \edef\.{\@backslashchar.}%
+ \edef\[{\@backslashchar[}% ]]
+ \edef\${\@backslashchar$}%
+ \edef\({\@backslashchar(}%
+ \edef\){\@backslashchar)}%
+ \edef\|{\@backslashchar|}%
+ \edef\*{\@backslashchar*}%
+ \edef\+{\@backslashchar+}%
+ \edef\?{\@backslashchar?}%
+ \edef\{{\@backslashchar\Hy@leftbracechar}%
+ \edef\}{\Hy@rightbracechar}%
+ \edef\\{\@backslashchar\@backslashchar}%
+ \let\ \Hy@space
\ifcase\pdfmatch#2{#3}{#1} %
\endgroup
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\or
\endgroup
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\else
\Hy@Warning{%
Internal error: Wrong pattern!\MessageBreak
@@ -721,7 +720,7 @@
Pattern check ignored%
}%
\endgroup
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\fi
}%
}
@@ -755,26 +754,31 @@
% `kvoptions' has to perform its option cleanup.
% Therefore we use a hook.
% \begin{macrocode}
+\ExplSyntaxOn
+\let\Hy@LocalAppendToMacro\tl_put_right:Nn
+\let\Hy@GlobalAppendToMacro\tl_gput_right:Nn
+\let\Hy@ifempty\tl_if_empty:nTF
+\ExplSyntaxOff
\def\Hy@AtBeginDocument{%
- \ltx@LocalAppendToMacro\Hy@AtBeginDocumentHook
+ \Hy@LocalAppendToMacro\Hy@AtBeginDocumentHook
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\Hy@AtEndOfPackage}
% \begin{macrocode}
\def\Hy@AtEndOfPackage{%
- \ltx@LocalAppendToMacro\Hy@AtEndOfPackageHook
+ \Hy@LocalAppendToMacro\Hy@AtEndOfPackageHook
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\Hy@AtBeginDocumentHook}
% \begin{macrocode}
-\let\Hy@AtBeginDocumentHook\ltx@empty
+\let\Hy@AtBeginDocumentHook\@empty
% \end{macrocode}
% \end{macro}
% \begin{macro}{\Hy@AtEndOfPackageHook}
% \begin{macrocode}
-\let\Hy@AtEndOfPackageHook\ltx@empty
+\let\Hy@AtEndOfPackageHook\@empty
% \end{macrocode}
% \end{macro}
% Install the hook, before package `kvoptions' is loaded.
@@ -912,18 +916,21 @@
%
% \begin{macrocode}
\newdimen\@linkdim
-\let\Hy@driver\ltx@empty
+\let\Hy@driver\@empty
\let\MaybeStopEarly\relax
\newcount\Hy@linkcounter
\newcount\Hy@pagecounter
\Hy@linkcounter0
\Hy@pagecounter0
+\def\Hy@space{ }
% \end{macrocode}
%
% \subsection{Macros for recursions}
%
% \begin{macrocode}
\let\Hy@ReturnEnd\@empty
+\long\def\Hy@ReturnAfterFi#1\fi{\fi#1}
+\long\def\Hy@ReturnAfterElseFi#1\else#2\fi{\fi#1}
\long\def\Hy@ReturnAfterFiFiEnd#1\fi#2\Hy@ReturnEnd{\fi\fi#1}
\long\def\Hy@ReturnAfterElseFiFiEnd#1\else#2\Hy@ReturnEnd{\fi\fi#1}
% \end{macrocode}
@@ -1189,7 +1196,7 @@
\let\P\textparagraph
\let\ldots\textellipsis
\let\dots\textellipsis
- \ltx@IfUndefined{textEncodingNoboundary}%
+ \@ifundefined{textEncodingNoboundary}%
{}{\let\noboundary\textEncodingNoboundary}%
% \end{macrocode}
%
@@ -1336,7 +1343,7 @@
% \begin{macrocode}
\let\foreignlanguage\@secondoftwo
\let\textlatin\@firstofone
- \ltx@IfUndefined{language@group}{}{%
+ \@ifundefined{language@group}{}{%
\let\bbl@info\@gobble
\csname HyPsd@babel@\language@group\endcsname
}%
@@ -1464,7 +1471,7 @@
%
% \paragraph{Package xspace.}
% \begin{macrocode}
- \ltx@IfUndefined{@xspace}{%
+ \@ifundefined{@xspace}{%
\let\xspace\HyPsd@ITALCORR
}{%
\let\xspace\HyPsd@XSPACE
@@ -1767,7 +1774,7 @@
% the string gets an additional \cs{HyPsd@empty}.
% \begin{macrocode}
\expandafter\HyPsd@Subst\expandafter{\/}\HyPsd@empty#1%
- \ltx@IfUndefined{@xspace}{%
+ \@ifundefined{@xspace}{%
}{%
\let\HyPsd@xspace\relax
\expandafter\HyPsd@Subst\expandafter
@@ -1859,7 +1866,7 @@
%
% \begin{macrocode}
\ifx\HyPsd@pdfencoding\HyPsd@pdfencoding@auto
- \ltx@IfUndefined{StringEncodingConvertTest}{%
+ \@ifundefined{StringEncodingConvertTest}{%
}{%
\EdefUnescapeString\HyPsd@temp#1%
\iftutex
@@ -1926,9 +1933,9 @@
}%
\Hy@AtEndOfPackage{%
\pdfstringdefDisableCommands{%
- \ltx@IfUndefined{oldb}{}{\let\b\oldb}%
- \ltx@IfUndefined{oldc}{}{\let\c\oldc}%
- \ltx@IfUndefined{oldd}{}{\let\d\oldd}%
+ \@ifundefined{oldb}{}{\let\b\oldb}%
+ \@ifundefined{oldc}{}{\let\c\oldc}%
+ \@ifundefined{oldd}{}{\let\d\oldd}%
}%
}%
}{%
@@ -2048,9 +2055,12 @@
% \end{macro}
% \begin{macro}{\HyPsd@LoadExtra}
% \begin{macrocode}
+\def\Hy@iffileloaded#1{%
+ \@ifundefined{ver@#1}\@secondoftwo\@firstoftwo
+}
\def\HyPsd@LoadExtra{%
\ifHy@psdextra
- \ltx@iffileloaded{puenc.def}{%
+ \Hy@iffileloaded{puenc.def}{%
\Hy@SaveCatcodeSettings{psdextra}%
\input{psdextra.def}%
\Hy@RestoreCatcodeSettings{psdextra}%
@@ -2137,7 +2147,7 @@
% \begin{macro}{\HyPsd@DisableCommands}
% \begin{macrocode}
\long\def\HyPsd@DisableCommands#1{%
- \ltx@GlobalAppendToMacro\pdfstringdefPreHook{#1}%
+ \Hy@GlobalAppendToMacro\pdfstringdefPreHook{#1}%
\endgroup
}
% \end{macrocode}
@@ -2234,7 +2244,7 @@
% \begin{macro}{\HyPsd@CJKhook}
% \begin{macrocode}
\def\HyPsd@CJKhook{%
- \ltx@ifpackageloaded{CJK}{%
+ \@ifpackageloaded{CJK}{%
\let\CJK@kern\relax
\let\CJKkern\relax
\let\CJK@CJK\relax
@@ -2776,7 +2786,7 @@
% \subsubsection{Fix for AMS classes}
%
% \begin{macrocode}
-\ltx@IfUndefined{tocsection}{%
+\@ifundefined{tocsection}{%
\let\HyPsd@AMSclassfix\relax
}{%
\def\HyPsd@AMSclassfix{%
@@ -2954,8 +2964,8 @@
% \begin{macro}{\HyPsd@@autorefname}
% \begin{macrocode}
\def\HyPsd@@autorefname#1.#2\@nil{%
- \ltx@IfUndefined{#1autorefname}{%
- \ltx@IfUndefined{#1name}{%
+ \@ifundefined{#1autorefname}{%
+ \@ifundefined{#1name}{%
}{%
\csname#1name\endcsname\space
}%
@@ -3111,7 +3121,7 @@
% \begin{macrocode}
\def\HyPsd@Warning#1{%
\begingroup
- \let\space\ltx@space
+ \let\space\Hy@space
\Hy@Warning{#1}%
\endgroup
}
@@ -3196,7 +3206,7 @@
%
% Because the string is already expanded, the \cs{if} commands
% should disappeared. So we can move some parts out
-% of the argument of \cs{ltx@ReturnAfterFi}.
+% of the argument of \cs{Hy@ReturnAfterFi}.
% \begin{macrocode}
\def\HyPsd@@RemoveBracesFi#1#2\HyPsd@End#3\fi{%
\fi
@@ -3256,7 +3266,7 @@
% comparison with \cs{ifcat}, see
% \url{http://tracker.luatex.org/view.php?id=773}.
% \begin{macrocode}
-\ltx@IfUndefined{directlua}{%
+\@ifundefined{directlua}{%
}{%
\expandafter\ifx\csname\endcsname\relax\fi
}
@@ -3287,7 +3297,7 @@
% \begin{macrocode}
\begingroup
\catcode`\Q=\active
- \let Q\ltx@empty
+ \let Q\@empty
\gdef\HyPsd@CheckCatcodes#1#2\HyPsd@End{%
\global\let\HyPsd@Rest\relax
\ifcat\relax\noexpand#1\relax
@@ -3509,7 +3519,7 @@
}%
\ifx\\#2\\%
\else
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\HyPsd@GlyphProcessWarning#2\@empty
}%
\fi
@@ -3601,12 +3611,12 @@
\lccode`\|=`\\%
\lccode`\(=`\{%
\lccode`\)=`\}%
- \lccode`0=\ltx@zero
- \lccode`1=\ltx@zero
- \lccode`3=\ltx@zero
- \lccode`4=\ltx@zero
- \lccode`5=\ltx@zero
- \lccode`7=\ltx@zero
+ \lccode`0=\z@
+ \lccode`1=\z@
+ \lccode`3=\z@
+ \lccode`4=\z@
+ \lccode`5=\z@
+ \lccode`7=\z@
\lowercase{\endgroup
\def\HyPsd@EscapeTeX#1{%
\HyPsd@Subst!{|045}#1%
@@ -3684,7 +3694,7 @@
|gdef|HyPsd@DoConvert#1{%
|ifx#1|@empty
|else
- |ltx@ReturnAfterFi{%
+ |Hy@ReturnAfterFi{%
|ifx#1\%%
\%%
|expandafter|HyPsd@DoEscape
@@ -3703,7 +3713,7 @@
|ifx#19%
|expandafter|HyPsd@GetTwoBytes
|else
- |ltx@ReturnAfterFi{%
+ |Hy@ReturnAfterFi{%
|ifx#18%
00%
|expandafter|HyPsd@GetTwoBytes
@@ -3800,14 +3810,14 @@
% case in the new latex code, so we test for it.
% \begin{macrocode}
\ifcsname UTFviii@loop\endcsname
- \def\HyPsd@expand@utfvii{%
+ \def\HyPsd@expand@utfviii {%
\count@"C2
\@tempcnta"F5
\def\UTFviii@tmp{\expandafter\def\expandafter~\expandafter{~}}%
\UTFviii@loop
}
\else
- \def\HyPsd@expand@utfvii{}
+ \def\HyPsd@expand@utfviii {}
\fi
% \end{macrocode}
% \end{macro}
@@ -3833,7 +3843,7 @@
\lccode`\~=`^^f4\relax
\lowercase{\endgroup
\def\HyPsd@UTFviii{%
- \HyPsd@expand@utfvii
+ \HyPsd@expand@utfviii
\let\UTFviii@two@octets\HyPsd@UTFviii@two
\let\UTFviii@three@octets\HyPsd@UTFviii@three
\let\UTFviii@four@octets\HyPsd@UTFviii@four
@@ -4086,9 +4096,9 @@
% \begin{macrocode}
\def\HyPsd@DieFaceLarge#1!{%
\ifnum#1>6 %
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\else
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\fi
{%
\9046\205%
@@ -4159,7 +4169,7 @@
% \begin{macro}{\HyPsd@@ding}
% \begin{macrocode}
\def\HyPsd@@ding#1!{%
- \ltx@ifundefined{HyPsd@ding@#1}{%
+ \@ifundefined{HyPsd@ding@#1}{%
\ifnum#1<127 %
\9047%
\HyPsd@DecimalToOctalSecond{\IntCalcSub#1!32!}%
@@ -4220,7 +4230,7 @@
% Added fix for version 2.1. Here \cmd{\sub@label} is defined.
% \begin{macrocode}
\@ifpackageloaded{subfigure}{%
- \ltx@IfUndefined{sub@label}{%
+ \@ifundefined{sub@label}{%
\Hy@hypertexnamesfalse
}{%
\renewcommand*{\sub@label}[1]{%
@@ -4440,8 +4450,8 @@
% \begin{macro}{\IfHyperBooleanExists}
% \begin{macrocode}
\def\IfHyperBooleanExists#1{%
- \ltx@ifundefined{Hy@#1false}\ltx@secondoftwo{%
- \ltx@ifundefined{KV@Hyp@#1@default}\ltx@secondoftwo\ltx@firstoftwo
+ \@ifundefined{Hy@#1false}\@secondoftwo{%
+ \@ifundefined{KV@Hyp@#1@default}\@secondoftwo\@firstoftwo
}%
}
% \end{macrocode}
@@ -4455,11 +4465,11 @@
\def\IfHyperBoolean#1{%
\IfHyperBooleanExists{#1}{%
\csname ifHy@#1\endcsname
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\else
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\fi
- }\ltx@secondoftwo
+ }\@secondoftwo
}
% \end{macrocode}
% \end{macro}
@@ -4505,7 +4515,7 @@
% \begin{macro}{\Hy@DisableOption}
% \begin{macrocode}
\def\Hy@DisableOption#1{%
- \ltx@ifundefined{KV@Hyp@#1@default}{%
+ \@ifundefined{KV@Hyp@#1@default}{%
\define@key{Hyp}{#1}%
}{%
\define@key{Hyp}{#1}[]%
@@ -4914,7 +4924,7 @@
%
% \begin{macrocode}
\newif\ifHy@DviMode
-\let\Hy@DviErrMsg\ltx@empty
+\let\Hy@DviErrMsg\@empty
\ifpdf
\def\Hy@DviErrMsg{pdfTeX or LuaTeX is running in PDF mode}%
\else
@@ -4934,13 +4944,13 @@
\fi
\def\HyOpt@CheckDvi#1{%
\ifHy@DviMode
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\else
\Hy@Error{%
Wrong DVI mode driver option `#1',\MessageBreak
because \Hy@DviErrMsg
}\@ehc
- \expandafter\ltx@gobble
+ \expandafter\@gobble
\fi
}
% \end{macrocode}
@@ -5134,7 +5144,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\let\HyOpt@DriverFallback\ltx@empty
+\let\HyOpt@DriverFallback\@empty
\define@key{Hyp}{driverfallback}{%
\ifHy@DviMode
\def\HyOpt@DriverFallback{#1}%
@@ -5146,14 +5156,14 @@
Invalid driver `#1' for option\MessageBreak
`driverfallback'%
}%
- \let\HyOpt@DriverFallback\ltx@empty
+ \let\HyOpt@DriverFallback\@empty
}%
\fi
}
% \end{macrocode}
%
% \begin{macrocode}
-\let\HyOpt@CustomDriver\ltx@empty
+\let\HyOpt@CustomDriver\@empty
\define@key{Hyp}{customdriver}{%
\IfFileExists{#1.def}{%
\def\HyOpt@CustomDriver{#1}%
@@ -5822,7 +5832,7 @@
\def\Hy@colorlink##1{\begingroup}%
\def\Hy@endcolorlink{\endgroup}%
\def\@pdfborder{0 0 0}%
- \let\@pdfborderstyle\ltx@empty
+ \let\@pdfborderstyle\@empty
}
\define@key{Hyp}{ocgcolorlinks}[true]{%
\Hy@boolkey{ocgcolorlinks}{#1}%
@@ -6024,7 +6034,7 @@
of option `pdfpageduration'\MessageBreak
is replaced by an empty value%
}%
- \let\@pdfpageduration\ltx@empty
+ \let\@pdfpageduration\@empty
}%
}
% \end{macrocode}
@@ -6421,7 +6431,7 @@
\x
\fi
}
-\global\let\HyInfo@AddonList\ltx@empty
+\global\let\HyInfo@AddonList\@empty
% \end{macrocode}
% \begin{macrocode}
\define@key{Hyp}{pdfview}{\calculate@pdfview#1 \\}
@@ -6440,14 +6450,14 @@
}%
\define@key{Hyp}{pdfstartpage}{%
\ifx\\#1\\%
- \let\@pdfstartpage\ltx@empty
+ \let\@pdfstartpage\@empty
\else
\edef\@pdfstartpage{\Hy@number{#1}}%
\fi
}%
\define@key{Hyp}{pdfstartview}{%
\ifx\\#1\\%
- \let\@pdfstartview\ltx@empty
+ \let\@pdfstartview\@empty
\else
\def\@pdfstartview{/#1}%
\fi
@@ -6549,7 +6559,7 @@
\fi
\ifx\@pdflang\relax
\else
- \ifx\@pdflang\ltx@empty
+ \ifx\@pdflang\@empty
\else
% \end{macrocode}
% Test according to ABNF of RFC 3066.
@@ -6612,7 +6622,7 @@
}%
}{}%
\Hy@Match\Hy@temp{icase}{%
- (-[a-wyz0-9]-).*\ltx@backslashchar1%
+ (-[a-wyz0-9]-).*\@backslashchar1%
}{%
\Hy@Warning{%
Invalid language identifier `#1'\MessageBreak
@@ -6683,20 +6693,20 @@
\def\@runbordercolor{0 .7 .7}
\def\@citebordercolor{0 1 0}
\def\@pdfhighlight{/I}
-\let\@pdftitle\ltx@empty
-\let\@pdfauthor\ltx@empty
+\let\@pdftitle\@empty
+\let\@pdfauthor\@empty
\let\@pdfproducer\relax
\def\@pdfcreator{LaTeX with hyperref}
-\let\@pdfcreationdate\ltx@empty
-\let\@pdfmoddate\ltx@empty
-\let\@pdfsubject\ltx@empty
-\let\@pdfkeywords\ltx@empty
-\let\@pdftrapped\ltx@empty
-\let\@pdfpagescrop\ltx@empty
+\let\@pdfcreationdate\@empty
+\let\@pdfmoddate\@empty
+\let\@pdfsubject\@empty
+\let\@pdfkeywords\@empty
+\let\@pdftrapped\@empty
+\let\@pdfpagescrop\@empty
\def\@pdfstartview{/Fit}
\def\@pdfremotestartview{/Fit}
\def\@pdfstartpage{1}
-\let\@pdfprintpagerange\ltx@empty
+\let\@pdfprintpagerange\@empty
\let\@pdflang\relax
\let\PDF@SetupDoc\@empty
\let\PDF@FinishDoc\@empty
@@ -6759,21 +6769,21 @@
\@ifpackageloaded{tex4ht}{%
\PassOptionsToPackage{tex4ht}{hyperref}%
}{%
- \ltx@IfUndefined{HCode}{%
+ \@ifundefined{HCode}{%
}{%
\begingroup
\def\Hy@pkg{tex4ht}%
\def\Hy@temp@A#1\RequirePackage[#2]#3#4\Hy@NIL{%
\def\Hy@param{#2#3}%
- \ifx\Hy@param\ltx@empty
- \expandafter\ltx@gobble
+ \ifx\Hy@param\@empty
+ \expandafter\@gobble
\else
\def\Hy@param{#3}%
\ifx\Hy@param\Hy@pkg
\PassOptionsToPackage{#2}{tex4ht}%
\expandafter\expandafter\expandafter\@gobble
\else
- \expandafter\expandafter\expandafter\ltx@firstofone
+ \expandafter\expandafter\expandafter\@firstofone
\fi
\fi
{\Hy@temp@A#4\Hy@NIL}%
@@ -6798,12 +6808,12 @@
%
% \begin{macrocode}
\def\Hy@xspace@end{}
-\ltx@IfUndefined{xspaceaddexceptions}{%
+\@ifundefined{xspaceaddexceptions}{%
\Hy@AtBeginDocument{%
- \ltx@IfUndefined{xspaceaddexceptions}{%
+ \@ifundefined{xspaceaddexceptions}{%
}{%
\def\Hy@xspace@end{%
- \ltx@gobble{end for xspace}%
+ \@gobble{end for xspace}%
}%
\xspaceaddexceptions{%
\Hy@xspace@end,\hyper@linkend,\hyper@anchorend
@@ -6812,7 +6822,7 @@
}%
}{%
\def\Hy@xspace@end{%
- \ltx@gobble{end for xspace}%
+ \@gobble{end for xspace}%
}%
\xspaceaddexceptions{\Hy@xspace@end,\hyper@linkend,\hyper@anchorend}%
}
@@ -7100,8 +7110,8 @@
% If the driver is not given, find the right driver or
% use the default driver.
% \begin{macrocode}
- \let\HyOpt@DriverType\ltx@empty
- \ifx\HyOpt@CustomDriver\ltx@empty
+ \let\HyOpt@DriverType\@empty
+ \ifx\HyOpt@CustomDriver\@empty
\ifx\Hy@driver\@empty
\def\HyOpt@DriverType{ (autodetected)}%
\providecommand*{\Hy@defaultdriver}{hdvips}%
@@ -7135,7 +7145,7 @@
\ifnum\ifvtex\OpMode\else\m@ne\fi=\tw@
\def\Hy@driver{hvtex}%
\else
- \ifx\HyOpt@DriverFallback\ltx@empty
+ \ifx\HyOpt@DriverFallback\@empty
\let\Hy@driver\Hy@defaultdriver
\def\HyOpt@DriverType{ (default)}%
\else
@@ -7145,7 +7155,7 @@
\noexpand\kvsetkeys{Hyp}{\the\toks@}%
}%
\x
- \ifx\Hy@driver\ltx@empty
+ \ifx\Hy@driver\@empty
\let\Hy@driver\Hy@defaultdriver
\def\HyOpt@DriverType{ (default)}%
\else
@@ -7246,7 +7256,7 @@
\def\@pdfpagemode{UseOutlines}%
\fi
\else
- \let\@bookmarkopenstatus\ltx@gobble
+ \let\@bookmarkopenstatus\@gobble
\Hy@Info{Bookmarks OFF}%
\Hy@AtEndOfPackage{%
\global\let\ReadBookmarks\relax
@@ -7262,7 +7272,7 @@
% Add wrapper for setting standard catcodes (babel's shorthands).
% \begin{macrocode}
\def\Hy@CatcodeWrapper#1{%
- \let\Hy@EndWrap\ltx@empty
+ \let\Hy@EndWrap\@empty
\def\TMP@EnsureCode##1##2{%
\edef\Hy@EndWrap{%
\Hy@EndWrap
@@ -7447,11 +7457,11 @@
\gdef\hyper@n@rmalise#1#2{^^A
\def\Hy@tempa{#2}^^A
\ifx\Hy@tempa\Hy@ActiveCarriageReturn
- \ltx@ReturnAfterElseFi{^^A
+ \Hy@ReturnAfterElseFi{^^A
\hyper@@normalise{#1}^^A
}^^A
\else
- \ltx@ReturnAfterFi{^^A
+ \Hy@ReturnAfterFi{^^A
\hyper@@normalise{#1}{#2}^^A
}^^A
\fi
@@ -7467,7 +7477,7 @@
#1^^A
\ifx\limits#2\limits
\else
- \ltx@ReturnAfterFi{^^A
+ \Hy@ReturnAfterFi{^^A
\Hy@RemovePercentCr #2\@nil
}^^A
\fi
@@ -7610,7 +7620,7 @@
% \begin{macrocode}
\newif\ifHy@href@ismap
\define@key{href}{ismap}[true]{%
- \ltx@IfUndefined{Hy@href@ismap#1}{%
+ \@ifundefined{Hy@href@ismap#1}{%
\Hy@Error{%
Invalid value (#1) for key `ismap'.\MessageBreak
Permitted values are `true' or `false'.\MessageBreak
@@ -7886,18 +7896,18 @@
% #3: destination name
% #4: text
\def\hyper@link@[#1]#2#3#4{%
- \ltx@ifempty{#4}{% link text
+ \Hy@ifempty{#4}{% link text
\Hy@Warning{Suppressing empty link}%
}{%
\begingroup
\protected@edef\Hy@tempa{#2}%
\edef\Hy@tempb{#3}%
- \ifx\Hy@tempa\ltx@empty
- \ifx\Hy@tempb\ltx@empty
+ \ifx\Hy@tempa\@empty
+ \ifx\Hy@tempb\@empty
\Hy@Warning{Suppressing link with empty target}%
\toks@{%
\endgroup
- \ltx@secondoftwo
+ \@secondoftwo
}%
\else
\toks@{%
@@ -8059,9 +8069,9 @@
\expandafter\def\expandafter\z\expandafter##\expandafter1\y##2\@nil{%
\endgroup
\ifx\relax##2\relax
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\else
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\fi
}%
\expandafter\expandafter\expandafter\z\expandafter\x\y\@nil
@@ -8136,7 +8146,7 @@
\fi
\let\anchor@spot\@empty
}
-\let\anchor@spot\ltx@empty
+\let\anchor@spot\@empty
% \end{macrocode}
%
% \section{Option `destlabel'}
@@ -8167,7 +8177,7 @@
% \begin{macro}{\Hy@DestRename}
% \begin{macrocode}
\newcommand*{\Hy@DestRename}[2]{%
- \ltx@IfUndefined{HyDL!#1}{%
+ \@ifundefined{HyDL!#1}{%
\begingroup
\Hy@safe@activestrue
\edef\dest@name{#1}%
@@ -8176,7 +8186,7 @@
\Hy@IsNotEmpty{dest@name}{%
\Hy@IsNotEmpty{label@name}{%
\global\expandafter
- \let\csname HyDL!#1\endcsname\ltx@empty
+ \let\csname HyDL!#1\endcsname\@empty
\if@filesw
\protected@write\@auxout{}{%
\string\hyper@newdestlabel
@@ -8206,18 +8216,18 @@
% \begin{macro}{\Hy@IsNotEmpty}
% \begin{macrocode}
\def\Hy@IsNotEmpty#1{%
- \ltx@IfUndefined{#1}\ltx@gobble{%
- \expandafter\ifx\csname#1\endcsname\ltx@empty
- \expandafter\ltx@gobble
+ \@ifundefined{#1}\@gobble{%
+ \expandafter\ifx\csname#1\endcsname\@empty
+ \expandafter\@gobble
\else
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\fi
}%
}%
% \end{macrocode}
% \end{macro}
% \begin{macrocode}
- \ltx@GlobalAppendToMacro\label@hook{%
+ \Hy@GlobalAppendToMacro\label@hook{%
\HyperDestRename\@currentHref\label@name
}%
% \end{macrocode}
@@ -8225,7 +8235,7 @@
% \begin{macro}{\HyperDestLabelReplace}
% \begin{macrocode}
\def\HyperDestLabelReplace#1{%
- \ltx@ifundefined{HyDL@#1}{%
+ \@ifundefined{HyDL@#1}{%
#1%
}{%
\csname HyDL@#1\endcsname
@@ -8244,17 +8254,17 @@
% \end{macrocode}
% \begin{macro}{\hyper@newdestlabel}
% \begin{macrocode}
- \let\hyper@newdestlabel\ltx@gobbletwo
+ \let\hyper@newdestlabel\@gobbletwo
% \end{macrocode}
% \end{macro}
% \begin{macro}{\HyperDestLabelReplace}
% \begin{macrocode}
- \let\HyperDestLabelReplace\ltx@firstofone
+ \let\HyperDestLabelReplace\@firstofone
% \end{macrocode}
% \end{macro}
% \begin{macro}{\HyperDestRename}
% \begin{macrocode}
- \let\HyperDestRename\ltx@gobbletwo
+ \let\HyperDestRename\@gobbletwo
% \end{macrocode}
% \end{macro}
% \begin{macrocode}
@@ -8590,7 +8600,7 @@
\fi
\HyField@PrintFlags{Submit}{submit button field}%
\bitsetIsEmpty{HyField@Submit}{%
- \let\Fld@submitflags\ltx@empty
+ \let\Fld@submitflags\@empty
}{%
\edef\Fld@submitflags{/Flags \bitsetGetDec{HyField@Submit}}%
}%
@@ -8615,7 +8625,7 @@
\HyField@UseFlag{F}{LockedContents}%
\HyField@PrintFlags{F}{#1}%
\bitsetIsEmpty{HyField@F}{%
- \let\Fld@annotflags\ltx@empty
+ \let\Fld@annotflags\@empty
}{%
\edef\Fld@annotflags{/F \bitsetGetDec{HyField@F}}%
}%
@@ -8636,7 +8646,7 @@
\HyField@SetFlag{Ff}{Pushbutton}%
\HyField@PrintFlags{Ff}{push button field}%
\bitsetIsEmpty{HyField@Ff}{%
- \let\Fld@flags\ltx@empty
+ \let\Fld@flags\@empty
}{%
\edef\Fld@flags{/Ff \bitsetGetDec{HyField@Ff}}%
}%
@@ -8656,7 +8666,7 @@
\HyField@UseFlag{Ff}{NoExport}%
\HyField@PrintFlags{Ff}{check box field}%
\bitsetIsEmpty{HyField@Ff}{%
- \let\Fld@flags\ltx@empty
+ \let\Fld@flags\@empty
}{%
\edef\Fld@flags{/Ff \bitsetGetDec{HyField@Ff}}%
}%
@@ -8679,7 +8689,7 @@
\HyField@UseFlag{Ff}{RadiosInUnison}%
\HyField@PrintFlags{Ff}{radio button field}%
\bitsetIsEmpty{HyField@Ff}{%
- \let\Fld@flags\ltx@empty
+ \let\Fld@flags\@empty
}{%
\edef\Fld@flags{/Ff \bitsetGetDec{HyField@Ff}}%
}%
@@ -8718,7 +8728,7 @@
\HyField@UseFlag{Ff}{RichText}%
\HyField@PrintFlags{Ff}{text field}%
\bitsetIsEmpty{HyField@Ff}{%
- \let\Fld@flags\ltx@empty
+ \let\Fld@flags\@empty
}{%
\edef\Fld@flags{/Ff \bitsetGetDec{HyField@Ff}}%
}%
@@ -8750,7 +8760,7 @@
\HyField@UseFlag{Ff}{CommitOnSelChange}%
\HyField@PrintFlags{Ff}{choice field}%
\bitsetIsEmpty{HyField@Ff}{%
- \let\Fld@flags\ltx@empty
+ \let\Fld@flags\@empty
}{%
\edef\Fld@flags{/Ff \bitsetGetDec{HyField@Ff}}%
}%
@@ -8768,8 +8778,8 @@
% \begin{macrocode}
\def\HyField@PDFChoices#1{%
\begingroup
- \global\let\Fld@choices\ltx@empty
- \let\HyTmp@optlist\ltx@empty
+ \global\let\Fld@choices\@empty
+ \let\HyTmp@optlist\@empty
\let\HyTmp@optitem\relax
\count@=0 %
\kv@parse{#1}{%
@@ -9111,7 +9121,7 @@
\Fld@DingDef\Fld@radiosymbol{#1}%
}
\def\Fld@DingDef#1#2{%
- \let\Fld@temp\ltx@empty
+ \let\Fld@temp\@empty
\Fld@@DingDef#2\ding{}\@nil
\let#1\Fld@temp
}
@@ -9155,17 +9165,17 @@
}
% \end{macrocode}
% \begin{macrocode}
-\let\Fld@onclick@code\ltx@empty
-\let\Fld@format@code\ltx@empty
-\let\Fld@validate@code\ltx@empty
-\let\Fld@calculate@code\ltx@empty
-\let\Fld@keystroke@code\ltx@empty
-\let\Fld@onfocus@code\ltx@empty
-\let\Fld@onblur@code\ltx@empty
-\let\Fld@onmousedown@code\ltx@empty
-\let\Fld@onmouseup@code\ltx@empty
-\let\Fld@onenter@code\ltx@empty
-\let\Fld@onexit@code\ltx@empty
+\let\Fld@onclick@code\@empty
+\let\Fld@format@code\@empty
+\let\Fld@validate@code\@empty
+\let\Fld@calculate@code\@empty
+\let\Fld@keystroke@code\@empty
+\let\Fld@onfocus@code\@empty
+\let\Fld@onblur@code\@empty
+\let\Fld@onmousedown@code\@empty
+\let\Fld@onmouseup@code\@empty
+\let\Fld@onenter@code\@empty
+\let\Fld@onexit@code\@empty
\def\Hy@temp#1{%
\expandafter\Hy@@temp\csname Fld@#1@code\endcsname{#1}%
}
@@ -9192,7 +9202,7 @@
\Hy@temp{onexit}
% \end{macrocode}
% \begin{macrocode}
-\let\Fld@calculate@sortkey\ltx@empty
+\let\Fld@calculate@sortkey\@empty
\define@key{Field}{calculatesortkey}[1]{%
\def\Fld@calculate@sortkey{#1}%
}
@@ -9432,10 +9442,10 @@
\def\hyper@@anchor##1##2{##2\Hy@xspace@end}%
\global\let\hyper@livelink\hyper@link
\gdef\hyper@link##1##2##3{##3\Hy@xspace@end}%
- \let\hyper@anchor\ltx@gobble
- \let\hyper@anchorstart\ltx@gobble
+ \let\hyper@anchor\@gobble
+ \let\hyper@anchorstart\@gobble
\def\hyper@anchorend{\Hy@xspace@end}%
- \let\hyper@linkstart\ltx@gobbletwo
+ \let\hyper@linkstart\@gobbletwo
\def\hyper@linkend{\Hy@xspace@end}%
\def\hyper@linkurl##1##2{##1\Hy@xspace@end}%
\def\hyper@linkfile##1##2##3{##1\Hy@xspace@end}%
@@ -9444,12 +9454,12 @@
\def\stop@hyper{%
\def\hyper@link@[##1]##2##3##4{##4\Hy@xspace@end}%
\let\Hy@backout\@gobble
- \let\hyper@@anchor\ltx@gobble
+ \let\hyper@@anchor\@gobble
\def\hyper@link##1##2##3{##3\Hy@xspace@end}%
- \let\hyper@anchor\ltx@gobble
- \let\hyper@anchorstart\ltx@gobble
+ \let\hyper@anchor\@gobble
+ \let\hyper@anchorstart\@gobble
\def\hyper@anchorend{\Hy@xspace@end}%
- \let\hyper@linkstart\ltx@gobbletwo
+ \let\hyper@linkstart\@gobbletwo
\def\hyper@linkend{\Hy@xspace@end}%
\def\hyper@linkurl##1##2{##1\Hy@xspace@end}%
\def\hyper@linkfile##1##2##3{##1\Hy@xspace@end}%
@@ -9567,7 +9577,7 @@
\string\gdef\string\HyperFirstAtBeginDocument\string#1{\string#1}%
}%
\fi
- \let\HyperFirstAtBeginDocument\ltx@firstofone
+ \let\HyperFirstAtBeginDocument\@firstofone
% \end{macrocode}
%
% Now the code to deal with adding the hyperref package to a document
@@ -9659,7 +9669,7 @@
%
% \begin{macrocode}
\def\Hy@UseMaketitleString#1{%
- \ltx@IfUndefined{Hy@#1}{}{%
+ \@ifundefined{Hy@#1}{}{%
\begingroup
\let\Hy@saved@hook\pdfstringdefPreHook
\pdfstringdefDisableCommands{%
@@ -9692,12 +9702,12 @@
%
% \begin{macrocode}
\RequirePackage{atbegshi}[2007/09/09]
-\let\Hy@EveryPageHook\ltx@empty
-\let\Hy@EveryPageBoxHook\ltx@empty
-\let\Hy@FirstPageHook\ltx@empty
+\let\Hy@EveryPageHook\@empty
+\let\Hy@EveryPageBoxHook\@empty
+\let\Hy@FirstPageHook\@empty
\AtBeginShipout{%
\Hy@EveryPageHook
- \ifx\Hy@EveryPageBoxHook\ltx@empty
+ \ifx\Hy@EveryPageBoxHook\@empty
\else
\setbox\AtBeginShipoutBox=\vbox{%
\offinterlineskip
@@ -9706,10 +9716,10 @@
}%
\fi
}
-\ltx@iffileloaded{hpdftex.def}{%
+\Hy@iffileloaded{hpdftex.def}{%
\AtBeginShipout{%
\Hy@FirstPageHook
- \global\let\Hy@FirstPageHook\ltx@empty
+ \global\let\Hy@FirstPageHook\@empty
}%
}{%
\AtBeginShipoutFirst{%
@@ -9718,7 +9728,7 @@
}
\g@addto@macro\Hy@FirstPageHook{%
\PDF@FinishDoc
- \global\let\PDF@FinishDoc\ltx@empty
+ \global\let\PDF@FinishDoc\@empty
}
% \end{macrocode}
%
@@ -9754,7 +9764,7 @@
% The page labels are collected in \cmd{\HyPL@Labels} and
% set at the end of the document.
% \begin{macrocode}
- \let\HyPL@Labels\ltx@empty
+ \let\HyPL@Labels\@empty
% \end{macrocode}
% \end{macro}
% \begin{macro}{\Hy@abspage}
@@ -9770,7 +9780,7 @@
% \begin{macrocode}
\def\HyPL@LastType{init}%
\def\HyPL@LastNumber{0}%
- \let\HyPL@LastPrefix\ltx@empty
+ \let\HyPL@LastPrefix\@empty
% \end{macrocode}
% Definitions for the PDF names of the \LaTeX{} pendents.
% \begin{macrocode}
@@ -9782,18 +9792,18 @@
% \end{macrocode}
%
% \begin{macrocode}
- \let\HyPL@SlidesSetPage\ltx@empty
- \ltx@ifclassloaded{slides}{%
+ \let\HyPL@SlidesSetPage\@empty
+ \@ifclassloaded{slides}{%
\def\HyPL@SlidesSetPage{%
- \advance\c@page\ltx@one
- \ifnum\value{page}>\ltx@one
+ \advance\c@page\@ne
+ \ifnum\value{page}>\@ne
\protected@edef\HyPL@SlidesOptionalPage{%
\Hy@SlidesFormatOptionalPage{\thepage}%
}%
\else
- \let\HyPL@SlidesOptionalPage\ltx@empty
+ \let\HyPL@SlidesOptionalPage\@empty
\fi
- \advance\c@page-\ltx@one
+ \advance\c@page-\@ne
\def\HyPL@page{%
\csname the\Hy@SlidesPage\endcsname
\HyPL@SlidesOptionalPage
@@ -9818,7 +9828,7 @@
\fi
\let\HyPL@Type\relax
\ifnum\c@page>0 %
- \ifx\HyPL@SlidesSetPage\ltx@empty
+ \ifx\HyPL@SlidesSetPage\@empty
\expandafter\HyPL@CheckThePage\HyPL@page\@nil
\fi
\fi
@@ -10017,7 +10027,7 @@
% \begin{macrocode}
%<*pdftex>
\pdf@ifdraftmode{%
- \let\Hy@PutCatalog\ltx@gobble
+ \let\Hy@PutCatalog\@gobble
}{%
\let\Hy@PutCatalog\pdfcatalog
}
@@ -10313,7 +10323,7 @@
\Hy@CounterExists{part}{%
\providecommand\theHpart{\arabic{part}}%
}
-\ltx@IfUndefined{thechapter}{%
+\@ifundefined{thechapter}{%
\providecommand\theHsection {\arabic{section}}%
\providecommand\theHfigure {\arabic{figure}}%
\providecommand\theHtable {\arabic{table}}%
@@ -10445,7 +10455,7 @@
\@ifundefined{theH#1}{%
\expandafter\def\csname theH#1\endcsname{}%
\def\Hy@temp{\@elt{#1}}%
- \ltx@onelevel@sanitize\Hy@temp
+ \@onelevel@sanitize\Hy@temp
\let\HyOrg@elt\@elt
\edef\@elt{%
\noexpand\HyCnt@LookForParentCounter
@@ -10454,7 +10464,7 @@
\cl@@ckpt
\let\@elt\HyOrg@elt
\expandafter
- \ltx@LocalAppendToMacro\csname theH#1\expandafter\endcsname
+ \Hy@LocalAppendToMacro\csname theH#1\expandafter\endcsname
\expandafter{%
\expandafter\@arabic\csname c@#1\endcsname
}%
@@ -10466,20 +10476,20 @@
% \begin{macrocode}
\def\HyCnt@LookForParentCounter#1#2{%
\expandafter\let\expandafter\Hy@temp@A\csname cl@#2\endcsname
- \ltx@IfUndefined{cl@#2}{%
+ \@ifundefined{cl@#2}{%
}{%
- \ltx@onelevel@sanitize\Hy@temp@A
+ \@onelevel@sanitize\Hy@temp@A
\edef\Hy@temp@A{%
\noexpand\in@{\Hy@temp}{\Hy@temp@A}%
}\Hy@temp@A
\ifin@
- \ltx@IfUndefined{theH#2}{%
- \expandafter\ltx@LocalAppendToMacro\expandafter#1%
+ \@ifundefined{theH#2}{%
+ \expandafter\Hy@LocalAppendToMacro\expandafter#1%
\expandafter{%
\expandafter\@arabic\csname c@#2\endcsname.%
}%
}{%
- \expandafter\ltx@LocalAppendToMacro\expandafter#1%
+ \expandafter\Hy@LocalAppendToMacro\expandafter#1%
\expandafter{%
\csname theH#2\endcsname.%
}%
@@ -10508,7 +10518,7 @@
\fi
\def\Hy@appendixstring{appendix}
\def\Hy@chapapp{\Hy@chapterstring}
-\ltx@IfUndefined{appendix}{%
+\@ifundefined{appendix}{%
}{%
\let\HyOrg@appendix\appendix
\def\Hy@AlphNoErr#1{%
@@ -10523,7 +10533,7 @@
\fi
}%
\def\appendix{%
- \ltx@IfUndefined{chapter}{%
+ \@ifundefined{chapter}{%
\gdef\theHsection{\Hy@AlphNoErr{section}}%
}{%
\gdef\theHchapter{\Hy@AlphNoErr{chapter}}%
@@ -10818,7 +10828,7 @@
\let\refstepcounter\new@refstepcounter
}%
\def\endequation{%
- \ifx\Hy@raisedlink\ltx@empty
+ \ifx\Hy@raisedlink\@empty
\hyper@anchorend
\else
\mathclose{\Hy@raisedlink{\hyper@anchorend}}%
@@ -10877,7 +10887,7 @@
% Then again, we have the \emph{subeqnarray}
% package. Tanmoy provided some code for this:
% \begin{macrocode}
-\ltx@IfUndefined{subeqnarray}{}{%
+\@ifundefined{subeqnarray}{}{%
\let\H@subeqnarray\subeqnarray
\let\H@endsubeqnarray\endsubeqnarray
\def\subeqnarray{%
@@ -11067,9 +11077,9 @@
\long\def\@mpfootnotetext#1{%
\H@@mpfootnotetext{%
\ifHy@nesting
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\else
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\fi
{%
\expandafter\hyper@@anchor\expandafter{%
@@ -11087,9 +11097,9 @@
\long\def\@footnotetext#1{%
\H@@footnotetext{%
\ifHy@nesting
- \expandafter\ltx@firstoftwo
+ \expandafter\@firstoftwo
\else
- \expandafter\ltx@secondoftwo
+ \expandafter\@secondoftwo
\fi
{%
\expandafter\hyper@@anchor\expandafter{%
@@ -11507,7 +11517,7 @@
% \begin{macrocode}
\@ifundefined{hyper@nopatch@bib}
{%
- \ltx@IfUndefined{NAT@parse}{%
+ \@ifundefined{NAT@parse}{%
\providecommand*\@extra@binfo{}%
\providecommand*\@extra@b@citeb{}%
\def\bibcite#1#2{%
@@ -11783,12 +11793,12 @@
\def\@currentHpage{Doc-Start}
% \end{macrocode}
% \begin{macrocode}
-\ltx@ifclassloaded{slides}{%
+\@ifclassloaded{slides}{%
\def\Hy@SlidesFormatOptionalPage#1{(#1)}%
\def\Hy@PageAnchorSlidesPlain{%
- \advance\c@page\ltx@one
+ \advance\c@page\@ne
\xdef\@currentHpage{page.\the\c@slide.\the\c@overlay.\the\c@note%
- \ifnum\c@page=\ltx@one
+ \ifnum\c@page=\@ne
\else
.\the\c@page
\fi}%
@@ -11797,12 +11807,12 @@
\@currentHpage
}%
}%
- \advance\c@page-\ltx@one
+ \advance\c@page-\@ne
}%
\def\Hy@PageAnchorSlide{%
- \advance\c@page\ltx@one
- \ifnum\c@page>\ltx@one
- \ltx@IfUndefined{theHpage}{%
+ \advance\c@page\@ne
+ \ifnum\c@page>\@ne
+ \@ifundefined{theHpage}{%
\protected@edef\Hy@TheSlideOptionalPage{%
\Hy@SlidesFormatOptionalPage{\thepage}%
}%
@@ -11814,16 +11824,16 @@
\else
\def\Hy@TheSlideOptionalPage{}%
\fi
- \advance\c@page-\ltx@one
+ \advance\c@page-\@ne
\pdfstringdef\@the@H@page{%
\csname
the%
- \ltx@ifundefined{theH\Hy@SlidesPage}{}{H}%
+ \@ifundefined{theH\Hy@SlidesPage}{}{H}%
\Hy@SlidesPage
\endcsname
\Hy@TheSlideOptionalPage
}%
- \ltx@gobblethree
+ \@gobblethree
}%
\def\Hy@SlidesPage{slide}%
\g@addto@macro\slide{%
@@ -11972,7 +11982,7 @@
\edef\x{\endgroup
\def\noexpand\Hy@tocdestname{#4}%
}\x
- \ifx\Hy@tocdestname\ltx@empty
+ \ifx\Hy@tocdestname\@empty
\csname l@#1\endcsname{#2}{#3}%
\else
\ifcase\Hy@linktoc % none
@@ -11983,7 +11993,7 @@
}{#3}%
\or % page
\def\Hy@temp{#3}%
- \ifx\Hy@temp\ltx@empty
+ \ifx\Hy@temp\@empty
\csname l@#1\endcsname{#2}{#3}%
\else
\csname l@#1\endcsname{{#2}}{%
@@ -11992,7 +12002,7 @@
\fi
\else % all
\def\Hy@temp{#3}%
- \ifx\Hy@temp\ltx@empty
+ \ifx\Hy@temp\@empty
\csname l@#1\endcsname{%
\Hy@toclinkstart{#2}\Hy@toclinkend
}{}%
@@ -12275,8 +12285,8 @@
\ifx\\#3\\%
\ifx\Hy@temp@A\HyInd@ParenRight
\HyInd@DefKey{#1}%
- \ltx@IfUndefined{HyInd@(\HyInd@key)}{%
- \let\Hy@temp\ltx@empty
+ \@ifundefined{HyInd@(\HyInd@key)}{%
+ \let\Hy@temp\@empty
}{%
\expandafter\let\expandafter\Hy@temp
\csname HyInd@(\HyInd@key)\endcsname
@@ -12314,7 +12324,7 @@
\begingroup
\let\protect\@unexpandable@protect
\edef\Hy@temp{#1}%
- \ltx@onelevel@sanitize\Hy@temp
+ \@onelevel@sanitize\Hy@temp
\global\let\HyInd@key\Hy@temp
\endgroup
}%
@@ -12346,7 +12356,7 @@
\def\Hy@temp{#3}%
\ifx\Hy@temp\@empty
\else
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\HyInd@hyperpage#3\@nil
}%
\fi
@@ -12388,7 +12398,7 @@
\hyperlink{page.\the\toks@}{\the\toks@}%
\fi
\else
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\HyInd@removespaces#2\@nil
}%
\fi
@@ -12562,8 +12572,8 @@
\hyperref[{#1}]{\HyRef@autopagerefname\pageref*{#1}}%
}
\def\HyRef@autopagerefname{%
- \ltx@IfUndefined{pageautorefname}{%
- \ltx@IfUndefined{pagename}{%
+ \@ifundefined{pageautorefname}{%
+ \@ifundefined{pagename}{%
\Hy@Warning{No autoref name for `page'}%
}{%
\pagename\nobreakspace
@@ -12611,11 +12621,11 @@
\fi
}
\def\HyRef@testreftype#1.#2\\{%
- \ltx@IfUndefined{#1autorefname}{%
- \ltx@IfUndefined{#1name}{%
+ \@ifundefined{#1autorefname}{%
+ \@ifundefined{#1name}{%
\HyRef@StripStar#1\\*\\\@nil{#1}%
- \ltx@IfUndefined{\HyRef@name autorefname}{%
- \ltx@IfUndefined{\HyRef@name name}{%
+ \@ifundefined{\HyRef@name autorefname}{%
+ \@ifundefined{\HyRef@name name}{%
\def\HyRef@currentHtag{}%
\Hy@Warning{No autoref name for `#1'}%
}{%
@@ -12741,7 +12751,7 @@
|ifx|\#2|\%%
|else
\\%
- |ltx@ReturnAfterFi{%
+ |Hy@ReturnAfterFi{%
|Hy@ExchangeBackslash#2|@nil
}%
|fi
@@ -12752,7 +12762,7 @@
\ifx\\#2\\%
\else
\@backslashchar(%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@ExchangeLeftParenthesis#2\@nil
}%
\fi
@@ -12762,7 +12772,7 @@
\ifx\\#2\\%
\else
\@backslashchar)%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@ExchangeRightParenthesis#2\@nil
}%
\fi
@@ -12811,7 +12821,7 @@
\fi
\ifHy@setpdfversion
\ifnum\Hy@pdf@majorminor@version<105 %
- \ltx@IfUndefined{pdfobjcompresslevel}{%
+ \@ifundefined{pdfobjcompresslevel}{%
}{%
\ifHy@verbose
\Hy@InfoNoLine{%
@@ -12821,19 +12831,19 @@
\Hy@pdf@majorversion.\Hy@pdf@minorversion
}%
\fi
- \pdfobjcompresslevel=\ltx@zero
+ \pdfobjcompresslevel=\z@
}%
\fi
\ifnum\Hy@pdfmajorminor@version=\Hy@pdf@majorminor@version\relax
\else
- \let\Hy@temp\ltx@empty
+ \let\Hy@temp\@empty
\def\Hy@temp@A#1#2{%
- \ifnum#1>\ltx@zero
+ \ifnum#1>\z@
\edef\Hy@temp{%
\Hy@temp
\space\space
\the#1\space #2%
- \ifnum#1=\ltx@one\else s\fi
+ \ifnum#1=\@ne\else s\fi
\MessageBreak
}%
\fi
@@ -12842,15 +12852,15 @@
\Hy@temp@A\pdflastxform{form XObject}%
\Hy@temp@A\pdflastximage{image XObject}%
\Hy@temp@A\pdflastannot{annotation}%
- \ltx@IfUndefined{pdflastlink}{%
+ \@ifundefined{pdflastlink}{%
}{%
\Hy@temp@A\pdflastlink{link}%
}%
- \ifx\Hy@temp\ltx@empty
+ \ifx\Hy@temp\@empty
\Hy@pdfmajorversion=\Hy@pdf@majorversion\relax
\Hy@pdfminorversion=\Hy@pdf@minorversion\relax
\else
- \let\Hy@temp@A\ltx@empty
+ \let\Hy@temp@A\@empty
\ifnum\Hy@pdf@majorminor@version=104 %
\IfFileExists{pdf14.sty}{%
\def\Hy@temp@A{%
@@ -12873,7 +12883,7 @@
\expandafter\string\Hy@pdfminorversion=\Hy@pdf@minorversion
\string\relax
\ifnum\Hy@pdf@majorminor@version<105 %
- \ltx@ifundefined{pdfobjcompresslevel}{%
+ \@ifundefined{pdfobjcompresslevel}{%
}{%
\MessageBreak
\space\space
@@ -13099,7 +13109,7 @@
}
\def\hyper@linkstart#1#2{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
@@ -13109,7 +13119,7 @@
\def\hyper@linkend{\close@pdflink}
\def\hyper@link#1#2#3{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
@@ -13613,7 +13623,7 @@
% \begin{macrocode}
%<*hypertex>
\providecommand*{\XR@ext}{dvi}
-\let\PDF@FinishDoc\ltx@empty
+\let\PDF@FinishDoc\@empty
\def\PDF@SetupDoc{%
\ifx\@baseurl\@empty
\else
@@ -14600,7 +14610,7 @@
\providecommand*{\XR@ext}{htm}
\RequirePackage{vtexhtml}
\newif\if@Localurl
-\let\PDF@FinishDoc\ltx@empty
+\let\PDF@FinishDoc\@empty
\def\PDF@SetupDoc{%
\ifx\@baseurl\@empty
\else
@@ -14687,7 +14697,7 @@
\def\@Form[#1]{%
\Hy@Message{Sorry, TeXpider does not yet support FORMs}%
}
-\let\@endForm\ltx@empty
+\let\@endForm\@empty
\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
\Hy@Message{Sorry, TeXpider does not yet support FORM gauges}%
}
@@ -14790,7 +14800,7 @@
\Hy@VerboseLinkStart{#1}{#2}%
\Hy@pstringdef\Hy@pstringURI{#2}%
\expandafter\Hy@colorlink\csname @#1color\endcsname
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{%
@@ -14893,7 +14903,7 @@
}
\def\hyper@link#1#2#3{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\CurrentBorderColor\relax
}{%
\edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
@@ -15472,7 +15482,7 @@
\endgroup
\Hy@RestoreLastskip
}
-\ltx@IfUndefined{hyper@anchorstart}{}{\endinput}
+\@ifundefined{hyper@anchorstart}{}{\endinput}
\Hy@WrapperDef\hyper@anchorstart#1{%
\Hy@SaveLastskip
\Hy@VerboseAnchor{#1}%
@@ -15500,7 +15510,7 @@
\ifmmode
\def\Hy@LinkMath{$}%
\else
- \let\Hy@LinkMath\ltx@empty
+ \let\Hy@LinkMath\@empty
\fi
\Hy@SaveSpaceFactor
\hbox\bgroup
@@ -15515,7 +15525,7 @@
}
\def\hyper@linkend{%
\literalps@out{\strip@pt@and@otherjunk\baselineskip\space H.L}%
- \ltx@IfUndefined{@\hyper@currentlinktype bordercolor}{%
+ \@ifundefined{@\hyper@currentlinktype bordercolor}{%
\let\Hy@tempcolor\relax
}{%
\edef\Hy@tempcolor{%
@@ -15614,7 +15624,7 @@
\def\Hy@undefinedname{UNDEFINED}
\def\hyper@link#1#2#3{%
\Hy@VerboseLinkStart{#1}{#2}%
- \ltx@IfUndefined{@#1bordercolor}{%
+ \@ifundefined{@#1bordercolor}{%
\let\Hy@tempcolor\relax
}{%
\edef\Hy@tempcolor{\csname @#1bordercolor\endcsname}%
@@ -15789,7 +15799,7 @@
\edef\@processme{\noexpand\pdf@toks={\the\pdf@defaulttoks}}%
\@processme
\let\pdf@type\relax
- \let\pdf@objdef\ltx@empty
+ \let\pdf@objdef\@empty
\kvsetkeys{PDF}{#2}%
\ifHy@pdfmarkerror
\else
@@ -15803,14 +15813,14 @@
\ifx\\#1\\%
\literalps@out{%
[%
- \ifx\pdf@objdef\ltx@empty
+ \ifx\pdf@objdef\@empty
\else
/_objdef\string{\pdf@objdef\string}%
\fi
\the\pdf@toks\space\pdf@type\space pdfmark%
}%
\else
- \ltx@IfUndefined{@\pdf@linktype color}{%
+ \@ifundefined{@\pdf@linktype color}{%
\Hy@colorlink\@linkcolor
}{%
\expandafter\Hy@colorlink
@@ -15819,7 +15829,7 @@
\pdf@rect{#1}%
\literalps@out{%
[%
- \ifx\pdf@objdef\ltx@empty
+ \ifx\pdf@objdef\@empty
\else
/_objdef\string{\pdf@objdef\string}%
\fi
@@ -15855,7 +15865,7 @@
\begingroup
\chardef\x=1 %
\def\Hy@temp{#1}%
- \ifx\Hy@temp\ltx@empty
+ \ifx\Hy@temp\@empty
\chardef\x=0 %
\else
\def\y{\anchor@spot}%
@@ -15876,7 +15886,7 @@
\ifmmode
\def\Hy@LinkMath{$}%
\else
- \let\Hy@LinkMath\ltx@empty
+ \let\Hy@LinkMath\@empty
\fi
\ifHy@breaklinks
\Hy@setouterhbox\pdf@box{%
@@ -15965,7 +15975,7 @@
\def\pdf@linktype{link}
% named object?
\define@key{PDF}{objdef}{\edef\pdf@objdef{#1}}
-\let\pdf@objdef\ltx@empty
+\let\pdf@objdef\@empty
% parameter is a stream of PDF
\define@key{PDF}{Raw}{\pdf@addtoksx{#1}}
% parameter is a name
@@ -16255,7 +16265,7 @@
% \begin{macrocode}
%<*dvips>
\providecommand*{\XR@ext}{pdf}
-\let\Hy@raisedlink\ltx@empty
+\let\Hy@raisedlink\@empty
\def\literalps@out#1{\special{ps:SDict begin #1 end}}%
\def\headerps@out#1{\special{! #1}}%
\input{pdfmark.def}%
@@ -16430,7 +16440,7 @@
% \begin{macrocode}
%<*vtexpdfmark>
\providecommand*{\XR@ext}{pdf}
-\let\Hy@raisedlink\ltx@empty
+\let\Hy@raisedlink\@empty
\def\literalps@out#1{\special{pS:#1}}%
\def\headerps@out#1{\immediate\special{pS:#1}}%
\input{pdfmark.def}%
@@ -16818,7 +16828,7 @@
% |\special| commands.
%<*dvipsone>
\providecommand*{\XR@ext}{pdf}
-\let\Hy@raisedlink\ltx@empty
+\let\Hy@raisedlink\@empty
\providecommand*\@pdfborder{0 0 1}
\providecommand*\@pdfborderstyle{}
\def\literalps@out#1{\special{ps:#1}}%
@@ -17018,14 +17028,14 @@
% \begin{macrocode}
%<*tex4ht>
\providecommand*{\XR@ext}{html}
-\let\Hy@raisedlink\ltx@empty
+\let\Hy@raisedlink\@empty
\@ifpackageloaded{tex4ht}{%
\Hy@InfoNoLine{tex4ht is already loaded}%
}{%
\RequirePackage[htex4ht]{tex4ht}%
}
\hyperlinkfileprefix{}
-\let\PDF@FinishDoc\ltx@empty
+\let\PDF@FinishDoc\@empty
\def\PDF@SetupDoc{%
\ifx\@baseurl\@empty
\else
@@ -17135,7 +17145,7 @@
\ifx \rEfLiNK \UnDef
\def\rEfLiNK #1#2{#2}%
\fi
-\let\backref\ltx@gobble
+\let\backref\@gobble
% \end{macrocode}
% Fix for tex4ht.
% \begin{macrocode}
@@ -17361,7 +17371,7 @@
}}%
\kvsetkeys{Form}{#1}%
}
-\let\@endForm\ltx@empty
+\let\@endForm\@empty
\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
\Hy@Message{Sorry, pdfmark drivers do not support FORM gauges}%
}
@@ -17388,7 +17398,7 @@
\string{#1\HyField@TheAnnotCount\string}%
}%
}%
- \ifx\Fld@calculate@code\ltx@empty
+ \ifx\Fld@calculate@code\@empty
\else
\pdfmark{%
pdfmark=/APPEND,%
@@ -17403,7 +17413,7 @@
% \begin{macrocode}
\def\@TextField[#1]#2{% parameters, label
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\let\Fld@value\@empty
\def\Fld@width{\DefaultWidthofText}%
\def\Fld@height{%
@@ -17648,7 +17658,7 @@
\def\@Form[#1]{%
\Hy@Message{Sorry, HyperTeX does not support FORMs}%
}
-\let\@endForm\ltx@empty
+\let\@endForm\@empty
\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
\Hy@Message{Sorry, HyperTeX does not support FORM gauges}%
}
@@ -17686,7 +17696,7 @@
\def\@TextField[#1]#2{% parameters, label
\let\Hy@reserved@a\@empty
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\bgroup
\Field@toks={ }%
\kvsetkeys{Field}{#1}%
@@ -17733,7 +17743,7 @@
}
\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\let\Hy@reserved@a\relax
\begingroup
\expandafter\Fld@findlength#3\\%
@@ -17831,8 +17841,8 @@
}%
% \hbox to 0pt{\hskip-\maxdimen{\pdfrefxform \the\pdflastxform}}%
}%
-\let\HyField@afields\ltx@empty
-\let\HyField@cofields\ltx@empty
+\let\HyField@afields\@empty
+\let\HyField@cofields\@empty
\@ifundefined{pdflastlink}
{%
\let\HyField@AddToFields\relax
@@ -17844,8 +17854,8 @@
but other PDF viewers might complain%
}}%
{%
- \let\HyField@AuxAddToFields\ltx@gobble
- \let\HyField@AuxAddToCoFields\ltx@gobbletwo
+ \let\HyField@AuxAddToFields\@gobble
+ \let\HyField@AuxAddToCoFields\@gobbletwo
\def\HyField@AfterAuxOpen{\Hy@AtBeginDocument}%
% \end{macrocode}
% Insertion sort for calculation field list.
@@ -17855,31 +17865,31 @@
\def\HyField@ABD@AuxAddToCoFields#1#2{%
\begingroup
\Hy@safe@activestrue
- \let\ltx@secondoftwo\relax
- \ifx\HyField@cofields\ltx@empty
+ \let\@secondoftwo\relax
+ \ifx\HyField@cofields\@empty
\xdef\HyField@cofields{%
- \ltx@secondoftwo{#1}{ #2 0 R}%
+ \@secondoftwo{#1}{ #2 0 R}%
}%
\else
- \let\ltx@secondoftwo\relax
+ \let\@secondoftwo\relax
\def\HyField@AddCoField##1##2##3{%
- \ifx##1\ltx@empty
- \ltx@secondoftwo{#1}{ #2 0 R}%
- \expandafter\ltx@gobble
+ \ifx##1\@empty
+ \@secondoftwo{#1}{ #2 0 R}%
+ \expandafter\@gobble
\else
- \ifnum\pdfstrcmp{##2}{#1}>\ltx@zero
- \ltx@secondoftwo{#1}{ #2 0 R}%
- \ltx@secondoftwo{##2}{##3}%
- \expandafter\expandafter\expandafter\ltx@gobble
+ \ifnum\pdfstrcmp{##2}{#1}>\z@
+ \@secondoftwo{#1}{ #2 0 R}%
+ \@secondoftwo{##2}{##3}%
+ \expandafter\expandafter\expandafter\@gobble
\else
- \ltx@secondoftwo{##2}{##3}%
+ \@secondoftwo{##2}{##3}%
\fi
\fi
\HyField@AddCoField
}%
\xdef\HyField@cofields{%
\expandafter\HyField@AddCoField
- \HyField@cofields\ltx@empty\ltx@empty\ltx@empty
+ \HyField@cofields\@empty\@empty\@empty
}%
\fi
\endgroup
@@ -17910,7 +17920,7 @@
\expandafter\HyField@@AddToFields\expandafter{%
\the\pdflastlink
}%
- \ifx\Fld@calculate@code\ltx@empty
+ \ifx\Fld@calculate@code\@empty
\else
\begingroup
\Hy@safe@activestrue
@@ -17953,7 +17963,7 @@
\immediate\pdfobj{%
<<%
/Fields[\HyField@afields]%
- \ifx\HyField@cofields\ltx@empty
+ \ifx\HyField@cofields\@empty
\else
/CO[\romannumeral-`\Q\HyField@cofields]%
\fi
@@ -17996,18 +18006,18 @@
\fbox{\textcolor{yellow}{\textsf{SubmitP}}}%
}{SubmitP}%
}
-\let\@endForm\ltx@empty
+\let\@endForm\@empty
% \end{macrocode}
% \begin{macrocode}
-\let\HyAnn@AbsPageLabel\ltx@empty
-\let\Fld@pageobjref\ltx@empty
-\ltx@IfUndefined{pdfpageref}{%
+\let\HyAnn@AbsPageLabel\@empty
+\let\Fld@pageobjref\@empty
+\@ifundefined{pdfpageref}{%
}{%
- \ltx@ifpackageloaded{zref-abspage}{%
+ \@ifpackageloaded{zref-abspage}{%
\newcount\HyAnn@Count
- \HyAnn@Count=\ltx@zero
+ \HyAnn@Count=\z@
\def\HyAnn@AbsPageLabel{%
- \global\advance\HyAnn@Count by\ltx@one
+ \global\advance\HyAnn@Count by\@ne
\zref@labelbyprops{HyAnn@\the\HyAnn@Count}{abspage}%
\zref@refused{HyAnn@\the\HyAnn@Count}%
}%
@@ -18029,7 +18039,7 @@
% \begin{macrocode}
\def\@TextField[#1]#2{% parameters, label
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\let\Fld@value\@empty
\def\Fld@width{\DefaultWidthofText}%
\def\Fld@height{%
@@ -18379,7 +18389,7 @@
% \end{macro}
% \begin{macro}{\@endForm}
% \begin{macrocode}
-\let\@endForm\ltx@empty
+\let\@endForm\@empty
% \end{macrocode}
% \end{macro}
%
@@ -18426,7 +18436,7 @@
% \begin{macrocode}
\def\HyField@AddToFields#1{%
\@pdfm@mark{put @afields @#1\HyField@TheAnnotCount}%
- \ifx\Fld@calculate@code\ltx@empty
+ \ifx\Fld@calculate@code\@empty
\else
\@pdfm@mark{put @corder @#1\HyField@TheAnnotCount}%
\fi
@@ -18438,7 +18448,7 @@
% \begin{macrocode}
\def\@TextField[#1]#2{% parameters, label
\def\Fld@name{#2}%
- \let\Fld@default\ltx@empty
+ \let\Fld@default\@empty
\let\Fld@value\@empty
\def\Fld@width{\DefaultWidthofText}%
\def\Fld@height{%
@@ -18847,7 +18857,7 @@
\else
\expandafter
\Hy@pstringdef\csname Hy@esc@\string#2\endcsname{#2}%
- \ltx@ReturnAfterFi{%
+ \Hy@ReturnAfterFi{%
\Hy@@escapeform#3\@nil
}%
\fi
@@ -19427,9 +19437,9 @@
\def\HyPsd@SanitizeOut@BraceLeft#1(#2\@nil{%
#1%
\ifx\\#2\\%
- \expandafter\ltx@gobble
+ \expandafter\@gobble
\else
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\fi
{%
\string\173%
@@ -19439,9 +19449,9 @@
\def\HyPsd@SanitizeOut@BraceRight#1)#2\@nil{%
#1%
\ifx\\#2\\%
- \expandafter\ltx@gobble
+ \expandafter\@gobble
\else
- \expandafter\ltx@firstofone
+ \expandafter\@firstofone
\fi
{%
\string\175%
@@ -19792,7 +19802,7 @@
% is not executed, so there will be no destination for \cmd{addcontentsline}.
% So \cmd{\@chapter} is overloaded to avoid this:
% \begin{macrocode}
-\ltx@IfUndefined{@chapter}{}{%
+\@ifundefined{@chapter}{}{%
\let\Hy@org@chapter\@chapter
\def\@chapter{%
\def\Hy@next{%
@@ -19802,7 +19812,7 @@
}%
}%
\ifnum\c@secnumdepth>\m@ne
- \ltx@IfUndefined{if@mainmatter}%
+ \@ifundefined{if@mainmatter}%
\iftrue{\csname if@mainmatter\endcsname}%
\let\Hy@next\relax
\fi
@@ -22152,7 +22162,7 @@
\DeclareTextCommand{\cyrabhha}{PU}{\84\251}% U+04A9
% U+04AA CYRILLIC CAPITAL LETTER ES WITH DESCENDER; Esdescendercyrillic
\DeclareTextCommand{\CYRSDSC}{PU}{\84\252}% U+04AA
-\DeclareTextCompositeCommand{\CYRSDSC}{PU}{\CYRS}{\84\252}% U+04AA
+\DeclareTextCompositeCommand{\k}{PU}{\CYRS}{\84\252}% U+04AA
% U+04AB CYRILLIC SMALL LETTER ES WITH DESCENDER; esdescendercyrillic
\DeclareTextCommand{\cyrsdsc}{PU}{\84\253}% U+04AB
\DeclareTextCompositeCommand{\k}{PU}{\cyrs}{\84\253}% U+04AB
diff --git a/macros/latex/contrib/hyperref/nameref.dtx b/macros/latex/contrib/hyperref/nameref.dtx
index 861af305a0..ca0f46b434 100644
--- a/macros/latex/contrib/hyperref/nameref.dtx
+++ b/macros/latex/contrib/hyperref/nameref.dtx
@@ -33,7 +33,7 @@
%<driver>\ProvidesFile{nameref.drv}
% \fi
% \ProvidesFile{nameref.dtx}
- [2023-11-09 v2.55 Cross-referencing by name of section]%
+ [2023-11-26 v2.56 Cross-referencing by name of section]%
%
%
% \iffalse
@@ -112,14 +112,11 @@
%
% \item \cs{@part}, \cs{@spart}, \cs{@chapter}, \cs{@schapter}:
% command to store the title added
-% \item \cs{ttl@sect@i} (from the \textsf{titlesec} package):
-% command to store the title added
% \end{itemize}
%
% All the patches excepted the last are disabled if the command
% \cs{NR@nopatch@sectioning} is defined (the actual definition is irrelevant, only
-% existence is tested. The titlesec patch is disabled if
-% \cs{NR@nopatch@titlesec} is defined.
+% existence is tested.
% This currently only suppress the actual patches, the counter,
% \cs{Sectionformat} and also the internal copies \cs{NR@sect} etc are still
% defined.
@@ -215,9 +212,14 @@
% \begin{macrocode}
\RequirePackage{refcount}[2006/02/12]
\RequirePackage{gettitlestring}[2009/12/18]
-\RequirePackage{ltxcmds}[2009/12/12]
% \end{macrocode}
-%
+
+% \begin{macrocode}
+\ExplSyntaxOn
+\let\NR@GlobalAppendToMacro\tl_gput_right:Nn
+\ExplSyntaxOff
+
+% \end{macrocode}
% In formats older than 2023-06-01
% we redefine |\label| so that it also writes the name of the
% current section to the .aux file; if the name ends in a dot,
@@ -226,7 +228,7 @@
% used for cross-ref name, and file).
% \begin{macro}{\NR@strip@period}
% \begin{macrocode}
-\def\NR@strip@period#1.\ltx@empty#2\@nil{#1}
+\def\NR@strip@period#1.\@empty#2\@nil{#1}
% \end{macrocode}
% \end{macro}
%
@@ -244,7 +246,7 @@
\@onelevel@sanitize\@currentlabelname
\edef\@currentlabelname{%
\expandafter\NR@strip@period\@currentlabelname
- \ltx@empty.\ltx@empty\@nil
+ \@empty.\@empty\@nil
}%
}
% \end{macrocode}
@@ -279,7 +281,7 @@
% and also in hyperref.
% \begin{macrocode}
\providecommand*{\label@hook}{}
-\ltx@GlobalAppendToMacro{\label@hook}{%
+\NR@GlobalAppendToMacro{\label@hook}{%
\NR@sanitize@labelname
}
\@ifl@t@r\fmtversion{2023-06-01}
@@ -518,7 +520,7 @@
%
% Environment `description'.
% \begin{macrocode}
- \ltx@IfUndefined{descriptionlabel}{%
+ \@ifundefined{descriptionlabel}{%
}{%
\@ifundefined{NR@nopatch@lists}
{\let\NRorg@descriptionlabel\descriptionlabel
@@ -535,7 +537,7 @@
%
% \begin{macrocode}
\@ifundefined{NR@nopatch@theorem}{%
- \ltx@IfUndefined{@opargbegintheorem}{}{%
+ \@ifundefined{@opargbegintheorem}{}{%
\let\NRorg@opargbegintheorem\@opargbegintheorem
\def\@opargbegintheorem#1#2#3{%
\NR@gettitle{#3}%
diff --git a/macros/latex/contrib/hyperref/xr-hyper.sty b/macros/latex/contrib/hyperref/xr-hyper.sty
index 84c9611732..d1f931a9bc 100644
--- a/macros/latex/contrib/hyperref/xr-hyper.sty
+++ b/macros/latex/contrib/hyperref/xr-hyper.sty
@@ -50,14 +50,15 @@
%%
%% In the case of \ref, if the external document has not used
%% hyperref, this package will work like xr and produce the correct
-%% text, but can not produce a well formed link as the target document
-%% is not set up. In this case you may prefer to use \ref* rather than
+%% text, but it can only produce a file link and
+%% not target the exact location as the target document has no destinations
+%% In this case you may prefer to use \ref* rather than
%% \ref to avoid generating a hyperlink.
%%
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{xr-hyper}
- [2023-11-09 v7.01f eXternal References (DPC)]
+ [2023-11-26 v7.01g eXternal References (DPC)]
\def\externaldocument{\@testopt\XR@cite{}}
\let\externalcitedocument\externaldocument
@@ -73,7 +74,6 @@
\else
\let\XR@bibcite\bibcite
\fi
- \def\XR@useURL{}%
\def\XR@URL{#4}%
\filename@parse{#3}%
\XR@next#3.aux\relax\\}}
@@ -94,12 +94,7 @@
% XR@addURL:
\def\XR@addURL#1{\XR@@dURL#1{}{}{}{}\\}
\def\XR@@dURL#1#2#3#4#5\\{%
- {#1}{#2}%
- \if!#4!%
- {#3}{#4}{}% new perhaps this could use \XR@URL too?
- \else
- {#3}{#4}{\XR@useURL}%
- \fi
+ {#1}{#2}{#3}{#4}{\XR@URL}%
}%
\def\XR@explist{\expandafter\XR@next\XR@list\\}
@@ -118,11 +113,6 @@
% 2019 update to match xr
\long\def\XR@test#1#2#3#4\XR@{%
\let\XR@tempa\@gobblethree
-% we set the file name only if the target has actually destinations.
-% for this we test if hyperref has been used.
- \ifx#1\HyperFirstAtBeginDocument
- \let\XR@useURL\XR@URL
- \fi
\ifx#1\newlabel
\let\XR@tempa\@firstofthree
\else\ifx#1\XR@bibcite
@@ -168,3 +158,9 @@
%% unified and simplified the brace handling: all defined references have now
%% five brace groups. Together with the planed change in LaTeX 2023-06-01 this
%% will improve the combination of hyperref/non-hyperref documents.
+%%
+%% 2023-11-26
+%%
+%% Always store the URL/file name of the external document to allow file links
+%% even if it has no destinations.
+%%
diff --git a/macros/luatex/generic/penlightplus/penlightplus.lua b/macros/luatex/generic/penlightplus/penlightplus.lua
index 1f74d45777..84cd2094ff 100644
--- a/macros/luatex/generic/penlightplus/penlightplus.lua
+++ b/macros/luatex/generic/penlightplus/penlightplus.lua
@@ -1,5 +1,5 @@
--% Kale Ewasiuk (kalekje@gmail.com)
---% 2023-09-04
+--% 2023-11-25
--% Copyright (C) 2021-2023 Kale Ewasiuk
--%
--% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -449,6 +449,10 @@ function str_mt.__index.trimfl(str)
return str:sub(2,-2)
end
+function str_mt.__index.subpar(s, r)
+ r = r or ' '
+ return (s:gsub('\\par', r))
+end
-- -- -- -- function stuff
@@ -802,6 +806,7 @@ function penlight.get_tbl_index(s)
return tbl, key
end
+
function penlight.get_tbl_item(s, p) -- get item with string, p means print value
p = p or false
local tbl, key = penlight.get_tbl_index(s)
@@ -840,6 +845,18 @@ function penlight.check_recent_tbl_undefault()
end
+penlight.tbl_xysep = '%s+' -- spaces separate x-y coords
+function penlight.def_tbl_coords(str, def)
+ -- todo could definitely make this flexible for a table...
+ local x, y = str:strip():splitv(penlight.tbl_xysep)
+ --if (~penlight.hasval(x)) or (~penlight.hasval(y)) then
+ -- penlight.tex.pkgerror('penlightplus', 'def_tbl_coords function could not parse coordiantes given as "'..str..'" ensure two numbers separated by space are given!', '', true)
+ --end
+ token.set_macro(def..'x', tostring(x))
+ token.set_macro(def..'y', tostring(y))
+end
+
+
if penlight.hasval(__PL_GLOBALS__) then
-- iterators
kpairs = penlight.utils.kpairs
diff --git a/macros/luatex/generic/penlightplus/penlightplus.pdf b/macros/luatex/generic/penlightplus/penlightplus.pdf
index 0f35dbf75a..7e273cb6c1 100644
--- a/macros/luatex/generic/penlightplus/penlightplus.pdf
+++ b/macros/luatex/generic/penlightplus/penlightplus.pdf
Binary files differ
diff --git a/macros/luatex/generic/penlightplus/penlightplus.sty b/macros/luatex/generic/penlightplus/penlightplus.sty
index 01b0aafc16..97083c6bff 100644
--- a/macros/luatex/generic/penlightplus/penlightplus.sty
+++ b/macros/luatex/generic/penlightplus/penlightplus.sty
@@ -1,5 +1,5 @@
% Kale Ewasiuk (kalekje@gmail.com)
-% 2023-09-04
+% 2023-11-25
% Copyright (C) 2021-2023 Kale Ewasiuk
%
% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -22,7 +22,7 @@
% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
% OR OTHER DEALINGS IN THE SOFTWARE.
-\ProvidesPackage{penlightplus}[2023-09-04]
+\ProvidesPackage{penlightplus}[2023-11-25]
\RequirePackage{luacode}
\RequirePackage{luakeys}
@@ -62,12 +62,12 @@
\luadirect{penlight.tex.aliasluastring(\luastring{#2},\luastring{#1})}%
}
-\NewDocumentCommand{\splitToComma}{ O{nn} m m }{%
+\NewDocumentCommand{\splittocomma}{ O{nn} m m }{%
\MakeluastringCommands[nn]{#1}%
\luadirect{penlight.tex.split2comma(\plluastringA{#2},\plluastringB{#3})}%
}
-\NewDocumentCommand{\splitToItems}{ O{NN} m m }{%
+\NewDocumentCommand{\splittoitems}{ O{NN} m m }{%
\MakeluastringCommands[nn]{#1}%
\luadirect{penlight.tex.split2items(\plluastringA{#2},\plluastringB{#3})}%
}
@@ -103,45 +103,67 @@
-%%%
+%%% tbls below
-\NewDocumentCommand{\newtbl}{m}{\luadirect{
+\NewDocumentCommand{\tblnew}{m}{\luadirect{% initialize a tbl
penlight.tbls[\luastring{#1}] = {}
penlight.rec_tbl = \luastring{#1}
}}
-\NewDocumentCommand{\tblfrkv}{m m O{}}{ \luadirect{
+\NewDocumentCommand{\tblfrkv}{m +m O{}}{\luadirect{%
penlight.rec_tbl_opts = penlight.luakeys.parse(\luastring{#3})
- penlight.tbls[\luastring{#1}] = penlight.luakeys.parse(\luastring{#2}, penlight.rec_tbl_opts)
+ penlight.wrth(\luastring{#2}, '??')
+ penlight.tbls[\luastring{#1}] = penlight.luakeys.parse(string.subpar(\luastring{#2}), penlight.rec_tbl_opts)
penlight.rec_tbl = \luastring{#1}
}}
-\NewDocumentCommand{\tblfrcsv}{m m O{}}{\tblfrkv{#1}{#2}[naked_as_value=true,#3]}
+\NewDocumentCommand{\tblfrkvN}{m +m O{}}{\luadirect{%
+ penlight.rec_tbl_opts = penlight.luakeys.parse(\luastring{#3})
+ penlight.tbls[\luastring{#1}] = penlight.luakeys.parse(string.subpar(\luastringN{#2}), penlight.rec_tbl_opts)
+ penlight.rec_tbl = \luastring{#1}
+}}
+
+\NewDocumentCommand{\tblfrcsv}{m +m O{}}{\tblfrkv{#1}{#2}[naked_as_value=true,#3]}
-\NewDocumentCommand{\kvtblundefcheck}{}{\luadirect{penlight.check_recent_tbl_undefault()}} % todo
+\NewDocumentCommand{\tblkvundefcheck}{}{\luadirect{penlight.check_recent_tbl_undefault()}}% check defaults list and throw error if foreign keys were used
-\NewDocumentCommand{\chgtbl}{ m }{ \luadirect{
+\NewDocumentCommand{\tblchg}{ m }{\luadirect{% change recent table
penlight.rec_tbl = \luastring{#1}
}}
-\NewDocumentCommand{\gettbl}{m}{\luadirect{
+
+\NewDocumentCommand{\tblget}{m}{\luadirect{% get an item
penlight.get_tbl_item(\luastring{#1}, true)
}}
-\NewDocumentCommand{\settbl}{m m}{\luadirect{
+\NewDocumentCommand{\tblset}{m m}{\luadirect{% set item with {value}
penlight.set_tbl_item(\luastring{#1}, \luastring{#2})
}}
-\NewDocumentCommand{\deftbl}{ m m }{\luadirect{% define a table, use * to make definition
+\NewDocumentCommand{\tbldef}{ m m }{\luadirect{% define a table, use * to make definition
token.set_macro(\luastring{#2}, tostring(penlight.get_tbl_item(\luastring{#1})))
}}
-\NewDocumentCommand{\gdeftbl}{ m m }{\luadirect{% define a table, use * to make global definition
+\NewDocumentCommand{\tblgdef}{ m m }{\luadirect{% define a table, use * to make global definition
token.set_macro(\luastring{#2}, tostring(penlight.get_tbl_item(\luastring{#1})), 'global')
}}
-\NewDocumentCommand{\iftbl}{m m O{}}{\ifluax{penlight.get_tbl_item(\luastring{#1})}{#2}[#3]}
+\NewDocumentCommand{\tbldefxy}{ m m }{\luadirect{penlight.def_tbl_coords(penlight.get_tbl_item(\luastring{#1}), \luastring{#2})}}% define #2x and #2y from a space delimited x-y pair
+
+
+\NewDocumentCommand{\tblif}{m m O{}}{\ifluax{penlight.get_tbl_item(\luastring{#1})}{#2}[#3]}
+
+\NewDocumentCommand{\tblifv}{m m O{}}{\ifluaxv{penlight.get_tbl_item(\luastring{#1})}{#2}[#3]}
-\NewDocumentCommand{\iftblv}{m m O{}}{\ifluaxv{penlight.get_tbl_item(\luastring{#1})}{#2}[#3]}
+% legacy code, delete this
+\let\kvtblundefcheck\tblkvundefcheck
+\let\chgtbl\tblchg
+\let\newtbl\tblnew
+\let\gettbl\tblget
+\let\settbl\tblset
+\let\deftbl\tbldef
+\let\gdeftbl\tblgdef
+\let\iftbl\tblif
+\let\iftblv\tblifv \ No newline at end of file
diff --git a/macros/luatex/generic/penlightplus/penlightplus.tex b/macros/luatex/generic/penlightplus/penlightplus.tex
index fbc4ec32d5..169364847c 100644
--- a/macros/luatex/generic/penlightplus/penlightplus.tex
+++ b/macros/luatex/generic/penlightplus/penlightplus.tex
@@ -1,5 +1,5 @@
% Kale Ewasiuk (kalekje@gmail.com)
-% 2023-09-04
+% 2023-11-25
% Copyright (C) 2021-2023 Kale Ewasiuk
%
% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -157,7 +157,7 @@ The user can specify \cmd{n}, \cmd{o}, \cmd{t}, and \cmd{f} (case insensitve) if
no, once, twice, or full expansion. For example, we can control the expansion of args 2 and 3 with arg 1:
\begin{verbatim}
- \NewDocumentCommand{\splitToComma}{ O{nn} m m }{%
+ \NewDocumentCommand{\splittocomma}{ O{nn} m m }{%
\MakeluastringCommands[nn]{#1}%
\luadirect{penlight.tex.split2comma(\plluastringA{#2},\plluastringB{#3})}%
}
@@ -199,17 +199,19 @@ no, once, twice, or full expansion. For example, we can control the expansion of
\cmd{penlight.tbls} table.
-\cmd{\newtbl{t}} declares a new table with name \cmd{t}\\
-\cmd{\chgtbl{t}} changes the 'recent' table\\
+\cmd{\tblnew{t}} declares a new table with name \cmd{t}\\
+\cmd{\tblchg{t}} changes the 'recent' table\\
\cmd{\tblfrkv{t}{key-val string}[luakeys opts]} new table from key-vals using \cmd{luakeys} \\
+\cmd{\tblfrkvN{t}{key-val string}[luakeys opts]} does not expand key-val string \cmd{luakeys} \\
\cmd{\tblfrcsv} a shorthand \cmd{\tblfrkv{t}{csv}[naked_as_value=true,opts]}, a good way to convert a comma-separated list to an array\\
-\cmd{\settbl{i}{v}} sets a value of the table/index \cmd{i} to \cmd{v}\\
-\cmd{\gettbl{i}} gets the value and \cmd{tex.sprint()}'s it\\
-\cmd{\deftbl{i}{d}} pushes the value to a \cmd{cs} named \cmd{d}\\
-\cmd{\gdeftbl{i}{d}} pushes the value to a global\\
+\cmd{\tblset{i}{v}} sets a value of the table/index \cmd{i} to \cmd{v}\\
+\cmd{\tblget{i}} gets the value and \cmd{tex.sprint()}'s it\\
+\cmd{\tbldef{i}{d}} pushes the value to a \cmd{cs} named \cmd{d}\\
+\cmd{\tblgdef{i}{d}} pushes the value to a global\\
+\cmd{\tbldefxy{i}{d}} splits the value of item by spaces creates two definitions \cmd{\dx} and \cmd{\dy}. Useful for pasing tikz coordinates like \cmd{xy=0 5}\\
\cmd{\iftbl{i}{tr}[fa]} runs code \cmd{ta} if the item is true else \cmd{fr}\\
\cmd{\iftblv{i}{tr}[fa]} runs code \cmd{ta} if the item is truthy else \cmd{fr}\\
-\cmd{\kvtblundefcheck} will throw an error if you use define a table from key-values
+\cmd{\tblkvundefcheck} will throw an error if you use define a table from key-values
and use a key that was not specified in the luakeys parse options via \cmd{opts.defaults} or \cmd{opts.defs}.
There are 3 ways to use the index (placeholder \cmd{{i}} above).
@@ -220,53 +222,68 @@ or simply use \cmd{ind} without the table name, where the assumed table is the l
\begin{LTXexample}[width=0.3\linewidth]
\tblfrkv{my}{a,b,c,first=john,last=smith}%
[defaults={x=0,1=one,n=false,y=yes}]
-\gettbl{my.a}\\
-\gettbl{my.x}\\
-\iftbl{n}{tr}[fa]\\
-\iftblv{n}{TR}[FA]\\
-\iftbl{my.y}{Tr}[Fa]\\
-\iftblv{y}{tR}[fA]\\
+\tblget{my.a}\\
+\tblset{a}{tRuE!!}
+\tblget{a}\\
+\tblget{my.x}\\
+\tblif{n}{tr}[fa]\\
+\tblifv{n}{TR}[FA]\\
+\tblif{my.y}{Tr}[Fa]\\
+\tblifv{y}{tR}[fA]\\
%% \kvtblundefcheck % would throw error
-\deftbl{my.first}{mydef} \mydef\\
-{\deftbl{last}{mydef} \mydef} \mydef\\
-{\gdeftbl{last}{mydef}} \mydef\\
+\tbldef{my.first}{mydef} \mydef\\
+{\tbldef{last}{mydef} \mydef} \mydef\\
+{\tblgdef{last}{mydef}} \mydef\\
+
+\tblset{my.a}{12 36}
+\tbldefxy{my.a}{coord} (\coordx,\coordy)
\tblfrcsv{me}{a,b,"c,see",d,e}
-\gettbl{me/1},\gettbl{2}\\
-\gettbl{3}\\
-\settbl{me/4}{D}\gettbl{me/4}\\
-\settbl{5}{E}\gettbl{5}\\
-\gettbl{-2},\gettbl{me/-1}\\
-%% \gettbl{k} % would throw error
+\tblget{me/1},\tblget{2}\\
+\tblget{3}\\
+\tblset{me/4}{D}\tblget{me/4}\\
+\tblset{5}{E}\tblget{5}\\
+\tblget{-2},\tblget{me/-1}\\
+%% \tblget{k} % would throw error
\end{LTXexample}
+\tblfrcsv{me}{
+Hello=world,
+
+
+Bonjour=terre,
+}
+\tblget{Hello}
+\tblget{Bonjour}
+Note: for thisf versions: all latex tbl commands are now prefixed with \cmd{tbl}, eg., \cmd{tblget}, \cmd{tblset}.
+Old-style commands eg. \cmd{gettbl} will be kept as aliases for a few more releases then removed.
\subsection*{Splitting strings}
Splitting text (or a cmd) into oxford comma format via:
-\cmd{\splitToComma[expansion level]{text}{text to split on}}:
+\cmd{\splittocomma[expansion level]{text}{text to split on}}:
\begin{LTXexample}[width=0.3\linewidth]
--\splitToComma{ j doe }{\and}-\\
--\splitToComma{ j doe \and s else }{\and}-\\
--\splitToComma{ j doe \and s else \and a per }{\and}-\\
--\splitToComma{ j doe \and s else \and a per \and f guy}{\and}-
+-\splittocomma{ j doe }{\and}-\\
+-\splittocomma{ j doe \and s else }{\and}-\\
+-\splittocomma{ j doe \and s else \and a per }{\and}-\\
+-\splittocomma{ j doe \and s else \and a per \and f guy}{\and}-
\def\authors{j doe \and s else \and a per \and f guy}
-\splitToComma[o]{\authors}{\and}
+\splittocomma[o]{\authors}{\and}
\end{LTXexample}
The expansion level is up to two characters, \cmd{n|o|t|f}, to control the expansion of each argument.
-You can do a similar string split but to \cmd{\item} instead of commas with \cmd{\splitToItems}
+You can do a similar string split but to \cmd{\item} instead of commas with \cmd{\splittoitems}
\begin{LTXexample}
\begin{itemize}
- \splitToItems{kale\and john}{\and}
- \splitToItems{kale -john -someone else}{-}
- \splitToItems{1,2,3,4}{,}
+ \splittoitems{kale\and john}{\and}
+ \splittoitems{kale -john -someone else}{-}
+ \splittoitems{1,2,3,4}{,}
\end{itemize}
\end{LTXexample}
diff --git a/macros/luatex/latex/yamlvars/yamlvars.lua b/macros/luatex/latex/yamlvars/yamlvars.lua
index 479880a3e8..d6d2f7ca4f 100644
--- a/macros/luatex/latex/yamlvars/yamlvars.lua
+++ b/macros/luatex/latex/yamlvars/yamlvars.lua
@@ -1,5 +1,5 @@
--% Kale Ewasiuk (kalekje@gmail.com)
---% 2023-07-22
+--% 2023-11-25
--% Copyright (C) 2021-2023 Kale Ewasiuk
--%
--% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -48,11 +48,15 @@ YAMLvars.varTemp = ''
YAMLvars.debug = false
+
YAMLvars.setts = {}
+YAMLvars.setts.parseopts = {timestamps=false}
+YAMLvars.setts.decstr = 'xfm' -- if in declaration key, value is a string, how should it be treated
YAMLvars.setts.undeclared = false
YAMLvars.setts.overwrite = false
YAMLvars.setts.lowercase = false
YAMLvars.setts.tabmidrule = 'midrule'
+YAMLvars.setts.prcstring = true
YAMLvars.setts.xfm = {}
YAMLvars.setts.prc = 'gdef'
YAMLvars.setts.dft = ''
@@ -325,7 +329,7 @@ local function default_stuff()
end
function YAMLvars.declareYAMLvarsStr(y)
- local t = YAMLvars.yaml.parse(y)
+ local t = YAMLvars.yaml.parse(y, YAMLvars.setts.parseopts)
for var, specs in pairs(t) do
if pl.hasval(specs['lowcasevar']) or YAMLvars.setts.lowercase then
var = var:lower()
@@ -333,9 +337,11 @@ function YAMLvars.declareYAMLvarsStr(y)
end
YAMLvars.varspecs[var] = default_stuff()
if type(specs) == 'string' then
- specs = {xfm={specs}}
+ if YAMLvars.setts.decstr == 'xfm' then specs = {xfm={specs}} end
+ if YAMLvars.setts.decstr == 'dft' then specs = {dft=specs} end
+ if YAMLvars.setts.decstr == 'prc' then specs = {prc=specs} end
end
- if specs['xfm'] == nil then specs['xfm'] = {} end
+ if specs['xfm'] == nil then specs['xfm'] = YAMLvars.setts.xfm end
for s, p in pairs(specs) do
if s == 'xfm' and type(p) ~= 'table' then p = {p} end
YAMLvars.varspecs[var][s] = p -- set property of var
@@ -402,6 +408,8 @@ local function transform_and_prc(var, val)
val = val2
end
else
+ YAMLvars.debugtalk('function: '..func..'\nvariable: '.. var .. '\n' ..
+ 'value: '.. tostring(val) .. '\nval type: ' ..type(val), "Applying transforming (xfm) function")
val = f(var, val)
end
end
@@ -409,13 +417,20 @@ local function transform_and_prc(var, val)
if f == nil then
YAMLvars.pkgerr('prc function "'..YAMLvars.varspecs[var]['prc']..'" on var "'..var..'" not defined')
end
+ YAMLvars.debugtalk('function: '..YAMLvars.varspecs[var]['prc']..'\nvariable: '.. var .. '\n' ..
+ 'value: '.. tostring(val) .. '\nval type: ' ..type(val), "Applying processing (prc) function")
+
+ if YAMLvars.setts.prcstring then
+ val = tostring(val)
+ end
f(var, val) -- prc the value of the variable
end
function YAMLvars.parseYAMLvarsStr(y)
- YAMLvars.varsvals = YAMLvars.yaml.parse(y)
+ YAMLvars.debugtalk(YAMLvars.varsvals, 'Parsing YAML vars with table')
+ YAMLvars.varsvals = YAMLvars.yaml.parse(y, YAMLvars.setts.parseopts)
for var, val in pairs(YAMLvars.varsvals) do
if YAMLvars.varslowcase:contains(var:lower()) then
var = var:lower()
@@ -477,7 +492,7 @@ function YAMLvars.getYAMLcli()
YAMLvars.yaml2PDFmetadata = function(ytext) -- parse a YAML file and update the pdfmetadata table
__PDFmetadata__ = __PDFmetadata__ or {} -- existing metadata
if ytext ~= nil then
- local pdfmetadata_yaml = YAMLvars.yaml.parse(ytext) -- new metadata
+ local pdfmetadata_yaml = YAMLvars.yaml.parse(ytext, {timestamps = false}) -- new metadata
local t = {}
for k,v in pairs(pdfmetadata_yaml) do -- ensure first character is capital letter
t[k:upfirst()] = v
diff --git a/macros/luatex/latex/yamlvars/yamlvars.pdf b/macros/luatex/latex/yamlvars/yamlvars.pdf
index 4719837d3c..013335b3ad 100644
--- a/macros/luatex/latex/yamlvars/yamlvars.pdf
+++ b/macros/luatex/latex/yamlvars/yamlvars.pdf
Binary files differ
diff --git a/macros/luatex/latex/yamlvars/yamlvars.sty b/macros/luatex/latex/yamlvars/yamlvars.sty
index 733ee80b69..bd0643ec57 100644
--- a/macros/luatex/latex/yamlvars/yamlvars.sty
+++ b/macros/luatex/latex/yamlvars/yamlvars.sty
@@ -1,5 +1,5 @@
% Kale Ewasiuk (kalekje@gmail.com)
-% 2023-07-22
+% 2023-11-25
% Copyright (C) 2021-2023 Kale Ewasiuk
%
% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -25,7 +25,7 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{yamlvars}[2023-07-22]
+\ProvidesPackage{yamlvars}[2023-11-25]
\RequirePackage{luacode}
\RequirePackage{etoolbox}
@@ -38,7 +38,9 @@
\luadirect{YAMLvars = require('YAMLvars')}
\DeclareOption{useyv}{
- \gdef\yv#1{\csname yv--#1\endcsname}
+ \newcommand\yv{}
+ \gdef\yv#1{\csname yv--#1\endcsname} % todo not working... why??
+% \NewDocumentCommand{\yv}{m}{\luadirect{tex.sprint(tostring(token.get_macro('yv--'..\luastring{#1})))}}
\luadirect{YAMLvars.setts.prc = 'yvdef'}
\luadirect{YAMLvars.settsdefault.prc = 'yvdef'}
}
@@ -58,7 +60,8 @@
-%% todo delete below
+\newcommand{\yamlvarsdebugon}{\luadirect{YAMLvars.debug = true}}
+\newcommand{\yamlvarsdebugoff}{\luadirect{YAMLvars.debug = false}}
\newcommand{\lowercasevarYVon}{\luadirect{YAMLvars.lowvasevarall = true}}
\newcommand{\lowercasevarYVoff}{\luadirect{YAMLvars.lowvasevarall = false}}
\newcommand{\AllowUndeclaredYV}{\luadirect{YAMLvars.setts.undeclared = true}}
@@ -130,8 +133,8 @@ YAMLvars.xfmDefault = {'lb2nl','addxspace'}
}}
\NewDocumentCommand{\setdefYAMLvars}{ m }{\luadirect{
- YAMLvars.updatesettskv(pl.tex._xFalse, \luastring{#1}, true)
-}}
+ YAMLvars.updatesettskv(\luastring{#1}, pl.tex._xFalse, true)
+}} % set the default settings
% \IfBooleanTF{#1}{\luadirect{YAMLvars.setts = pl.tablex.deepcopy(YAMLvars.settsdefault)}}{} % if * return to default first
% \luadirect{pl.tablex.update(YAMLvars.setts, luakeys.parse(\luastring{#2}))}
diff --git a/macros/luatex/latex/yamlvars/yamlvars.tex b/macros/luatex/latex/yamlvars/yamlvars.tex
index 552fc21988..93e690d896 100644
--- a/macros/luatex/latex/yamlvars/yamlvars.tex
+++ b/macros/luatex/latex/yamlvars/yamlvars.tex
@@ -1,5 +1,5 @@
% Kale Ewasiuk (kalekje@gmail.com)
-% 2023-07-22
+% 2023-11-25
% Copyright (C) 2021-2023 Kale Ewasiuk
%
% Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -54,6 +54,7 @@
\usepackage[overwritedefs]{yamlvars}
+\yamlvarsdebugon
\title{YAMLvars}
\subtitle{a YAML variable parser for LuaLaTeX}
@@ -80,13 +81,6 @@ or just find it easier to read document metadata from a YAML file compared to th
standard title, author, etc. commands.
\section{Package Options}
-\leavevmode\llap{\texttt{useyv}\ \ \ }By default, when you specify a YAML variable, it will be defined using \texttt{gdef}
-(only if it wasn't defined previously).
-If you use this setting, unless otherwise specified, YAML variables will be accessible under
-the \texttt{\textbackslash yv\{<var>\}} command.
-This also allows numbers and symbols in the variable names.
-Note that internally, the variables are stored in the command sequence
-\texttt{yv--<var>}.
\leavevmode\llap{\texttt{parseCLI}\ \ \ }If this option is enabled, any arguments passed to your lualatex compile
command that end in ``.yaml'' will be used, separated by a space.
@@ -105,6 +99,14 @@ will br thrown if the name exists. Alternatively, you can use the commands \cmd{
\llcmd{overwritedefs}Danger! This will allow you to \cmd{gdef} commands with YAML. Caution should be taken to not set definitions like \cmd{begin}, \cmd{section}, etc.
+\leavevmode\llap{\texttt{useyv}\ \ \ }By default, when you specify a YAML variable, it will be defined using \texttt{gdef}
+(only if it wasn't defined previously).
+If you use this setting, unless otherwise specified, YAML variables will be accessible under
+the \texttt{\textbackslash yv\{<var>\}} command.
+This also allows numbers and symbols in the variable names.
+Note that internally, the variables are stored in the command sequence
+\texttt{yv--<var>}. This option is currently under repair and will not work properly in this version.
+
\section{Dependencies}
\llcmd{Note:}This package requires the \cmd{tinyyaml} package, available on CTAN.
@@ -119,6 +121,23 @@ like
\cmd{luacode}, \cmd{luakeys}, and
\cmd{etoolbox}.
+\section{Settings}
+\cmd{\setdefYAMLvars{kv}} changes the default settings of key-vals.\\
+\cmd{\setYAMLvars*{kv}} changes the current settings from key-vals. Use \cmd{*} if you want to first restore to defaults.
+
+ The \cmd{YAMLvars.setts} lua table contains the settings, which are:\\
+\cmd{parseopts} table passed to YAML parser options (default is \cmd{{timestamps=false}}) \\
+\cmd{decstr} in the declaration YAML text, if a value is a string, how should it be treated (\cmd{xfm, dft, or prc}) \\
+\cmd{undeclared} boolean for allowing parsing of undeclared vars \\
+\cmd{overwrite} boolean for allowing overwriting of previous definitions \\
+\cmd{lowercase} boolean for auto-changing vars to lowercase \\
+\cmd{prcstring} boolean for auto-converting final value before processing (sometimes) numbers can have odd effects \\
+%\cmd{tabmidrule} type of rule for tabu \\
+\cmd{xfm} default xfm function(s) if none passed to declared key, separated by space \\
+\cmd{prc} default prc function if none passed to declared key \\
+\cmd{dft} default dft function if none passed to declared key \\
+
+
\section{Declaring variables}
A declaration file can either be parsed with the command \texttt{declareYAMLvarsFile} command,
or, if you want to do it \LaTeX, you can put the YAML code in the \texttt{declareYAMLvars} environment.