summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
Diffstat (limited to 'macros')
-rw-r--r--macros/latex-dev/base/README.md19
-rw-r--r--macros/latex-dev/base/alltt.pdfbin223831 -> 223831 bytes
-rw-r--r--macros/latex-dev/base/cfgguide.pdfbin242888 -> 242888 bytes
-rw-r--r--macros/latex-dev/base/changes.txt89
-rw-r--r--macros/latex-dev/base/classes.dtx4
-rw-r--r--macros/latex-dev/base/classes.pdfbin560350 -> 560611 bytes
-rw-r--r--macros/latex-dev/base/clsguide.pdfbin402780 -> 402780 bytes
-rw-r--r--macros/latex-dev/base/cmfonts.fdd40
-rw-r--r--macros/latex-dev/base/cmfonts.pdfbin292376 -> 292160 bytes
-rw-r--r--macros/latex-dev/base/cyrguide.pdfbin239689 -> 239689 bytes
-rw-r--r--macros/latex-dev/base/doc-code.pdfbin1081761 -> 1077586 bytes
-rw-r--r--macros/latex-dev/base/doc.dtx126
-rw-r--r--macros/latex-dev/base/doc.pdfbin755188 -> 755127 bytes
-rw-r--r--macros/latex-dev/base/docstrip.pdfbin503774 -> 503716 bytes
-rw-r--r--macros/latex-dev/base/encguide.pdfbin1318126 -> 1318126 bytes
-rw-r--r--macros/latex-dev/base/exscale.pdfbin204711 -> 204711 bytes
-rw-r--r--macros/latex-dev/base/fix-cm.pdfbin288328 -> 287733 bytes
-rw-r--r--macros/latex-dev/base/fntguide.pdfbin502880 -> 502880 bytes
-rw-r--r--macros/latex-dev/base/graphpap.pdfbin161713 -> 161713 bytes
-rw-r--r--macros/latex-dev/base/ifthen.pdfbin221211 -> 221211 bytes
-rw-r--r--macros/latex-dev/base/inputenc.pdfbin318204 -> 318204 bytes
-rw-r--r--macros/latex-dev/base/lamport-manual.pdfbin170878 -> 170878 bytes
-rw-r--r--macros/latex-dev/base/latexrelease.pdfbin281906 -> 281906 bytes
-rw-r--r--macros/latex-dev/base/latexsym.pdfbin200760 -> 200760 bytes
-rw-r--r--macros/latex-dev/base/lb2.pdfbin252140 -> 252140 bytes
-rw-r--r--macros/latex-dev/base/letter.pdfbin337706 -> 337880 bytes
-rw-r--r--macros/latex-dev/base/lgc2.pdfbin215684 -> 215684 bytes
-rw-r--r--macros/latex-dev/base/lppl.pdfbin132382 -> 132382 bytes
-rw-r--r--macros/latex-dev/base/ltclass.dtx9
-rw-r--r--macros/latex-dev/base/ltcmdhooks-code.pdfbin720249 -> 719018 bytes
-rw-r--r--macros/latex-dev/base/ltcmdhooks-doc.pdfbin479100 -> 478530 bytes
-rw-r--r--macros/latex-dev/base/ltfilehook-code.pdfbin803034 -> 801140 bytes
-rw-r--r--macros/latex-dev/base/ltfilehook-doc.pdfbin548731 -> 547909 bytes
-rw-r--r--macros/latex-dev/base/ltfinal.dtx112
-rw-r--r--macros/latex-dev/base/ltfssbas.dtx66
-rw-r--r--macros/latex-dev/base/ltfssdcl.dtx17
-rw-r--r--macros/latex-dev/base/lthooks-code.pdfbin1096874 -> 1091456 bytes
-rw-r--r--macros/latex-dev/base/lthooks-doc.pdfbin703775 -> 701509 bytes
-rw-r--r--macros/latex-dev/base/ltkeys.dtx64
-rw-r--r--macros/latex-dev/base/ltluatex.pdfbin317700 -> 317700 bytes
-rw-r--r--macros/latex-dev/base/ltmarks-code.pdfbin715660 -> 715770 bytes
-rw-r--r--macros/latex-dev/base/ltmarks-doc.pdfbin587106 -> 586138 bytes
-rw-r--r--macros/latex-dev/base/ltnews.pdfbin1180993 -> 1210464 bytes
-rw-r--r--macros/latex-dev/base/ltnews.tex6
-rw-r--r--macros/latex-dev/base/ltnews01.pdfbin161518 -> 161518 bytes
-rw-r--r--macros/latex-dev/base/ltnews02.pdfbin159792 -> 159792 bytes
-rw-r--r--macros/latex-dev/base/ltnews03.pdfbin159332 -> 159332 bytes
-rw-r--r--macros/latex-dev/base/ltnews04.pdfbin152525 -> 152525 bytes
-rw-r--r--macros/latex-dev/base/ltnews05.pdfbin174494 -> 174494 bytes
-rw-r--r--macros/latex-dev/base/ltnews06.pdfbin142849 -> 142849 bytes
-rw-r--r--macros/latex-dev/base/ltnews07.pdfbin137811 -> 137811 bytes
-rw-r--r--macros/latex-dev/base/ltnews08.pdfbin155053 -> 155053 bytes
-rw-r--r--macros/latex-dev/base/ltnews09.pdfbin129570 -> 129570 bytes
-rw-r--r--macros/latex-dev/base/ltnews10.pdfbin169416 -> 169416 bytes
-rw-r--r--macros/latex-dev/base/ltnews11.pdfbin111948 -> 111948 bytes
-rw-r--r--macros/latex-dev/base/ltnews12.pdfbin156551 -> 156551 bytes
-rw-r--r--macros/latex-dev/base/ltnews13.pdfbin182225 -> 182225 bytes
-rw-r--r--macros/latex-dev/base/ltnews14.pdfbin170473 -> 170473 bytes
-rw-r--r--macros/latex-dev/base/ltnews15.pdfbin130309 -> 130309 bytes
-rw-r--r--macros/latex-dev/base/ltnews16.pdfbin138073 -> 138073 bytes
-rw-r--r--macros/latex-dev/base/ltnews17.pdfbin166228 -> 166228 bytes
-rw-r--r--macros/latex-dev/base/ltnews18.pdfbin38033 -> 38033 bytes
-rw-r--r--macros/latex-dev/base/ltnews19.pdfbin230028 -> 230028 bytes
-rw-r--r--macros/latex-dev/base/ltnews20.pdfbin318548 -> 318548 bytes
-rw-r--r--macros/latex-dev/base/ltnews21.pdfbin244867 -> 244867 bytes
-rw-r--r--macros/latex-dev/base/ltnews22.pdfbin317773 -> 317773 bytes
-rw-r--r--macros/latex-dev/base/ltnews23.pdfbin286591 -> 286591 bytes
-rw-r--r--macros/latex-dev/base/ltnews24.pdfbin265279 -> 265279 bytes
-rw-r--r--macros/latex-dev/base/ltnews25.pdfbin204935 -> 204935 bytes
-rw-r--r--macros/latex-dev/base/ltnews26.pdfbin379462 -> 379462 bytes
-rw-r--r--macros/latex-dev/base/ltnews27.pdfbin250592 -> 250592 bytes
-rw-r--r--macros/latex-dev/base/ltnews28.pdfbin376643 -> 376643 bytes
-rw-r--r--macros/latex-dev/base/ltnews29.pdfbin455107 -> 455107 bytes
-rw-r--r--macros/latex-dev/base/ltnews30.pdfbin511909 -> 511909 bytes
-rw-r--r--macros/latex-dev/base/ltnews31.pdfbin526323 -> 526323 bytes
-rw-r--r--macros/latex-dev/base/ltnews32.pdfbin546160 -> 546160 bytes
-rw-r--r--macros/latex-dev/base/ltnews33.pdfbin522412 -> 522412 bytes
-rw-r--r--macros/latex-dev/base/ltnews34.pdfbin508044 -> 508044 bytes
-rw-r--r--macros/latex-dev/base/ltnews35.pdfbin563513 -> 563534 bytes
-rw-r--r--macros/latex-dev/base/ltnews35.tex2
-rw-r--r--macros/latex-dev/base/ltnews36.pdfbin0 -> 306491 bytes
-rw-r--r--macros/latex-dev/base/ltnews36.tex225
-rw-r--r--macros/latex-dev/base/ltpara-code.pdfbin667130 -> 667151 bytes
-rw-r--r--macros/latex-dev/base/ltpara-doc.pdfbin560603 -> 560009 bytes
-rw-r--r--macros/latex-dev/base/ltshipout-code.pdfbin820873 -> 819020 bytes
-rw-r--r--macros/latex-dev/base/ltshipout-doc.pdfbin565171 -> 563793 bytes
-rw-r--r--macros/latex-dev/base/ltvers.dtx2
-rw-r--r--macros/latex-dev/base/ltx3info.pdfbin219349 -> 219349 bytes
-rw-r--r--macros/latex-dev/base/ltxdoc.dtx8
-rw-r--r--macros/latex-dev/base/ltxdoc.pdfbin243273 -> 242645 bytes
-rw-r--r--macros/latex-dev/base/makeindx.pdfbin165821 -> 165821 bytes
-rw-r--r--macros/latex-dev/base/modguide.pdfbin243605 -> 243605 bytes
-rw-r--r--macros/latex-dev/base/nfssfont.pdfbin211180 -> 211180 bytes
-rw-r--r--macros/latex-dev/base/proc.pdfbin227059 -> 227059 bytes
-rw-r--r--macros/latex-dev/base/slides.pdfbin375518 -> 375518 bytes
-rw-r--r--macros/latex-dev/base/slifonts.pdfbin234191 -> 234191 bytes
-rw-r--r--macros/latex-dev/base/source2e.pdfbin5760499 -> 5713613 bytes
-rw-r--r--macros/latex-dev/base/syntonly.pdfbin189789 -> 189966 bytes
-rw-r--r--macros/latex-dev/base/tlc2.pdfbin290615 -> 290615 bytes
-rw-r--r--macros/latex-dev/base/tulm.pdfbin162772 -> 162772 bytes
-rw-r--r--macros/latex-dev/base/usrguide.pdfbin430994 -> 430994 bytes
-rw-r--r--macros/latex-dev/base/usrguide3.pdfbin403394 -> 410688 bytes
-rw-r--r--macros/latex-dev/base/usrguide3.tex57
-rw-r--r--macros/latex-dev/base/utf8ienc.pdfbin353405 -> 353405 bytes
-rw-r--r--macros/latex-dev/base/webcomp.pdfbin146198 -> 146198 bytes
-rw-r--r--macros/latex/contrib/gitver/ChangeLog4
-rw-r--r--macros/latex/contrib/gitver/README.md2
-rw-r--r--macros/latex/contrib/gitver/gitver.pdfbin128530 -> 134559 bytes
-rw-r--r--macros/latex/contrib/gitver/gitver.sty44
-rw-r--r--macros/latex/contrib/gitver/gitver.tex7
-rw-r--r--macros/latex/contrib/gitver/latexmkrc8
-rw-r--r--macros/latex/contrib/tabvar/README8
-rw-r--r--macros/latex/contrib/tabvar/doc/demo.pdfbin244370 -> 258377 bytes
-rw-r--r--macros/latex/contrib/tabvar/doc/demo.tex194
-rw-r--r--macros/latex/contrib/tabvar/doc/tabvar.pdfbin342081 -> 373944 bytes
-rw-r--r--macros/latex/contrib/tabvar/source/tabvar.dtx593
116 files changed, 1064 insertions, 642 deletions
diff --git a/macros/latex-dev/base/README.md b/macros/latex-dev/base/README.md
index 769562d502..c020d51d21 100644
--- a/macros/latex-dev/base/README.md
+++ b/macros/latex-dev/base/README.md
@@ -1,7 +1,7 @@
The LaTeX kernel
================
-Release 2022-11-01 pre-release 0
+Release 2022-11-01 pre-release 1
Overview
--------
@@ -9,7 +9,7 @@ Overview
This bundle provides the core LaTeX kernel. In addition to this bundle,
a minimal LaTeX system also needs the files contained in the
-- LaTeX team documentation (`doc`)
+
- L3 programming layer (`l3kernel`)
- L3 backend interfaces (`l3backend`)
- L3 unicode support (`unicode-data`)
@@ -55,18 +55,12 @@ The following files contain further information:
- `ltx3info.tex` gives you some historical information about the LaTeX3
project
-- `manual.err` lists errata in _LaTeX: A Document Preparation System_ (Lamport)
+- `lamport-manual.err` lists errata in _LaTeX: A Document Preparation System_ (Lamport)
- `tlc2.err` lists errata in _The LaTeX Companion_ (Mittelbach et al.)
The files `ltnews*.tex` (part of the `doc` bundle) contain the LaTeX
newsletters, the highest number being the most recent.
-For historical reasons, the base distribution and the core documentation
-are bundled separately. Documentation is found in the `doc` bundle. In an
-installed TeX system, `base` and `doc` should be placed within the same
-location; the distinction is therefore primarily of importance when looking
-at the development code.
-
Installation
------------
@@ -80,10 +74,9 @@ Requirements
------------
The LaTeX kernel requires the e-TeX extensions to TeX, which were finalised
-in the late 1990s and are available in modern TeX-derived engines. Some new
-features require `\ifincsname`, which is currently available in release
-versions of pdfTeX, XeTeX and LuaTeX, and is being introduced shortly in
-e-pTeX and e-upTeX.
+in the late 1990s and are available in modern TeX-derived engines. It also
+requires a set of common post-e-TeX extensions, generally known as the
+pdfTeX additions. These are available in all modern TeX engines.
License
-------
diff --git a/macros/latex-dev/base/alltt.pdf b/macros/latex-dev/base/alltt.pdf
index 22d164744b..cf5ccb38f8 100644
--- a/macros/latex-dev/base/alltt.pdf
+++ b/macros/latex-dev/base/alltt.pdf
Binary files differ
diff --git a/macros/latex-dev/base/cfgguide.pdf b/macros/latex-dev/base/cfgguide.pdf
index b1b3d28e57..0f5d6bb7b0 100644
--- a/macros/latex-dev/base/cfgguide.pdf
+++ b/macros/latex-dev/base/cfgguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/changes.txt b/macros/latex-dev/base/changes.txt
index ce72312d3d..0c9fbba1c2 100644
--- a/macros/latex-dev/base/changes.txt
+++ b/macros/latex-dev/base/changes.txt
@@ -6,11 +6,94 @@ completeness or accuracy and it contains some references to files that
are not part of the distribution.
================================================================================
+2022-07-10 David Carlisle <David.Carlisle@latex-project.org>
+
+ * cmfonts.fdd: avoid EC sans serif fonts at small design sizes.
+ The medium weight is bolder and wider than the bold extended.
+ Scale the 8pt font for sizes 5,6,7. gh/879
+
+2022-06-22 David Carlisle <David.Carlisle@latex-project.org>
+
+ * ltkeys.dtx:
+ add .ifnot property (.legacy_if_set_inverse:n)
+
+ * doc.dtx
+ recast Package Option declarations using \DeclareKeys
+
+2022-06-10 Ulrike Fischer <Ulrike.Fischer@latex-project.org>
+
+ * cmfonts.fdd
+ Add font definitions for slanted small caps (gh/782)
+
+2022-06-10 Ulrike Fischer <Ulrike.Fischer@latex-project.org>
+
+ * cmfonts.fdd
+ Add font definitions for slanted small caps (gh/782)
+
================================================================================
All changes above are only part of the development branch for the next release.
-================================================================================
+================================================================================
+
+#########################
+# 2022-06-01 PL5 Release
+#########################
+
+2022-07-05 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Correct name of store for raw class options list
+ Support \CurrentOption in unknown keys
+
+2022-07-04 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
+
+ * ltfssbas.dtx, ltfssdcl.dtx:
+ Ignore spaces if necessary, i.e., after display math done with $$ (gh/886)
+
+2022-07-04 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltfinal.dtx
+ Introduce \MakeTitlecase, \CaseSwitch and \DeclareCaseChangeEquivalent
+ as LaTeX2e names for expl3 case changing hooks, needed to support
+ some customisation requirements (e.g. biblatex)
+
+#########################
+# 2022-06-01 PL4 Release
+#########################
+
+2022-06-30 David Carlisle <David.Carlisle@latex-project.org>
+
+ * ltfinal.dtx: update MakeUppercase and \MakeLowercase for gh/881
+ \protectd@edef no longer needed with latest l3 code.
+ added \AddToNoCaseChangeList
+
+#########################
+# 2022-06-01 PL3 Release
+#########################
+
+2022-06-23 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
+
+ * ltxdoc.dtx (section{Useful abbreviations}):
+ Update \cmd definition to work with new \cs (gh/874)
+
+#########################
+# 2022-06-01 PL2 Release
+#########################
+
+2022-06-20 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Use raw options data for keyval handling
+
+2022-06-19 Joseph Wright <Joseph.Wright@latex-proejct.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Correct approach to removing keys from \@unusedoptionlist
+
+#########################
+# 2022-06-01 PL1 Release
+#########################
-2022-06-16 Joseph Wright <Joseph.Wright@latex-proejct.org>
+2022-06-16 Joseph Wright <Joseph.Wright@latex-project.org>
* ltkeys.dtx (subsection{Main mechanism})
Remove key name but avoid touching key value in \@unusedoptionlist
@@ -215,7 +298,7 @@ All changes above are only part of the development branch for the next release.
* ltplain.dtx (section{Plain \TeX}):
Alter \obeyspaces and \obeylines to use a redirection for special
- use cases (gh/367)}
+ use cases (gh/367)
2022-01-20 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
diff --git a/macros/latex-dev/base/classes.dtx b/macros/latex-dev/base/classes.dtx
index 857cfc799e..188679d4d9 100644
--- a/macros/latex-dev/base/classes.dtx
+++ b/macros/latex-dev/base/classes.dtx
@@ -53,7 +53,7 @@
%<*driver>
\ProvidesFile{classes.drv}
%</driver>
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
%<article|report|book> Standard LaTeX document class]
%<10pt|11pt|12pt> Standard LaTeX file (size option)]
% \end{macrocode}
@@ -2538,7 +2538,7 @@
% The macro above uses |\@makechapterhead|\meta{text} to format the
% heading of the chapter.
%
-% We begin by leaving some white space. The we open a group in
+% We begin by leaving some white space. Then we open a group in
% which we have a paragraph indent of 0pt, and in which we have the
% text set ragged right. We also reset the font.
% \changes{v1.3c}{1995/05/25}{replace \cs{reset@font} with
diff --git a/macros/latex-dev/base/classes.pdf b/macros/latex-dev/base/classes.pdf
index a782718ef0..8744196266 100644
--- a/macros/latex-dev/base/classes.pdf
+++ b/macros/latex-dev/base/classes.pdf
Binary files differ
diff --git a/macros/latex-dev/base/clsguide.pdf b/macros/latex-dev/base/clsguide.pdf
index e39b67d6f1..bcdb0c99bd 100644
--- a/macros/latex-dev/base/clsguide.pdf
+++ b/macros/latex-dev/base/clsguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/cmfonts.fdd b/macros/latex-dev/base/cmfonts.fdd
index f991ee564e..477085eaef 100644
--- a/macros/latex-dev/base/cmfonts.fdd
+++ b/macros/latex-dev/base/cmfonts.fdd
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1993-2019
+% Copyright 1993-2022
% The LaTeX Project and any individual authors listed elsewhere
% in this file.
%
@@ -67,7 +67,7 @@
%<*driver, >
\ProvidesFile{cmfonts.drv}
%</driver, >
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
%
%<*driver>
\documentclass{ltxdoc}
@@ -261,13 +261,13 @@
% (thanks to Christian Cornelssen)}
% \begin{macrocode}
%<*new|ec>
-%<*!tt>
+%<*!tt&!T1cmss>
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
%<ec> <17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
%<!ec> <17.28><20.74><24.88>genb*#5}{}}
-%</!tt>
+%</!tt&!T1cmss>
% \end{macrocode}
% For monospaced fonts, the normal interpolation breaks down below
% 8pt, so scale the 8pt fonts instead.
@@ -282,6 +282,21 @@
%<ec> <35.83>genb*#5}{}}
%<!ec> <9><10><10.95><12><14.4><17.28><20.74><24.88>genb*#5}{}}
%</tt>
+% \end{macrocode}
+% \changes{v2.5l}{2022/07/10}%
+% {Avoid ec ss fonts at design size 5, 6, 7. gh/879}
+% For ec cmss fonts avoid the small design sizes which have incorrect
+% definitions.
+% (Medium weight bolder and wider than bold extended for 5pt and 6pt,
+% 7pt does not have expected contrast. Scale 8pt, matching |fix-cm|).
+% gh/879
+% \begin{macrocode}
+%<*T1cmss>
+\providecommand{\EC@ssfamily}[5]{%
+ \DeclareFontShape{#1}{#2}{#3}{#4}%
+ {<5><6><7><8>#50800%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
+%</T1cmss>
%</new|ec>
% \end{macrocode}
%
@@ -375,6 +390,8 @@
% \changes{v2.5a}{1997/01/14}
% {EC fonts}
% \changes{v2.5d}{1997/06/02}{bold sc fonts latex/2497}
+% \changes{v2.5k}{2022/06/10}{add support for slanted small caps github/782}
+%
% \begin{macrocode}
%<*ec>
\EC@family{T1}{cmr}{m}{n}{ecrm}
@@ -387,6 +404,9 @@
\EC@family{T1}{cmr}{bx}{sl}{ecbl}
\EC@family{T1}{cmr}{bx}{sc}{ecxc}
\EC@family{T1}{cmr}{m}{ui}{ecui}
+\EC@family{T1}{cmr}{m}{scsl}{ecsc}
+\EC@family{T1}{cmr}{bx}{scsl}{ecoc}
+\EC@family{T1}{cmr}{b}{scsl}{ecoc}
%</ec>
%</T1cmr>
% \end{macrocode}
@@ -489,12 +509,12 @@
% {EC fonts}
% \begin{macrocode}
%<*ec>
-\EC@family{T1}{cmss}{m}{n}{ecss}
-\EC@family{T1}{cmss}{m}{sl}{ecsi}
-\EC@family{T1}{cmss}{m}{it}{ecsi}
-\EC@family{T1}{cmss}{bx}{n}{ecsx}
-\EC@family{T1}{cmss}{bx}{it}{ecso}
-\EC@family{T1}{cmss}{bx}{sl}{ecso}
+\EC@ssfamily{T1}{cmss}{m}{n}{ecss}
+\EC@ssfamily{T1}{cmss}{m}{sl}{ecsi}
+\EC@ssfamily{T1}{cmss}{m}{it}{ecsi}
+\EC@ssfamily{T1}{cmss}{bx}{n}{ecsx}
+\EC@ssfamily{T1}{cmss}{bx}{it}{ecso}
+\EC@ssfamily{T1}{cmss}{bx}{sl}{ecso}
%</ec>
% \end{macrocode}
% The next substitution is very questionable.
diff --git a/macros/latex-dev/base/cmfonts.pdf b/macros/latex-dev/base/cmfonts.pdf
index 16babe34e8..3802d6b12a 100644
--- a/macros/latex-dev/base/cmfonts.pdf
+++ b/macros/latex-dev/base/cmfonts.pdf
Binary files differ
diff --git a/macros/latex-dev/base/cyrguide.pdf b/macros/latex-dev/base/cyrguide.pdf
index 8f10c4a5b3..5057e54a02 100644
--- a/macros/latex-dev/base/cyrguide.pdf
+++ b/macros/latex-dev/base/cyrguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/doc-code.pdf b/macros/latex-dev/base/doc-code.pdf
index 01ee8fae11..2f8a0c8df2 100644
--- a/macros/latex-dev/base/doc-code.pdf
+++ b/macros/latex-dev/base/doc-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/doc.dtx b/macros/latex-dev/base/doc.dtx
index d6b21744df..d137038d63 100644
--- a/macros/latex-dev/base/doc.dtx
+++ b/macros/latex-dev/base/doc.dtx
@@ -45,7 +45,7 @@
%<+package>
%<+package>\ProvidesPackage{doc}
%<+shortvrb>\ProvidesPackage{shortvrb}
-%<+package|shortvrb> [2022/06/08 v3.0j
+%<+package|shortvrb> [2022/07/03 v3.0k
%<+package|shortvrb> Standard LaTeX documentation package V3 (FMi)]
%\catcode`\<=12
%
@@ -260,8 +260,8 @@
% \begin{abstract}
% Roughly 30 years ago (version 1.0 was dated 1988/05/05) I wrote
% the first version of the \DOC package, a package to provide code
-% documentation for \TeX{} code. Since then it has be used all over
-% the place to document the \LaTeX{} kernel and most of the
+% documentation for \TeX{} code. Since then it has been used all
+% over the place to document the \LaTeX{} kernel and most of the
% packages that are nowadays available. The core code of version 2
% (which is the current version) exists since 1998, i.e., for 20
% years.
@@ -1909,112 +1909,38 @@
% should be altered further.
% \fmi{cleanup replacement of kvoptions}
%
-% \begin{macrocode}
-\ExplSyntaxOn
-% \end{macrocode}
% Some keys are available as options for use in \cs{usepackage} some are
% for the generated item \api's:
-% \fmi{cleanup documentation (and code once the new key interface is there)}
-% \begin{macrocode}
-\newif \ifdoc@noprint
-\newif \ifdoc@noindex
-\newif \ifdoc@hyperref \doc@hyperreftrue
-\newif \ifdoc@multicol \doc@multicoltrue
-\newif \ifdoc@debugshow
-\newif \ifdoc@reportchangedates
-\keys_define:nn {doc}
- {
- noprint .choice:,
- noprint / true .code:n = { \legacy_if_set_true:n { doc@noprint } },
- noprint / false .code:n = { \legacy_if_set_false:n { doc@noprint } },
- noprint .default:n = { true },
- noindex .choice:,
- noindex / true .code:n = { \legacy_if_set_true:n { doc@noindex } },
- noindex / false .code:n = { \legacy_if_set_false:n { doc@noindex } },
- noindex .default:n = { true },
- hyperref .choice:,
- hyperref / true .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- hyperref / false .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- hyperref .default:n = { true },
-% \end{macrocode}
+% \changes{v3.0k}{2022/06/22}{Use \cs{DeclareKeys}}
% \changes{v3.0h}{2022/06/01}{fix choice key name (gh/750)}
-% \begin{macrocode}
- nohyperref .choice:,
- nohyperref / true .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- nohyperref / false .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- nohyperref .default:n = { true },
- multicol .choice:,
- multicol / true .code:n = { \legacy_if_set_true:n { doc@multicol } },
- multicol / false .code:n = { \legacy_if_set_false:n { doc@multicol } },
- multicol .default:n = { true },
- nomulticol .choice:,
- nomulticol / true .code:n = { \legacy_if_set_false:n { doc@multicol } },
- nomulticol / false .code:n = { \legacy_if_set_true:n { doc@multicol } },
-% \end{macrocode}
% \changes{v3.0h}{2022/06/01}{fix default key name (gh/750)}
% \begin{macrocode}
- nomulticol .default:n = { true },
- debugshow .choice:,
- debugshow / true .code:n = { \legacy_if_set_true:n { doc@debugshow } },
- debugshow / false .code:n = { \legacy_if_set_false:n { doc@debugshow } },
- debugshow .default:n = { true },
- reportchangedates .choice:,
- reportchangedates / true .code:n = { \legacy_if_set_true:n { doc@reportchangedates } },
- reportchangedates / false .code:n = { \legacy_if_set_false:n { doc@reportchangedates } },
- reportchangedates .default:n = { true },
- }
-% \end{macrocode}
-% This one is for \cs{usepackage} and \cs{NewDocElement}:
-% \begin{macrocode}
-\newif \ifdoc@toplevel \doc@topleveltrue
-\keys_define:nn {doc}
+\DeclareKeys
{
- toplevel .choice:,
- toplevel / true .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- toplevel / false .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- toplevel .default:n = { true },
- notoplevel .choice:,
- notoplevel / true .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- notoplevel / false .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- notoplevel .default:n = { true }
+ noprint .if = {doc@noprint},
+ noindex .if = {doc@noindex},
+ hyperref .if = {doc@hyperref},
+ nohyperref .ifnot = {doc@hyperref},
+ multicol .if = {doc@multicol},
+ nomulticol .ifnot = {doc@multicol},
+ debugshow .if = {doc@debugshow},
+ reportchangedates .if = {doc@reportchangedates},
+ toplevel .if = {doc@toplevel},
+ notoplevel .ifnot = {doc@toplevel},
+ macrolike .if = {doc@macrolike},
+ envlike .ifnot = {doc@macrolike},
+ idxtype .store = \doc@idxtype,
+ idxgroup .store = \doc@idxgroup,
+ printtype .store = \doc@printtype,
+ outer .if = {doc@outer},
}
% \end{macrocode}
-% These are for \cs{NewDocElement}:
-% \begin{macrocode}
-\newif \ifdoc@macrolike
-\keys_define:nn {doc}
- {
- macrolike .choice:,
- macrolike / true .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- macrolike / false .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- macrolike .default:n = { true },
- envlike .choice:,
- envlike / true .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- envlike / false .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- envlike .default:n = { true }
- }
-
-\keys_define:nn { doc }
- {
- idxtype .tl_set:N = \doc@idxtype,
- idxgroup .tl_set:N = \doc@idxgroup,
- printtype .tl_set:N = \doc@printtype
- }
-% \end{macrocode}
-% And this one only for instances of doc elements in the document, it
-% covers the case where you want to document a macro which is
-% declared to be \cs{outer}. This is not a concept officially
-% supported by \LaTeX{} but there are cases when it gets used.
+%
+% Setting these options to true initially.
% \begin{macrocode}
-\newif\ifdoc@outer
-\keys_define:nn {doc}
- {
- outer .choice:,
- outer / true .code:n = { \legacy_if_set_true:n { doc@outer } },
- outer / false .code:n = { \legacy_if_set_false:n { doc@outer } },
- outer .default:n = { true },
- }
-\ExplSyntaxOff
+\doc@hyperreftrue
+\doc@multicoltrue
+\doc@topleveltrue
% \end{macrocode}
%
% \subsection{Processing the package keys}
diff --git a/macros/latex-dev/base/doc.pdf b/macros/latex-dev/base/doc.pdf
index b7f2d52ba1..aba11266ef 100644
--- a/macros/latex-dev/base/doc.pdf
+++ b/macros/latex-dev/base/doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/docstrip.pdf b/macros/latex-dev/base/docstrip.pdf
index 5891ba52e5..612a48bd44 100644
--- a/macros/latex-dev/base/docstrip.pdf
+++ b/macros/latex-dev/base/docstrip.pdf
Binary files differ
diff --git a/macros/latex-dev/base/encguide.pdf b/macros/latex-dev/base/encguide.pdf
index 55a843b9b2..becc70520b 100644
--- a/macros/latex-dev/base/encguide.pdf
+++ b/macros/latex-dev/base/encguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/exscale.pdf b/macros/latex-dev/base/exscale.pdf
index cb8356298f..b380e777d0 100644
--- a/macros/latex-dev/base/exscale.pdf
+++ b/macros/latex-dev/base/exscale.pdf
Binary files differ
diff --git a/macros/latex-dev/base/fix-cm.pdf b/macros/latex-dev/base/fix-cm.pdf
index eee7e7d9c3..cc88987966 100644
--- a/macros/latex-dev/base/fix-cm.pdf
+++ b/macros/latex-dev/base/fix-cm.pdf
Binary files differ
diff --git a/macros/latex-dev/base/fntguide.pdf b/macros/latex-dev/base/fntguide.pdf
index c155ce98b2..a2b0345845 100644
--- a/macros/latex-dev/base/fntguide.pdf
+++ b/macros/latex-dev/base/fntguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/graphpap.pdf b/macros/latex-dev/base/graphpap.pdf
index 8168a99044..81a23d161e 100644
--- a/macros/latex-dev/base/graphpap.pdf
+++ b/macros/latex-dev/base/graphpap.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ifthen.pdf b/macros/latex-dev/base/ifthen.pdf
index 73fe175dc8..e1c5d222ec 100644
--- a/macros/latex-dev/base/ifthen.pdf
+++ b/macros/latex-dev/base/ifthen.pdf
Binary files differ
diff --git a/macros/latex-dev/base/inputenc.pdf b/macros/latex-dev/base/inputenc.pdf
index 406e3d6fa4..4445df126a 100644
--- a/macros/latex-dev/base/inputenc.pdf
+++ b/macros/latex-dev/base/inputenc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/lamport-manual.pdf b/macros/latex-dev/base/lamport-manual.pdf
index 4383556908..f6c1e635a7 100644
--- a/macros/latex-dev/base/lamport-manual.pdf
+++ b/macros/latex-dev/base/lamport-manual.pdf
Binary files differ
diff --git a/macros/latex-dev/base/latexrelease.pdf b/macros/latex-dev/base/latexrelease.pdf
index 732bfb26f8..2cad49e144 100644
--- a/macros/latex-dev/base/latexrelease.pdf
+++ b/macros/latex-dev/base/latexrelease.pdf
Binary files differ
diff --git a/macros/latex-dev/base/latexsym.pdf b/macros/latex-dev/base/latexsym.pdf
index 2dc448b292..5af483ac78 100644
--- a/macros/latex-dev/base/latexsym.pdf
+++ b/macros/latex-dev/base/latexsym.pdf
Binary files differ
diff --git a/macros/latex-dev/base/lb2.pdf b/macros/latex-dev/base/lb2.pdf
index ba5f34dd12..43e435c3ae 100644
--- a/macros/latex-dev/base/lb2.pdf
+++ b/macros/latex-dev/base/lb2.pdf
Binary files differ
diff --git a/macros/latex-dev/base/letter.pdf b/macros/latex-dev/base/letter.pdf
index ff3ce8c44d..7c1dcd5581 100644
--- a/macros/latex-dev/base/letter.pdf
+++ b/macros/latex-dev/base/letter.pdf
Binary files differ
diff --git a/macros/latex-dev/base/lgc2.pdf b/macros/latex-dev/base/lgc2.pdf
index e2882d2b05..9560b062fd 100644
--- a/macros/latex-dev/base/lgc2.pdf
+++ b/macros/latex-dev/base/lgc2.pdf
Binary files differ
diff --git a/macros/latex-dev/base/lppl.pdf b/macros/latex-dev/base/lppl.pdf
index 9649fdb741..94c82b58bb 100644
--- a/macros/latex-dev/base/lppl.pdf
+++ b/macros/latex-dev/base/lppl.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltclass.dtx b/macros/latex-dev/base/ltclass.dtx
index 20e59353ec..35c4251fce 100644
--- a/macros/latex-dev/base/ltclass.dtx
+++ b/macros/latex-dev/base/ltclass.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltclass.dtx}
- [2022/04/16 v1.5b LaTeX Kernel (Class & Package Interface)]
+ [2022/06/20 v1.5c LaTeX Kernel (Class & Package Interface)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltclass.dtx}
@@ -2150,7 +2150,7 @@
% actions prepend \cs{@currpath} to \cs{@currname} (namely loading,
% as we have to respect the given path).
%
-% A file substituiton isn't followed just yet because at this point
+% A file substitution isn't followed just yet because at this point
% we are parsing user input, so the file is still what the user
% asked for, and not the file actually loaded.
% \begin{macrocode}
@@ -2176,6 +2176,7 @@
\@ifl@aded\@currext\@currname
% \end{macrocode}
% \changes{v1.5b}{2022/03/18}{Switch to \cs{ProcessKeyOptions}}
+% \changes{v1.5c}{2022/06/20}{Pass raw options to \cs{ProcessKeyOptions}}
% In the current preferred approach, a key family name will exist for
% processing using \pkg{ltkeys}. In that case, we replace the previous
% package options with the new ones, then call the key handler.
@@ -2185,7 +2186,9 @@
\@ifundefined{opt@fam@\@currname.\@currext}
{\@onefilewithoptions@clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap@space#2 \@empty}%
+ \@namedef{@raw@opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt@fam@\@currname.\@currext\endcsname]%
diff --git a/macros/latex-dev/base/ltcmdhooks-code.pdf b/macros/latex-dev/base/ltcmdhooks-code.pdf
index f14ffecd0a..56416966d6 100644
--- a/macros/latex-dev/base/ltcmdhooks-code.pdf
+++ b/macros/latex-dev/base/ltcmdhooks-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltcmdhooks-doc.pdf b/macros/latex-dev/base/ltcmdhooks-doc.pdf
index 4c53d8ec8c..40b7f4ecb5 100644
--- a/macros/latex-dev/base/ltcmdhooks-doc.pdf
+++ b/macros/latex-dev/base/ltcmdhooks-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltfilehook-code.pdf b/macros/latex-dev/base/ltfilehook-code.pdf
index 4b061d2a0a..7b59fe3a02 100644
--- a/macros/latex-dev/base/ltfilehook-code.pdf
+++ b/macros/latex-dev/base/ltfilehook-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltfilehook-doc.pdf b/macros/latex-dev/base/ltfilehook-doc.pdf
index 046c4c96ab..8a60d59829 100644
--- a/macros/latex-dev/base/ltfilehook-doc.pdf
+++ b/macros/latex-dev/base/ltfilehook-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltfinal.dtx b/macros/latex-dev/base/ltfinal.dtx
index b1b8ff953b..fafd0c6912 100644
--- a/macros/latex-dev/base/ltfinal.dtx
+++ b/macros/latex-dev/base/ltfinal.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltfinal.dtx}
- [2022/06/02 v2.2u LaTeX Kernel (Final Settings)]
+ [2022/07/05 v2.2w LaTeX Kernel (Final Settings)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltfinal.dtx}
@@ -1063,11 +1063,12 @@
% \end{macrocode}
%
% \begin{macro}{\MakeUppercase}
-% \begin{macro}{\MakeUppercase}
+% \begin{macro}{\MakeLowercase}
+% \begin{macro}{\MakeTitlecase}
% \begin{macro}{\NoCaseChange}
-% \begin{macro}{\@uclclist}
-% \begin{macro}{\@expl@text@lowercase@@n}
-% \begin{macro}{\@expl@text@uppercase@@n}
+% \begin{macro}{\AddToNoCaseChangeList}
+% \begin{macro}{\CaseSwitch}
+% \begin{macro}{\DeclareCaseChangeEquivalent}
% \begin{macro}{\@uclclist}
%
%
@@ -1077,82 +1078,71 @@
% And whilst we're doing things with uc/lc tables, here are two
% commands to upper- and lower-case a string.
%
-% \emph{Note} that this implementation is subject to change! At
-% the moment we're not providing any way to extend the list of
-% uc/lc commands, since finding a good interface is difficult.
-% These commands have some nasty features, such as uppercasing
-% mathematics, environment names, labels, etc. A much better
-% long-term solution is to use all-caps fonts, but these aren't
-% generally available.
%
-% Two wrappers around the L3 case changing functions.
+% \changes{v2.1h}{2019/09/14}{Expand UTF8 chars when case changing (github/177)}
+% \changes{v2.2r}{2022/02/20}
+% {Use \cs{@expl@text@uppercase@@n}, removing local redefinition of \cs{UTF@two@octets@noexpand}}%
+% \changes{v2.2t}{2022/04/21}{Support \cs{noexpand} in argument of \cs{@expl@text@uppercase@@n}}
+% \changes{v2.2v}{2022/06/30}{Just use \cs{text_lowercase:n} without \cs{protectd@edf} gh/881x}%
+% \changes{v2.2w}{2022/07/04}{Introduced \cs{CaseSwitch}, \cs{DeclareCaseChangeEquivalent} and \cs{MakeTitlecase} to support hooking into case changing gh/889}%
+% Wrappers around the L3 case changing functions.
% |\protected| to make them mostly safe as replacements for |uppercase|
% and |\lowercase|.
+%
+% In
+%\begin{verbatim}
+% \markboth{\MakeUppercase\contentsname}
+% {\MakeUppercase\contentsname}
+%\end{verbatim}
+% then the uppercasing is only done to the first letter of the
+% contents name, since the mark expands out to:
+%\begin{verbatim}
+% \mark{\MakeUppercase Table of Contents}
+% {\MakeUppercase Table of Contents}
+%\end{verbatim}
+% In order to get round this, we redefine |\MakeUppercase| and
+% |\MakeLowercase| to grab their argument and brace it.
+%
+% Earlier versions needed to procsss |\@uclclist| in an |\edef|
+% to handle legacy input encodings, but recent (2022) expl3 versions
+% handle non-UTF8 text natively so we simply call the |\text_...case:n|
+% functions.
% \begin{macrocode}
\ExplSyntaxOn
-\protected\def\@expl@text@lowercase@@n{\text_lowercase:n}
-\protected\def\@expl@text@uppercase@@n{\text_uppercase:n}
+\cs_new_protected_nopar:cpn{MakeUppercase~}{\text_uppercase:n}
+\cs_set_nopar:Npx\MakeUppercase#1{\use:c{MakeUppercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeLowercase~}{\text_lowercase:n}
+\cs_set_nopar:Npx\MakeLowercase#1{\use:c{MakeLowercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeTitlecase~}{\text_titlecase:n}
+\cs_set_nopar:Npx\MakeTitlecase#1{\use:c{MakeTitlecase~}{#1}}
% \end{macrocode}
%
% \changes{v2.2u}{2022/06/02}{Add \cs{NoCaseChange}}
+% \changes{v2.2u}{2022/06/30}{Add \cs{AddToNoCaseChangeList}}
% |\NoCaseChange| protects its argument from the case change functions.
+%
+% |\AddToNoCaseChangeList| Allows new commands to protect their arguments, eg
+% |AddToNoCaseChangeList{\eqref}| would protect the argument of |\eqref|
+% in the same way as the argument of |\ref|.
% \begin{macrocode}
-\tl_put_right:Nn \l_text_case_exclude_arg_tl { \NoCaseChange }
+\cs_new_protected_nopar:Npn\AddToNoCaseChangeList
+ {\tl_put_right:Nn \l_text_case_exclude_arg_tl}
+\AddToNoCaseChangeList{ \NoCaseChange }
\cs_new_protected:Npn \NoCaseChange #1 {#1}
+\cs_new_eq:NN \CaseSwitch \text_case_switch:nnnn
+\cs_new_eq:NN \DeclareCaseChangeEquivalent
+ \text_declare_case_equivalent:Nn
\ExplSyntaxOff
% \end{macrocode}
%
-% \begin{macrocode}
-\DeclareRobustCommand{\MakeUppercase}[1]{{%
- \def\i{I}\def\j{J}%
- \def\reserved@a##1##2{\let##1##2\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
-% \end{macrocode}
-% Tell UTF-8 processing to process chars even though we are in an \cs{protected@edef}.
-% \changes{v2.1h}{2019/09/14}{Expand UTF8 chars when case changing (github/177)}
-% \changes{v2.2r}{2022/02/20}
-% {Use \cs{@expl@text@uppercase@@n}, removing local redefinition of \cs{UTF@two@octets@noexpand}}%
-% \changes{v2.2t}{2022/04/21}{Support \cs{noexpand} in argument of \cs{@expl@text@uppercase@@n}}
-% \begin{macrocode}
- \protected@edef\reserved@a{\@expl@text@uppercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
-\DeclareRobustCommand{\MakeLowercase}[1]{{%
- \def\reserved@a##1##2{\let##2##1\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\@expl@text@lowercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
-% \end{macrocode}
-%
% \changes{v2.2q}{2021/09/06}{Correctly upper and lowercase
% \cs{ij} and \cs{IJ} (gh/658)}
% \begin{macrocode}
\def\@uclclist{\oe\OE\o\O\ae\AE
\dh\DH\dj\DJ\l\L\ng\NG\ss\SS\ij\IJ\th\TH}
% \end{macrocode}
-% The above code works, but has the nasty side-effect that if you
-% say something like:
-%\begin{verbatim}
-% \markboth{\MakeUppercase\contentsname}
-% {\MakeUppercase\contentsname}
-%\end{verbatim}
-% then the uppercasing is only done to the first letter of the
-% contents name, since the mark expands out to:
-%\begin{verbatim}
-% \mark{\protect\MakeUppercase Table of Contents}
-% {\protect\MakeUppercase Table of Contents}
-%\end{verbatim}
-% In order to get round this, we redefine |\MakeUppercase| and
-% |\MakeLowercase| to grab their argument and brace it. This is a
-% very low-level hack, and is \emph{not} recommended practice!
-% This is an instance of a general problem that makes it unsafe to
-% grab arguments unbraced, and probably needs a more general
-% solution. For the moment though, this hack will do:
-% \begin{macrocode}
-\protected@edef\MakeUppercase#1{\MakeUppercase{#1}}
-\protected@edef\MakeLowercase#1{\MakeLowercase{#1}}
-% \end{macrocode}
+%
+% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
diff --git a/macros/latex-dev/base/ltfssbas.dtx b/macros/latex-dev/base/ltfssbas.dtx
index d013ec0ecb..cc43622a4b 100644
--- a/macros/latex-dev/base/ltfssbas.dtx
+++ b/macros/latex-dev/base/ltfssbas.dtx
@@ -35,7 +35,7 @@
%
%
\ProvidesFile{ltfssbas.dtx}
- [2021/06/09 v3.2j LaTeX Kernel (NFSS Basic Macros)]
+ [2022/07/04 v3.2k LaTeX Kernel (NFSS Basic Macros)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -1127,26 +1127,72 @@
% \end{macro}
%
%
-% \begin{macro}{\frozen@everymath}
+%
+
+%
+% \begin{macro}{\frozen@everydisplay}
% \changes{v2.1a}{1994/01/17}{New math font setup}
% Now we define the behaviour of the frozen hooks: first
% check the math setup then call the user hook.
+%
+% The check code may push tokens after the math formula with
+% \cs{aftergroup} and they would prevent a \verb=$$= from dropping
+% following spaces. We therefore use a switch to be set as the
+% first thing after the group so that following code can determine
+% if there was a display or some inline math (in the latter case
+% we better not drop spaces).
+% After setting the switch we also have to place \cs{ignorespaces}
+% because setting the switch may be the only thing that happens
+% after the display.
+% \changes{v3.2k}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% The issue with handling of spaces was found in 2022, but it is
+% really a bug fix for the code added in 2021/11.
% \begin{macrocode}
-\frozen@everymath = {\check@mathfonts
- \the\everymath}
+%</2ekernel>
+%<latexrelease>\IncludeInRelease{2021/11/15}
+%<latexrelease> {\frozen@everydisplay}{Handle spaces after math}%
+%<*2ekernel|latexrelease>
+\frozen@everydisplay = {%
+ \aftergroup\@ignoretrue \aftergroup\ignorespaces
+ \check@mathfonts
+ \the\everydisplay}
% \end{macrocode}
% \end{macro}
-%
-%
-% \begin{macro}{\frozen@everydisplay}
+
+
+% \begin{macro}{\frozen@everymath}
% \changes{v2.1a}{1994/01/17}{New math font setup}
-% Ditto for the display hook.
+% \changes{v3.2k}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% The frozen code for inline math is similar, except that here we
+% do not want to drop following spaces.
% \begin{macrocode}
-\frozen@everydisplay = {\check@mathfonts
- \the\everydisplay}
+\frozen@everymath = {%
+ \aftergroup\@ignorefalse
+ \check@mathfonts
+ \the\everymath}
% \end{macrocode}
% \end{macro}
%
+% \begin{macrocode}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{2020/10/01}
+%<latexrelease> {\frozen@everydisplay}{Handle spaces after math}%
+%<latexrelease>
+%<latexrelease>\frozen@everydisplay = {\check@mathfonts
+%<latexrelease> \the\everydisplay}
+%<latexrelease>\frozen@everymath = {\check@mathfonts
+%<latexrelease> \the\everymath}
+%<latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+% \end{macrocode}
+%
+%
+%
+%
+%
+%
% \changes{v3.0q}{1996/07/27}{\cs{if@inmath} switch removed}
%
% \begin{macro}{\curr@math@size}
diff --git a/macros/latex-dev/base/ltfssdcl.dtx b/macros/latex-dev/base/ltfssdcl.dtx
index 65bc40803e..dd9f12f802 100644
--- a/macros/latex-dev/base/ltfssdcl.dtx
+++ b/macros/latex-dev/base/ltfssdcl.dtx
@@ -36,7 +36,7 @@
%
%
\ProvidesFile{ltfssdcl.dtx}
- [2021/10/15 v3.0y LaTeX Kernel (NFSS Declarative Interface)]
+ [2022/07/04 v3.0z LaTeX Kernel (NFSS Declarative Interface)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -602,8 +602,8 @@
% math mode, so we use some recursive \cs{group_insert_after:N} for this
% before we execute \cs{mv@\meta{version}@reset}.
% \begin{macrocode}
- \group_insert_after:N \__nfss_init_mv_freeze:N \exp_after:wN
- \group_insert_after:N \cs:w mv@#1@reset \cs_end:
+ \group_insert_after:N \__nfss_init_mv_freeze:N
+ \exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
% \end{macrocode}
% The \cs{check@mathfonts} is called at the very beginning of each
% math formula, so it is a good way to hook in the resetting.
@@ -650,6 +650,17 @@
% \begin{macrocode}
\@font@info{No~ math~ alphabet~ change~ to~ frozen~ version~ #1}
}
+% \end{macrocode}
+% If this is executed after a math display, we may have to arrange
+% for ignoring spaces, because they are now hidden if
+% the tokens from above intervene. This is signaled by the 2e
+% switch \texttt{@ignore} which is set in \cs{frozen@everymath} and
+% \cs{frozen@everydisplay}.
+%
+% This is all 2e code so we use that syntax.
+% \changes{v3.0z}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% \begin{macrocode}
+ \if@ignore \ignorespaces \fi
}
}
% \end{macrocode}
diff --git a/macros/latex-dev/base/lthooks-code.pdf b/macros/latex-dev/base/lthooks-code.pdf
index ce35e01745..0c0c9f29a4 100644
--- a/macros/latex-dev/base/lthooks-code.pdf
+++ b/macros/latex-dev/base/lthooks-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/lthooks-doc.pdf b/macros/latex-dev/base/lthooks-doc.pdf
index 2fcdd13703..094e4f76c7 100644
--- a/macros/latex-dev/base/lthooks-doc.pdf
+++ b/macros/latex-dev/base/lthooks-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltkeys.dtx b/macros/latex-dev/base/ltkeys.dtx
index c6dfa5f6dd..df671d4259 100644
--- a/macros/latex-dev/base/ltkeys.dtx
+++ b/macros/latex-dev/base/ltkeys.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltkeys.dtx}
- [2022/06/16 v1.0g LaTeX Kernel (Kevyal options)]
+ [2022/07/05 v1.0i LaTeX Kernel (Kevyal options)]
% \iffalse
\documentclass{l3doc}
\GetFileInfo{ltkeys.dtx}
@@ -72,6 +72,7 @@
% \begin{itemize}
% \item \texttt{.code} --- execute arbitrary code
% \item \texttt{.if} --- sets a \TeX{} \cs{if...} switch
+% \item \texttt{.ifnot} --- sets an inverted \TeX{} \cs{if...} switch
% \item \texttt{.store} --- stores a value in a macro
% \item \texttt{.usage} -- defines whether the option can be given only
% when loading (\texttt{load}), in the preamble (\texttt{preamble}) or
@@ -152,11 +153,13 @@
%
% \subsection{Key properties}
%
-% \begin{macro}{.code, .if, .store, .usage}
+% \begin{macro}{.code, .if, .ifnot, .store, .usage}
% \changes{v1.0b}{2022/02/05}
% {Create properties in \texttt{ltlkeys}}
% \changes{v1.0c}{2022/02/07}
% {Correct \texttt.{.code} property}
+% \changes{v1.0i}{2022/06/22}
+% {Add \texttt.{.notif} property}
% \begin{macrocode}
\group_begin:
\cs_set_protected:Npn \@@_tmp:nn #1#2
@@ -170,6 +173,7 @@
\@@_tmp:nn
{ code:n } { code }
{ legacy_if_set:n } { if }
+ { legacy_if_set_inverse:n } { ifnot }
{ tl_set:N } { store }
{ usage:n } { usage }
{ \q_recursion_tail } { }
@@ -205,6 +209,7 @@
% \begin{macro}{\@@_options_aux:n}
% \changes{v1.0b}{2022/01/15}
% {Clear option list in end-of-package hook}
+% \changes{v1.0i}{2022/07/05}{Support \cs{CurrentOption}}
% \begin{macro}{\@@_options_end:}
% The main function calls functions to collect up the global and local
% options into \cs{l_@@_options_clist} before calling the
@@ -239,7 +244,8 @@
{ \keys_define:nn {#1} { unknown .undefine: } }
}
\bool_set_true:N \l_@@_options_loading_bool
- \keys_set:nV {#1} \l_@@_options_clist
+ \clist_map_variable:NNn \l_@@_options_clist \CurrentOption
+ { \keys_set:nV {#1} \CurrentOption }
\bool_set_false:N \l_@@_options_loading_bool
\AtEndOfPackage { \cs_set_eq:NN \@unprocessedoptions \scan_stop: }
\@@_option_end:
@@ -258,6 +264,7 @@
%
% \begin{macro}{\@@_options_global:n}
% \changes{v1.0f}{2022/03/18}{Simplify to always cover global options}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
% Global (class) options are handled differently for \LaTeXe{} packages
% and classes. Hence this function is essentially a check on the current
% file type. The initial test is needed as \LaTeXe{} allows variables to
@@ -266,7 +273,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_global:n #1
{
- \cs_if_eq:NNF \@classoptionslist \scan_stop:
+ \cs_if_eq:NNF \@raw@classoptionslist \scan_stop:
{
\cs_if_eq:NNTF \@currext \@clsextension
{ \@@_options_class:n {#1} }
@@ -278,8 +285,11 @@
%
% \begin{macro}{\@@_options_class:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
-% \begin{macro}{\@@_options_remove:nnn}
-% \changes{v1.0g}{2022/06/16}{New function}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_class:nnn}
+% \changes{v1.0h}{2022/06/20}{New function}
+% \changes{v1.0i}{2022/07/05}{Correct naming of raw class options storage}
% For classes, each option (stripped of any content after |=|)
% is checked for existence as a key. If found, the option is added to
% the combined list for processing. On the other hand, unused options
@@ -289,36 +299,44 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_class:n #1
{
- \cs_if_free:cF { opt@ \@currname . \@currext }
+ \cs_if_free:cF { @raw@opt@ \@currname . \@currext }
{
\keys_if_exist:nnTF {#1} { unknown }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
{
- \clist_map_inline:cn { opt@ \@currname . \@currext }
+ \clist_map_inline:cn { @raw@opt@ \@currname . \@currext }
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_class:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
}
}
}
-\cs_new_protected:Npn \@@_options_remove:nnn #1#2#3
+\cs_new_protected:Npn \@@_options_class:nnn #1#2#3
{
\keys_if_exist:nnTF {#3} {#1}
{ \clist_put_right:Nn \l_@@_options_clist {#2} }
- { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ {
+ \str_if_eq:eeF
+ { \exp_not:v { @raw@opt@ \@currname . \@currext } }
+ { \exp_not:V \@raw@classoptionslist }
+ { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ }
}
-\cs_generate_variant:Nn \@@_options_remove:nnn { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}{\@@_options_package:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_package:nnn}
+% \changes{v1.0h}{2022/06/19}{New function}
% For global options when processing a package, the tasks are slightly
% different from those for a class. The check is the same, but here
% there is nothing to do if the option is not applicable. Each valid
@@ -326,18 +344,28 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_package:n #1
{
- \clist_map_inline:Nn \@classoptionslist
+ \clist_map_inline:Nn \@raw@classoptionslist
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_package:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
}
+\cs_new_protected:Npn \@@_options_package:nnn #1#2#3
+ {
+ \keys_if_exist:nnT {#3} {#1}
+ {
+ \clist_put_right:Nn \l_@@_options_clist {#2}
+ \clist_remove_all:Nn \@unusedoptionlist {#1}
+ }
+ }
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\@@_options_local:}
-% If local options are found, the are added to the processing list.
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% If local options are found, they are added to the processing list.
% \LaTeXe{} stores options for each file in a macro which may or may not
% exist, hence the need to use \cs{cs_if_exist:c}.
% \begin{macrocode}
@@ -345,10 +373,10 @@
{
\cs_if_eq:NNF \@currext \@clsextension
{
- \cs_if_exist:cT { opt@ \@currname . \@currext }
+ \cs_if_exist:cT { @raw@opt@ \@currname . \@currext }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
}
}
diff --git a/macros/latex-dev/base/ltluatex.pdf b/macros/latex-dev/base/ltluatex.pdf
index ca6e145aba..bae6dabc74 100644
--- a/macros/latex-dev/base/ltluatex.pdf
+++ b/macros/latex-dev/base/ltluatex.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltmarks-code.pdf b/macros/latex-dev/base/ltmarks-code.pdf
index 8073a3346f..7fd6df326f 100644
--- a/macros/latex-dev/base/ltmarks-code.pdf
+++ b/macros/latex-dev/base/ltmarks-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltmarks-doc.pdf b/macros/latex-dev/base/ltmarks-doc.pdf
index 478db2f574..bebd49d906 100644
--- a/macros/latex-dev/base/ltmarks-doc.pdf
+++ b/macros/latex-dev/base/ltmarks-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews.pdf b/macros/latex-dev/base/ltnews.pdf
index 01eff648b0..7546e0aed8 100644
--- a/macros/latex-dev/base/ltnews.pdf
+++ b/macros/latex-dev/base/ltnews.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews.tex b/macros/latex-dev/base/ltnews.tex
index cba11c3ce3..8d45f77cda 100644
--- a/macros/latex-dev/base/ltnews.tex
+++ b/macros/latex-dev/base/ltnews.tex
@@ -1,7 +1,7 @@
% \iffalse meta-comment
%
% Copyright (C) 2006, 2009, 2011, 2014 Heiko Oberdiek
-% Copyright (C) 2014-2021
+% Copyright (C) 2014-2022
% The LaTeX Project and any individual authors listed elsewhere
% in this file.
%
@@ -38,9 +38,9 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltnews.tex}%
- [2021/11/12 v1.4d Master file for ltnews*.tex (LaTeX Project)]
+ [2022/06/10 v1.4e Master file for ltnews*.tex (LaTeX Project)]
-\providecommand*{\lastissue}{35}
+\providecommand*{\lastissue}{36}
\InputIfFileExists{ltnews-lastissue.cfg}{}{}
diff --git a/macros/latex-dev/base/ltnews01.pdf b/macros/latex-dev/base/ltnews01.pdf
index e7edf21b38..3aec482def 100644
--- a/macros/latex-dev/base/ltnews01.pdf
+++ b/macros/latex-dev/base/ltnews01.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews02.pdf b/macros/latex-dev/base/ltnews02.pdf
index 160186c4e1..e9bfcc62b0 100644
--- a/macros/latex-dev/base/ltnews02.pdf
+++ b/macros/latex-dev/base/ltnews02.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews03.pdf b/macros/latex-dev/base/ltnews03.pdf
index 979e833d5e..aa3494706f 100644
--- a/macros/latex-dev/base/ltnews03.pdf
+++ b/macros/latex-dev/base/ltnews03.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews04.pdf b/macros/latex-dev/base/ltnews04.pdf
index f2cfc633fd..a3983345e6 100644
--- a/macros/latex-dev/base/ltnews04.pdf
+++ b/macros/latex-dev/base/ltnews04.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews05.pdf b/macros/latex-dev/base/ltnews05.pdf
index a57fa4a6b4..9d896763b8 100644
--- a/macros/latex-dev/base/ltnews05.pdf
+++ b/macros/latex-dev/base/ltnews05.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews06.pdf b/macros/latex-dev/base/ltnews06.pdf
index 657592f310..92f3e0ef3f 100644
--- a/macros/latex-dev/base/ltnews06.pdf
+++ b/macros/latex-dev/base/ltnews06.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews07.pdf b/macros/latex-dev/base/ltnews07.pdf
index 7213bf9294..b130226049 100644
--- a/macros/latex-dev/base/ltnews07.pdf
+++ b/macros/latex-dev/base/ltnews07.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews08.pdf b/macros/latex-dev/base/ltnews08.pdf
index 4a5dfba987..84e87f2af8 100644
--- a/macros/latex-dev/base/ltnews08.pdf
+++ b/macros/latex-dev/base/ltnews08.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews09.pdf b/macros/latex-dev/base/ltnews09.pdf
index e82d020e2e..372f6eae3e 100644
--- a/macros/latex-dev/base/ltnews09.pdf
+++ b/macros/latex-dev/base/ltnews09.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews10.pdf b/macros/latex-dev/base/ltnews10.pdf
index f30a263d10..2759d890b6 100644
--- a/macros/latex-dev/base/ltnews10.pdf
+++ b/macros/latex-dev/base/ltnews10.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews11.pdf b/macros/latex-dev/base/ltnews11.pdf
index e4502abab1..ef59d439fa 100644
--- a/macros/latex-dev/base/ltnews11.pdf
+++ b/macros/latex-dev/base/ltnews11.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews12.pdf b/macros/latex-dev/base/ltnews12.pdf
index 7332c60ea9..e4c78b5eb0 100644
--- a/macros/latex-dev/base/ltnews12.pdf
+++ b/macros/latex-dev/base/ltnews12.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews13.pdf b/macros/latex-dev/base/ltnews13.pdf
index 705c2bba3e..373e26adae 100644
--- a/macros/latex-dev/base/ltnews13.pdf
+++ b/macros/latex-dev/base/ltnews13.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews14.pdf b/macros/latex-dev/base/ltnews14.pdf
index e54e2af71f..622e0bf074 100644
--- a/macros/latex-dev/base/ltnews14.pdf
+++ b/macros/latex-dev/base/ltnews14.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews15.pdf b/macros/latex-dev/base/ltnews15.pdf
index 3402da5d62..007ac69cf3 100644
--- a/macros/latex-dev/base/ltnews15.pdf
+++ b/macros/latex-dev/base/ltnews15.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews16.pdf b/macros/latex-dev/base/ltnews16.pdf
index 10c2ed8725..7dc3976ba0 100644
--- a/macros/latex-dev/base/ltnews16.pdf
+++ b/macros/latex-dev/base/ltnews16.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews17.pdf b/macros/latex-dev/base/ltnews17.pdf
index d8dc264387..2dbc414d6f 100644
--- a/macros/latex-dev/base/ltnews17.pdf
+++ b/macros/latex-dev/base/ltnews17.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews18.pdf b/macros/latex-dev/base/ltnews18.pdf
index 62051b98de..40756259d4 100644
--- a/macros/latex-dev/base/ltnews18.pdf
+++ b/macros/latex-dev/base/ltnews18.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews19.pdf b/macros/latex-dev/base/ltnews19.pdf
index 607c5e9362..fc49ae3311 100644
--- a/macros/latex-dev/base/ltnews19.pdf
+++ b/macros/latex-dev/base/ltnews19.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews20.pdf b/macros/latex-dev/base/ltnews20.pdf
index c8a813b359..d9c123003a 100644
--- a/macros/latex-dev/base/ltnews20.pdf
+++ b/macros/latex-dev/base/ltnews20.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews21.pdf b/macros/latex-dev/base/ltnews21.pdf
index 28d1f4b390..fde160c811 100644
--- a/macros/latex-dev/base/ltnews21.pdf
+++ b/macros/latex-dev/base/ltnews21.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews22.pdf b/macros/latex-dev/base/ltnews22.pdf
index 67fa8c18a5..e7e19e4480 100644
--- a/macros/latex-dev/base/ltnews22.pdf
+++ b/macros/latex-dev/base/ltnews22.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews23.pdf b/macros/latex-dev/base/ltnews23.pdf
index 82d4c1b150..28ecc021b3 100644
--- a/macros/latex-dev/base/ltnews23.pdf
+++ b/macros/latex-dev/base/ltnews23.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews24.pdf b/macros/latex-dev/base/ltnews24.pdf
index cb6118e113..4498ad50c1 100644
--- a/macros/latex-dev/base/ltnews24.pdf
+++ b/macros/latex-dev/base/ltnews24.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews25.pdf b/macros/latex-dev/base/ltnews25.pdf
index c637eea5f0..57b8a9b29f 100644
--- a/macros/latex-dev/base/ltnews25.pdf
+++ b/macros/latex-dev/base/ltnews25.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews26.pdf b/macros/latex-dev/base/ltnews26.pdf
index 88a9f99bb7..0db59d5095 100644
--- a/macros/latex-dev/base/ltnews26.pdf
+++ b/macros/latex-dev/base/ltnews26.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews27.pdf b/macros/latex-dev/base/ltnews27.pdf
index 296c8d3bea..bde51913b1 100644
--- a/macros/latex-dev/base/ltnews27.pdf
+++ b/macros/latex-dev/base/ltnews27.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews28.pdf b/macros/latex-dev/base/ltnews28.pdf
index aecbb27797..a47920f8e0 100644
--- a/macros/latex-dev/base/ltnews28.pdf
+++ b/macros/latex-dev/base/ltnews28.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews29.pdf b/macros/latex-dev/base/ltnews29.pdf
index 07f98d4992..1696257c15 100644
--- a/macros/latex-dev/base/ltnews29.pdf
+++ b/macros/latex-dev/base/ltnews29.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews30.pdf b/macros/latex-dev/base/ltnews30.pdf
index 4288ec154d..aed2058cef 100644
--- a/macros/latex-dev/base/ltnews30.pdf
+++ b/macros/latex-dev/base/ltnews30.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews31.pdf b/macros/latex-dev/base/ltnews31.pdf
index 1ae3e8c407..fd4d604bde 100644
--- a/macros/latex-dev/base/ltnews31.pdf
+++ b/macros/latex-dev/base/ltnews31.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews32.pdf b/macros/latex-dev/base/ltnews32.pdf
index 901165053f..e4d4b6254c 100644
--- a/macros/latex-dev/base/ltnews32.pdf
+++ b/macros/latex-dev/base/ltnews32.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews33.pdf b/macros/latex-dev/base/ltnews33.pdf
index f77d04b714..8557cfc783 100644
--- a/macros/latex-dev/base/ltnews33.pdf
+++ b/macros/latex-dev/base/ltnews33.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews34.pdf b/macros/latex-dev/base/ltnews34.pdf
index 667790ca60..9232aadfe9 100644
--- a/macros/latex-dev/base/ltnews34.pdf
+++ b/macros/latex-dev/base/ltnews34.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews35.pdf b/macros/latex-dev/base/ltnews35.pdf
index 62476fffbb..67b75a4d50 100644
--- a/macros/latex-dev/base/ltnews35.pdf
+++ b/macros/latex-dev/base/ltnews35.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews35.tex b/macros/latex-dev/base/ltnews35.tex
index 0e0cda79b1..a035e4d5c7 100644
--- a/macros/latex-dev/base/ltnews35.tex
+++ b/macros/latex-dev/base/ltnews35.tex
@@ -208,7 +208,7 @@ means that existing documents are in no way affected by the work that
is carried out and is in a wider alpha or beta test phase.
Documentation about the new command and
-already existing keys are in \file{l3meta.pdf} and \file{documentmetadata-support.pdf}
+already existing keys are in \file{ltmeta} (part of \file{source2e.pdf}) and \file{documentmetadata-support.pdf}
and also in the documentation of the \pkg{pdfmanagement-testphase} package.
Package and class authors can test if a user has used \cs{DocumentMetadata}
diff --git a/macros/latex-dev/base/ltnews36.pdf b/macros/latex-dev/base/ltnews36.pdf
new file mode 100644
index 0000000000..dc8c3d21ed
--- /dev/null
+++ b/macros/latex-dev/base/ltnews36.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltnews36.tex b/macros/latex-dev/base/ltnews36.tex
new file mode 100644
index 0000000000..df72bc1d64
--- /dev/null
+++ b/macros/latex-dev/base/ltnews36.tex
@@ -0,0 +1,225 @@
+% \iffalse meta-comment
+%
+% Copyright 2021-2022
+% The LaTeX Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the LaTeX base system.
+% -——————————————
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3c
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2008 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+% The list of all files belonging to the LaTeX base distribution is
+% given in the file `manifest.txt'. See also `legal.txt' for additional
+% information.
+%
+% The list of derived (unpacked) files belonging to the distribution
+% and covered by LPPL is defined by the unpacking scripts (with
+% extension .ins) which are part of the distribution.
+%
+% \fi
+% Filename: ltnews36.tex
+%
+% This is issue 36 of LaTeX News.
+
+\NeedsTeXFormat{LaTeX2e}[2020-02-02]
+
+\documentclass{ltnews}
+
+%% Maybe needed only for Chris' inadequate system:
+\providecommand\Dash {\unskip \textemdash}
+
+%% NOTE: Chris' preferred hyphens!
+%%\showhyphens{parameters}
+%% \hyphenation{because parameters parameter}
+
+\usepackage[T1]{fontenc}
+
+\usepackage{lmodern,url,hologo}
+
+\usepackage{csquotes}
+\usepackage{multicol}
+\usepackage{color}
+
+\providecommand\hook[1]{\texttt{#1}}
+
+\providecommand\meta[1]{$\langle$\textrm{\itshape#1}$\rangle$}
+\providecommand\option[1]{\texttt{#1}}
+\providecommand\env[1]{\texttt{#1}}
+\providecommand\Arg[1]{\texttt\{\meta{#1}\texttt\}}
+
+
+\providecommand\eTeX{\hologo{eTeX}}
+\providecommand\XeTeX{\hologo{XeTeX}}
+\providecommand\LuaTeX{\hologo{LuaTeX}}
+\providecommand\pdfTeX{\hologo{pdfTeX}}
+\providecommand\MiKTeX{\hologo{MiKTeX}}
+\providecommand\CTAN{\textsc{ctan}}
+\providecommand\TL{\TeX\,Live}
+\providecommand\githubissue[2][]{\ifhmode\unskip\fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(%
+ \href{https://github.com/latex3/latex2e/issues/\getfirstgithubissue#2 \relax}%
+ {github issue#1 #2}%
+ )}%
+ \par\smallskip}
+%% But Chris has to mostly disable \href for his TEXPAD app:
+%% \def\href #1{} % Only For Chris' deficient TeX engine
+
+% simple solution right now (just link to the first issue if there are more)
+\def\getfirstgithubissue#1 #2\relax{#1}
+
+\providecommand\sxissue[1]{\ifhmode\unskip
+ \else
+ % githubissue preceding
+ \vskip-\smallskipamount
+ \vskip-\parskip
+ \fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(\url{https://tex.stackexchange.com/#1})}\par}
+
+\providecommand\gnatsissue[2]{\ifhmode\unskip\fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(%
+ \href{https://www.latex-project.org/cgi-bin/ltxbugs2html?pr=#1\%2F\getfirstgithubissue#2 \relax}%
+ {gnats issue #1/#2}%
+ )}%
+ \par}
+
+\let\cls\pkg
+\providecommand\env[1]{\texttt{#1}}
+\providecommand\acro[1]{\textsc{#1}}
+
+\vbadness=1400 % accept slightly empty columns
+
+
+\makeatletter
+% maybe not the greatest design but normally we wouldn't have subsubsections
+\renewcommand{\subsubsection}{%
+ \@startsection {subsubsection}{2}{0pt}{1.5ex \@plus 1ex \@minus .2ex}%
+ {-1em}{\@subheadingfont\colonize}%
+}
+\providecommand\colonize[1]{#1:}
+\makeatother
+
+\let\finalvspace\vspace % for document layout fixes
+
+% Undo ltnews's \verbatim@font with active < and >
+\makeatletter
+\def\verbatim@font{%
+ \normalsize\ttfamily}
+\makeatletter
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand\tubcommand[1]{}
+\tubcommand{\input{tubltmac}}
+
+\publicationmonth{November}
+\publicationyear{2022 --- DRAFT version for upcoming release}
+
+\publicationissue{36}
+
+\begin{document}
+
+\tubcommand{\addtolength\textheight{4.2pc}} % only for TUB
+
+\maketitle
+{\hyphenpenalty=10000 \exhyphenpenalty=10000 \spaceskip=3.33pt \hbadness=10000
+\tableofcontents}
+
+\setlength\rightskip{0pt plus 3em}
+
+
+\medskip
+
+
+\section{Introduction}
+
+\section{New or improved commands}
+
+\section{Code improvements}
+
+\subsection{Support for slanted small caps in the EC-fonts }
+Since some time \LaTeX{} supports the combination of the shapes
+small caps and italic/slanted. The EC-fonts contain slanted small caps fonts
+but using them required the loading of an external package. Suitable font definitions
+have now been added to \pkg{t1cmd.fd} and so from now on
+\begin{verbatim}
+ \textsc{\textsl{slanted small}}
+ \textsc{\textit{italic small caps}}
+ \bfseries
+ \textsc{\textsl{bold slanted small caps}}
+ \textsc{\textit{bold italic small caps}}
+\end{verbatim}
+will give the expected result: {\fontfamily{cmr}
+\textsc{\textsl{slanted small}} \textsc{\textit{italic small caps}}
+\bfseries
+\textsc{\textsl{bold slanted small caps}} \textsc{\textit{bold italic small caps}}}
+%
+\githubissue{782}
+
+
+\subsection{EC sans serif at small sizes}
+The EC (T1 encoded Computer Modern) sans serif fonts have errors at
+small sizes. (The medium weight is bolder and wider than the bold
+extended) The default \texttt{.fd} file has been adjusted to use a
+scaled 8pt font.
+%
+\githubissue{879}
+
+
+\section{Bug fixes}
+
+\section{Changes to packages in the \pkg{amsmath} category}
+
+\section{Changes to packages in the \pkg{graphics} category}
+
+\section{Changes to packages in the \pkg{tools} category}
+
+
+\medskip
+
+\begin{thebibliography}{9}
+
+\fontsize{9.3}{11.3}\selectfont
+
+%\bibitem{36:blueprint} Frank Mittelbach and Chris Rowley:
+% \emph{\LaTeX{} Tagged PDF \Dash A blueprint for a large project}.\\
+% \url{https://latex-project.org/publications/indexbyyear/2020/}
+
+%\bibitem{36:source2e}
+% \emph{\LaTeX{} documentation on the \LaTeX{} Project Website}.\\
+% \url{https://latex-project.org/help/documentation/}
+
+%\bibitem{36:ltnews31} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 31}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews31.pdf}
+
+%\bibitem{36:ltnews32} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 32}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews32.pdf}
+
+%\bibitem{36:ltnews33} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 33}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews33.pdf}
+
+%\bibitem{36:ltnews34} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 34}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews34.pdf}
+%
+%\bibitem{36:ltfilehook-doc} Frank Mittelbach, Phelype Oleinik, \LaTeX{}~Project~Team:
+% \emph{The \texttt{\upshape ltfilehook} documentation}.\\
+% Run \texttt{texdoc} \texttt{ltfilehook-doc} to view.
+\end{thebibliography}
+
+
+
+\end{document}
diff --git a/macros/latex-dev/base/ltpara-code.pdf b/macros/latex-dev/base/ltpara-code.pdf
index fa5199e171..d58f89f994 100644
--- a/macros/latex-dev/base/ltpara-code.pdf
+++ b/macros/latex-dev/base/ltpara-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltpara-doc.pdf b/macros/latex-dev/base/ltpara-doc.pdf
index d0e7ee73e8..eff75892bc 100644
--- a/macros/latex-dev/base/ltpara-doc.pdf
+++ b/macros/latex-dev/base/ltpara-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltshipout-code.pdf b/macros/latex-dev/base/ltshipout-code.pdf
index a475b7424e..4c88747682 100644
--- a/macros/latex-dev/base/ltshipout-code.pdf
+++ b/macros/latex-dev/base/ltshipout-code.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltshipout-doc.pdf b/macros/latex-dev/base/ltshipout-doc.pdf
index 99c24eb7c0..76578851f9 100644
--- a/macros/latex-dev/base/ltshipout-doc.pdf
+++ b/macros/latex-dev/base/ltshipout-doc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltvers.dtx b/macros/latex-dev/base/ltvers.dtx
index cd228e62b4..024d107840 100644
--- a/macros/latex-dev/base/ltvers.dtx
+++ b/macros/latex-dev/base/ltvers.dtx
@@ -115,7 +115,7 @@
{2022-06-01}
%</2ekernel|latexrelease>
%<*2ekernel>
-\def\patch@level{-0}
+\def\patch@level{-1}
% \end{macrocode}
%
% \begin{macro}{\development@branch@name}
diff --git a/macros/latex-dev/base/ltx3info.pdf b/macros/latex-dev/base/ltx3info.pdf
index 07563692ff..753b3308a2 100644
--- a/macros/latex-dev/base/ltx3info.pdf
+++ b/macros/latex-dev/base/ltx3info.pdf
Binary files differ
diff --git a/macros/latex-dev/base/ltxdoc.dtx b/macros/latex-dev/base/ltxdoc.dtx
index f68c45ee36..46c324c590 100644
--- a/macros/latex-dev/base/ltxdoc.dtx
+++ b/macros/latex-dev/base/ltxdoc.dtx
@@ -30,7 +30,7 @@
%
%<class>\NeedsTeXFormat{LaTeX2e}
%<class>\ProvidesClass{ltxdoc}
-%<class> [2022/06/14 v2.1g Standard LaTeX documentation class]
+%<class> [2022/06/22 v2.1h Standard LaTeX documentation class]
%
%<*driver>
\documentclass{ltxdoc}
@@ -294,10 +294,12 @@
% \changes{v2.0k}{1994/05/21}{New definition, so \cmd\{ works.}
% \begin{macro}{\cs}
% \changes{v2.0d}{1994/03/17}{Add \cs{cs}}
+% \changes{v2.1h}{2022/06/22}{Update \cs{cmd} definition to work with new \cs{cs}}
% \begin{macrocode}
-\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}}
+%\DeclareRobustCommand\cs[1]... % defined later
+%\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}} % can't use with new \cs
+\def\cmd#1{\texttt{\char`\\\expandafter\cmd@to@cs\string#1}}
\def\cmd@to@cs#1#2{\char\number`#2\relax}
-%\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} % already part of doc.sty
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/macros/latex-dev/base/ltxdoc.pdf b/macros/latex-dev/base/ltxdoc.pdf
index 6d1b06cc5b..3be77146eb 100644
--- a/macros/latex-dev/base/ltxdoc.pdf
+++ b/macros/latex-dev/base/ltxdoc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/makeindx.pdf b/macros/latex-dev/base/makeindx.pdf
index da0fa7cab9..552a8675cf 100644
--- a/macros/latex-dev/base/makeindx.pdf
+++ b/macros/latex-dev/base/makeindx.pdf
Binary files differ
diff --git a/macros/latex-dev/base/modguide.pdf b/macros/latex-dev/base/modguide.pdf
index e085c32c5e..5898f65989 100644
--- a/macros/latex-dev/base/modguide.pdf
+++ b/macros/latex-dev/base/modguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/nfssfont.pdf b/macros/latex-dev/base/nfssfont.pdf
index e0c44536aa..97fa122ce9 100644
--- a/macros/latex-dev/base/nfssfont.pdf
+++ b/macros/latex-dev/base/nfssfont.pdf
Binary files differ
diff --git a/macros/latex-dev/base/proc.pdf b/macros/latex-dev/base/proc.pdf
index 93cd6b8c44..eeeed89124 100644
--- a/macros/latex-dev/base/proc.pdf
+++ b/macros/latex-dev/base/proc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/slides.pdf b/macros/latex-dev/base/slides.pdf
index cbbbfe0132..f89b9f64ff 100644
--- a/macros/latex-dev/base/slides.pdf
+++ b/macros/latex-dev/base/slides.pdf
Binary files differ
diff --git a/macros/latex-dev/base/slifonts.pdf b/macros/latex-dev/base/slifonts.pdf
index 609139b741..5a92ec1246 100644
--- a/macros/latex-dev/base/slifonts.pdf
+++ b/macros/latex-dev/base/slifonts.pdf
Binary files differ
diff --git a/macros/latex-dev/base/source2e.pdf b/macros/latex-dev/base/source2e.pdf
index 0a4fe0f023..b6bca6034f 100644
--- a/macros/latex-dev/base/source2e.pdf
+++ b/macros/latex-dev/base/source2e.pdf
Binary files differ
diff --git a/macros/latex-dev/base/syntonly.pdf b/macros/latex-dev/base/syntonly.pdf
index d880fd08ab..5a2d5eae9b 100644
--- a/macros/latex-dev/base/syntonly.pdf
+++ b/macros/latex-dev/base/syntonly.pdf
Binary files differ
diff --git a/macros/latex-dev/base/tlc2.pdf b/macros/latex-dev/base/tlc2.pdf
index 12b609b372..d3630181bd 100644
--- a/macros/latex-dev/base/tlc2.pdf
+++ b/macros/latex-dev/base/tlc2.pdf
Binary files differ
diff --git a/macros/latex-dev/base/tulm.pdf b/macros/latex-dev/base/tulm.pdf
index e7f39c7338..513aadc918 100644
--- a/macros/latex-dev/base/tulm.pdf
+++ b/macros/latex-dev/base/tulm.pdf
Binary files differ
diff --git a/macros/latex-dev/base/usrguide.pdf b/macros/latex-dev/base/usrguide.pdf
index a2e85401fd..f2a32eb6ea 100644
--- a/macros/latex-dev/base/usrguide.pdf
+++ b/macros/latex-dev/base/usrguide.pdf
Binary files differ
diff --git a/macros/latex-dev/base/usrguide3.pdf b/macros/latex-dev/base/usrguide3.pdf
index 5cb860dab4..40a7c85f38 100644
--- a/macros/latex-dev/base/usrguide3.pdf
+++ b/macros/latex-dev/base/usrguide3.pdf
Binary files differ
diff --git a/macros/latex-dev/base/usrguide3.tex b/macros/latex-dev/base/usrguide3.tex
index efec9ad2a2..a148c77ed5 100644
--- a/macros/latex-dev/base/usrguide3.tex
+++ b/macros/latex-dev/base/usrguide3.tex
@@ -37,7 +37,7 @@
\author{\copyright~Copyright 2020-2022, \LaTeX\ Project Team.\\
All rights reserved.}
-\date{2022-02-19}
+\date{2022-07-05}
\NewDocumentCommand\cs{m}{\texttt{\textbackslash\detokenize{#1}}}
\NewDocumentCommand\marg{m}{\arg{#1}}
@@ -1054,4 +1054,59 @@ it is set to \dimeval{\topskip+\baselineskip*\inteval{40-1}}, given
the values \cs{topskip} (\dimeval{\topskip}) and \cs{baselineskip}
(\dimeval{\baselineskip}) in the current document.
+\section{Case changing}
+
+\TeX{} provides two primitives \cs{uppercase} and \cs{lowercase} for changing
+the case of text. However, these have a range of limitations: they only change
+the case of explicit characters, do not account for the surrounding context, do
+not support UTF-8 input with 8-bit engines, etc. To overcome this problem,
+\LaTeX{} provides the commands \cs{MakeUppercase}, \cs{MakeLowercase} and
+\cs{MakeTitlecase}: these offer significant enhancement over the \TeX{}
+primitives. These commands are engine-robust (\cs{protected}), and so
+can be used in moving arguments.
+
+Upper- and lower-casing are well-understood in general conversation.
+Titlecasing here follows the definition given by the Unicode Consortium: the
+first character of the input will be converted to (broadly) uppercase, and the
+rest of the input to lowercase. The full range of Unicode UTF-8 input can be
+supported, with the proviso that at present the characters set up with 8-bit
+engines match those available in standard input encodings (|T1|, |T2|, |LGR|).
+\begin{quotation}
+ \begin{tabular}{rl}
+ |\MakeUppercase{hello WORLD ßüé}| & \MakeUppercase{hello WORLD ßüé} \\
+ |\MakeLowercase{hello WORLD ßüé}| & \MakeLowercase{hello WORLD ßüé} \\
+ |\MakeTitlecase{hello WORLD ßüé}| & \MakeTitlecase{hello WORLD ßüé} \\
+ \end{tabular}
+\end{quotation}
+
+The input given to these commands is `expanded' before case changing is
+applied. This means that any commands within the input that convert to pure
+text will be case changed. Mathematical content is automatically excluded, as
+are the arguments to the commands \cs{label}, \cs{ref}, \cs{cite}, \cs{begin}
+and \cs{end}. Additional exclusions can be added using the command
+\cs{AddToNoCaseChangeList}. Input can be excluded from case changing using the
+command \cs{NoCaseChange}.
+\begin{quotation}
+ \begin{tabular}{rl}
+ |\MakeUppercase{Some text $y = mx + c$}|
+ & \MakeUppercase{Some text $y = mx + c$} \\
+ |\MakeUppercase{\NoCaseChange{iPhone}}|
+ & \MakeLowercase{\NoCaseChange{iPhone}} \\
+ \end{tabular}
+\end{quotation}
+
+To allow robust commands to be used within case changing \emph{and} to produce
+the expected output, two additional control commands are available.
+\cs{CaseSwitch} allows the user to specify the result for the four possible
+cases
+\begin{itemize}
+ \item No case changing
+ \item Uppercasing
+ \item Lowercasing
+ \item Titlecasing (only applies for the start of the input)
+\end{itemize}
+The command \cs{DeclareCaseChangeEquivalent} provides a way to substitute a
+command by an alternative version when it is found inside a case changing
+situation.
+
\end{document}
diff --git a/macros/latex-dev/base/utf8ienc.pdf b/macros/latex-dev/base/utf8ienc.pdf
index a2bf91d2e5..ff3d528a12 100644
--- a/macros/latex-dev/base/utf8ienc.pdf
+++ b/macros/latex-dev/base/utf8ienc.pdf
Binary files differ
diff --git a/macros/latex-dev/base/webcomp.pdf b/macros/latex-dev/base/webcomp.pdf
index 9d88470900..2d1f29c35b 100644
--- a/macros/latex-dev/base/webcomp.pdf
+++ b/macros/latex-dev/base/webcomp.pdf
Binary files differ
diff --git a/macros/latex/contrib/gitver/ChangeLog b/macros/latex/contrib/gitver/ChangeLog
index 4b3da3083c..d49c9a0ced 100644
--- a/macros/latex/contrib/gitver/ChangeLog
+++ b/macros/latex/contrib/gitver/ChangeLog
@@ -6,4 +6,6 @@
* Use datetime2 instead of datetime to reduce dependancy burden
and display dates in ISO format
2020-10-30 - v1.3
- * Support lualatex \ No newline at end of file
+ * Support lualatex
+2022-07-16 - v1.4
+ * Detect running in online builders via "CLSI" environmental variable \ No newline at end of file
diff --git a/macros/latex/contrib/gitver/README.md b/macros/latex/contrib/gitver/README.md
index 6edb662f9f..b4eb37e836 100644
--- a/macros/latex/contrib/gitver/README.md
+++ b/macros/latex/contrib/gitver/README.md
@@ -2,7 +2,7 @@ Git Version (version 1.3)
=========================
URL: https://github.com/charlesbaynham/gitver
-(c) Charles Baynham 2020
+(c) Charles Baynham 2022
License: LaTeX Project Public License 1.3c
diff --git a/macros/latex/contrib/gitver/gitver.pdf b/macros/latex/contrib/gitver/gitver.pdf
index e73e6bcfc4..a2ee4b8e2b 100644
--- a/macros/latex/contrib/gitver/gitver.pdf
+++ b/macros/latex/contrib/gitver/gitver.pdf
Binary files differ
diff --git a/macros/latex/contrib/gitver/gitver.sty b/macros/latex/contrib/gitver/gitver.sty
index 4a06cd05a3..c2649c3d97 100644
--- a/macros/latex/contrib/gitver/gitver.sty
+++ b/macros/latex/contrib/gitver/gitver.sty
@@ -1,6 +1,6 @@
% gitVer
%
-% (c) Charles Baynham 2020
+% (c) Charles Baynham 2022
%
% License: LaTeX Project Public License 1.3c
%
@@ -19,12 +19,31 @@
\NeedsTeXFormat{LaTeX2e}
\def\@gitVerPkgName{gitver}
\ProvidesPackage{\@gitVerPkgName}
- [2020/10/30 v1.3 Access current git version and optionally add it to document headers]
+ [2022/07/16 v1.4 Access current git version and optionally add it to document headers]
\RequirePackage{hyperref}
\RequirePackage{catchfile}
\RequirePackage{pdftexcmds}
\RequirePackage{datetime2}
+\RequirePackage{ifthen}
+\RequirePackage{xparse}
+
+% Define a command to get environmental variables
+% Thanks to egreg at https://tex.stackexchange.com/questions/62010/can-i-access-system-environment-variables-from-latex-for-instance-home
+\ExplSyntaxOn
+\NewDocumentCommand{\getenv}{om}
+ {
+ \sys_get_shell:nnN { kpsewhich ~ --var-value ~ #2 } { } \l_tmpa_tl %
+ \tl_trim_spaces:N \l_tmpa_tl %
+ \IfNoValueTF { #1 } %
+ {%
+ \tl_use:N \l_tmpa_tl%
+ }%
+ {%
+ \tl_set_eq:NN #1 \l_tmpa_tl%
+ }%
+ }
+\ExplSyntaxOff
% Support lualatex by reinstating the \write18 command
\RequirePackage{ifluatex}
@@ -85,7 +104,7 @@
\def\@gitver@emptyfile{}
\ifx\gitVer\@gitver@emptyfile%
- \PackageError{\@gitVerPkgName}{Git output is empty: is this folder a git repo?}{Make sure that this directory has had "git init" called in it, and has at least one commit.}
+ \PackageWarning{\@gitVerPkgName}{Git output is empty: is this folder a git repo? Make sure that this directory has had "git init" called in it, has at least one commit, and that git is installed.}
\else
\@gitver@successtrue
\fi
@@ -93,8 +112,23 @@
\if@gitver@success
\else
- \PackageWarning{\@gitVerPkgName}{Git command failed: writing as "unknown"}%
- \def\gitVer{unknown}
+ % Look for "CLSI" environmental variable: this stands for Common Latex Service
+ % Interface, and is set to "1" in web builders like Overleaf.com
+ \getenv[\CLSI]{CLSI}
+ % Check if CLSI == 1 (see https://tex.stackexchange.com/a/306500)
+ \ifnum1=0\CLSI\relax
+ \PackageWarning{\@gitVerPkgName}{Running on a Common Latex Service %
+ Interface without Git: writing version as "CLSI"}%
+ \def\gitVer{CLSI}
+ \else
+ \PackageError{\@gitVerPkgName}{Git command failed: writing as "unknown"}{%
+ Calling git failed, and your system did not identify itself as a
+ Common Latex Service Interface (e.g. overleaf.com). Make sure that git
+ is installed and that this file is in a repository which has at least
+ one commit.
+ }%
+ \def\gitVer{unknown}
+ \fi
\fi
%
% Make a box containing the date and version
diff --git a/macros/latex/contrib/gitver/gitver.tex b/macros/latex/contrib/gitver/gitver.tex
index f6ecf2654c..a5b68af99e 100644
--- a/macros/latex/contrib/gitver/gitver.tex
+++ b/macros/latex/contrib/gitver/gitver.tex
@@ -18,7 +18,7 @@
\title{\textsf{gitver} -- Git version tags \\
for \LaTeX{} projects}
\author{Charles Baynham}
-\date{2020/10/30 (v\,1.3)}
+\date{2022/07/16 (v\,1.4)}
\MaintainedBy{%
This file is maintained by Charles Baynham.\\%
Bug reports can be opened at\\%
@@ -43,6 +43,10 @@ running in ``shell escape'' mode. This can be enabled by passing \textsf{--shell
on the command line when compiling your document, or will be available in the
options of whatever GUI you're using (try Googling).
+Note that online Latex editors like Overleaf.com often do not have git installed.
+Gitver will detect these by the precense of the environmental variable "CLSI"
+and will display the version as "CLSI" instead.
+
Note that it's a good idea to tell git to ignore all the latex auxilary files,
otherwise your version will always be ``dirty''. Try the \textsf{.gitignore} file from
\url{https://www.gitignore.io/api/latex} if you don't already have
@@ -117,6 +121,7 @@ the option |nopdfinfo|.
\item v1.2 - Use datetime2 instead of datetime to reduce dependancy burden
and display dates in ISO format
\item v1.3 - Support LuaLatex
+ \item v1.4 - Detect running in online builders via "CLSI" environmental variable
\end{itemize}
\end{document}
diff --git a/macros/latex/contrib/gitver/latexmkrc b/macros/latex/contrib/gitver/latexmkrc
new file mode 100644
index 0000000000..a22b23ddad
--- /dev/null
+++ b/macros/latex/contrib/gitver/latexmkrc
@@ -0,0 +1,8 @@
+# .latexmkrc
+# This file will be read by latexmk when building the documentation
+
+# Run pdflatex with shell escape (for git tagging) and ignore errors
+$pdflatex = 'pdflatex %O -interaction=nonstopmode --shell-escape %S';
+
+# Default to pdf output
+$pdf_mode = 1; \ No newline at end of file
diff --git a/macros/latex/contrib/tabvar/README b/macros/latex/contrib/tabvar/README
index 8c4f628361..132da4995f 100644
--- a/macros/latex/contrib/tabvar/README
+++ b/macros/latex/contrib/tabvar/README
@@ -1,11 +1,11 @@
Tabvar package
This LaTeX package is meant to ease the typesetting of tables showing
-variations of functions as they are used in France.
+variations of functions as they are used in France.
The documentation is in French.
-This material is subject to the LaTeX Project Public License.
-See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
+This material is subject to the LaTeX Project Public License.
+See http://www.latex-project.org/lppl.txt
for the details of that license.
Have a look at the PDF file demo.pdf in the doc directory, to have
@@ -31,4 +31,4 @@ in a Terminal window in order to make the PostScript arrows available.
--
Daniel Flipo, <daniel.flipo@free.fr>
-April, 3rd, 2010.
+September, 4th, 2014.
diff --git a/macros/latex/contrib/tabvar/doc/demo.pdf b/macros/latex/contrib/tabvar/doc/demo.pdf
index b1c554d302..f033e2d2e1 100644
--- a/macros/latex/contrib/tabvar/doc/demo.pdf
+++ b/macros/latex/contrib/tabvar/doc/demo.pdf
Binary files differ
diff --git a/macros/latex/contrib/tabvar/doc/demo.tex b/macros/latex/contrib/tabvar/doc/demo.tex
index 7c117b64af..f9608a9952 100644
--- a/macros/latex/contrib/tabvar/doc/demo.tex
+++ b/macros/latex/contrib/tabvar/doc/demo.tex
@@ -1,6 +1,6 @@
%Format: PDF
-\documentclass[a4paper,11pt]{article}
+\documentclass[a4paper,11pt,french]{article}
\addtolength{\textwidth}{10mm}
\addtolength{\oddsidemargin}{-5mm}
@@ -13,11 +13,9 @@
%\usepackage[FlechesPS]{tabvar}
%\usepackage[FlechesMP]{tabvar}
-\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
-\usepackage[frenchb]{babel}
-
\usepackage{lmodern}
+\usepackage{babel}
\newcommand*{\file}[1]{\texttt{#1}}
\newcommand*{\env}[1]{\texttt{#1}}
@@ -30,16 +28,16 @@
\Large\bfseries Exemples de tableaux de variations avec \file{tabvar}
\end{center}
-Un exemple simple :
+Un exemple simple :
$\displaystyle f(x)=\frac{x^3+2}{2x} \qquad f'(x)=\frac{x^3-1}{x^2}$.
\[\begin{tabvar}{|C|CCCCCCCCC|} \hline
- x &-\infty & &-\sqrt[3]{2} & & 0 & & 1 & &+\infty
+ x &-\infty & &-\sqrt[3]{2} & & 0 & & 1 & &+\infty
\\ \hline
-f'(x) & & - & & - & \dbarre & - & 0 & + &
+f'(x) & & - & & - & \dbarre & - & 0 & + &
\\ \hline
-\niveau{3}{3}f(x)
- &+\infty &\decroit
+\niveau{3}{3}f(x)
+ &+\infty &\decroit
&0 &\decroit
&\discont{-\infty}{<}{+\infty} &\decroit
&\frac{3}{2} &\croit
@@ -50,12 +48,12 @@ f'(x) & & - & & - & \dbarre & - & 0 & + &
Le codage du tableau est le suivant :
\begin{verbatim}
\[\begin{tabvar}{|C|CCCCCCCCC|} \hline
- x &-\infty & &-\sqrt[3]{2} & &0 & & 1 & &+\infty
+ x &-\infty & &-\sqrt[3]{2} & &0 & & 1 & &+\infty
\\ \hline
-f'(x) & &- & &- &\dbarre &- & 0 &+ &
+f'(x) & &- & &- &\dbarre &- & 0 &+ &
\\ \hline
-\niveau{3}{3}f(x)
- &+\infty &\decroit
+\niveau{3}{3}f(x)
+ &+\infty &\decroit
&0 &\decroit
&\discont{-\infty}{<}{+\infty} &\decroit
&\frac{3}{2} &\croit
@@ -78,12 +76,12 @@ la commande \verb|\TVcenter|%
Voici le résultat obtenu avec ces deux modifications :
\[\begin{tabvar}{|C|CCCCCCCCC|} \hline
- x &-\infty & &-\sqrt[3]{2} & &0 & & 1 & &+\infty
+ x &-\infty & &-\sqrt[3]{2} & &0 & & 1 & &+\infty
\\ \hline
-f'(x) & &- & &- &\dbarre &- & 0 &+ &
+f'(x) & &- & &- &\dbarre &- & 0 &+ &
\\ \hline
\niveau{3}{3}\TVcenter{f(x)}
- &+\infty &\decroit
+ &+\infty &\decroit
&0 &\decroit
&\discont[1]{-\infty}{<}{+\infty} &\decroit
&\frac{3}{2} &\croit
@@ -104,10 +102,10 @@ grâce à la commande \verb|\barre{}|%
\[\begin{tabvar}{|C|CCCCLCRCCCC|} \hline
x &-\infty & &-\sqrt[3]{2} & & &0 & & &1 & &+\infty
\\ \hline
-f'(x) & &-& \barre{} &-& &\dbarre & &-&\barre{0} &+&
+f'(x) & &-& \barre{} &-& &\dbarre & &-&\barre{0} &+&
\\ \hline
-\niveau{3}{3}\TVcenter{f(x)}
- &+\infty &\decroit
+\niveau{3}{3}\TVcenter{f(x)}
+ &+\infty &\decroit
&\barre{0} &\decroit
&-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
@@ -120,10 +118,10 @@ Le codage est le suivant :
\[\begin{tabvar}{|C|CCCCLCRCCCC|} \hline
x &-\infty& &-\sqrt[3]{2} & & &0 & & &1 & &+\infty
\\ \hline
-f'(x)& &-& \barre{} &-& &\dbarre & &-&\barre{0} &+&
+f'(x)& &-& \barre{} &-& &\dbarre & &-&\barre{0} &+&
\\ \hline
-\niveau{3}{3}\TVcenter{f(x)}
- &+\infty &\decroit
+\niveau{3}{3}\TVcenter{f(x)}
+ &+\infty &\decroit
&\barre{0} &\decroit
&-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
@@ -141,25 +139,25 @@ $\displaystyle x(t)= t + \frac{1}{t}\qquad y(t) = t + \frac{1}{2t^2}$.
\[
\begin{tabvar}{|C|CCRCCCCCC|} \hline
- t &-\infty & &-1 & & 0 & & 1 & &+\infty
+ t &-\infty & &-1 & & 0 & & 1 & &+\infty
\\ \hline
-x'(t) & &+ & 0 & - & \dbarre & - & 0 & + &
+x'(t) & &+ & 0 & - & \dbarre & - & 0 & + &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &-2 &\decroit
- &\discont[1]{-\infty}{<}{+\infty} &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &-2 &\decroit
+ &\discont[1]{-\infty}{<}{+\infty} &\decroit
&2 &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\decroit
&\frac{3}{2} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 & + & \dbarre & - & 0 &+ &
+y'(t) & &+ &2 & + & \dbarre & - & 0 &+ &
\\ \hline
\end{tabvar}
\]
@@ -167,25 +165,25 @@ y'(t) & &+ &2 & + & \dbarre & - & 0 &+ &
Le codage est le suivant :
\begin{verbatim}
\[\begin{tabvar}{|C|CCRCCCCCC|} \hline
- t &-\infty & &-1 & & 0 & & 1 & &+\infty
+ t &-\infty & &-1 & & 0 & & 1 & &+\infty
\\ \hline
-x'(t) & &+ & 0 & - & \dbarre & - & 0 & + &
+x'(t) & &+ & 0 & - & \dbarre & - & 0 & + &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &-2 &\decroit
- &\discont[1]{-\infty}{<}{+\infty} &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &-2 &\decroit
+ &\discont[1]{-\infty}{<}{+\infty} &\decroit
&2 &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\decroit
&\frac{3}{2} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 & + & \dbarre & - & 0 &+ &
+y'(t) & &+ &2 & + & \dbarre & - & 0 &+ &
\\ \hline
\end{tabvar}
\]
@@ -197,23 +195,23 @@ Le même tableau de variations en présentation \og traditionnelle \fg.
\[\begin{tabvar}{|C|CCCCRCLCCCC|} \hline
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
-x'(t)& &+&\barre{0}&-& &\dbarre & &-&\barre{0} &+&
+x'(t)& &+&\barre{0}&-& &\dbarre & &-&\barre{0} &+&
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
@@ -222,17 +220,17 @@ Le codage est le suivant :
\[\begin{tabvar}{|C|CCCCRCLCCCC|} \hline
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
-x'(t)& &+&\barre{0}&-& &\dbarre & &-&\barre{0} &+&
+x'(t)& &+&\barre{0}&-& &\dbarre & &-&\barre{0} &+&
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
@@ -256,7 +254,7 @@ lieu de \verb|\frac| pour coder les fractions $\frac{1}{2}$ et $\frac{1}{4}$
aboutit au tableau de gauche.
\vspace{-.5\baselineskip}
-\[\begin{tabvar}{|C|LCCCR|}
+\[\begin{tabvar}{|C|LCCCR|}
\hline
x &0 & &\dfrac{1}{2} & & 1
\\ \hline
@@ -266,7 +264,7 @@ f'(x) &1\phantom{-} & + & 0 & - &-1
\\ \hline
\end{tabvar}
\quad
-\begin{tabvar}{|C|LCCCR|}
+\begin{tabvar}{|C|LCCCR|}
\hline
x &0 & &\TVstretch{\dfrac{1}{2}} & & 1
\\ \hline
@@ -281,7 +279,7 @@ Le codage du tableau de gauche est le suivant :
\vspace{-.2\baselineskip}
{\footnotesize
\begin{verbatim}
-\begin{tabvar}{|C|CCCCR|}
+\begin{tabvar}{|C|CCCCR|}
\hline
x &0 & &\dfrac{1}{2} & & 1
\\ \hline
@@ -296,11 +294,11 @@ f'(x) &1\phantom{-} & + & 0 & - &-1
\vspace{-.3\baselineskip}
Le tableau de droite est obtenu grâce à la commande \verb|\TVstretch|%
\footnote{Cette commande n'est disponible que depuis la version 1.7
- (décembre~2012) de \file{tabvar}.} ;
+ (décembre~2012) de \file{tabvar}.} ;
il suffit de remplacer \verb|\dfrac{1}{2}| et \verb|\dfrac{1}{4}|
par \verb|\TVstretch{\dfrac{1}{2}}| et \verb|\TVstretch{\dfrac{1}{4}}| ce qui
ajoute un petit espace vertical (\verb|2pt| soit 0,6mm environ) au-dessus et
-au-dessous de ces fractions.
+au-dessous de ces fractions.
La commande \verb|\TVstretch| peut aussi s’utiliser avec un argument
optionnel qui ajoute de l’espace uniquement au-dessus ou au-dessous selon son
@@ -308,7 +306,7 @@ signe. Le codage\par
\vspace{-.3\baselineskip}
{\footnotesize
\begin{verbatim}
-\begin{tabvar}{|C|R C C C C|}
+\begin{tabvar}{|C|R C C C C|}
\hline
x &0 & &\TVstretch[-4pt]{\frac{1}{2}} & & 1
\\ \hline
@@ -324,7 +322,7 @@ f'(x)&-1 & - & 0 & + &1
\vspace{-.3\baselineskip}
produit le tableau de droite, le tableau de gauche est obtenu avec le même
codage mais sans recours à la commande \verb|\TVstretch|.
-\[\begin{tabvar}{|C|R C C C C|}
+\[\begin{tabvar}{|C|R C C C C|}
\hline
x &0 & &\frac{1}{2} & & 1
\\ \hline
@@ -334,7 +332,7 @@ f'(x)&-1 & - & 0 & + &1
\\ \hline
\end{tabvar}
\quad
-\begin{tabvar}{|C|R C C C C|}
+\begin{tabvar}{|C|R C C C C|}
\hline
x &0 & &\TVstretch[-4pt]{\frac{1}{2}} & & 1
\\ \hline
@@ -349,7 +347,7 @@ f'(x)&-1 & - & 0 & + &1
\newpage
Il est possible de choisir entre quatre types de flèches grâce aux commandes
\verb+\FlechesPS1+ (flèches « à moustaches » obtenues par défaut) \dots{}
-\verb+\FlechesPS4+.
+\verb+\FlechesPS4+.
Voici le même tableau avec des flèches assorties à la police Fourier
(\verb+\FlechesPS2+) :
@@ -358,23 +356,23 @@ Voici le même tableau avec des flèches assorties à la police Fourier
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
x'(t) & &+ &\barre{0}
- &- & &\dbarre & &- &\barre{0} &+ &
+ &- & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
@@ -383,23 +381,23 @@ Une autre variante (\verb+\FlechesPS3+) \FlechesPS3 :
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
x'(t) & &+ &\barre{0}
- &- & &\dbarre & &- &\barre{0} &+ &
+ &- & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
@@ -408,27 +406,27 @@ et une dernière (\verb+\FlechesPS4+) \FlechesPS4 :
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
x'(t) & &+ &\barre{0}
- &- & &\dbarre & &- &\barre{0} &+ &
+ &- & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
-\newpage
+\newpage
Enfin il est possible d'élargir les colonnes contenant des flèches grâce à la
commande \verb|\TVarrowscolstretch| ou d'ajouter de l'espace entre les
@@ -443,23 +441,23 @@ colonnes avec \verb|\TVarraycolsep|, voici le même tableau composé avec
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
x'(t) & &+ &\barre{0}
- &- & &\dbarre & &- &\barre{0} &+ &
+ &- & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\niveau{1}{3}
-\TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+\TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
-\TVcenter{y(t)} &-\infty &\croit
+\TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
-y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
}
@@ -473,7 +471,7 @@ ascendante, l'utilisation des flèches PostScript est de loin préférable (les
flèches MetaPost sont des \emph{dessins}, leur couleur ne change pas avec la
couleur du texte contrairement aux flèches PostScript qui sont des
\emph{caractères}).
-Les flèches MetaPost sont obtenues avec
+Les flèches MetaPost sont obtenues avec
\verb|\usepackage[FlechesMP]{tabvar}|
ou la commande \verb|\FlechesMPtrue| placée dans le préambule ou dans le
fichier \file{tabvar.cfg}.
@@ -498,31 +496,31 @@ fichier \file{tabvar.cfg}.
t &-\infty & &-1 & & &0 & & & 1 & &+\infty
\\ \hline
x'(t) & &+ &\barre{0}
- &- & &\dbarre & &- &\barre{0} &+ &
+ &- & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\niveau{1}{3}
- \TVcenter{x(t)} &-\infty &\croit
- &\barre{-2} &\decroit
- &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
+ \TVcenter{x(t)} &-\infty &\croit
+ &\barre{-2} &\decroit
+ &-\infty &\dbarre &\niveau{3}{3}+\infty &\decroit
&\barre{2} &\croit
&+\infty
\\ \hline
\niveau{1}{3}
- \TVcenter{y(t)} &-\infty &\croit
+ \TVcenter{y(t)} &-\infty &\croit
&-\frac{1}{2} &\croit
&+\infty &\dbarre &+\infty &\decroit
&\barre{\frac{3}{2}} &\croit
&+\infty
\\ \hline
- y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
+ y'(t) & &+ &2 &+ & &\dbarre & &- &\barre{0} &+ &
\\ \hline
\end{tabvar}\]
\endgroup
-\newpage
+\newpage
\FlechesPS2
Un exemple de fonction non définie partout :
-$\displaystyle f(x) = \sqrt{\frac{x-1}{x+1}}$.
+$\displaystyle f(x) = \sqrt{\frac{x-1}{x+1}}$.
\[\begin{tabvar}{|C|CCRULCC|} \hline
x &-\infty & &-1 &\hspace*{15mm} & 1 & &+\infty
@@ -530,7 +528,7 @@ $\displaystyle f(x) = \sqrt{\frac{x-1}{x+1}}$.
f'(x) & &+ & & &+\infty &+ &
\\ \hline
\niveau{1}{2}
-\TVcenter{f(x)}&1 &\croit &+\infty &
+\TVcenter{f(x)}&1 &\croit &+\infty &
&\niveau{1}{2}0 &\croit & 1
\\ \hline
\end{tabvar}\]
@@ -546,7 +544,7 @@ Le codage est le suivant :
f'(x) & &+ & & &+\infty &+ &
\\ \hline
\niveau{1}{2}
-\TVcenter{f(x)}&1 &\croit &+\infty &
+\TVcenter{f(x)}&1 &\croit &+\infty &
&\niveau{1}{2}0 &\croit & 1
\\ \hline
\end{tabvar}\]
@@ -557,11 +555,11 @@ Le codage est le suivant :
La largeur de la colonne grisée est fixée à~15mm par le \verb|\hspace*{15mm}|
placé dans une ligne quelconque du tableau. Certains visualiseurs
(Xdvi par exemple) n'affichent pas correctement les couleurs ;
-en cas de doute, vérifier sur une sortie PostScript ou PDF.
+en cas de doute, vérifier sur une sortie PostScript ou PDF.
Noter l'emploi d'une seconde commande \verb|\niveau{1}{2}| pour positionner
la valeur de~$f$ au point~1 (sans celle-ci, cette valeur serait placée
-au niveau de la valeur précédente, ici~$+\infty$.
+au niveau de la valeur précédente, ici~$+\infty$.
Si on prolongeait la définition de $f$ en posant $f(x)=0$ sur $[-1,1]$
on aurait le tableau suivant :
@@ -573,7 +571,7 @@ on aurait le tableau suivant :
f'(x) & &+ & &\dbarre & 0 &+\infty &+ &
\\ \hline
\niveau{1}{2}
-\TVcenter{f(x)} &1 &\croit &+\infty &\niveau{1}{2}0
+\TVcenter{f(x)} &1 &\croit &+\infty &\niveau{1}{2}0
&\constante &0 &\croit & 1
\\ \hline
\end{tabvar}\]
@@ -589,7 +587,7 @@ Le codage est le suivant :
f'(x) & &+ & &\dbarre & 0 &+\infty &+ &
\\ \hline
\niveau{1}{2}
-\TVcenter{f(x)} &1 &\croit &+\infty &\niveau{1}{2}0
+\TVcenter{f(x)} &1 &\croit &+\infty &\niveau{1}{2}0
&\constante &0 &\croit & 1
\\ \hline
\end{tabvar}\]
@@ -597,8 +595,8 @@ Le codage est le suivant :
}
\end{document}
-%%% Local Variables:
+%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% coding: utf-8
-%%% End:
+%%% End:
diff --git a/macros/latex/contrib/tabvar/doc/tabvar.pdf b/macros/latex/contrib/tabvar/doc/tabvar.pdf
index f3a4b45659..673d70165b 100644
--- a/macros/latex/contrib/tabvar/doc/tabvar.pdf
+++ b/macros/latex/contrib/tabvar/doc/tabvar.pdf
Binary files differ
diff --git a/macros/latex/contrib/tabvar/source/tabvar.dtx b/macros/latex/contrib/tabvar/source/tabvar.dtx
index 8732a15f7f..0367ea670a 100644
--- a/macros/latex/contrib/tabvar/source/tabvar.dtx
+++ b/macros/latex/contrib/tabvar/source/tabvar.dtx
@@ -1,11 +1,11 @@
-% \CheckSum{649}
+% \CheckSum{622}
%
% \iffalse meta-comment
-% Files `tabvar.dtx', `tabvar.ins' and `tabvar.mp'
+% Files `tabvar.dtx’, `tabvar.ins’ and `tabvar.mp’
%
-% Copyright (C) Daniel Flipo 2003-2013 <daniel.flipo at free.fr>
+% Copyright (C) Daniel Flipo 2003-2022 <daniel.flipo at free.fr>
%
-% All the files included in the `tabvar' distribution, including
+% All the files included in the `tabvar’ distribution, including
% the font, may be distributed and/or modified under the conditions
% of the LaTeX Project Public License, either version 1.3 of this
% license or (at your option) any later version.
@@ -14,10 +14,7 @@
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
%
-% This file has the LPPL maintenance status "maintained".
-%
-% NO PERMISSION is granted to produce or to distribute a
-% modified version of this file under its original name.
+% This file has the LPPL maintenance status `maintained’.
%
% \fi
%
@@ -25,7 +22,7 @@
%
%<*sty>
%%
-%% Copyright (C) Daniel Flipo 2003-2013 <daniel.flipo at free.fr>
+%% Copyright (C) Daniel Flipo 2003-2022 <daniel.flipo at free.fr>
%%
\NeedsTeXFormat{LaTeX2e}[1997/06/01]
\ProvidesFile{tabvar.sty}
@@ -34,7 +31,7 @@
\ProvidesFile{tabvar.dtx}
%</dtx>
%<*!cfg>
- [2013/01/21 v1.7 (Daniel Flipo)]
+ [2022/07/16 v1.8 (Daniel Flipo)]
%</!cfg>
%
%<*driver>
@@ -44,21 +41,24 @@
\RecordChanges
%\OnlyDescription
%
-\usepackage{url}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\IfFileExists{lmodern.sty}{\usepackage{lmodern}}{}
-\usepackage[frenchb]{babel}
+\usepackage{iftex,url}
+\iftutex
+ \usepackage{fontspec}
+\else
+ \usepackage[T1]{fontenc}
+ \usepackage{lmodern}
+\fi
+\usepackage[french]{babel}
\GlossaryPrologue{\section*{Historique des versions}}
\newcommand*\file[1]{\textsf{#1}}
\newcommand*\ctype[1]{\texttt{#1}}
\newcommand*\env[1]{\texttt{#1}}
\setlength{\parindent}{0pt}
-\setlength{\parskip}{.5\baselineskip plus .2\baselineskip
+\setlength{\parskip}{.5\baselineskip plus .2\baselineskip
minus .2\baselineskip}
\begin{document}
\begin{center}
- \textbf{\Large Tableaux de variations : `tabvar'}\\[3mm]^^A\]
+ \textbf{\Large Tableaux de variations : `tabvar’}\\[3mm]^^A\]
Daniel \textsc{Flipo}\\
\texttt{Daniel.Flipo\at free.fr}
\end{center}
@@ -70,194 +70,187 @@
%
% \section{Documentation}
%
-% L'extension \file{tabvar.dtx}\footnote{La version pr\'esent\'ee
-% ici porte le num\'ero \fileversion, derni\`ere modification le
+% L’extension \file{tabvar.dtx}\footnote{La version présentée
+% ici porte le numéro \fileversion, dernière modification le
% \filedate.}, a pour but de faciliter la saisie des tableaux de
-% variations.
-%
-% Elle s'appuie sur les extensions \file{array}, \file{colortbl},
-% et \file{varwidth}. Les fl\`eches sont prises dans une fonte
-% (type\,1) sp\'ecialement cr\'e\'ee par Michel~\bsc{Bovani}.
-% Depuis la version~1.5, quatre variantes de fl\`eches sont
-% propos\'ees.
-% Un grand merci \`a Michel pour cette contribution et pour
-% ses remarques qui m'ont \'et\'e tr\`es utiles pour
-% am\'eliorer les versions pr\'eliminaires.
-%
-% Une autre possibilit\'e (conserv\'ee uniquement pour pr\'eserver
-% la compatibilit\'e avec les premi\`eres versions de \file{tabvar})
-% consiste \`a faire appel, pour le dessin des fl\`eches,
-% \`a MetaPost : le fichier \file{tabvar.mp} permet de cr\'eer les
-% trois fl\`eches \file{tabvar.1}, \file{tabvar.2}, \file{tabvar.3}.
+% variations. Elle fonctionne aussi bien avec pdfLaTeX qu’avec
+% LuaLaTeX ou XeLaTeX.
+%
+% Elle s’appuie sur les extensions \file{array}, \file{colortbl},
+% et \file{varwidth}. Les flèches sont prises dans une fonte
+% (type\,1) spécialement créée par Michel~\bsc{Bovani}.
+% Depuis la version~1.5, quatre variantes de flèches sont
+% proposées.
+% Un grand merci à Michel pour cette contribution et pour
+% ses remarques qui m’ont été très utiles pour
+% améliorer les versions préliminaires.
+%
+% Une autre possibilité (conservée uniquement pour préserver
+% la compatibilité avec les premières versions de \file{tabvar})
+% consiste à faire appel, pour le dessin des flèches,
+% à MetaPost : le fichier \file{tabvar.mp} permet de créer les
+% trois flèches \file{tabvar.1}, \file{tabvar.2}, \file{tabvar.3}.
% Ceci est une solution de repli pour ceux qui auraient du mal
-% \`a installer la fonte \file{tabvar.pfb}, \`a n'employer qu'en
+% à installer la fonte \file{tabvar.pfb}, à n’employer qu’en
% dernier recours.
%
-% Lorsqu'on travaille avec XeLaTeX ou LuaLaTeX il convient de
-% placer l'appel \`a |\usepackage{tabvar}| \emph{avant}
-% |\usepackage{fontspec}|.
-%
% \subsection{Installation}
%
-% L'extension \file{tabvar} fait partie des distributions TeXLive,
-% MacTeX, ProTeXt, MikTeX, etc. Si elle n'est pas install\'ee chez
-% vous, assurez-vous d'abord que l'extension \file{varwidth.sty} est
-% pr\'esente sur votre syst\`eme, sinon r\'ecup\'erez-la sur CTAN :
-% cherchez par exemple la cha\^{\i}ne |varwidth|
+% L’extension \file{tabvar} fait partie des distributions TeXLive,
+% MacTeX, ProTeXt, MikTeX, etc. Si elle n’est pas installée chez
+% vous, assurez-vous d’abord que l’extension \file{varwidth.sty} est
+% présente sur votre système, sinon récupérez-la sur CTAN :
+% cherchez par exemple la chaîne |varwidth|
% sur \url{http://www.tex.ac.uk/CTANfind.html}
%
% Les fichiers \file{tabvar.1}, \dots{} , \file{tabvar.3}
% ainsi que \file{tabvar.sty} et \file{tabvar.cfg} doivent
-% \^etre plac\'es dans un r\'epertoire vu par \LaTeX.
-%
-% Les fl\`eches sont prises dans la fonte type\,1 \file{tabvar.pfb}
-% \`a condition que celle-ci soit correctement install\'ee :
-% il est n\'ecessaire de placer le fichier \file{tabvar.pfb} dans
-% un r\'epertoire o\`u il sera pris en compte, par exemple, pour
-% respecter l'architecture TDS : |texmf/fonts/type1/public/tabvar|.
-% De m\^eme, son fichier de m\'etriques \file{tabvar.tfm} devra
-% \^etre mis par exemple dans |texmf/fonts/tfm/public/tabvar|.
-%
-% Un ligne donnant acc\`es \`a cette fonte doit \^etre ajout\'ee
-% (voir \file{tabvar.map}) dans les fichiers |.map| utilis\'es
+% être placés dans un répertoire vu par \LaTeX.
+%
+% Les flèches sont prises dans la fonte type\,1 \file{tabvar.pfb}
+% à condition que celle-ci soit correctement installée :
+% il est nécessaire de placer le fichier \file{tabvar.pfb} dans
+% un répertoire où il sera pris en compte, par exemple, pour
+% respecter l’architecture TDS : |texmf/fonts/type1/public/tabvar|.
+% De même, son fichier de métriques \file{tabvar.tfm} devra
+% être mis par exemple dans |texmf/fonts/tfm/public/tabvar|.
+%
+% Un ligne donnant accès à cette fonte doit être ajoutée
+% (voir \file{tabvar.map}) dans les fichiers |.map| utilisés
% par le pilote PostScript (\file{psfonts.map}) et par pdf\TeX{}
% (\file{pdftex.map}).
-% Ne pas oublier de mettre \`a jour les bases de donn\'ees ls-R
+% Ne pas oublier de mettre à jour les bases de données ls-R
% pour terminer (commande |mktexlsr| sous te\TeX{} ou \TeX{}Live).
%
% \subsection{Utilisation}
%
-% L'environnement \env{tabvar} est une variante de l'environnement
-% |array|, adapt\'ee \`a la saisie de tableaux de variations.
+% L’environnement \env{tabvar} est une variante de l’environnement
+% |array|, adaptée à la saisie de tableaux de variations.
%
% Trois nouveaux types de colonnes, \ctype{C}, \ctype{L} et
% \ctype{R} remplacent les types classiques \ctype{c}, \ctype{l}
-% et \ctype{r} ; ils permettent de disposer du mat\'eriel sur
-% plusieurs niveaux dans un m\^eme ligne du tableau (ce sont des
+% et \ctype{r} ; ils permettent de disposer du matériel sur
+% plusieurs niveaux dans un même ligne du tableau (ce sont des
% colonnes de type |\parbox|).
%
-% Un quatri\`eme type de colonne, not\'e \ctype{U}%
-% \footnote{Il \'etait not\'e \ctype{N} jusqu'\`a la version~1.5,
-% le type \ctype{N} est conserv\'e pour assurer la
-% compatibilit\'e ascendante mais ne devrait plus \^etre utilis\'e
-% pour \'eviter un conflit avec l'extension \file{numprint.sty}.}
-% sert pour les plages o\`u la fonction n'est pas d\'efinie
-% (\ctype{U} pour \textit{Undefined}). La colonne est enti\`erement
-% gris\'ee par d\'efaut, mais il est possible de choisir une autre
+% Un quatrième type de colonne, noté \ctype{U}%
+% \footnote{Il était noté \ctype{N} jusqu’à la version~1.5,
+% le type \ctype{N} est conservé pour assurer la
+% compatibilité ascendante mais ne devrait plus être utilisé
+% pour éviter un conflit avec l’extension \file{numprint.sty}.}
+% sert pour les plages où la fonction n’est pas définie
+% (\ctype{U} pour \textit{Undefined}). La colonne est entièrement
+% grisée par défaut, mais il est possible de choisir une autre
% couleur (voir le fichier de configuration \file{tabvar.cfg}).
-% D\'esormais \file{tabvar} teste au |\begin{document}| si le type
-% \ctype{N} a \'et\'e d\'efini par une autre extension, si c'est le
-% cas un avertissement est affich\'e dans le fichier \file{.log} et
-% \file{tabvar} n'\'ecrase plus la d\'efinition du type \ctype{N}.
-% Sinon, le type \ctype{N} est d\'efini comme avant.
+% Désormais \file{tabvar} teste au |\begin{document}| si le type
+% \ctype{N} a été défini par une autre extension, si c’est le
+% cas un avertissement est affiché dans le fichier \file{.log} et
+% \file{tabvar} n’écrase plus la définition du type \ctype{N}.
+% Sinon, le type \ctype{N} est défini comme avant.
%
% La saisie des lignes contenant les valeurs de la variable et les
-% signes des d\'eriv\'ees se fait exactement comme celles d'un
+% signes des dérivées se fait exactement comme celles d’un
% tableau |array|. Seules les lignes contenant les variations de
-% la ou des fonctions font appel \`a six commandes
-% particuli\`eres : |\niveau|, |\croit|, |\decroit|, |\constante|,
+% la ou des fonctions font appel à six commandes
+% particulières : |\niveau|, |\croit|, |\decroit|, |\constante|,
% |\dbarre| et |\discont|.
%
% \begin{itemize}
%
-% \item |\niveau{|\emph{d\'epart}|}{|\emph{total}|}| prend
-% deux arguments : le niveau (hauteur) o\`u doit \^etre
-% positionn\'ee la premi\`ere valeur de la fonction et le
-% nombre total de niveaux qui seront utilis\'es dans la ligne.
-% Le niveau le plus bas est num\'erot\'e 1.
+% \item |\niveau{|\emph{départ}|}{|\emph{total}|}| prend
+% deux arguments : le niveau (hauteur) où doit être
+% positionnée la première valeur de la fonction et le
+% nombre total de niveaux qui seront utilisés dans la ligne.
+% Le niveau le plus bas est numéroté 1.
%
% \item Les commandes |\croit|, |\decroit| et |\constante| ne
-% prennent pas d'argument, elles tracent les fl\`eches
+% prennent pas d’argument, elles tracent les flèches
% montantes, descendantes ou horizontales.
%
% \item |\dbarre| trace un double trait vertical dont la hauteur
% est celle de la ligne du tableau ; elle indique les
-% discontinuit\'es de la fonction.
+% discontinuités de la fonction.
%
% \item |\discont[|\emph{num}|]{|\emph{valeur\_gauche}|}{<|
% ou |>}{|\emph{valeur\_droite}|}| peut
-% s'utiliser lorsque la fonction pr\'esente une
-% discontinuit\'e \`a la place de la double barre
+% s’utiliser lorsque la fonction présente une
+% discontinuité à la place de la double barre
% traditionnelle ; elle prend trois arguments obligatoires :
-% les valeurs \`a gauche~$f_-$ et \`a droite~$f_+$ de la
-% fonction, s\'epar\'ees par un signe |<| ou |>| selon que
+% les valeurs à gauche~$f_-$ et à droite~$f_+$ de la
+% fonction, séparées par un signe |<| ou |>| selon que
% $f_-<f_+$ ou $f_->f_+$.
-% Enfin, l'argument optionnel, qui vaut~0 par d\'efaut,
-% permet d'intercaler \emph{num} niveaux suppl\'ementaires
-% entre les valeurs de~$f_-$ et~$f_+$ si n\'ecessaire.
+% Enfin, l’argument optionnel, qui vaut~0 par défaut,
+% permet d’intercaler \emph{num} niveaux supplémentaires
+% entre les valeurs de~$f_-$ et~$f_+$ si nécessaire.
%
% \end{itemize}
%
-% Il est possible d'ajouter des filets d'alignement vertical en
+% Il est possible d’ajouter des filets d’alignement vertical en
% utilisant la commande |\barre{}| qui requiert un argument
-% obligatoire, \'eventuellement vide : |\barre{}| trace un filet
+% obligatoire, éventuellement vide : |\barre{}| trace un filet
% vertical dont la hauteur est celle de la ligne du tableau.
-% Lorsqu'une valeur doit figurer sous le filet, on la passe en
+% Lorsqu’une valeur doit figurer sous le filet, on la passe en
% argument de la commande (|\barre{0}| par exemple), ainsi cette
-% valeur sera centr\'ee sur le filet. Ceci restreint \'evidemment
-% l'usage de la commande |\barre| aux colonnes de type \ctype{C}.
-% La couleur du filet (gris par d\'efaut) est param\'etrable, voir
+% valeur sera centrée sur le filet. Ceci restreint évidemment
+% l’usage de la commande |\barre| aux colonnes de type \ctype{C}.
+% La couleur du filet (gris par défaut) est paramétrable, voir
% le fichier de configuration \file{tabvar.cfg}. Cette solution a
-% \'et\'e pr\'ef\'er\'ee \`a des pointill\'es qui posent des
-% probl\`emes de raccordement d'une ligne \`a l'autre du tableau.
+% été préférée à des pointillés qui posent des
+% problèmes de raccordement d’une ligne à l’autre du tableau.
%
-% Depuis la version 1.5, quatre variantes sont propos\'ees pour le
-% dessin des fl\`eches PostScript type\,1, elles sont accessibles
-% par les commandes |\FlechesPS1| (fl\`eches \og\`a moustaches\fg{}
-% obtenues par d\'efaut), |\FlechesPS2| (assorties \`a la police
+% Depuis la version 1.5, quatre variantes sont proposées pour le
+% dessin des flèches PostScript type\,1, elles sont accessibles
+% par les commandes |\FlechesPS1| (flèches «à moustaches»
+% obtenues par défaut), |\FlechesPS2| (assorties à la police
% Fourier), |\FlechesPS3| et |\FlechesPS4|.
%
-% La commande |\TVcenter| prend un argument, elle sert \`a
+% La commande |\TVcenter| prend un argument, elle sert à
% centrer verticalement le nom de la fonction, par exemple
-% |\TVcenter{f(x)}|. Elle a besoin de conna\^{\i}tre le nombre
-% total de niveaux, elle doit donc \^etre pr\'ec\'ed\'ee d'une
-% commande |\niveau{|\emph{d\'epart}|}{|\emph{total}|}|.
+% |\TVcenter{f(x)}|. Elle a besoin de connaître le nombre
+% total de niveaux, elle doit donc être précédée d’une
+% commande |\niveau{|\emph{départ}|}{|\emph{total}|}|.
%
-% La commande |\TVstretch| est \`a utiliser lorsqu'un \'el\'ement
-% du tableau colle \`a la ligne horizontale du dessus ou du
+% La commande |\TVstretch| est à utiliser lorsqu’un élément
+% du tableau colle à la ligne horizontale du dessus ou du
% dessous%
% \footnote{Noter que les extensions \file{cellspace} et
-% \file{tabls} qui r\`eglent ce probl\`eme n'ont pas d'effet
-% sur l'environnement \env{tabvar} et que \file{tabls} est
-% incompatible avec \file{array} charg\'e par \file{tabvar}.}.
-% |\TVstretch{|\emph{valeur}|}| ajoute un peu d'espace
-% param\'etrable (2pt par d\'efaut)%
-% \footnote{La valeur de l'espace ajout\'e au-dessus est d\'efinie
+% \file{tabls} qui règlent ce problème n’ont pas d’effet
+% sur l’environnement \env{tabvar} et que \file{tabls} est
+% incompatible avec \file{array} chargé par \file{tabvar}.}.
+% |\TVstretch{|\emph{valeur}|}| ajoute un peu d’espace
+% paramétrable (2pt par défaut)%
+% \footnote{La valeur de l’espace ajouté au-dessus est définie
% par \texttt{\boi setlength\{\boi TVextraheight\}\{2pt\}}, celle
-% de l'espace ajout\'e au-dessous est d\'efinie par
+% de l’espace ajouté au-dessous est définie par
% \texttt{\boi setlength\{\boi TVextradepth\}\{2pt\}}.}
% au dessus et en dessous de \emph{valeur}.
-%
+%
% La commande |\TVstretch| accepte un argument optionnel de type
-% \emph{dimension} qui s'utilise lorsqu'on souhaite n'ajouter
-% d'espace vertical que d'un c\^ot\'e (au-dessus ou au-dessous).
-% Si l'argument optionnel est une dimension positive, sa valeur
-% sera ajout\'ee uniquement au-dessus et si c'est une dimension
-% n\'egative sa valeur absolue sera ajout\'ee uniquement en
+% \emph{dimension} qui s’utilise lorsqu’on souhaite n’ajouter
+% d’espace vertical que d’un côté (au-dessus ou au-dessous).
+% Si l’argument optionnel est une dimension positive, sa valeur
+% sera ajoutée uniquement au-dessus et si c’est une dimension
+% négative sa valeur absolue sera ajoutée uniquement en
% dessous.
%
% Le fichier \file{demo.pdf} (joint) propose plusieurs exemples,
-% accompagn\'es de leur code source, illustrant les utilisations
-% possibles de l'environnement \env{tabvar}.
+% accompagnés de leur code source, illustrant les utilisations
+% possibles de l’environnement \env{tabvar}.
%
-% Plusieurs commandes ou param\`etres permettent de personnaliser
-% l'aspect du tableau (augmentation de la largeur ou de la hauteur
+% Plusieurs commandes ou paramètres permettent de personnaliser
+% l’aspect du tableau (augmentation de la largeur ou de la hauteur
% des cellules, etc.), voir le fichier \file{tabvar.cfg}.
%
-% \subsection{Incompatibilit\'es}
+% \subsection{Incompatibilités}
%
% \file{tabvar} est incompatible avec les extensions qui
-% d\'efinissent les m\^emes types de colonnes (\ctype{C},
-% \ctype{L}, \ctype{R}, \ctype{U}) pour d'autres usages, en
+% définissent les mêmes types de colonnes (\ctype{C},
+% \ctype{L}, \ctype{R}, \ctype{U}) pour d’autres usages, en
% particulier \file{tabulary}.
%
-% L'utilisation simultan\'ee de \file{tabvar}, \file{cellspace}, et
-% \file{siunitx} est pour l'instant impossible : \file{cellspace}
-% et \file{siuntix} utilisent tous les deux le param\`etre \ctype{S},
-% pour \'eviter le conflit, \file{siuntix} red\'efinit le \ctype{S}
-% de \file{cellspace} en \ctype{C} ce qui provoque un autre conflit
-% avec \file{tabvar} ! Le probl\`eme a \'et\'e signal\'e \`a
-% l'auteur de \file{siuntix}.
+% Lorsqu’on utilise l’extension \file{xcolor}, placer l’appel
+% à |\usepackage{xcolor}| \emph{avant} |\usepackage{tabvar}|,
+% afin d’éviter un certain nombre de \textit{Warnings}.
%
% \StopEventually{\PrintChanges}
%
@@ -269,21 +262,21 @@
%
% \subsection{Options}
%
-% \changes{tabvar-0.9}{2004/12/29}{Par d\'efaut, les fl\`eches
+% \changes{tabvar-0.9}{2004/12/29}{Par défaut, les flèches
% sont prises maintenant dans la fonte type 1 de Michel Bovani.}
%
% \changes{tabvar-0.9}{2005/02/05}{Ajout de deux options pour
-% le choix du type de fl\`eches (suggestion de Frank Stengel).}
+% le choix du type de flèches (suggestion de Frank Stengel).}
%
-% Depuis la version~0.9, les fl\`eches utilis\'ees par d\'efaut
+% Depuis la version~0.9, les flèches utilisées par défaut
% sont prises dans la fonte type\,1 de Michel Bovani.
%
-% Si cette fonte sp\'ecifique n'a pas pu \^etre correctement
-% install\'ee, on pourra d\'eclarer |\FlechesMPtrue| dans le
-% fichier \file{tabvar.cfg} ou dans le pr\'eambule, ou encore
-% utiliser l'option |FlechesMP| pour que les fl\`eches
-% MetaPost utilis\'ees \`a la place. Cette solution est \`a
-% proscrire lorsqu'on travaille avec XeLaTeX ou LuaLaTeX.
+% Si cette fonte spécifique n’a pas pu être correctement
+% installée, on pourra déclarer |\FlechesMPtrue| dans le
+% fichier \file{tabvar.cfg} ou dans le préambule, ou encore
+% utiliser l’option |FlechesMP| pour que les flèches
+% MetaPost utilisées à la place. Cette solution est à
+% proscrire lorsqu’on travaille avec XeLaTeX ou LuaLaTeX.
%
% \begin{macrocode}
\newif\ifFlechesMP \FlechesMPfalse
@@ -303,19 +296,19 @@
\RequirePackage{ifthen}
% \end{macrocode}
%
-% \subsection{Dessin des fl\`eches}
+% \subsection{Dessin des flèches}
%
% Le fichier \file{tabvar.mp} (joint) contient le dessin des
-% trois fl\`eches en MetaPost.
+% trois flèches en MetaPost.
%
% La commande |mpost -tex=latex tabvar| produit trois fichiers
% \file{tabvar.1}\dots{} \file{tabvar.3} qui contiennent les
-% dessins des fl\`eches ; en PDF, il faut indiquer qu'il s'agit
+% dessins des flèches ; en PDF, il faut indiquer qu’il s’agit
% de fichiers MetaPost.
%
% \changes{tabvar-1.61}{2012/03/14}{Charger supp-pdf.tex est inutile :
% en mode PDF, graphics.sty appelle pdftex.def qui charge
-% supp-pdf.mkii.}
+% supp-pdf.mkii.}
%
% \begin{macrocode}
\RequirePackage{graphicx}
@@ -325,34 +318,34 @@
\fi
% \end{macrocode}
%
-%\changes{tabvar-1.5}{2011/03/04}{La d\'efinition des fl\`eches en
-% MetaPost est d\'eplac\'ee (AtBeginDocument) pour \'eviter un
-% message d'erreur avec XeLaTeX. Bug signal\'e par Thierry Wybrecht.}
+%\changes{tabvar-1.5}{2011/03/04}{La définition des flèches en
+% MetaPost est déplacée (AtBeginDocument) pour éviter un
+% message d’erreur avec XeLaTeX. Bug signalé par Thierry Wybrecht.}
%
%\changes{tabvar-1.2}{2008/10/23}{\cs{@ptsize} peut prendre des
-% valeurs n\'egatives (classes koma-script avec tailles inf\'erieures
-% \`a 10pt). Utiliser \cs{f@size} \`a la place (patch propos\'e par
+% valeurs négatives (classes koma-script avec tailles inférieures
+% à 10pt). Utiliser \cs{f@size} à la place (patch proposé par
% Ulrike Fisher, merci Ulrike).}
%
-% La mise \`a l'\'echelle des fl\`eches MetaPost se fait \`a partir
+% La mise à l’échelle des flèches MetaPost se fait à partir
% de la valeur de |\f@size| qui contient normalement la taille en
-% points de la police de base (10 en 10pt). Si la classe utilis\'ee
-% ne d\'efinit pas |\f@size|, on donne la valeur 10 \`a |\f@size|,
-% la valeur par d\'efaut de |\TVarrowscale| est alors 1.0
-% (\'echelle 1), l'utilisateur peut toujours red\'efinir lui-m\^eme
+% points de la police de base (10 en 10pt). Si la classe utilisée
+% ne définit pas |\f@size|, on donne la valeur 10 à |\f@size|,
+% la valeur par défaut de |\TVarrowscale| est alors 1.0
+% (échelle 1), l’utilisateur peut toujours redéfinir lui-même
% |\TVarrowscale| selon ses besoins.
% \begin{macrocode}
\providecommand{\f@size}{10}
\newcommand{\TVarrowscale}{\strip@pt\dimexpr\f@size pt/10\relax}
% \end{macrocode}
%
-%\changes{tabvar-1.4}{2010/08/22}{Ajout d'une commande
-% \cs{TVarrowscolstretch} permettant d'augmenter la largeur des
-% colonnes contenant les fl\`eches.}
+%\changes{tabvar-1.4}{2010/08/22}{Ajout d’une commande
+% \cs{TVarrowscolstretch} permettant d’augmenter la largeur des
+% colonnes contenant les flèches.}
%
-% La commande |\TVarrowscolstretch|, dont la valeur par d\'efaut
-% est~1, permet d'augmenter la largeur des colonnes contenant les
-% fl\`eches.
+% La commande |\TVarrowscolstretch|, dont la valeur par défaut
+% est~1, permet d’augmenter la largeur des colonnes contenant les
+% flèches.
%
% \begin{macro}{\TVarrowscolstretch}
% \begin{macrocode}
@@ -362,12 +355,12 @@
% \end{macrocode}
% \end{macro}
%
-%\changes{tabvar-1.5}{2011/03/10}{Trois nouvelles formes de fl\`eches
-% d\'essin\'ees par Michel Bovani.
-% Ajout de la commande \cs{FlechesPS} pour y acc\'eder.}
+%\changes{tabvar-1.5}{2011/03/10}{Trois nouvelles formes de flèches
+% déssinées par Michel Bovani.
+% Ajout de la commande \cs{FlechesPS} pour y accéder.}
%
-% La commande |\FlechesPS| suivie d'un chiffre compris entre 1 et 4
-% permet d'acc\'eder \`a quatre variantes pour les fl\`eches
+% La commande |\FlechesPS| suivie d’un chiffre compris entre 1 et 4
+% permet d’accéder à quatre variantes pour les flèches
% PostScript.
%
% \begin{macro}{\FlechesPS}
@@ -389,11 +382,11 @@
% \begin{macro}{\FlecheC}
% \begin{macro}{\FlecheD}
% \begin{macro}{\FlecheH}
-% Le trac\'e des trois types de fl\`eches est fait par les
+% Le tracé des trois types de flèches est fait par les
% commandes |\FlecheC|, |\FlecheD| et |\FlecheH|. Le choix de la
% variante (MetaPost ou type\,1) est fait au |\begin{document}|,
-% ce qui \'economise une fonte math\'ematique parmi les 16
-% disponibles lorsqu'on choisit la variante MetaPost.
+% ce qui économise une fonte mathématique parmi les 16
+% disponibles lorsqu’on choisit la variante MetaPost.
% \begin{macrocode}
\AtBeginDocument{%
\ifFlechesMP
@@ -437,11 +430,11 @@
% \end{macro}
% \end{macro}
%
-% \subsection{Positionnement vertical de \'el\'ements}
+% \subsection{Positionnement vertical de éléments}
%
-% La variable |\TVextraheight|, dont la valeur par d\'efaut vaut
-% |.7\baselineskip| permet d'\'ecarter l\'eg\`erement les valeurs
-% maximales de la fonction, du filet horizontal sup\'erieur.
+% La variable |\TVextraheight|, dont la valeur par défaut vaut
+% |.7\baselineskip| permet d’écarter légèrement les valeurs
+% maximales de la fonction, du filet horizontal supérieur.
%
% \begin{macrocode}
\newdimen\TVextraheight
@@ -449,17 +442,17 @@
% \end{macrocode}
%
% \begin{macro}{\niveau}
-% La commande |\niveau|, utilis\'ee uniquement dans les lignes
-% relatives aux valeurs des fonctions, permet d'initialiser les
+% La commande |\niveau|, utilisée uniquement dans les lignes
+% relatives aux valeurs des fonctions, permet d’initialiser les
% valeurs des compteurs |\@niveaux| (nombre total de niveaux
-% utilis\'es dans la ligne) et |\@pos| (indicateur du niveau
-% courant). Elle active \'egalement le drapeau |\if@socle|
-% utilis\'e par la commande |\@socle|. Celle-ci place un filet
+% utilisés dans la ligne) et |\@pos| (indicateur du niveau
+% courant). Elle active également le drapeau |\if@socle|
+% utilisé par la commande |\@socle|. Celle-ci place un filet
% invisible de hauteur |\TVextraheight| et ajoute |\@pos - 1|
-% sauts de lignes (les colonnes sont align\'ees par le bas), ce
-% qui assure le positionnement vertical de l'\'el\'ement (valeur
-% de la fonction ou fl\`eche).
-% Le drapeau |\if@socle| devra \^etre mis localement \`a `faux'
+% sauts de lignes (les colonnes sont alignées par le bas), ce
+% qui assure le positionnement vertical de l’élément (valeur
+% de la fonction ou flèche).
+% Le drapeau |\if@socle| devra être mis localement à `faux’
% dans certaines colonnes (cf. |\dbarre| et |discont|).
% \begin{macrocode}
\newcount\@niveaux
@@ -480,23 +473,23 @@
%
% \subsection{Nouveaux types de colonnes}
%
-% Ces d\'efinitions n\'ecessitent les extensions |array| et
-% |varwidth|. L'environnement |varwidth|, comme |minipage|,
-% red\'efinit la commande |\\|. On la renomme \`a l'int\'erieur
-% des environnements |varwidth|, de fa\c{c}on \`a \'eviter la
-% confusion entre passage \`a la ligne \`a l'int\'erieur d'une
-% colonne et passage \`a la ligne suivante du tableau :
-% |\TVnl| (commande interne) provoque un changement de ligne \`a
-% l'int\'erieur d'une colonne, l'utilisateur peut continuer \`a
+% Ces définitions nécessitent les extensions |array| et
+% |varwidth|. L’environnement |varwidth|, comme |minipage|,
+% redéfinit la commande |\\|. On la renomme à l’intérieur
+% des environnements |varwidth|, de façon à éviter la
+% confusion entre passage à la ligne à l’intérieur d’une
+% colonne et passage à la ligne suivante du tableau :
+% |\TVnl| (commande interne) provoque un changement de ligne à
+% l’intérieur d’une colonne, l’utilisateur peut continuer à
% utiliser |\\| pour terminer une ligne du tableau.
-% La commande |\TVtabularnewline|, d\'efinie dans l'environnement
+% La commande |\TVtabularnewline|, définie dans l’environnement
% \env{tabvar}, provoque un changement de ligne dans le tableau
-% (|\tabularnewline|) et affecte la valeur `vrai' au drapeau
-% |\ifreset@niveaux|, ce qui commande la r\'einitialisation des
-% compteurs |\@pos| et |\@niveaux| \`a la valeur~1.
-% Cette r\'einitialisation aura lieu \emph{apr\`es} que la
-% commande |\@socle| ait plac\'e les valeurs de la fonction et
-% les fl\`eches \`a la bonne hauteur.
+% (|\tabularnewline|) et affecte la valeur `vrai’ au drapeau
+% |\ifreset@niveaux|, ce qui commande la réinitialisation des
+% compteurs |\@pos| et |\@niveaux| à la valeur~1.
+% Cette réinitialisation aura lieu \emph{après} que la
+% commande |\@socle| ait placé les valeurs de la fonction et
+% les flèches à la bonne hauteur.
%
% \begin{macrocode}
\newif\ifreset@niveaux
@@ -506,19 +499,19 @@
\fi}
% \end{macrocode}
%
-% \changes{tabvar-1.0}{2006/03/14}{Ajout d'un param\`etre
+% \changes{tabvar-1.0}{2006/03/14}{Ajout d’un paramètre
% \cs{TVmaxcolwidth} pour choisir la largeur maximale des colonnes
-% de type C, L, R, au lieu d'une valeur fixe.}
+% de type C, L, R, au lieu d’une valeur fixe.}
%
% \changes{tabvar-1.2b}{2009/10/03}{Augmenter la valeur de
-% \cs{TVmaxcolwidth} \`a \cs{linewidth}).}
+% \cs{TVmaxcolwidth} à \cs{linewidth}).}
%
-% On d\'efinit des variantes \ctype{C}, \ctype{L} et \ctype{R},
+% On définit des variantes \ctype{C}, \ctype{L} et \ctype{R},
% des colonnes \ctype{c}, \ctype{l} et \ctype{r} : ce sont des
-% \emph{minipage} align\'ees par le bas, dont la largeur est celle
+% \emph{minipage} alignées par le bas, dont la largeur est celle
% de la ligne la plus longue, avec un maximum de |\TVmaxcolwidth|
-% fix\'e \`a |\linewidth| par d\'efaut, (voir la documentation de
-% l'extension \file{varwidth.sty}).
+% fixé à |\linewidth| par défaut, (voir la documentation de
+% l’extension \file{varwidth.sty}).
%
% \begin{macrocode}
\newdimen\TVmaxcolwidth
@@ -543,21 +536,21 @@
$\@finalstrut\@arstrutbox\end{varwidth}}}
% \end{macrocode}
%
-%\changes{tabvar-1.6}{2011/07/07}{Ajout du type `U' synonyme de `N'
-% utilis\'e par numprint.sty. N.B.: c'est la derni\`ere
-% d\'efinition qui est prise en compte par \cs{newcolumntype},
-% donc celle de numprint si tabvar est charg\'e apr\`es tabvar
+%\changes{tabvar-1.6}{2011/07/07}{Ajout du type `U’ synonyme de `N’
+% utilisé par numprint.sty. N.B.: c’est la dernière
+% définition qui est prise en compte par \cs{newcolumntype},
+% donc celle de numprint si tabvar est chargé après tabvar
% et inversement (cf. array.dtx).}
%
-% On d\'efinit \'egalement un type \ctype{U} pour les domaines o\`u
-% la fonction n'est pas d\'efinie : la colonne est colori\'ee en
-% faisant appel \`a l'extension \file{colortbl}. La couleur
-% peut \^etre choisie par l'utilisateur, par exemple :\\
+% On définit également un type \ctype{U} pour les domaines où
+% la fonction n’est pas définie : la colonne est coloriée en
+% faisant appel à l’extension \file{colortbl}. La couleur
+% peut être choisie par l’utilisateur, par exemple :\\
% |\definecolor{TVcolor}{rgb}{0.66, 0.8, 0}| \\
-% donne un vert, voir \file{color.sty} pour la fa\c{c}on de
-% d\'efinir des couleurs. L'ancien nom \ctype{N}, conserv\'e pour
-% la compatibilit\'e ascendante, tant qu'il n'y a pas conflit, mais
-% ne devrait plus \^etre utilis\'e.
+% donne un vert, voir \file{color.sty} pour la façon de
+% définir des couleurs. L’ancien nom \ctype{N}, conservé pour
+% la compatibilité ascendante, tant qu’il n’y a pas conflit, mais
+% ne devrait plus être utilisé.
%
% \begin{macrocode}
\definecolor{TVcolor}{gray}{0.7}
@@ -572,7 +565,7 @@
\AtBeginDocument{%
\@ifundefined{NC@find@N}%
{\newcolumntype{N}{U}}%
- {\PackageWarning{tabvar}{Le type de colonne N est d\'efini par
+ {\PackageWarning{tabvar}{Le type de colonne N est défini par
ailleurs. \MessageBreak Remplacer N par
U dans \protect\begin{tabvar}{...N...}
\MessageBreak}}%
@@ -581,22 +574,22 @@
%
% \subsection{Commandes de saisie}
%
-% Les valeurs \`a afficher dans chaque ligne peuvent \^etre
+% Les valeurs à afficher dans chaque ligne peuvent être
% saisies directement (|1.4|, |+|, |-|, etc.) comme dans un
% tableau normal. Les lignes correspondant aux valeurs des
-% fonctions comportent plusieurs \'etages, nous disposons
+% fonctions comportent plusieurs étages, nous disposons
% deux compteurs, |\@niveaux| qui contient le nombre total
-% de niveaux (ou \'etages) utilis\'es dans la ligne, |\@pos|
+% de niveaux (ou étages) utilisés dans la ligne, |\@pos|
% qui indique le niveau courant.
%
% \begin{macro}{\croit}
% \begin{macro}{\decroit}
% \begin{macro}{\constante}
% Les commandes |\croit|,|\decroit| et |\constante| tracent les
-% fl\`eches \`a la hauteur ad\'equate et mettent \`a jour le
-% compteur |\@pos|. Un message d'erreur est affich\'e lorsque
-% l'une de ces commandes fait sortir de la plage de niveaux
-% d\'eclar\'es par la commande |\niveau|.
+% flèches à la hauteur adéquate et mettent à jour le
+% compteur |\@pos|. Un message d’erreur est affiché lorsque
+% l’une de ces commandes fait sortir de la plage de niveaux
+% déclarés par la commande |\niveau|.
%
% \begin{macrocode}
\newcommand{\decroit}{\FlecheD
@@ -620,16 +613,16 @@
% \end{macro}
%
% \changes{tabvar-1.1}{2007/05/07}{Ajout de la commande \cs{barre}.
-% Ajout de \cs{barre@dth} pour le calcul de la hauteur d'une
-% rang\'ee (utilis\'ee par \cs{barre} et \cs{dbarre}).}
+% Ajout de \cs{barre@dth} pour le calcul de la hauteur d’une
+% rangée (utilisée par \cs{barre} et \cs{dbarre}).}
%
% \begin{macro}{\dbarre}
-% La commande |\dbarre| sert \`a tracer les doubles barres
-% La commande |\vline| ne peut pas \^etre utilis\'ee \`a cette fin
-% dans les environnements de type |\parbox|, car sa port\'ee
-% est limit\'ee \`a un interligne.
+% La commande |\dbarre| sert à tracer les doubles barres
+% La commande |\vline| ne peut pas être utilisée à cette fin
+% dans les environnements de type |\parbox|, car sa portée
+% est limitée à un interligne.
%
-% On calcule la hauteur exacte de la rang\'ee, dans les deux cas
+% On calcule la hauteur exacte de la rangée, dans les deux cas
% |\@niveaux=1| et |\@niveaux>1|, |\@tempdimc| contient la hauteur
% totale (\textit{totalheight}) et |\@tempdimb| la profondeur
% (\textit{depth}).
@@ -650,7 +643,7 @@
\fi
\@tempdimb=\dp\@arstrutbox}
% \end{macrocode}
-% On fait appel \`a |\rule| pour le trac\'e de |\dbarre|.
+% On fait appel à |\rule| pour le tracé de |\dbarre|.
% \begin{macrocode}
\newcommand{\dbarre}{%
\barre@dth
@@ -662,15 +655,15 @@
% \end{macro}
%
%\changes{tabvar-1.3}{2010/04/03}{%
-% Valeur de la profondeur \cs{@tempdimb} corrig\'ee dans \cs{barre}.
-% Bug signal\'e par Frank Stengel.}
+% Valeur de la profondeur \cs{@tempdimb} corrigée dans \cs{barre}.
+% Bug signalé par Frank Stengel.}
%
% \begin{macro}{\barre}
% La commande |\barre| prend un argument obligatoire.
-% |\barre{}| trace un filet vertical centr\'e dans une colonne.
-% Lorsque l'argument est non vide, celui-ci est superpos\'e
-% (centr\'e) sur le filet. Le filet est trac\'e en gris
-% par d\'efaut (couleur param\'etrable).
+% |\barre{}| trace un filet vertical centré dans une colonne.
+% Lorsque l’argument est non vide, celui-ci est superposé
+% (centré) sur le filet. Le filet est tracé en gris
+% par défaut (couleur paramétrable).
% \begin{macrocode}
\newsavebox{\tab@box}
\definecolor{TVbarrecolor}{gray}{0.7}
@@ -689,25 +682,25 @@
% \end{macro}
%
% \begin{macro}{\discont}
-% La commande |\discont| s'utilise lorsque la fonction pr\'esente
-% une discontinuit\'e, elle r\'eclame 3 arguments obligatoires :
-% le premier est la limite \`a gauche~$f_-$, le deuxi\`eme le signe
-% '<' ou '>', le troisi\`eme est la limite \`a droite~$f_+$.
+% La commande |\discont| s’utilise lorsque la fonction présente
+% une discontinuité, elle réclame 3 arguments obligatoires :
+% le premier est la limite à gauche~$f_-$, le deuxième le signe
+% `<’ ou `>’, le troisième est la limite à droite~$f_+$.
% \LaTeX{} ne peut pas toujours comparer facilement les valeurs
-% de $f_-$ et $f_+$ (penser \`a $f_-=\sqrt{e}$, $f_+=\pi/2$), le
-% deuxi\`eme argument pr\'ecise si $f_- < f_+$ ou si $f_- > f_+$.
+% de $f_-$ et $f_+$ (penser à $f_-=\sqrt{e}$, $f_+=\pi/2$), le
+% deuxième argument précise si $f_- < f_+$ ou si $f_- > f_+$.
%
% En plus de ces 3 arguments obligatoires, un argument optionnel
-% (entier positif) permet d'\'ecarter verticalement les valeurs
+% (entier positif) permet d’écarter verticalement les valeurs
% $f_-$ et~$f_+$ ; la valeur de cet entier donne le nombre de
-% niveaux suppl\'ementaires \`a intercaler (0 par d\'efaut).
+% niveaux supplémentaires à intercaler (0 par défaut).
%
% On commence par mesurer la largeur des deux arguments |#2| et
-% |#4| pour pouvoir les centrer ensuite dans une bo\^{\i}te de
-% largeur \'egale au maximum des deux largeurs.
+% |#4| pour pouvoir les centrer ensuite dans une boîte de
+% largeur égale au maximum des deux largeurs.
% Si cette disposition ne convient pas, on pourra toujours
-% ajouter un |\hfill| \`a droite o\`u \`a gauche de la valeur
-% \`a d\'eplacer.
+% ajouter un |\hfill| à droite où à gauche de la valeur
+% à déplacer.
%
% \begin{macrocode}
\newcommand{\discont}[4][0]{%
@@ -718,13 +711,13 @@
\@soclefalse
\ifthenelse{\equal{#3}{<}}%
% \end{macrocode}
-% Cas o\`u $f_- < f_+$ : on pose la valeur de~$f_+$ (|#4|), puis
-% on saute autant de lignes suppl\'ementaires qu'indiqu\'e dans
-% l'argument optionnel, ensuite on passe \`a la ligne et on pose
+% Cas où $f_- < f_+$ : on pose la valeur de~$f_+$ (|#4|), puis
+% on saute autant de lignes supplémentaires qu’indiqué dans
+% l’argument optionnel, ensuite on passe à la ligne et on pose
% la valeur de~$f_-$ (|#2|), enfin on ajoute en dessous
% |\@pos - 1| sauts de lignes pour positionner le tout en hauteur.
-% Il reste \`a ajuster le compteur~|\@pos| pour que la fl\`eche
-% suivante soit plac\'ee \`a la bonne hauteur.
+% Il reste à ajuster le compteur~|\@pos| pour que la flèche
+% suivante soit placée à la bonne hauteur.
% \begin{macrocode}
{\makebox[\@tempdimc]{\ensuremath{#4}}%
\@tempcnta=#1
@@ -739,7 +732,7 @@
}%
{\ifthenelse{\equal{#3}{>}}%
% \end{macrocode}
-% Cas o\`u $f_- > f_+$ : \textit{idem} en permutant $f_-$ et~$f_+$.
+% Cas où $f_- > f_+$ : \textit{idem} en permutant $f_-$ et~$f_+$.
% \begin{macrocode}
{\makebox[\@tempdimc]{\ensuremath{#2}}%
\@tempcnta=#1
@@ -754,10 +747,10 @@
\global\advance\@pos by -#1
}%
% \end{macrocode}
-% Cas o\`u le deuxi\`eme argument n'est ni |<| ni |>| : erreur
+% Cas où le deuxième argument n’est ni |<| ni |>| : erreur
% \begin{macrocode}
{\PackageError{tabvar.sty}%
- {Le second argument de \protect\discont\space doit \^etre
+ {Le second argument de \protect\discont\space doit être
\MessageBreak soit '<' soit '>'}}%
}%
}
@@ -768,7 +761,7 @@
%
% \begin{macro}{\TVcenter}
% La commande |\TVcenter{}| prend un argument, le nom de la
-% fonction \`a centrer verticalement dans sa colonne.
+% fonction à centrer verticalement dans sa colonne.
% \begin{macrocode}
\newcommand*{\TVcenter}[1]{%
\@tempcnta=\@niveaux \advance\@tempcnta by -1 \divide\@tempcnta by 2
@@ -783,17 +776,17 @@
%
% \begin{macro}{\TVstretch}
% La commande |\TVstretch{}| prend un argument obligatoire, le nom
-% de la valeur \`a \'ecarter des lignes horizontales et un
+% de la valeur à écarter des lignes horizontales et un
% argument optionnel de type \emph{dimension}.
-% Elle place son argument dans une bo\^{\i}te et en mesure la hauteur
-% et la profondeur. En l'absence d'argument optionnel, elle ajoute
-% respectivement |\TVextraheight| \`a la hauteur |\TV@tempa| et
-% |\TVextradepth| \`a la profondeur |\TV@tempb|.
-%
-% Si l'argument optionnel est une dimension positive, sa valeur
-% sera ajout\'ee uniquement \`a la hauteur et si c'est une
-% dimension n\'egative sa valeur absolue sera ajout\'ee uniquement
-% \`a la profondeur. La valeur par d\'efaut de l'argument optionnel
+% Elle place son argument dans une boîte et en mesure la hauteur
+% et la profondeur. En l’absence d’argument optionnel, elle ajoute
+% respectivement |\TVextraheight| à la hauteur |\TV@tempa| et
+% |\TVextradepth| à la profondeur |\TV@tempb|.
+%
+% Si l’argument optionnel est une dimension positive, sa valeur
+% sera ajoutée uniquement à la hauteur et si c’est une
+% dimension négative sa valeur absolue sera ajoutée uniquement
+% à la profondeur. La valeur par défaut de l’argument optionnel
% est |0pt|.
%
% \begin{macrocode}
@@ -820,7 +813,7 @@
\fi
\fi
% \end{macrocode}
-% Il reste \`a afficher la bo\^{\i}te initiale et \`a lui adjoindre
+% Il reste à afficher la boîte initiale et à lui adjoindre
% une |\rule| invisible (de largeur nulle) de profondeur
% |\TV@tempb| et de hauteur totale |\TV@tempa + \TV@tempb|.
% \begin{macrocode}
@@ -831,10 +824,10 @@
% \end{macrocode}
% \end{macro}
%
-% \subsection{Environnement `tabvar'}
+% \subsection{Environnement `tabvar’}
%
-% L'environnement \env{tabvar} est un \env{array} o\`u sont
-% red\'efinis |\TVarraystretch|, |\TVarraycolsep| et
+% L’environnement \env{tabvar} est un \env{array} où sont
+% redéfinis |\TVarraystretch|, |\TVarraycolsep| et
% |\tabularnewline|.
%
% \begin{environment}{tabvar}
@@ -851,7 +844,7 @@
% \end{macrocode}
% \end{environment}
%
-% Chargement du fichier de pr\'ef\'erences, si il en existe un.
+% Chargement du fichier de préférences, si il en existe un.
% \begin{macrocode}
\InputIfFileExists{tabvar.cfg}
{\typeout{loading tabvar.cfg}}
@@ -867,37 +860,37 @@
%<*cfg>
% \fi
% \begin{macrocode}
-%% Fichier de configuration de l'extension `tabvar.sty'.
+%% Fichier de configuration de l’extension `tabvar.sty’.
%%
-%% D\'ecommenter la ligne suivante pour que les variantes MetaPost
-%% des fl\`eches soient utilis\'ees \`a la place de la fonte tabvar.pfb
-%% (d\'econseill\'e en g\'en\'eral et *jamais* sous LuaLaTeX ou XeLaTeX).
+%% Décommenter la ligne suivante pour que les variantes MetaPost
+%% des flèches soient utilisées à la place de la fonte tabvar.pfb
+%% (déconseillé en général et *jamais* sous LuaLaTeX ou XeLaTeX).
%%
%%\FlechesMPtrue
%%
-%% Choix d'une des 4 variantes pour les fl\`eches PostScript
+%% Choix d’une des 4 variantes pour les flèches PostScript
%%
-%%\FlechesPS1 % (d\'efaut)
-%%\FlechesPS2 % assorties \`a la police Fourier
+%%\FlechesPS1 % (défaut)
+%%\FlechesPS2 % assorties à la police Fourier
%%\FlechesPS3
%%\FlechesPS4
%%
-%% Ce param\`etre permet d'augmenter la largeur des colonnes contenant
-%% des fl\`eches (essayer 1.3, 1.5, etc.), sa valeur par d\'efaut est 1 :
+%% Ce paramètre permet d’augmenter la largeur des colonnes contenant
+%% des flèches (essayer 1.3, 1.5, etc.), sa valeur par défaut est 1 :
%%
%%\renewcommand*{\TVarrowscolstretch}{1}
%%
-%% Ce param\`etre permet d'ajuster la hauteur des lignes
-%% de `tabvar' correspondant aux variations d'une fonction ;
-%% sa valeur par d\'efaut est :
+%% Ce paramètre permet d’ajuster la hauteur des lignes
+%% de `tabvar’ correspondant aux variations d’une fonction ;
+%% sa valeur par défaut est :
%%
%%\setlength{\TVextraheight}{0.7\baselineskip}
%%
-%% Valeur de \arraycolsep utilis\'ee dans `tabvar'.
+%% Valeur de \arraycolsep utilisée dans `tabvar’.
%%
%%\setlength{\TVarraycolsep}{1pt}
%%
-%% Valeur de \arraystretch utilis\'ee dans `tabvar'.
+%% Valeur de \arraystretch utilisée dans `tabvar’.
%%
%%\renewcommand{\TVarraystretch}{1.5}
%%
@@ -905,27 +898,27 @@
%%
%%\setlength{\TVmaxcolwidth}{\linewidth}
%%
-%% Valeur des espaces verticaux ajout\'es par la commande
+%% Valeur des espaces verticaux ajoutés par la commande
%% |\TVstretch{}|.
%%
%%\setlength{\TVextraheight}{2pt}
%%\setlength{\TVextradepth}{2pt}
%%
-%% Exemples de d\'efinitions de couleurs pour les colonnes `U'
-%% o\`u la fonction est non d\'efinie.
+%% Exemples de définitions de couleurs pour les colonnes `U’
+%% où la fonction est non définie.
%%
%%\definecolor{TVcolor}{gray}{0.5}
%%\definecolor{TVcolor}{rgb}{0.33, 0.12, 0}
%%\definecolor{TVcolor}{cmyk}{0.91,0,0.88,0.12}
%%
-%% Les valeurs suivantes assurent que les colonnes `U' sont
-%% colori\'ees sur toute leur largeur.
+%% Les valeurs suivantes assurent que les colonnes `U’ sont
+%% coloriées sur toute leur largeur.
%%
%%\setlength{\TVcolorLeftSep}{\TVarraycolsep}
%%\setlength{\TVcolorRightSep}{\TVarraycolsep}
%%
%% On peut ajuster comme ci-dessus la couleur des filets
-%% tra\c{c}\'es par la commande \barre{}.
+%% traçés par la commande \barre{}.
%%
%%\definecolor{TVbarrecolor}{gray}{0.7}
% \end{macrocode}
@@ -940,5 +933,5 @@
%%% Local Variables:
%%% fill-column: 70
-%%% coding: us-ascii
+%%% coding: utf-8
%%% End: