summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-06-17 21:04:11 +0000
committerKarl Berry <karl@freefriends.org>2018-06-17 21:04:11 +0000
commitfcd631537e8237c8d259af82841ded8d3a8b51b7 (patch)
tree57b6fdf4c2d84388b85c277d95da36aab4bf69bc /Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
parent0d581fc9b60879a785e937cfae5a20d8f1a5f3a5 (diff)
jlreq (17jun18)
git-svn-id: svn://tug.org/texlive/trunk@48039 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty')
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty18
1 files changed, 14 insertions, 4 deletions
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
index 880622c4963..c8204d7e9db 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-helpers.sty
@@ -184,6 +184,7 @@
% 簡易なkeyvalのパース.
% \jlreq@parsekeyval*[family=jlreq@key]{ % *ありは\setkeys*を使う
% {key}{\def\val{#1}}
+% {key1,key2}{\def\val{#1}} % key1=valとkey2=valを受け付けるようになる
% *{key}{\def\val{#1}} % デフォルト値を空文字列にする
% {key}[choice1,choice2]{\def\valchoice{#1}}
%}{parse対象}
@@ -195,7 +196,7 @@
}
\long\def\jlreq@helper@parsekeyval@@#1[#2]#3#4{%
\begingroup
- \def\jlreq@do{}%
+ \def\jlreq@do{}% \setkeysの結果処理がここに入れられる(よってループ内で利用不可)
\jlreq@helper@parsekeyval@@@{#2}#3{\jlreq@endmark}%
\setkeys#1{#2}{#4}%
\expandafter\endgroup
@@ -214,15 +215,24 @@
}%
}
\long\def\jlreq@helper@parsekeyval@@@choicekey#1#2[#3]#4{%
- \define@choicekey{#1}{#2}{#3}{\eappto\jlreq@do{\unexpanded{#4}}}%
+ \@for\@tempa:=#2\do{%
+ \edef\jlreq@next{\unexpanded{\define@choicekey{#1}}{\expandonce{\@tempa}}}%
+ \jlreq@next{#3}{\eappto\jlreq@do{\unexpanded{#4}}}%
+ }%
\jlreq@helper@parsekeyval@@@{#1}%
}
\long\def\jlreq@helper@parsekeyval@@@definekeywithdefault#1#2#3{%
- \define@key{#1}{#2}[]{\eappto\jlreq@do{\unexpanded{#3}}}%
+ \@for\@tempa:=#2\do{%
+ \edef\jlreq@next{\unexpanded{\define@key{#1}}{\expandonce{\@tempa}}}%
+ \jlreq@next[]{\eappto\jlreq@do{\unexpanded{#3}}}%
+ }%
\jlreq@helper@parsekeyval@@@{#1}%
}
\long\def\jlreq@helper@parsekeyval@@@definekey#1#2#3{%
- \define@key{#1}{#2}{\eappto\jlreq@do{\unexpanded{#3}}}%
+ \@for\@tempa:=#2\do{%
+ \edef\jlreq@next{\unexpanded{\define@key{#1}}{\expandonce{\@tempa}}}%
+ \jlreq@next{\eappto\jlreq@do{\unexpanded{#3}}}%
+ }%
\jlreq@helper@parsekeyval@@@{#1}%
}