summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/.mkisofsrc2
-rw-r--r--Master/release-texlive.txt2
-rw-r--r--Master/texmf-dist/chktex/chktexrc950
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/ht.sh31
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/htlatex.sh30
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/htmex.sh31
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/httex.sh35
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/httexi.sh35
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/htxelatex.sh31
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/htxetex.sh31
-rwxr-xr-xMaster/texmf-dist/scripts/tex4ht/xhlatex.sh30
-rw-r--r--Master/texmf-dist/web2c/texmf.cnf26
-rw-r--r--Master/texmf-dist/web2c/texmfcnf.lua4
-rw-r--r--Master/tlpkg/TeXLive/TLConfig.pm4
-rwxr-xr-xMaster/tlpkg/bin/c2l9
-rwxr-xr-xMaster/tlpkg/bin/tl-update-bindir175
-rwxr-xr-xMaster/tlpkg/bin/tl-update-images5
-rwxr-xr-xMaster/tlpkg/bin/tl-update-messages2
-rwxr-xr-xMaster/tlpkg/bin/tl-update-tlnet4
-rw-r--r--Master/tlpkg/doc/releng.txt37
-rw-r--r--Master/tlpkg/tlpsrc/cweb.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/ptex.tlpsrc1
22 files changed, 628 insertions, 848 deletions
diff --git a/Master/.mkisofsrc b/Master/.mkisofsrc
index 44924a83b28..f567eb8e901 100644
--- a/Master/.mkisofsrc
+++ b/Master/.mkisofsrc
@@ -1,4 +1,4 @@
APPI=Complete TeX system
COPY=LICENSE.TL
PUBL=TeX Live <tex-live@tug.org>
-VOLI=TeXLive2023
+VOLI=TeXLive2024
diff --git a/Master/release-texlive.txt b/Master/release-texlive.txt
index 48e4c57b46e..8f09fb8b25a 100644
--- a/Master/release-texlive.txt
+++ b/Master/release-texlive.txt
@@ -1,4 +1,4 @@
-TeX Live (https://tug.org/texlive) version 2023
+TeX Live (https://tug.org/texlive) version 2024
This file is public domain. It is read by install-tl --version,
tlmgr --version, and texconfig conf, and a final line appended with
diff --git a/Master/texmf-dist/chktex/chktexrc b/Master/texmf-dist/chktex/chktexrc
index c6355f8db12..d829ffacb73 100644
--- a/Master/texmf-dist/chktex/chktexrc
+++ b/Master/texmf-dist/chktex/chktexrc
@@ -1,6 +1,4 @@
-##
-## ChkTeX, example resource file for ChkTeX.
-## Copyright (C) 1995-96 Jens T. Berger Thielemann
+## Example resource file for ChkTeX.
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@@ -16,324 +14,304 @@
## along with this program; if not, write to the Free Software
## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
##
-## Contact the author at:
-## Jens Berger
-## Spektrumvn. 4
-## N-0666 Oslo
-## Norway
-## E-mail: <jensthi@ifi.uio.no>
+## For more information visit https://www.nongnu.org/chktex/
##
-#####################################################################
-#
-# Note: The format has changed slightly (again). The { ... }
-# syntax does now mean case-sensitive comparing, while [ ... ] means
-# case-insensitive comparing of the keywords. Case-insensitive
-# comparing of the keywords is only supported on a few of the
-# keywords (it's not meaningful in all contexts, and it slows ChkTeX
-# down). Keywords supporting this are marked throughout the file.
-#
-# You may also reset a list by saying "KEYWORD = { ... }"; it will
-# then be set equal to the contents of the list you specify.
-#
-# Comments begin with `#', and continues for the rest of the line.
-# Blank lines plus leading and trailing spaces are of course ignored.
-#
-# The general format of this file is the following:
-#
-# KEYWORD { item item ...} [ item item ... ] /* Adds items */
-#
-# KEYWORD [ item item ...] { item item ... } /* Adds items */
-#
-# KEYWORD = item
-#
-# KEYWORD = { item item ... } /* Clears list before adding */
-#
-# KEYWORD = [ item item ... ] /* Clears list before adding */
-#
-# This does _not_ mean that you may alternate the forms; certain
-# keywords demands a list, other a single value. You thus have to
-# look at the examples of their use.
-#
-# Please also note that if you specify a list-keyword twice, we'll
-# concatenate the lists. If you specify a item-keyword twice, we'll
-# kill the previous value.
-#
-# We are slightly context-sensitive when detecting tokens like "}"
-# and "]"; they have to be preceded by a space. This generally makes
-# life easier.
-#
-# Items are separated by spaces. Newlines are considered as spaces,
-# but can't be escaped. You may surround items with quotes (`"') to
-# easily put spaces into them.
-#
-# Escape sequences available:
-#
-# Sequence Resulting character
-# ! A space (type `! ', not just a exclamation mark)
-# !" "
-# !# #
-# !! !
-# !{ {
-# !} }
-# ![ [
-# !] ]
-# != =
-# !b Backspace
-# !n New line
-# !r Carriage return
-# !t Tab
-# !f Form feed
-# !xNN NN must be a hexadecimal number (00 - ff),
-# _both_ characters must be included.
-# !dNNN DDD must be a decimal number (000 - 255), all
-# three characters must be included. Unspecified
-# results if DDD > 255.
-# !NNN DDD must be a octal number (000 - 377), all
-# three characters must be included. Unspecified
-# results if DDD > 377.
-#
-# Minor note: As you can see, most of these escape sequences are
-# equal to those in C (with some extensions); however, we use !
-# instead of \ as escape character for obvious reasons.
-#
-#
-# Quick summary of keywords follows. Keywords marked with a * accept
-# keywords accepting case-insensitive lists.
-#
-# Abbrev* - A list of abbreviations not automatically caught.
-# CenterDots - Commands/characters which should have \cdots in
-# between.
-# CmdLine - Default commandline options. These will be
-# processed before the ones you give on the command
-# line.
-# HyphDash \
-# NumDash - Number of dashes allowed in different contexts.
-# WordDash /
-# IJAccent - Commands which puts an accent _over_ their
-# argument.
-# Italic - Commands immediately turning on italic mode.
-# ItalCmd - Commands putting their argument into italic.
-# Linker - Commands which should have a non-breaking space in
-# front.
-# LowDots - Commands/characters which should have \ldots in
-# between.
-# MathEnvir - Environments which turn on math mode.
-# MathCmd - Commands which turn on math mode.
-# TextCmd - Commands which turn off math mode.
-# MathRoman - Mathematical operators with LaTeX replacement
-# defined.
-# NoCharNext - Insists on that certain commands aren't followed by
-# certain characters.
-# NonItalic - Commands immediately turning off italic mode.
-# NotPreSpaced- Commands which should not have a space in front of
-# them.
-# Primitives - Primitive TeX commands.
-# PostLink - Commands which generates a page reference.
-# OutFormat - Formats to use for output. See the -f & -v switch
-# in the main doc.
-# QuoteStyle - Either "Traditional" or "Logical". See main doc,
-# warning 38.
-# Silent - These commands do not produce any textual output;
-# and are thus allowed to have a space after them.
-# TabSize - Tab size you are using.
-# TeXInputs - Paths to search \input and \include files for.
-# UserWarn* - These strings will be searched for throughout the
-# text.
-# VerbEnvir - Environments which contents should be ignored.
-# VerbClear - String we will overwrite unwanted data with.
-# WipeArg - Commands (with arguments) which should be ignored
-# in the checking.
-#
-
-
-#####################################################################
-#
-# Enter which type of quote-style you are using here. Currently, we
-# support the following styles:
-#
-# Style Example of use
-# Traditional "An example," he said, "would be great."
-# Logical "An example", he said, "would be great".
+## chktexrc file format
+#
+# The chktecrc file is essentially a bunch of variable assignments.
+# There are two types of variables, those that take single items and
+# those that take lists.
+#
+# In turn, there are two types of lists, case-sensitive and case-insentive.
+# Case-sensitive lists are delimited by `{' and `}'
+# while case-insensitive are delimited by `[' and `]'.
+# Only some variables support case insensitive lists, since in many
+# cases it doesn't make sense and would be unnecessarily slow. Those
+# variables that *do* support case-insensitive lists will be marked as
+# such throughout the file.
+#
+# Variables can be set with or without an equals sign. If included, the
+# `=' causes the variable to be overwritten. This is the only thing
+# that makes sense for varibles taking a single item and so we always
+# include it in that case. For list variables, omitting the equals
+# sign will cause the items in the list to be appended instead of
+# overwriting the entire list.
+#
+# Below are all the ways in which a variable can be set. Note that lists
+# can span lines, though this is not shown here for brevity.
+#
+#
+# VariableName = item
+# # Overwrites
+# VariableName = { Item1 Item2 ... }
+# VariableName = [ item1 item2 ... ]
+# VariableName = { Item1 Item2 ... } [ item item ... ]
+# VariableName = [ item1 item2 ... ] { Item Item ... }
+# # Appends
+# VariableName { Item3 Item4 ... }
+# VariableName [ item3 item4 ... ]
+# VariableName { Item3 Item4 ... } [ item item ... ]
+# VariableName [ item3 item4 ... ] { Item Item ... }
+#
+#
+# Comments begin with `#', and continue for the end of the line.
+# Blank lines plus leading and trailing spaces are ignored.
+# Items are separated by spaces.
+# Newlines are considered spaces, but can't be escaped.
+# You can use double quotes `"' to surround an item with spaces, or you can
+# escape spaces as described later.
+#
+# Detection of tokens like `}' are somewhat context sensitve---they
+# have to be preceded by a space (or newline). This allows them to be
+# part of an item without escaping. Since some variables require such
+# characters, this generally makes life easier.
+#
+# To include characters that might otherwise interfere, escape
+# sequences are provided. They are similar to those in C, but use
+# `!' instead of `\' for obvious reasons.
+# The entire list is below.
+#
+# Sequence Resulting character
+# `! ' Space
+# `!"' `"'
+# `!#' `#'
+# `!!' `!'
+# `!{' `{'
+# `!}' `}'
+# `![' `['
+# `!]' `]'
+# `!=' `='
+# `!b' Backspace
+# `!n' New line
+# `!r' Carriage return
+# `!t' Tab
+# `!f' Form feed
+# `!xNN' NN must be a hexadecimal number (00 - ff),
+# both characters must be included.
+# `!dNNN' NNN must be a decimal number (000 - 255), all
+# three characters must be included.
+# Unspecified results if NNN > 377.
+# `!NNN' NNN must be a octal number (000 - 377), all
+# three characters must be included.
+# Unspecified results if NNN > 377.
+
+## Available Settings
+#
+# All avaiable settings follow.
+#
+
+## QuoteStyle
+#
+# The type of quote-style you are using. There are currently two
+# styles:
+#
+# Traditional:
+# "An example," he said, "would be great."
+#
+# Logical:
+# "An example", he said, "would be great".
#
-
QuoteStyle = Logical
-#####################################################################
+
+## TabSize
#
-# Enter here what interval you have between your tabs. Only regular
-# intervals are supported.
+# The width of a tab. This is used for formatting the error message.
+# Only positive integers are allowed.
#
-
TabSize = 8
-#####################################################################
+
+## CmdSpaceStyle
#
-# Here, you can put default commandline options; most users would for
-# instance like to put -v2 here.
+# How to treat a command is followed by punction. In all cases the
+# warnings are also governed by the main warning settings, namely
+# warnings 12 and 13 about interword and intersentence spacings.
#
-
-CmdLine
-{
-
-}
-
-#####################################################################
+# If set to Ignore, then it won't print any warnings when pucntuation
+# follows a command.
+#
+#
+# If CmdSpaceStyle is set to InterWord, then it will print warnings
+# when interword spacing should (potentially) be used. For example,
+# without a command the following will trigger warning 12
+#
+# `I've seen a UFOs, etc. in my life.'
+#
+# And if set to InterWord, so will
+#
+# `I've seen a UFOs, \etc. in my life.'
+#
+#
+# If set to InterSentence, then it will print warnings when
+# intersentence spacing should (potentially) be used. For example,
+# without a command the following will trigger warning 13
#
-# These patterns will be searched for through the text; no matter
-# whether they appear as normal text, commands or whatever.
-# Currently case-sensitive. They are not found in comments.
+# `I've seen an UFO! Right over there!'
#
-# I usually define a special command like this:
+# And if set to InterSentence, so will
#
-# \def\unknown{\large\bf??}
+# `I've seen an \UFO! Right over there!'
#
-# which I use whenever there is some information I don't have at the
-# moment of writing. Thus, it makes sense to search for it.
#
-# You should be able to develop your own uses for this.
+# Setting CmdSpaceStyle to Both will cause warnings to be printed in
+# both cases.
#
+CmdSpaceStyle = Ignore
-UserWarn
-{
- \unknown
-###
+## CmdLine
#
-# Another example; one should write \chktex or Chk\TeX - never ChkTeX.
+# Default command-line options. For instance, you might like to put
+# `-v2' here.
#
-###
-
- ChkTeX
+CmdLine
+{
}
-[
-###
+
+## UserWarn
#
-# You may put case-insensitive patterns here.
+# Arbitrary strings to warn about. You can put here to help you find
+# your own little foibles. See also UserWarnRegex.
#
-###
-
+# These patterns will be searched for throughout the text; regardless
+# of whether they appear as normal text, commands, in math mode, etc.
+# They are *not* found in comments.
+#
+# Suppose you define a special command like this:
+# \def\unknown{\large\bf??}
+# which you use whenever you don't have some information at the time
+# of writing. Thus, it makes sense to warn on it, and this is a
+# convenient way to do so.
+#
+UserWarn
+{
+ \unknown
+ # One should write \chktex or Chk\TeX - never ChkTeX.
+ ChkTeX
+}
+[ # You may put case-insensitive patterns here.
]
-###
+## UserWarnRegex
+#
+# A more sophisticated version of UserWarn using regular
+# expressions. Use of these will be automatically disabled if ChkTeX
+# was built without regular expression support. Because ChkTeX can be
+# with support for either POSIX or PCRE flavors of regular expression,
+# some of the following will not apply in all cases. An expression
+# can be defined only when PCRE is enabled by prepending the
+# expression with `PCRE:' and similarly with `POSIX:'.
#
# These patterns will be searched for, no matter whether they appear
-# as normal text, commands or arguments. However, they will _not_
-# match in verbatim environments.
+# as normal text, commands, or arguments. However, they will *not*
+# match in verbatim environments (see VerbEnvir).
#
-# Remember that you have to escape (with a !) the following
-# characters: "#!= as well as spaces and {}[] if they are proceeded by
-# a space.
+# Remember that you have to escape (with a `!') the characters
+# `"#!=', as well as spaces and `{}[]' if they are
+# proceeded by a space.
#
-# Since these are PCRE regular expressions, you can use (?i) to make
+# When using PCRE regular expressions, you can use `(?i)' to make
# the expression case insensitive. See the man pages (man pcresyntax)
# or the nicely formatted http://perldoc.perl.org/perlre.html for
-# documentation on the regular expression syntax. Note however that
+# documentation on the regular expression syntax. Note, however, that
# some the features of perl regular expression are not available such
# as running code (callouts), and replacing.
#
-# An initial PCRE comment (?# ... ) can be used change what is
-# displayed, thereby reminding yourself how to fix the problem.
+# An initial PCRE-style comment `(?# ... )' can be used
+# to change what is displayed, thereby reminding yourself how to fix
+# the problem. This works even for POSIX expressions.
#
-###
UserWarnRegex
{
+ (?!#Always! use! \nmid)\\not! *(\||\\mid)
- (?!#Always! use! \nmid)\\not! *(\||\\mid)
+ # Capitalize section when saying Section 6.
+ (?!#-1:Capitalize! before! references)PCRE:\b(chapter|(sub)?section|theorem|lemma|proposition|corollary|appendix)~\\ref
+ (?!#1:Capitalize! before! references)POSIX:([^[:alnum:]]|^)(chapter|(sub)?section|theorem|lemma|proposition|corollary|appendix)~\\ref
- # capitalize section when saying Section 6.
- (?!#-1:Capitalize! before! references)PCRE:\b(chapter|(sub)?section|theorem|lemma|proposition|corollary|appendix)~\\ref
- (?!#1:Capitalize! before! references)POSIX:([^[:alnum:]]|^)(chapter|(sub)?section|theorem|lemma|proposition|corollary|appendix)~\\ref
+ # Spell it introduction
+ # PCRE:(?i)\bintro\b(?!#Spell! it! out.! This! comment! is! not! used.)
+ # POSIX:([^[:alnum:]]|^)intro([^[:alnum:]]|$)
- # spell it out.
- # PCRE:(?i)\bintro\b(?!#Spell! it! out.! This! comment! is! not! used.)
- # POSIX:([^[:alnum:]]|^)intro([^[:alnum:]]|$)
+ # Pretty tables--see http://texdoc.net/texmf-dist/doc/latex/booktabs/booktabs.pdf
+ (?!#-2:Use! \toprule,! midrule,! or! \bottomrule! from! booktabs)\\hline
+ # This relies on it being on a single line, and not having anything
+ # else on that line. With PCRE we could match balanced [] and {},
+ # but I wonder if it's worth the complexity...
+ (?!#-2:Vertical! rules! in! tables! are! ugly)\\begin\{(array|tabularx?\*?)\}(\[.*\])?\{.*\|.*\}
- # Pretty tables--see http://texdoc.net/texmf-dist/doc/latex/booktabs/booktabs.pdf
- (?!#-2:Use! \toprule,! midrule,! or! \bottomrule! from! booktabs)\\hline
- # This relies on it being on a single line, and not having anything
- # else on that line. With PCRE we could match balanced [] and {},
- # but I wonder if it's worth the complexity...
- (?!#-2:Vertical! rules! in! tables! are! ugly)\\begin\{(array|tabularx?\*?)\}(\[.*\])?\{.*\|.*\}
+ (?!#-3:Optional! arguments! []! inside! optional! arguments! []! must! be! enclosed! in! {})\[(?!![^\]\[{}]*{(?!![^\]\[{}]*}))[^\]]*\[
}
-#####################################################################
+## TeXInputs
#
-# Here you can list the path of where ChkTeX should look for files it
-# \inputs. The // postfix is now supported; if you append a double
-# path-separator we'll recursively search that directory directories.
-# MS-DOS users must append \\ instead, e.g. "C:\EMTEX\\".
+# A list of paths where ChkTeX should look for files it `\input's.
+# By default, the current directory is searched (not recursively, use
+# `//' for that, see below).
#
-# If you under either MS-DOS or UNIX wish to search an entire
-# partition or the complete directory tree, you must use *three*
-# slashes, e.g. "c:\\\" or "///". This may be considered to be a bug.
+# A `//' postfix is supported:
+# if you append a double path-separator we'll recursively search that
+# directory's directories. MS-DOS users must append `\\'
+# instead, e.g. `C:\EMTEX\\'. In order to search an
+# entire directory tree, you must use *three* slashes,
+# e.g. `c:\\\' or `///'.
#
-# By default, we'll search the current directory (not recursively,
-# put "//" in the list for this); any paths specified below will be
-# searched in addition to this.
-#
-
TeXInputs
{
-
}
-#####################################################################
+
+## OutFormat
#
-# Here you may specify more output formats for use with the -v option,
-# it simply indexes into this list. Remember to use ! instead of \,
-# though.
+# Output formats which can be selected from the command-line. The
+# `-v' option simply indexes into this list. By default, entry number
+# *two* in this list is chosen (counting from 0), and `-v'
+# without any parameter selects entry number *three*.
#
-# For explanation of how % fields expand; look at ChkTeX.{dvi,ps,pdf}.
+# For explanation of the `%' format specifiers see the
+# documentation of the `--format' command-line argument
+# in the manual.
#
-# We will by default select entry number _two_ in this list (we count
-# from 0), and -v without any parameter selects entry number _three_.
+# Recall that to use `!' is the escape character, not `\'.
#
-
OutFormat
{
-
-# -v0; silent mode
-%f%b%l%b%c%b%n%b%m!n
-
-# -v1; normal mode
-"%k %n in %f line %l: %m!n%r%s%t!n%u!n"
-
-# -v2; fancy mode
-"%k %n in %f line %l: %m!n%r%i%s%I%t!n!n"
-
-# -v3; lacheck mode
-"!"%f!", line %l: %m!n"
-
-# -v4; verbose lacheck mode
-"!"%f!", line %l: %m!n%r%s%t!n%u!n"
-
-# -v5; no line number, ease auto-test
-"%k %n in %f: %m!n%r%s%t!n%u!n"
-
-# -v6; emacs compilation mode
-"!"%f!", line %l.%c:(#%n) %m!n"
-
+ # -v0; silent mode
+ %f%b%l%b%c%b%n%b%m!n
+ # -v1; normal mode
+ "%k %n in %f line %l: %m!n%r%s%t!n%u!n"
+ # -v2; fancy mode
+ "%k %n in %f line %l: %m!n%r%i%s%I%t!n!n"
+ # -v3; lacheck mode
+ "!"%f!", line %l: %m!n"
+ # -v4; verbose lacheck mode
+ "!"%f!", line %l: %m!n%r%s%t!n%u!n"
+ # -v5; no line number, ease auto-test
+ "%k %n in %f: %m!n%r%s%t!n%u!n"
+ # -v6; emacs compilation mode
+ "!"%f!", line %l.%c:(#%n) %m!n"
}
-
-#####################################################################
+## Silent
#
-# These commands should be ignored when detecting whether a command
-# is ended by a space. You can specify regular expressions in the []
-# section in case you have many custom macros that can be safely
+# Commands which should not trigger a warning if terminated by a space.
+# This warning will not trigger in math mode.
+#
+# You can also specify regular expressions in the `[]'
+# section in case you have many custom macros that can be safely
# terminated with a space.
#
-
Silent
{
\rm \em \bf \it \sl \sf \sc \tt \selectfont
- \rmfamily \sffamily \ttfamily \mdseries \bfseries
+ \rmfamily \sffamily \ttfamily \mdseries \bfseries \itshape
\slshape \scshape \relax
\vskip \pagebreak \nopagebreak
@@ -354,8 +332,6 @@ Silent
\centering
- \bigskip \medskip \smallskip
-
\noindent \expandafter
\makeatletter \makeatother
@@ -368,120 +344,123 @@ Silent
\csname \endcsname
- \z@ \p@ \@warning \typeout
+ \z@ \p@ warning \typeout
\dots \ldots \input \endinput \nextline \leavevmode \cdots
- \appendix \listfiles \and \quad
+ \appendix \listfiles \and \quad \bigskip \medskip \smallskip
\hskip \vfill \vfil \hfill \hfil \topmargin \oddsidemargin
\frenchspacing \nonfrenchspacing
\begingroup \endgroup \par
\vrefwarning \upshape \headheight \headsep \hoffset \voffset
- \cdot \qquad
- \left \right
- \qedhere
-
- \xspace
+ \cdot \qquad \left \right \qedhere \xspace
\addlinespace \cr \fill \frontmatter
\toprule \midrule \bottomrule
-
}[
-# Here you can put regular expressions to match Silent macros. It was
-# designed for the case where you have many custom macros sharing a
-# common prefix, but can of course be used for other things.
-
-# Support ConTeXt to at least some extent
-\\start.* \\stop.*
+ # Here you can put regular expressions to match Silent macros. It
+ # was designed for use with many custom macros sharing a common
+ # prefix, but can of course be used for other things.
+ # Support ConTeXt to at least some extent
+ \\start.* \\stop.*
]
-#####################################################################
-#
-# Here, you can specify the length of various dashes. We sort the
-# dash according to which type of characters that are on the left and
-# right of it. We are only conclusive if they are the same.
-#
-# We associate as follows:
-#
-# Name Type of character on each side
-# HyphDash Alphabetic (foo-bar)
-# NumDash Numeric (2--3)
-# WordDash Space (like this --- see?)
+
+## HyphDash
#
-# Below you specify how many dashes which are legal in each case. We
-# define 0 as a magic constant which always generates an error. You
-# may specify more than one legal dash-length.
+# The number of dashes allowed between two alphabetic characters.
+# Use 0 to always return an error. For example:
+# foo-bar
+# Use of two--dashes is not usually allowed in English.
+# like this---see?
#
-# Let's look at an example. You use the following dash-syntax:
+# For English, this will often be a single dash (hyphen). If you like
+# m-dashes with no spaces between them and the surrounding words, then
+# it should include 3 as well. There *are* cases when an n-dash
+# is valid between two alphabetic characters. See DashExcpt.
#
-# foo-bar
-# 2--3
-# like this---see?
+HyphDash { 1 3 }
+
+
+## NumDash
#
+# The number of dashes allowed between two numeric characters.
+# Use 0 to always return an error. This does *not* apply in
+# math mode. For example:
+# 123--456 is a range
+# $12-4$ \% okay because it's in math mode
#
-# HYPHDASH { 1 3 } # Either a hyphen, or inter-word
-# NUMDASH { 2 } # Between words
-# WORDDASH { 0 } # We never use this
+# For English, this should be 2 because an n-dash is used to indicate
+# a range of numbers and subtraction should be in math mode where this
+# does not apply.
#
+NumDash { 2 }
-HyphDash
-{
- 1 3
-}
-NumDash
-{
- 2
-}
+## WordDash
+#
+# The number of dashes allowed between two space characters.
+# Use 0 to always return an error. For example:
+# not like - this,
+# or like -- this.
+# like this --- see?
+#
+WordDash { 3 }
-WordDash
-{
- 3
-}
-#####################################################################
+## DashExcpt
#
-# Here are exceptions to the dash rules above. For example, an
-# n-dash -- between words is usually wrong, but in some cases it is
-# correct, such as when naming a theorem. The Birch--Swinnerton-Dyer
+# Exceptions to the dash rules above. For example, an n-dash
+# `--' between words is usually wrong, but in some cases it is correct,
+# such as when naming a theorem. The Birch--Swinnerton-Dyer
# conjecture is one example where the difference matters. You can
-# tell that Birch is one person and Swinnerton-Dyer is another.
+# tell that Birch is one person and Swinnerton-Dyer is another based
+# on the dashes used.
#
# Adding line suppressions for these is possible, but can quickly
# become tedious if a certain theorem is referenced often. For this
# reason exceptions can be specified here. They are case-sensitive.
#
-
+# Unfortunately, there are no warnings if the dashes are surrounded by differing
+# types of characters. For example:
+# like this ---see? (space and alphabet)
+# a--123 (number and alphabet)
+# a.--b. (other character, namely `.')
+# Similarly, no warnings are issued if the hyphenation is correct,
+# according to the other rules, for example:
+# Birch-Swinnerton-Dyer
+#
DashExcpt
{
Birch--Swinnerton-Dyer
}
-#####################################################################
+
+## WipeArg
#
-# This keyword indicates commands whose argument isn't LaTeX code,
-# and thus should be ignored.
+# Commands whose arguments aren't LaTeX code, and thus should be
+# ignored.
#
-# After the command, you may place arguments that you wish that
-# should be wiped in the process; use [] for optional arguments, {}
-# for required ones and * if the command supports an alternative
-# variant. These should be separated from the command with a colon.
-# Some commands (e.g. \cmidrule) use () to delimit and optional
-# argument and so this syntax is supported as well.
+# After the command, you may place arguments (separated from the
+# command with a colon) that should be wiped. Use `[]' for optional
+# arguments, `{}' for required ones, and `*' if the command supports a
+# star variant. Some commands (e.g. `\cmidrule') use `()' to
+# delimit an optional argument and so this syntax is supported as well.
#
-# For instance, if you would like to wipe the \newcommand command,
-# you would declare it as \newcommand:*[][]{}
+# For instance, if you would like to wipe the `\newcommand' command,
+# you would declare it as `\newcommand:*[][]{}' since it has a
+# star variant, two optional arguments, and one required argument.
#
-# These commands may be "executed" before they're wiped, so you will
-# typically also wish to list filehandling commands and similar here.
+# These commands may be ``evaluated'' before they're wiped, so you will
+# typically list filehandling commands and similar here.
#
-
WipeArg
{
\label:{} \ref:{} \eqref:{} \vref:{} \pageref:{} \index:[]{}
\cite:[][]{} \nocite:{}
\input:{} \verbatiminput:[]{} \listinginput:[]{}{}
+ \graphicspath:{}
\verbatimtabinput:[]{} \include:{} \includeonly:{}
\bibitem:[]{}
\cline:{} \cmidrule:[](){}
@@ -493,251 +472,262 @@ WipeArg
\citet:*[][]{} \citep:*[][]{} \citealt:*{} \citealp:*[]{} \citeauthor:*{}
\Citet:*[][]{} \Citep:*[][]{} \Citealt:*{} \Citealp:*[]{} \Citeauthor:{}
\citetext:{} \citeyear:*{} \citeyearpar:{}
+ # biblatex - not including special commands
+ \autocite:*[][]{} \autocites:*[][]{} \Autocite:*[][]{} \Autocites:*[][]{}
+ \parencite:*[][]{} \parencites:*[][]{} \Parencite:*[][]{} \Parencites:*[][]{}
+ \footcite:*{} \footcites:*[][]{} \Footcite:*[][]{} \Footcites:*[][]{}
+ \textcite:*{} \textcites:*[][]{} \Textcite:*[][]{} \Textcites:*[][]{}
+ \citeauthor:*{} \citeauthors:*[][]{} \Citeauthor:*[][]{} \Citeauthors:*[][]{}
+ \citeyear:*{} \citeyears:*[][]{} \Citeyear:*[][]{} \Citeyears:*[][]{}
+ \citetitle:*{} \citetitles:*[][]{} \Citetitle:*[][]{} \Citetitles:*[][]{}
# tipa which uses "
\textipa:{}
+ # LuaTeX
+ \directlua:{} \luaescapestring:{}
}
-#####################################################################
+
+## MathEnvir
#
-# These environments contain material which will be typeset as
-# mathematics by LaTeX. This turns on/off some warnings.
+# Environments which typeset their contents as mathematics.
+# This turns on/off some warnings.
#
-# We will automagically append a * to each keyword.
+# A `*' variant is automatically added for each keyword.
#
-
MathEnvir
{
displaymath math eqnarray array equation
align alignat gather flalign multline
+ dmath dgroup darray
}
-#####################################################################
+
+## TextEnvir
#
-# These commands contain material which will be typeset as mathematics
-# by LaTeX. The commands are assumed to have one mandatory argument
-# which is in math mode. This turns on/off some warnings.
+# Environments which typeset their contents as text, for use inside
+# mathematics. This turns on/off some warnings.
#
+TextEnvir
+{
+ dsuspend
+}
+
+## MathCmd
+#
+# Commands whose argument will be typeset as mathematics.
+# The commands are assumed to have one mandatory argument which is in
+# math mode. This turns on/off some warnings.
+#
MathCmd
{
\ensuremath
}
-#####################################################################
+
+## TextCmd
#
-# These commands contain material which will _not_ be typeset as
-# mathematics by LaTeX even if it would otherwise be in mathmode. The
-# commands are assumed to have one mandatory argument which is in text
-# mode. This turns on/off some warnings.
+# Commands whose argument will *not* be typeset as
+# mathematics even if it would otherwise be in math mode.
+# The commands are assumed to have one mandatory argument which is in
+# text mode. This turns on/off some warnings.
#
-
TextCmd
{
- \text \intertext \shortintertext \mbox
+ \text \intertext \shortintertext \mbox \condition
}
-#####################################################################
+
+## VerbEnvir
#
-# These environments contains material which contents should be
-# ignored.
+# Environments containing non-LaTeX content of some kind, and
+# therefore should not trigger any warnings.
#
-# We will automagically append a * to each keyword.
+# A `*' variant is automatically added for each keyword.
#
-
VerbEnvir
{
verbatim comment listing verbatimtab rawhtml errexam picture texdraw
filecontents pgfpicture tikzpicture minted lstlisting IPA
}
-#####################################################################
-#
-# ChkTeX does automagically catch most abbreviations; the ones we
-# need to list here, are those which are most likely to be followed
-# by a word with an upper-case letter (that is not the beginning of a
-# new sentence).
-#
-# The case-insensitive abbreviations are not really case-insensitive,
-# it seems to be more practical to only let the first character be
-# case-insensitive, while the remaining are case-sensitive.
-#
-# To speed up the searching process somewhat, we require that these
-# end in a `.', this should not be a problem.
-#
-# Much of this work (both the abbreviations below, and the regexps
-# necessary to catch the remaining automatically) have been provided
-# by Russ Bubley, <russ@scs.leeds.ac.uk>.
-#
-
-Abbrev
-{
-# Ordinals
-1st. 2nd. 3rd. 4th.
-# Titles
-Mr. Mrs. Miss. Ms. Dr. Prof. St.
+## Abbrev
#
-# Days
-# Mon. Tue. Wed. Thu. Fri. Sat. Sun.
+# Abbreviations not automatically handled by ChkTeX.
#
-# Months
-# Jan. Feb. Mar. Apr. May. Jun. Jul. Aug. Sep. Oct. Nov. Dec.
+# ChkTeX automagically catches most abbreviations; the ones we need to
+# list here, are those which are most likely to be followed by a word
+# with an upper-case letter which is not the beginning of a new
+# sentence.
#
-# Letters
-# Kt. Jr.
+# The case-insensitive abbreviations are not fully case-insensitive.
+# Rather, only the first character is case-insensitive, while the
+# remaining characters are case-sensitive.
#
-# Corporate
-# Co. Ltd.
+# To speed up the searching process somewhat, we require that these
+# end in a `.' which should not be a problem in practice.
#
-# Addresses
-# Rd. Dr. St. Ave. Cres. Gdns. Sq. Circ. Terr. Pl. Arc. La. Clo. Ho. Est. Gn.
+# Much of this work (both the abbreviations below, and the regular
+# expressions necessary to catch the remaining automatically) have
+# been provided by Russ Bubley, <russ@scs.leeds.ac.uk>.
#
-# Misc.
-# oe. pbab. ps. rsvp. Tx.
+Abbrev
+{
+ # Ordinals
+ 1st. 2nd. 3rd. 4th.
+ # Titles
+ Mr. Mrs. Miss. Ms. Dr. Prof. St.
+ #
+ # Days
+ # Mon. Tue. Wed. Thu. Fri. Sat. Sun.
+ #
+ # Months
+ # Jan. Feb. Mar. Apr. May. Jun. Jul. Aug. Sep. Oct. Nov. Dec.
+ #
+ # Letters
+ # Kt. Jr.
+ #
+ # Corporate
+ # Co. Ltd.
+ #
+ # Addresses
+ # Rd. Dr. St. Ave. Cres. Gdns. Sq. Circ. Terr. Pl. Arc. La. Clo. Ho. Est. Gn.
+ #
+ # Misc.
+ # oe. pbab. ps. rsvp. Tx.
}
[
-###
-#
-# The first letter is case-insensitive in the abbrevs in this
-# list. Due to the nature of the checking algorithm used for
-# this, entries consisting of only one character will be
-# silently ignored.
-#
-##
-
-# Latin
-# cf. "et al." etc. qed. qv. viz.
-#
-# Corporate
-# inc. plc.
-#
-# Misc
-# fax. pcs. qty. tel. misc.
+ # The first letter is case-insensitive in the abbrevs in this
+ # list. Due to the nature of the checking algorithm used for
+ # this, entries consisting of only one character will be
+ # silently ignored.
+ #
+ # Latin
+ # cf. "et al." etc. qed. qv. viz.
+ #
+ # Corporate
+ # inc. plc.
+ #
+ # Misc
+ # fax. pcs. qty. tel. misc.
]
-#####################################################################
+
+## IJAccent
#
-# Commands which accent characters, meaning that \i or \j (\imath and
-# \jmath in mathmode) should be used instead of `i' and `j'
+# Commands which add accents above characters. This means that `\i' or `\j'
+# (`\imath' and `\jmath' in mathmode) should be used instead of `i' and `j'.
+#
+# Other accent commands such as `\c', `\d', and `\b', put their accent under
+# the character, and thus should be used with normal `i's and `j's.
#
-
IJAccent
{
\hat \check \breve \acute \grave \tilde \bar \vec \dot \ddot
-
\' \` \^ \" \~ \= \. \u \v \H \t
-
-###
-#
-# The remaining accent commands (\c,\d,\b) put their accent _under_
-# the character, not above, and should thus be used with normal i's
-# and j's.
-#
-###
-
}
-#####################################################################
+
+## Italic
#
-# Commands which, when the group is terminated, needs italic
-# correction.
+# Commands which need italic correction when the group is terminated.
#
-
Italic
{
- \it \em \sl
- \itshape \slshape
+ \it \em \sl \itshape \slshape
}
-#####################################################################
+
+## NonItalic
#
# Commands which makes the font non-italic.
#
-
NonItalic
{
\bf \rm \sf \tt \sc
\upshape
}
-#####################################################################
+
+## ItalCmd
#
-# Commands which put their argument into italic (and thus possibly
+# Commands which put their argument into italic (and thus possibly
# needs italic correction in the end).
#
-# This is currently empty, since \textit, \textsl and \emph do that
-# automatically.
+# This is currently empty, since `\textit', `\textsl', and `\emph'
+# automatically add italic corecction.
#
-
ItalCmd
{
}
-#####################################################################
+
+## PostLink
#
-# These commands all have in common that a pagebreak right in front
-# of them is highly undesirable; thus there should be no space in
-# front of them.
+# Commands in front of which a page break is highly undesirable.
+# Thus there should be no space in front of them.
#
-
PostLink
{
\index \label
}
-#####################################################################
+
+## NotPreSpaced
#
-# These commands should not have a space in front of them for various
-# reasons. I.e. much the same as POSTLINK, but produces another
-# warning.
+# Commands that should not have a space in front of them for various
+# reasons. Much the same as PostLink, but produces a different warning.
#
-
NotPreSpaced
{
\footnote \footnotemark \/
}
-#####################################################################
+
+## Linker
#
-# The commands listed here, should be prepended with a `~', as in
-# "look in table~\ref{foo}", to avoid the references being split
-# across lines.
+# Commands that should be prepended with a `~'. For example
+# `look in table~\ref{foo}'
+# to avoid the references being split across lines.
#
-
Linker
{
\ref \vref \pageref \eqref \cite
}
-#####################################################################
+
+## CenterDots
#
-# Commands/characters which should have \cdots in between, e.g.
-# $1+2+3+\cdots+n$.
+# Commands or characters which should have `\cdots' in between.
+# For example, $1+2+3+\cdots+n$.
#
-
CenterDots
{
= + - \cdot \div & \times \geq \leq < >
}
-#####################################################################
+
+## LowDots
#
-# Commands/characters which should have \ldots in between, e.g.
-# $1,2,3,\ldots,n$.
+# Commands or characters which should have `\ldots' in between.
+# For example, $1,2,3,\ldots,n$.
#
-
LowDots
{
. , ;
}
-#####################################################################
+
+## MathRoman
#
-# In maths mode, there are certain aliases for mathematical operators
-# like sin, cos, etc. Ignore the leading backslash in the commands,
-# and so forth. You should list these below.
+# Words that should appear in roman (upright) in math mode. There are
+# certain aliases for mathematical operators (like sin or cos) that
+# appear in roman rather than the usual italic (slanted) font.
+#
+# These entries do not need a leading slash since the mistake is often
+# to *not* include the leading slash.
#
-
MathRoman
{
log lg ln lim limsup liminf sin arcsin sinh cos arccos cosh tan
@@ -745,15 +735,13 @@ MathRoman
exp Pr gcd deg bmod pmod mod
}
-#####################################################################
-#
-# These TeX commands have become unnecessary, as there are LaTeX
-# commands that does the same. Purists should thus avoid these in
-# their code.
+
+## Primitives
#
-# (These are a spell-corrected version of those lacheck uses).
+# Commands that are used in TeX but have become unnecessary in
+# LaTeX, as there are LaTeX commands which do the same. Purists
+# should thus avoid these in their code.
#
-
Primitives
{
\above \advance \catcode \chardef \closein \closeout \copy \count
@@ -761,42 +749,46 @@ Primitives
\expandafter \font \hskip \vskip \openout
}
-#####################################################################
+
+## NoCharNext
#
-# Format: \command:characters
+# Commands and a set of characters that should *not* follow them. For
+# example, in math mode, `\left' should be followed by a delimiter
+# which is to change size. Therefore, it should not be followed by the
+# end of math mode `$' or a grouping character `{' or `}'.
#
-# We'll emit a warning if any of characters are found after the
-# command.
+# The format is `\command:characters'.
#
-
NoCharNext
{
\left:{}$ \right:{}$
}
-#####################################################################
+
+## VerbClear
+#
+# The character to replace verbatim text with.
#
-# We're killing \verb@...@ commands and the arguments of the commands
-# listed above in WipeArg by overwriting them with a string or a
-# single character.
+# The arguments of commands listed in WipeArg, as well as
+# `\verb+...+' commands, are replaced with an innocuous character
+# to prevent that data from inadvertantly producing a warning.
#
-# This should not contain an alphabetic character (in case the user
-# writes (\foo\verb@bar@), neither should it contain be one of
-# LaTeX's reserved characters (`#$%&~_^\{}'), or any parenthesis
-# character ('()[]{}'). If possible, don't use a punctuation
-# character, either, or any spacing character.
+# This should not contain an alphabetic character (in case the user
+# writes (`\foo\verb+bar+'), neither should it contain be one of
+# LaTeX's reserved characters (`#$%&~_^\{}'), or any parenthesis
+# character (`()[]{}'). If possible, don't use a punctuation
+# character or any spacing characters either. All of these characters
+# have warnings associated with them and thus could cause spurious
+# warnings to appear.
#
# The asterisk is also unsuitable, as some commands behave in another
-# way if they are appended with an asterisk. Which more or less
+# way if they are appended with an asterisk. Which more or less
# leaves us with the pipe.
#
-# Please note that this may also be a _string_, which will be
+# Please note that this may also be a `string', which will be
# repeated until the proper length is reached.
#
-
VerbClear = "|"
-#
-# All for now - have fun.
-#
-#####################################################################
+
+## That's all for now - Happy LaTeXing!
diff --git a/Master/texmf-dist/scripts/tex4ht/ht.sh b/Master/texmf-dist/scripts/tex4ht/ht.sh
index 74d1bdb6979..0498e529af7 100755
--- a/Master/texmf-dist/scripts/tex4ht/ht.sh
+++ b/Master/texmf-dist/scripts/tex4ht/ht.sh
@@ -1,34 +1,5 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# ht (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-$1 $2
+ $1 $2
$1 $2
$1 $2
tex4ht $2
diff --git a/Master/texmf-dist/scripts/tex4ht/htlatex.sh b/Master/texmf-dist/scripts/tex4ht/htlatex.sh
index 85b92153f75..1b8b7cea74a 100755
--- a/Master/texmf-dist/scripts/tex4ht/htlatex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/htlatex.sh
@@ -1,34 +1,4 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# htlatex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
diff --git a/Master/texmf-dist/scripts/tex4ht/htmex.sh b/Master/texmf-dist/scripts/tex4ht/htmex.sh
index 5fff73e18f9..b4aa3d9a06e 100755
--- a/Master/texmf-dist/scripts/tex4ht/htmex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/htmex.sh
@@ -1,34 +1,5 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# htmex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-mex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
+ mex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
mex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
mex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
tex4ht -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
diff --git a/Master/texmf-dist/scripts/tex4ht/httex.sh b/Master/texmf-dist/scripts/tex4ht/httex.sh
index 39748708960..44920e72077 100755
--- a/Master/texmf-dist/scripts/tex4ht/httex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/httex.sh
@@ -1,36 +1,7 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# httex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
- etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
- etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
tex4ht -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
t4ht -f/$1 $4 ## -d~/WWW/temp/ -m644
diff --git a/Master/texmf-dist/scripts/tex4ht/httexi.sh b/Master/texmf-dist/scripts/tex4ht/httexi.sh
index 9e98d436dda..0ce3cb4a589 100755
--- a/Master/texmf-dist/scripts/tex4ht/httexi.sh
+++ b/Master/texmf-dist/scripts/tex4ht/httexi.sh
@@ -1,36 +1,7 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# httexi (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
- etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
- etex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
+ tex $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\let\svrm=\rm\def\rm{\svrm\ifx\c\comment\def\rm{\let\rm=\svrm\catcode`\@=12\catcode`\\=0 \csname tex4ht\endcsname\catcode`\@=0\catcode`\\=13 }\expandafter\rm\fi}\HCode '$2'.a.b.c.\input ' $1
tex4ht -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
t4ht -f/$1 $4 ## -d~/WWW/temp/ -m644
# texindex ?
diff --git a/Master/texmf-dist/scripts/tex4ht/htxelatex.sh b/Master/texmf-dist/scripts/tex4ht/htxelatex.sh
index 22d29388d95..5d0a57d9e67 100755
--- a/Master/texmf-dist/scripts/tex4ht/htxelatex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/htxelatex.sh
@@ -1,34 +1,5 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# htxelatex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-xelatex -no-pdf $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
+ xelatex -no-pdf $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
xelatex -no-pdf $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
xelatex -no-pdf $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
tex4ht -.xdv -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
diff --git a/Master/texmf-dist/scripts/tex4ht/htxetex.sh b/Master/texmf-dist/scripts/tex4ht/htxetex.sh
index 09aaf2c729a..3386f1e0be4 100755
--- a/Master/texmf-dist/scripts/tex4ht/htxetex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/htxetex.sh
@@ -1,34 +1,5 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# htxetex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-xetex -no-pdf $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
+ xetex -no-pdf $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
xetex -no-pdf $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
xetex -no-pdf $5 '\def\Link#1.a.b.c.{\expandafter\def\csname tex4ht\endcsname{\expandafter\def\csname tex4ht\endcsname{#1,html}\input tex4ht.sty }}\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\HCode '$2'.a.b.c.\input ' $1
tex4ht -.xdv -f/$1 -i~/tex4ht.dir/texmf/tex4ht/ht-fonts/$3
diff --git a/Master/texmf-dist/scripts/tex4ht/xhlatex.sh b/Master/texmf-dist/scripts/tex4ht/xhlatex.sh
index 34aae5524d0..2889e48571f 100755
--- a/Master/texmf-dist/scripts/tex4ht/xhlatex.sh
+++ b/Master/texmf-dist/scripts/tex4ht/xhlatex.sh
@@ -1,34 +1,4 @@
#!/bin/sh
-# stop at first error
-set -e
-
-# No interaction on the TeX runs is desirable.
-# Simpler to do that here than on the individual commands;
-# let's hope exec redirections are portable enough.
-exec </dev/null
-
-
-# xhlatex (2020-11-23-10:05), generated from tex4ht-mkht.tex
-# Copyright 2009-2020 TeX Users Group
-# Copyright 2003-2009 Eitan M. Gurari
-#
-# This work 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. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions
-# of LaTeX version 2003/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# The Current Maintainer of this work
-# is the TeX4ht Project <https://tug.org/tex4ht>.
-#
-# If you modify this file, changing the
-# version identification be appreciated.
-
-
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,xhtml]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,xhtml}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,xhtml]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,xhtml}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
latex $5 '\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,xhtml]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,xhtml}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode '$2'.a.b.c.\input ' $1
diff --git a/Master/texmf-dist/web2c/texmf.cnf b/Master/texmf-dist/web2c/texmf.cnf
index 0005eacdd47..83faca77dae 100644
--- a/Master/texmf-dist/web2c/texmf.cnf
+++ b/Master/texmf-dist/web2c/texmf.cnf
@@ -4,8 +4,8 @@
% If you modify this original file, YOUR CHANGES WILL BE LOST when it is
% updated. Instead, put your changes -- and only your changes, not an
% entire copy! -- in ../../texmf.cnf. That is, if this file is
-% installed in /some/path/to/texlive/2023/texmf-dist/web2c/texmf.cnf,
-% put your custom settings in /some/path/to/texlive/2023/texmf.cnf.
+% installed in /some/path/to/texlive/2024/texmf-dist/web2c/texmf.cnf,
+% put your custom settings in /some/path/to/texlive/2024/texmf.cnf.
% (Below, we use YYYY in place of the specific year.)
%
% What follows is a super-summary of what this .cnf file can
@@ -87,10 +87,10 @@ TEXMFSYSCONFIG = $TEXMFROOT/texmf-config
TEXMFHOME = ~/texmf
% TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data.
-TEXMFVAR = ~/.texlive2023/texmf-var
+TEXMFVAR = ~/.texlive2024/texmf-var
% TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data.
-TEXMFCONFIG = ~/.texlive2023/texmf-config
+TEXMFCONFIG = ~/.texlive2024/texmf-config
% This is the value manipulated by tlmgr's auxtrees subcommand in the
% root texmf.cnf. Kpathsea warns about a literally empty string for a
@@ -690,9 +690,21 @@ TEXMF_RESTRICTED_SCRIPTS = \
openin_any = a
openout_any = p
-% Write .log/.dvi/.aux/etc. files here, if the current directory is unwritable.
+% Write .log/.dvi/.aux/etc. files here, if they can't be written in the
+% current directory.
+%
+% Best to use this only when a particular job requires it, not set
+% globally in a configuration file or the environment. We recommend
+% using it transiently for particular jobs, not making a permanent setting.
%TEXMFOUTPUT = /tmp
+% As of TeX Live 2024, a related environment variable is
+% TEXMF_OUTPUT_DIRECTORY. It overrides the current directory for all
+% output files in TeX and the other engines. It cannot be set in a
+% configuration file. And it's even more important to use it only
+% temporarily, when required, to avoid massive confusion about where the
+% output files are ending up.
+
% If a dynamic file creation fails, log the command to this file, in
% either the current directory or TEXMFOUTPUT. Set to the
% empty string or 0 to avoid logging.
@@ -913,8 +925,8 @@ guess_input_kanji_encoding.mendex = 1
% This variable is used on Windows only, and affects 4 TeX engines:
% uptex, euptex, pdftex, xetex, and 2 drivers: dvips, [x]dvipdfmx.
% Several applications also are affected by the variable:
-% dvi2tty.exe, disdvi.exe, dvibook.exe, dviconcat.exe, dviselect.exe,
-% dvitodvi.exe, and dvidvi.exe.
+% bibtex8.exe, bibtexu.exe, dvi2tty.exe, disdvi.exe, dvibook.exe,
+% dviconcat.exe, dviselect.exe, dvitodvi.exe, and dvidvi.exe.
% Only values utf8 or utf-8 are meaningful. Other values are simply
% ignored. If file names in sources and DVI or XDV files are ASCII
% only, the value of command_line_encoding is irrelevant.
diff --git a/Master/texmf-dist/web2c/texmfcnf.lua b/Master/texmf-dist/web2c/texmfcnf.lua
index dedadd1965a..8937915feca 100644
--- a/Master/texmf-dist/web2c/texmfcnf.lua
+++ b/Master/texmf-dist/web2c/texmfcnf.lua
@@ -1,12 +1,12 @@
-- todo: come up with an auto-texlive identification (texmf-dist)
-local hiddentexlivepath = ".texlive2023"
+local hiddentexlivepath = ".texlive2024"
return {
type = "configuration",
version = "1.1.3",
- date = "2023-03-10", -- 2021-05-12 2011-06-02
+ date = "2024-02-10", -- 2021-05-12 2011-06-02
time = "14:59:00",
comment = "ConTeXt MkIV and LMTX configuration file",
author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
diff --git a/Master/tlpkg/TeXLive/TLConfig.pm b/Master/tlpkg/TeXLive/TLConfig.pm
index 4301c416821..0622adafab5 100644
--- a/Master/tlpkg/TeXLive/TLConfig.pm
+++ b/Master/tlpkg/TeXLive/TLConfig.pm
@@ -1,6 +1,6 @@
# $Id$
# TeXLive::TLConfig.pm - module exporting configuration values
-# Copyright 2007-2023 Norbert Preining
+# Copyright 2007-2024 Norbert Preining
# This file is licensed under the GNU General Public License version 2
# or any later version.
@@ -62,7 +62,7 @@ BEGIN {
# the year of our release, will be used in the location of the
# network packages, and in menu names, and other places.
-our $ReleaseYear = 2023;
+our $ReleaseYear = 2024;
# users can upgrade from this year to the current year; might be the
# same as the release year, or any number of releases earlier.
diff --git a/Master/tlpkg/bin/c2l b/Master/tlpkg/bin/c2l
index 263f35c01ef..5e1136d58f1 100755
--- a/Master/tlpkg/bin/c2l
+++ b/Master/tlpkg/bin/c2l
@@ -68,16 +68,17 @@ sub main {
$arg = "x86_64-linuxmusl";
} elsif ($arg eq "norbert" || $arg eq "nor") {
- for my $p (qw(i386-linux x86_64-linux x86_64-linuxmusl)) {
+ for my $p (qw(amd64-freebsd
+ i386-freebsd i386-linux i386-solaris
+ x86_64-linux x86_64-linuxmusl x86_64-solaris)) {
system ("$0 $p") && die "norbert/$p failed";
}
print "$0: norbert updates done.\n";
exit 0;
} elsif ($arg eq "cg" || $arg eq "moj" || $arg eq "mojca") {
- for my $p (qw(aarch64-linux amd64-freebsd armhf-linux
- i386-freebsd i386-solaris
- x86_64-darwinlegacy x86_64-solaris
+ for my $p (qw(aarch64-linux #armhf-linux
+ x86_64-darwinlegacy
)) {
system ("$0 $p") && die "cg/$p failed";
}
diff --git a/Master/tlpkg/bin/tl-update-bindir b/Master/tlpkg/bin/tl-update-bindir
index b79db37ba56..d03aadf9ed9 100755
--- a/Master/tlpkg/bin/tl-update-bindir
+++ b/Master/tlpkg/bin/tl-update-bindir
@@ -87,6 +87,45 @@ if test ! -d "$Master/bin"; then
exit 1
fi
+cgurl=https://build.contextgarden.net/dl/texlive/ # base url
+#
+# function to return url for the "latest" build on gh;
+# first argument is TL platform name,
+# second (optional) argument is github platform name, if different.
+#
+github_url ()
+{
+ if test -z "$1"; then
+ echo "$0:github_url: expected platform name, goodbye." >&2
+ exit 1
+ fi
+ tlplat=$1
+ ghplat=${2-$tlplat}
+ gh_url=https://api.github.com/repos/TeX-Live/texlive-source/releases/latest
+ remurl=`curl -s $gh_url \
+ | tee /tmp/gh-rel-$tlplat \
+ | grep browser_download_url \
+ | grep texlive-bin-$ghplat.tar.gz \
+ | cut -d : -f 2,3 \
+ | tr -d \"`
+ # get from tag?
+ #remurl=https://github.com/TeX-Live/texlive-source/releases/download/svn53987/texlive-bin-x86_64-linux.tar.gz
+ echo "github_url: for $tlplat, got $remurl" >&2
+ echo "$remurl"
+}
+
+# function to download a url passed as arg, or exit.
+#
+do_download ()
+{
+ if test -z "$1"; then
+ echo "$0:do_download: no url given, goodbye." >&2
+ exit 1
+ fi
+ $grab "$1" || exit $?
+}
+
+#
# loop through tl platform names
for tlplat in $tlplats; do
destdir=$Master/bin/$tlplat
@@ -97,139 +136,96 @@ for tlplat in $tlplats; do
fi
# karl update convenience
- default_bin_loc=
download_loc=$tmpdir/tl.$tlplat.tar.gz
+ default_bin_loc=$download_loc
grab="$download -O $download_loc"
+ #
if test x"$USER" = xkarl; then
case $tlplat in
aarch64-linux)
- default_bin_loc=$download_loc
- #https://faubox.rrze.uni-erlangen.de/open/MjdwNXE5NW5UcTU4RzVIWlRVUVVI/branch2018/texlive_bin_aarch64-linux.tar.xz
- #http://51.158.66.174:8080/texlive_bin_aarch64-linux.tar.xz
- #remurl=https://aekahwai.spdns.org/online/texlive_bin_aarch64-linux.tar.xz
- #remurl=https://taiyahfoboj.net/yeipaiyi/texlive_bin_aarch64-linux.tar.xz
- remurl=http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz
- $grab $remurl;;
- alpha-linux)
- default_bin_loc=/home/preining/alpha-linux.tar.gz;;
+ do_download ${cgurl}/${cgbranch}$tlplat.tar.xz;;
+
amd64-freebsd)
- default_bin_loc=$download_loc
- #https://www.preining.info/amd64-freebsd11.tar.gz
- #http://anthesphoria.net/FreeBSD/TeXLive-Devel/amd64-freebsd7.tar.xz
- remurl=http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz
- $grab $remurl;;
- amd64-kfreebsd)
- download_loc=$tmpdir/tl.$tlplat.tar.xz
- default_bin_loc=$download_loc
- grab="$download -O $download_loc"
- $grab ftp://ftp.cea.fr/incoming/y2k01/braslau/x86_64-unknown-kfreebsd9.0-gnu.tar.xz;;
+ do_download `github_url $tlplat`;;
+
amd64-netbsd)
download_loc=$tmpdir/tl.$tlplat.tar.xz
default_bin_loc=$download_loc
- grab="$download -O $download_loc"
- $grab http://www.babafou.eu.org/texlive-netbsd/x86_64-netbsd.tar.xz;;
- armel-linux)
- default_bin_loc=$download_loc
- $grab http://boris.lk.net/texlive-2013/armv7l-unknown-linux-gnueabi.tgz;;
+ do_download http://www.babafou.eu.org/texlive-netbsd/x86_64-netbsd.tar.xz;;
+
armhf-linux)
- default_bin_loc=$download_loc
remurl=http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz
- $grab $remurl;;
+ do_download $remurl;;
#simon $grab http://getthingsfixed.co.uk/texlive/builds/2022/texlive-armhf.tar.gz
- hppa-hpux)
- default_bin_loc=$download_loc
- $grab http://www.jtartlabs.com/test/hppa2.0-hp-hpux10.20.tar.gz;;
+
i386-cygwin)
- default_bin_loc=$download_loc
- $grab http://sanibeltranquility.com/cygwin/$tlplat.tgz;;
+ do_download http://sanibeltranquility.com/cygwin/$tlplat.tgz;;
+
i386-freebsd)
- download_loc=$tmpdir/tl.$tlplat.tar.xz
- default_bin_loc=$download_loc
- grab="$download -O $download_loc"
- #http://anthesphoria.net/FreeBSD/TeXLive-Devel/i386-freebsd7.tar.xz
- remurl=http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz
- $grab $remurl;;
- i386-kfreebsd)
- download_loc=$tmpdir/tl.$tlplat.tar.xz
- default_bin_loc=$download_loc
- grab="$download -O $download_loc"
- $grab ftp://ftp.cea.fr/incoming/y2k01/braslau/i386-unknown-kfreebsd10.0-gnu.tar.xz;;
+ do_download `github_url $tlplat`;;
+
i386-linux)
- default_bin_loc=$download_loc
- #remurl=http://dl.contextgarden.net/build/texlive/$tlplat.tar.xz
- remurl=`curl -s https://api.github.com/repos/TeX-Live/texlive-source/releases/latest | grep browser_download_url | grep texlive-bin-i386-linux.tar.gz | cut -d : -f 2,3 | tr -d \"`
- $grab $remurl;;
- i386-linuxmusl)
- default_bin_loc=$download_loc
- remurl=`curl -s https://api.github.com/repos/TeX-Live/texlive-source/releases/latest | grep browser_download_url | grep texlive-bin-i386-musl.tar.gz | cut -d : -f 2,3 | tr -d \"`
- $grab $remurl;;
+ do_download `github_url $tlplat`;;
+
i386-netbsd)
download_loc=$tmpdir/tl.$tlplat.tar.xz
default_bin_loc=$download_loc
grab="$download -O $download_loc"
$grab http://www.babafou.eu.org/texlive-netbsd/i386-netbsd.tar.xz;;
+
i386-openbsd)
default_bin_loc=$download_loc
$grab http://students.dec.bmth.ac.uk/ebarrett/files/tl-bin-20080810.tgz;;
+
i386-solaris)
- default_bin_loc=$download_loc
- $grab http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz;;
- mips-irix)
- download_loc=$tmpdir/tl.$tlplat.tar.xz
- default_bin_loc=$download_loc
- grab="$download -O $download_loc"
- $grab http://www.solid.ethz.ch/download/texlive/texlive-mips-irix.tar.xz;;
- mipsel-linux)
- echo "see mojca" >&2; exit 1;;
- powerpc-linux)
- default_bin_loc=/home/tschmitz/powerpc-linux.tar.xz;;
+ do_download `github_url $tlplat`;;
+
sparc-solaris)
- default_bin_loc=$download_loc
- $grab http://dl.contextgarden.net/build/texlive/$tlplat.tar.xz;;
+ do_download http://dl.contextgarden.net/build/texlive/$tlplat.tar.xz;;
+
universal-darwin)
- default_bin_loc=/home/koch/$tlplat.tar.xz
- ;;
+ default_bin_loc=/home/koch/$tlplat.tar.xz;;
+
windows)
;; # updated by Akira.
+
x86_64-cygwin)
- default_bin_loc=$download_loc
$grab http://sanibeltranquility.com/cygwin/$tlplat.tgz;;
+
x86_64-darwinlegacy)
- default_bin_loc=$download_loc
- $grab http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz;;
+ do_download ${cgurl}/${cgbranch}$tlplat.tar.xz;;
+
x86_64-linux)
- default_bin_loc=$download_loc
- #remurl=http://dl.contextgarden.net/build/texlive/$tlplat.tar.xz
# Visit https://github.com/TeX-Live/texlive-source/commits
# to check for commits.
# Then https://github.com/TeX-Live/texlive-source/releases
- # "Draft a new release";
- # use "svnNNNNN" in "Tag version" field,
+ # "Draft a new release".
+ # "Choose a tag -> "find or create a new tag" -> "svnNNNNN"
# "Target:trunk" should already be there,
# "rNNNNN and perhaps brief msg from commits in "title",
# and anything relevant for "description", or leave it blank;
# then "Publish release" (not as pre-release, can't be accessed).
- # After ~30min max, should have new release tarballs at:
+ #
+ # Can check status at:
+ # https://github.com/TeX-Live/texlive-source/actions
+ #
+ # After ~40min, should have new release tarballs at:
# https://github.com/TeX-Live/texlive-source/releases
- # (this is a different page than where you're put after creating
- # the release)
- # If failure, check:
- # https://www.travis-ci.org/TeX-Live/texlive-source
+ # (this is a different page than where you're put after creating
+ # the release)
+ # Some arches will be done sooner than others (arm and aarch are slow),
+ # but can't download anything until all are done.
#
# If try before ready, no harm, just get error message "missing url".
# (If you have/want a git checkout of texlive-source, see tlbuild doc.)
#
- remurl=`curl -s https://api.github.com/repos/TeX-Live/texlive-source/releases/latest | grep browser_download_url | grep texlive-bin-x86_64-linux.tar.gz | cut -d : -f 2,3 | tr -d \"`
- #remurl=https://github.com/TeX-Live/texlive-source/releases/download/svn53987/texlive-bin-x86_64-linux.tar.gz
- $grab $remurl;;
+ do_download `github_url $tlplat`;;
+
x86_64-linuxmusl)
- default_bin_loc=$download_loc
- remurl=`curl -s https://api.github.com/repos/TeX-Live/texlive-source/releases/latest | grep browser_download_url | grep texlive-bin-x86_64-linuxmusl.tar.gz | cut -d : -f 2,3 | tr -d \"`
- #remurl=http://dl.contextgarden.net/build/texlive/$tlplat.tar.xz
- $grab $remurl;;
+ do_download `github_url $tlplat`;;
+
x86_64-solaris)
- default_bin_loc=$download_loc
- $grab http://dl.contextgarden.net/build/texlive/${cgbranch}$tlplat.tar.xz;;
+ do_download `github_url $tlplat amd64-solaris`;;
esac
fi # end $USER=karl
@@ -267,6 +263,11 @@ for tlplat in $tlplats; do
# ditto, biber.
find "$srcdir" -name biber\* | xargs rm -f
+
+ # temp cleanup for first pretest24
+ find "$srcdir" -name htcontext\* | xargs rm -f
+ find "$srcdir" -name memoize-clean | xargs rm -f
+ find "$srcdir" -name memoize-extract | xargs rm -f
# may need to cd into a subdirectory, depending on how the tar was made.
while test `ls $srcdir | wc -l` -eq 1; do
diff --git a/Master/tlpkg/bin/tl-update-images b/Master/tlpkg/bin/tl-update-images
index 5d6a8f1077f..c30068d5147 100755
--- a/Master/tlpkg/bin/tl-update-images
+++ b/Master/tlpkg/bin/tl-update-images
@@ -2,7 +2,7 @@
# $Id$
# Create the .iso image(s) for TeX Live.
#
-# Copyright 2007-2023 Karl Berry.
+# Copyright 2007-2024 Karl Berry.
# Copyright 2003, 2004, 2005 Sebastian Rahtz.
#
# This file is licensed under the GNU General Public License version 2
@@ -18,12 +18,13 @@ unset CDPATH # avoid output from cd
umask 022
NAME=texlive
-V=2023
+V=2024
D=`date +%Y%m%d`
target=/home/ftp/texlive/Images/test
XZ_OPT=-6e; export XZ_OPT # compression level, -9 for slowest-but-most,
# which is not worth the (excessive) time.
+ # The -e is also for better compression.
mydir=`cd \`dirname $0\` && /bin/pwd`
cd $mydir || exit 1 # the Master/tlpkg/bin directory
diff --git a/Master/tlpkg/bin/tl-update-messages b/Master/tlpkg/bin/tl-update-messages
index dc58f25acf1..5db86276049 100755
--- a/Master/tlpkg/bin/tl-update-messages
+++ b/Master/tlpkg/bin/tl-update-messages
@@ -23,7 +23,7 @@ cat install-tl >>$tmpfile
xgettext -o tlpkg/translations/messages.pot \
--copyright-holder="TeX Live Team" \
--msgid-bugs-address=tex-live@tug.org \
- --package-version=2023 \
+ --package-version=2024 \
--package-name="TeX Live" \
-k__ -k\$__ -k%__ -k__x -k__n:1,2 -k__nx:1,2 -k__xn:1,2 -kN__ -k \
texmf-dist/scripts/texlive/tlmgrgui.pl \
diff --git a/Master/tlpkg/bin/tl-update-tlnet b/Master/tlpkg/bin/tl-update-tlnet
index 2910416ec75..6aa7d9f6830 100755
--- a/Master/tlpkg/bin/tl-update-tlnet
+++ b/Master/tlpkg/bin/tl-update-tlnet
@@ -1,5 +1,5 @@
#!/bin/sh -e
-# Copyright 2008-2023 Norbert Preining
+# Copyright 2008-2024 Norbert Preining
# This file is licensed under the GNU General Public License version 2
# or any later version.
#
@@ -13,7 +13,7 @@ renice 20 $$ >/dev/null 2>&1
unset CDPATH
unset LS_COLORS
-yyyy=2023
+yyyy=2024
adjust_repo=1
check_consistency=true
diff --git a/Master/tlpkg/doc/releng.txt b/Master/tlpkg/doc/releng.txt
index 220ae1996c0..9b186922d79 100644
--- a/Master/tlpkg/doc/releng.txt
+++ b/Master/tlpkg/doc/releng.txt
@@ -69,28 +69,31 @@ affecting production dirs, see:
it's important, because this summary of changes is what users want to know.
- if new kpathsea file types (kpsewhich --help-formats), update kpathsea.texi.
- see also doc item below for more necessary updates after pretest starts.
-
+
6. During the pretest, we want to keep updating tlnet. But we cannot do
that from the trunk, since the trunk will have the new binaries and
-other changes. Therefore, we set up a branch for release YYYY where we
-will continue to commit normal package updates and update tlnet, while
-the trunk is updating tlpretest for YYYY+1.
+other changes. Therefore, we set up a branch named YYYY.final (YYYY =
+the last TL release) where we will continue to commit normal package
+updates and update tlnet, while the trunk is updating tlpretest for
+YYYY+1 (= the current calendar year).
The branch must be created right before the first pretest-specific
commit (which is the next item, in Part II). Ensure *.pm are updated in
Build/source first.
cd /home/texlive/branch
- rm -rf * .[^.]* # empty completely; be sure .svn et al. are gone
- rev=65870 # for 2023 (svn info in trunk)
+ rm -rf * .[^.]*; ls -a # empty completely; be sure .svn et al. are gone
+ # get revision for end of tl24/start of tl24; make sure it's sensible:
+ rev=`svn info /home/texlive/trunk | \grep '^Revision:'`; echo $rev
tlyear=`date +%Y -d "last year"`; echo $tlyear # previous release
umask 022 # keep TL files non-group-writable
+ # make the .final
branch=branch$tlyear.final
svn copy -r $rev \
-m"$branch branch based on r$rev" \
svn://tug.org/texlive/trunk svn://tug.org/texlive/branches/$branch
# make working checkout:
- time svn co svn://tug.org/texlive/branches/$branch . >&/tmp/out # ~45min
+ time svn co svn://tug.org/texlive/branches/$branch . >&/tmp/cout # ~60min
Do not create it earlier and merge from trunk, because then all the
packages which got updated in the meantime, and have been updated in
@@ -109,7 +112,8 @@ the repo while we're working.
1. Set up tlpretest:
Update /home/ftp/texlive/tlpretest/README.md.
-Empty tlpretest except for that README and 00_TIME.txt (used for mirmon).
+Empty tlpretest except for that README.md and 00_TIME.txt (used for mirmon),
+and rename TEXLIVE_YYYY_pretest for the new year.
2. Prepare for pretest in cron.tl, with these temporary settings (will
reset below):
@@ -134,31 +138,32 @@ Master/texmf-dist/web2c/texmf.cnf # from Build/.../kpathsea
5. Ensure version numbers in sources are updated; see list above.
Then install new binaries with tl-update-bindir. Ask tlbuild.
Add new executables to appropriate .tlpsrc files (likewise removals).
- (svn status bin/x86_64-linux | grep '^[^M]')
-Add any man pages for the new executables (from Build/source/inst/...)
+ Check with, e.g.: svn status bin/x86_64-linux | grep '^[^M]'
+ (We'll do man pages later with tl-update-man.)
Add new scripts to linked_scripts if not already handled.
Run tl-update-asy --build on tug to make new support files ready.
+ (If there is a new asy, which there probably isn't at this point.)
6. Run tex \\end to check that dynamic mktexfmt works.
Ensure that web2c/texmf.cnf is updated for the current year (per above).
6a. Check that all formats build ok:
fmtutil-user --all >&/tmp/fua
-egrep -i 'ERROR|failed' /tmp/fua
+echo fua status = $?; egrep -i 'ERROR|failed' /tmp/fua
6b. For karl@tug.org: leave new ~karl/.texlive`date +%Y` for bnb.
Also, for ConTeXt:
- mtxrun --generate >&/tmp/mtxgen
- context --luatex --generate >&/tmp/cltxgen
+ mtxrun --generate >&/tmp/mtxgen || echo "mtxrun failed"
+ context --luatex --generate >&/tmp/cltxgen || echo "context luagen failed"
7. Check for Build-maintained updates to config files, new files, etc.
(might have to merge back if Master was mistakenly updated):
diff -ru0 --exclude=man --exclude=info \
- Build/source/inst/texmf-dist Master/texmf-dist
+ Build/source/inst/texmf-dist Master/texmf-dist >/tmp/cnfdif
7b. HiTeX: make install in hitexdir/tex and hitexdir/doc.
-7c. Asymptote: install new runtime files per tl-update-asy.
+7c. Asymptote: install new runtime files per tl-update-asy (if new asy).
8. Now, finally, try a first update of tlpretest:
env force_rebuild=true ~karl/bin/cron.pretest # ~15min
@@ -166,7 +171,7 @@ This will fail because the pretest dir is not yet set up, but
that's ok; the idea is to check the output and ensure all is basically ok.
The complaints about unknown "svn status output line"s are ok.
It's likely that .tlpsrc files will need to be adjusted for new binaries.
-When removing platforms, have to remove from /home/texlive/trunk.
+When removing platforms, also have to remove from /home/texlive/trunk.
8a. svn commit all the above.
diff --git a/Master/tlpkg/tlpsrc/cweb.tlpsrc b/Master/tlpkg/tlpsrc/cweb.tlpsrc
index 54cef6e063a..0360ae525ff 100644
--- a/Master/tlpkg/tlpsrc/cweb.tlpsrc
+++ b/Master/tlpkg/tlpsrc/cweb.tlpsrc
@@ -4,6 +4,7 @@ binpattern f bin/${ARCH}/ctangle
binpattern f bin/${ARCH}/cweave
#
binpattern f bin/${ARCH}/ctwill
+binpattern f bin/${ARCH}/ctwill-proofsort
binpattern f bin/${ARCH}/ctwill-refsort
binpattern f bin/${ARCH}/ctwill-twinx
binpattern f bin/${ARCH}/twill
diff --git a/Master/tlpkg/tlpsrc/ptex.tlpsrc b/Master/tlpkg/tlpsrc/ptex.tlpsrc
index 18984e0fd21..3118cb09622 100644
--- a/Master/tlpkg/tlpsrc/ptex.tlpsrc
+++ b/Master/tlpkg/tlpsrc/ptex.tlpsrc
@@ -20,6 +20,7 @@ binpattern f bin/${ARCH}/pdvitomp
binpattern f bin/${ARCH}/pdvitype
binpattern f bin/${ARCH}/pmpost
binpattern f bin/${ARCH}/ppltotf
+binpattern f bin/${ARCH}/ptekf
binpattern f bin/${ARCH}/ptex
binpattern f bin/${ARCH}/ptftopl
binpattern f bin/${ARCH}/r-pmpost