summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/latex/expkv-def/README.md2
-rw-r--r--Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdfbin406256 -> 407494 bytes
-rw-r--r--Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx32
-rw-r--r--Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex27
4 files changed, 46 insertions, 15 deletions
diff --git a/Master/texmf-dist/doc/latex/expkv-def/README.md b/Master/texmf-dist/doc/latex/expkv-def/README.md
index 34a6e05db46..da6fb32a6cc 100644
--- a/Master/texmf-dist/doc/latex/expkv-def/README.md
+++ b/Master/texmf-dist/doc/latex/expkv-def/README.md
@@ -1,7 +1,7 @@
-------------------------------------------------------------------------------
# expkv-def -- a key-defining frontend for expkv
-Version 2021-05-24 v0.8a
+Version 2021-09-18 v0.8b
Released under the LaTeX Project Public License v1.3c or later
See http://www.latex-project.org/lppl.txt
diff --git a/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf b/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf
index 8acb39cdb7f..59c3673f096 100644
--- a/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf
+++ b/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx b/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx
index b69c591a008..8aa537402e0 100644
--- a/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx
+++ b/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx
@@ -492,6 +492,7 @@ and the derived files expkv-def.pdf
% \begin{function}{initial,oinitial,finitial,einitial}
% \begin{syntax}
% initial \key\ = \{\val\} \prefixes3333
+% initial \key
% \end{syntax}
% With |initial| you can set an initial \val\ for an already defined argument
% taking \key. It'll just call the key-macro of \key\ and pass it \val. The
@@ -500,6 +501,10 @@ and the derived files expkv-def.pdf
% token in \val\ once. |finitial| will expand \val\ until a non-expandable
% token or a space is found, a space would be
% gobbled.\footnotemark
+%
+% If you don't provide a value (and no equals sign) a |noval| \key\ of the
+% same name is called once (or, if you specified a |default| for a value
+% taking key that would be used).
% \end{function}
% \footnotetext{Again using \cs[no-index]{romannumeral}.}
%
@@ -931,8 +936,8 @@ and the derived files expkv-def.pdf
% \begin{macro}{\ekvdVersion,\ekvdDate}
% We're on our first input, so lets store the version and date in a macro.
% \begin{macrocode}
-\def\ekvdVersion{0.8a}
-\def\ekvdDate{2021-05-24}
+\def\ekvdVersion{0.8b}
+\def\ekvdDate{2021-09-18}
% \end{macrocode}
% \end{macro}
%
@@ -1213,14 +1218,19 @@ and the derived files expkv-def.pdf
% \begin{macrocode}
\long\def\ekvd@type@initial#1#2#3#4%
{%
- \ekvd@assert@arg
+ \ekvd@assert@not@new
+ \ekvd@assert@not@also
+ \ekvd@assert@not@long
+ \ekvd@assert@not@protected
+ \ekvd@ifnoarg
+ {%
+ \ekvifdefinedNoVal\ekvd@set{#3}%
+ {\csname\ekv@name\ekvd@set{#3}N\endcsname}%
+ {\ekvd@err@undefined@noval{#3}}%
+ }%
{%
\ekvifdefined\ekvd@set{#3}%
{%
- \ekvd@assert@not@new
- \ekvd@assert@not@also
- \ekvd@assert@not@long
- \ekvd@assert@not@protected
#1{#2#4}%
\csname\ekv@name\ekvd@set{#3}\expandafter\endcsname\expandafter
{\ekvd@tmp}%
@@ -2162,6 +2172,14 @@ and the derived files expkv-def.pdf
\ekvd@errm
{Undefined key `\unexpanded{#1}' found while processing `\ekvd@cur'}%
}
+\protected\def\ekvd@err@undefined@noval#1%
+ {%
+ \ekvd@errm
+ {%
+ Undefined noval key `\unexpanded{#1}' found while processing
+ `\ekvd@cur'%
+ }%
+ }
\protected\def\ekvd@err@no@prefix#1%
{\ekvd@errm{prefix `#1' not accepted in `\ekvd@cur'}}
\protected\def\ekvd@err@no@prefix@msg#1#2%
diff --git a/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex b/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex
index 9c3af184d8b..5eeeea3ad02 100644
--- a/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex
+++ b/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex
@@ -35,8 +35,8 @@
\else
\expandafter\endinput
\fi
-\def\ekvdVersion{0.8a}
-\def\ekvdDate{2021-05-24}
+\def\ekvdVersion{0.8b}
+\def\ekvdDate{2021-09-18}
\csname ekvd@tmp\endcsname
\expandafter\chardef\csname ekvd@tmp\endcsname=\catcode`\@
\catcode`\@=11
@@ -193,14 +193,19 @@
}
\long\def\ekvd@type@initial#1#2#3#4%
{%
- \ekvd@assert@arg
+ \ekvd@assert@not@new
+ \ekvd@assert@not@also
+ \ekvd@assert@not@long
+ \ekvd@assert@not@protected
+ \ekvd@ifnoarg
+ {%
+ \ekvifdefinedNoVal\ekvd@set{#3}%
+ {\csname\ekv@name\ekvd@set{#3}N\endcsname}%
+ {\ekvd@err@undefined@noval{#3}}%
+ }%
{%
\ekvifdefined\ekvd@set{#3}%
{%
- \ekvd@assert@not@new
- \ekvd@assert@not@also
- \ekvd@assert@not@long
- \ekvd@assert@not@protected
#1{#2#4}%
\csname\ekv@name\ekvd@set{#3}\expandafter\endcsname\expandafter
{\ekvd@tmp}%
@@ -843,6 +848,14 @@
\ekvd@errm
{Undefined key `\unexpanded{#1}' found while processing `\ekvd@cur'}%
}
+\protected\def\ekvd@err@undefined@noval#1%
+ {%
+ \ekvd@errm
+ {%
+ Undefined noval key `\unexpanded{#1}' found while processing
+ `\ekvd@cur'%
+ }%
+ }
\protected\def\ekvd@err@no@prefix#1%
{\ekvd@errm{prefix `#1' not accepted in `\ekvd@cur'}}
\protected\def\ekvd@err@no@prefix@msg#1#2%