[latex3-commits] [latex3/latex2e] docstrip-docu: describe the @@ replacement algorithm steps in more details (be117c36)

github at latex-project.org github at latex-project.org
Tue Oct 10 12:17:50 CEST 2023


Repository : https://github.com/latex3/latex2e
On branch  : docstrip-docu
Link       : https://github.com/latex3/latex2e/commit/be117c36ea76696513ed798dede5d4b1e905e13f

>---------------------------------------------------------------

commit be117c36ea76696513ed798dede5d4b1e905e13f
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Tue Oct 10 12:17:50 2023 +0200

    describe the @@ replacement algorithm steps in more details


>---------------------------------------------------------------

be117c36ea76696513ed798dede5d4b1e905e13f
 base/changes.txt  | 18 ++++++++++++------
 base/docstrip.dtx | 25 ++++++++++++++++++++++++-
 2 files changed, 36 insertions(+), 7 deletions(-)

diff --git a/base/changes.txt b/base/changes.txt
index 86a092e3..69d5bc08 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -5,9 +5,16 @@ It is provided for convenience only.  It therefore makes no claims to
 completeness or accuracy and it contains some references to files that
 are not part of the distribution.
 ================================================================================
+
+
+2023-10-10  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
+
+	* docstrip.dtx (section{Internal functions and variables}):
+	Explain the steps carried out by the replement algorithm for @@.
+
 2023-09-13 Ulrike Fischer <Ulrike.Fischer at latex-project.org>
 	* ltproperties.dtx:
-      expand consistently the label/property names in the LaTeX2e commands.
+	Expand consistently the label/property names in the LaTeX2e commands.
 
 2023-09-13 Joseph Wright  <Joseph.Wright at latex-project.org>
 	* ltmiscen.dtx:
@@ -15,9 +22,10 @@ are not part of the distribution.
 
 2023-09-05 Ulrike Fischer <Ulrike.Fischer at latex-project.org>
 	* ltproperties.dtx:
-      First implementation of properties module
-    * ltmiscen.dtx:
-      add test to \enddocument for changes in property values.
+	First implementation of properties module
+
+	* ltmiscen.dtx:
+	Add test to \enddocument for changes in property values.
 
 2023-09-01  Joseph Wright  <Joseph.Wright at latex-project.org>
 
@@ -34,8 +42,6 @@ are not part of the distribution.
 	* ltmiscen.dtx, ltspace.dtx
 	Support (visible) tabs in verbatim material
 
-2023-08-19 Joseph Wright  <Joseph.Wright at latex-project.org>
-
 2023-08-19 Joseph Wright  <Joseph.Wright at latex-project.org>
 
 	* ltcmd.dtx, usrguide.tex
diff --git a/base/docstrip.dtx b/base/docstrip.dtx
index be373499..776d0e68 100644
--- a/base/docstrip.dtx
+++ b/base/docstrip.dtx
@@ -31,7 +31,7 @@
 \def\filename{docstrip.dtx}
 \def\fileversion{v2.6b}
 \def\filedate{2022-09-03}
-\def\docdate {2022-09-03}
+\def\docdate {2023-10-10}
 %%
 %
 %\iffalse
@@ -838,6 +838,29 @@
 %    suppressed by giving an empty module name, namely using the
 %    syntax \texttt{\%<@@=>}.
 %
+%    The exact steps that are carried out by this replacement
+%    algorithm are the following:
+%    \begin{enumerate}
+%    \item First, deal with \texttt{@@@@} as a special case (by using a
+%    temporary disguise).
+%
+%    \item Then change all |__@@| to |__|\meta{module}.
+%
+%    \item Then change all remaining |_@@| to
+%      |__|\meta{module}.
+%
+%    \item Then change all remaining \texttt{@@} to
+%      |__|\meta{module}.
+%
+%    \item Finally, tidy up by changing each ``disguised
+%      \texttt{@@@@}'' to \texttt{@@}.
+%    \end{enumerate}
+%    Thus, replacement means that \texttt{@@} is replaced by the
+%    \meta{module} name and that 0, 1, or 2 underscores in front of
+%    \texttt{@@} are replaced by exactly 2 underscores (whilst any
+%    larger number of underscores is preserved).
+%
+%
 % \section{Those other languages}
 %    Since \TeX\ is an open system some of \TeX\ packages include
 %    non-\TeX\ files. Some authors use \ds\ to generate PostScript





More information about the latex3-commits mailing list.