texlive[60538] Master/texmf-dist: expkv-def (18sep21)
commits+karl at tug.org
commits+karl at tug.org
Sat Sep 18 22:16:30 CEST 2021
Revision: 60538
http://tug.org/svn/texlive?view=revision&revision=60538
Author: karl
Date: 2021-09-18 22:16:30 +0200 (Sat, 18 Sep 2021)
Log Message:
-----------
expkv-def (18sep21)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/expkv-def/README.md
trunk/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf
trunk/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx
trunk/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex
Modified: trunk/Master/texmf-dist/doc/latex/expkv-def/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/expkv-def/README.md 2021-09-18 20:14:56 UTC (rev 60537)
+++ trunk/Master/texmf-dist/doc/latex/expkv-def/README.md 2021-09-18 20:16:30 UTC (rev 60538)
@@ -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
Modified: trunk/Master/texmf-dist/doc/latex/expkv-def/expkv-def.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx 2021-09-18 20:14:56 UTC (rev 60537)
+++ trunk/Master/texmf-dist/source/latex/expkv-def/expkv-def.dtx 2021-09-18 20:16:30 UTC (rev 60538)
@@ -492,6 +492,7 @@
% \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 @@
% 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 @@
% \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 @@
% \begin{macrocode}
\long\def\ekvd at type@initial#1#2#3#4%
{%
- \ekvd at assert@arg
+ \ekvd at assert@not at new
+ \ekvd at assert@not at also
+ \ekvd at assert@not at long
+ \ekvd at assert@not at protected
+ \ekvd at ifnoarg
{%
+ \ekvifdefinedNoVal\ekvd at set{#3}%
+ {\csname\ekv at name\ekvd at set{#3}N\endcsname}%
+ {\ekvd at err@undefined at noval{#3}}%
+ }%
+ {%
\ekvifdefined\ekvd at set{#3}%
{%
- \ekvd at assert@not at new
- \ekvd at assert@not at also
- \ekvd at assert@not at long
- \ekvd at assert@not at protected
#1{#2#4}%
\csname\ekv at name\ekvd at set{#3}\expandafter\endcsname\expandafter
{\ekvd at tmp}%
@@ -2162,6 +2172,14 @@
\ekvd at errm
{Undefined key `\unexpanded{#1}' found while processing `\ekvd at cur'}%
}
+\protected\def\ekvd at err@undefined at noval#1%
+ {%
+ \ekvd at errm
+ {%
+ Undefined noval key `\unexpanded{#1}' found while processing
+ `\ekvd at cur'%
+ }%
+ }
\protected\def\ekvd at err@no at prefix#1%
{\ekvd at errm{prefix `#1' not accepted in `\ekvd at cur'}}
\protected\def\ekvd at err@no at prefix@msg#1#2%
Modified: trunk/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex 2021-09-18 20:14:56 UTC (rev 60537)
+++ trunk/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex 2021-09-18 20:16:30 UTC (rev 60538)
@@ -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 at tmp\endcsname
\expandafter\chardef\csname ekvd at tmp\endcsname=\catcode`\@
\catcode`\@=11
@@ -193,14 +193,19 @@
}
\long\def\ekvd at type@initial#1#2#3#4%
{%
- \ekvd at assert@arg
+ \ekvd at assert@not at new
+ \ekvd at assert@not at also
+ \ekvd at assert@not at long
+ \ekvd at assert@not at protected
+ \ekvd at ifnoarg
{%
+ \ekvifdefinedNoVal\ekvd at set{#3}%
+ {\csname\ekv at name\ekvd at set{#3}N\endcsname}%
+ {\ekvd at err@undefined at noval{#3}}%
+ }%
+ {%
\ekvifdefined\ekvd at set{#3}%
{%
- \ekvd at assert@not at new
- \ekvd at assert@not at also
- \ekvd at assert@not at long
- \ekvd at assert@not at protected
#1{#2#4}%
\csname\ekv at name\ekvd at set{#3}\expandafter\endcsname\expandafter
{\ekvd at tmp}%
@@ -843,6 +848,14 @@
\ekvd at errm
{Undefined key `\unexpanded{#1}' found while processing `\ekvd at cur'}%
}
+\protected\def\ekvd at err@undefined at noval#1%
+ {%
+ \ekvd at errm
+ {%
+ Undefined noval key `\unexpanded{#1}' found while processing
+ `\ekvd at cur'%
+ }%
+ }
\protected\def\ekvd at err@no at prefix#1%
{\ekvd at errm{prefix `#1' not accepted in `\ekvd at cur'}}
\protected\def\ekvd at err@no at prefix@msg#1#2%
More information about the tex-live-commits
mailing list.