summaryrefslogtreecommitdiff
path: root/graphics/pgf/base/tex/pgffor.code.tex
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/pgf/base/tex/pgffor.code.tex')
-rw-r--r--graphics/pgf/base/tex/pgffor.code.tex8
1 files changed, 7 insertions, 1 deletions
diff --git a/graphics/pgf/base/tex/pgffor.code.tex b/graphics/pgf/base/tex/pgffor.code.tex
index cdb77b3137..65b62b8cf9 100644
--- a/graphics/pgf/base/tex/pgffor.code.tex
+++ b/graphics/pgf/base/tex/pgffor.code.tex
@@ -79,10 +79,13 @@
\fi%
}
+\def\pgffor@expand@list@true{\let\pgffor@expand@list\edef}
+\def\pgffor@expand@list@false{\let\pgffor@expand@list\def}
\def\pgffor@macro@list#1{%
\expandafter\pgffor@normal@list\expandafter{#1}}
\def\pgffor@normal@list#1{%
- \def\pgffor@values{#1, \pgffor@stop,}%
+ \pgffor@expand@list\pgffor@values{#1}%
+ \expandafter\def\expandafter\pgffor@values\expandafter{\pgffor@values, \pgffor@stop,}%
\ifx\pgffor@values\pgffor@emptyvalues
\def\pgffor@values{\pgffor@stop,}%
\fi%
@@ -619,6 +622,9 @@
count/.code=\pgffor@count@parse#1\pgffor@stop,
parse/.is if=pgffor@assign@parse,
parse/.default=false,
+ expand list/.is if=pgffor@expand@list@,
+ expand list/.default=true,
+ expand list=false,
}
\def\pgffor@assign@parse#1{%