texlive[56989] Master/texmf-dist: pgf (23nov20)

commits+karl at tug.org commits+karl at tug.org
Mon Nov 23 23:01:18 CET 2020


Revision: 56989
          http://tug.org/svn/texlive?view=revision&revision=56989
Author:   karl
Date:     2020-11-23 23:01:18 +0100 (Mon, 23 Nov 2020)
Log Message:
-----------
pgf (23nov20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/generic/pgf/ChangeLog
    trunk/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex
    trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex
    trunk/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex
    trunk/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
    trunk/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex
    trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def
    trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
    trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex
    trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex
    trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def

Modified: trunk/Master/texmf-dist/doc/generic/pgf/ChangeLog
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/ChangeLog	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/ChangeLog	2020-11-23 22:01:18 UTC (rev 56989)
@@ -1,3 +1,111 @@
+2020-11-21 Henri Menke
+
+    - Release 3.1.7
+
+2020-11-21 Henri Menke
+
+    - CI: Create release from tag
+
+2020-11-21 Henri Menke
+
+    - pgffor: new expand list option
+
+2020-11-06 Henri Menke
+
+    - Fix spurious spaces #946
+
+2020-11-03 Henri Menke
+
+    - Merge pull request #943 from agrahn/offpagefading
+
+2020-10-29 Alexander Grahn
+
+    - hiding smask in the PS viewer
+
+2020-10-24 Henri Menke
+
+    - Merge pull request #940 from Ordoviz/patch-1
+
+2020-10-24 Henri Menke
+
+    - Merge pull request #941 from Skillmon/improve-parser-doc
+
+2020-10-23 Jonathan Spratte
+
+    - macros are 'letters' for pgfparser as well
+
+2020-10-23 Jonathan Spratte
+
+    - fix comment in example code
+
+2020-10-23 Jonathan Spratte
+
+    - minor change to pgfparserletter
+
+2020-10-23 Jonathan Spratte
+
+    - minor change to pgfparserdefunknown
+
+2020-10-23 Jonathan Spratte
+
+    - minor change to pgfparserlet
+
+2020-10-23 Jonathan Spratte
+
+    - more info for pgfparserdef
+
+2020-10-23 Jonathan Spratte
+
+    - typos
+
+2020-10-19 Jonathan Spratte
+
+    - more precise pgfparserreinsert description
+
+2020-10-23 Lennard Hofmann
+
+    - [doc] Fix typo
+
+2020-10-12 Henri Menke
+
+    - Fix trailing else problem in pgfkeys
+
+2020-10-12 Henri Menke
+
+    - Merge branch 'pgfkeys-small-fixing' of https://github.com/muzimuzhi/pgf
+
+2020-10-12 Henri Menke
+
+    - Always place shadings in TLT in LuaTeX #934
+
+2020-10-11 Andras Deak
+
+    - DOC: typo fix in en-tikz-actions
+
+2020-10-11 muzimuzhi
+
+    - pgfkeys: fix spurious spaces in "/errors" keys
+
+2020-10-11 muzimuzhi
+
+    - pgfkeys: in "/.add code", ensure `/. at cmd` is long
+
+2020-10-04 Henri Menke
+
+    - Random shifts to fix output routine shenenigans #928
+
+2020-10-04 Henri Menke
+
+    - Revert "pgfkeys: make `.initial` compatible with `.code`, fix #654"
+
+2020-10-03 muzimuzhi
+
+    - doc: various minor fix
+
+2020-10-03 muzimuzhi
+
+    - doc: minor fix, #930
+
 2020-10-01 Henri Menke
 
     - Release 3.1.6a

Modified: trunk/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -142,7 +142,7 @@
     \item There is also a \emph{visual tip end}, the counterpart of the visual
         back end for the front. In our case, the visual tip end and the tip end
         obviously coincide, but if we were to reverse the arrow tip, the visual
-        tip end would be different form the tip end (while the visual back end
+        tip end would be different from the tip end (while the visual back end
         would then coincide with the new back end).
     \item There are four points that make up the \emph{convex hull} of the
         arrow tip: $(1,0)$, $(-3,2)$, and $(-3,-2)$.
@@ -258,7 +258,7 @@
             This defines the name of the arrow tip. It is legal to define an
             arrow tip a second time, in this case the previous definition will
             be overwritten in the current \TeX\ scope. It is customary to use a
-            name with an uppercase fist letter for a ``complete'' arrow tip
+            name with an uppercase first letter for a ``complete'' arrow tip
             kind. Short names and lower case names should be used for
             shorthands that change their meaning inside a document, while arrow
             tips with uppercase first letters should not be redefined.
@@ -917,7 +917,7 @@
 \end{command}
 
 \begin{command}{\pgfarrowslinewidthdependent\marg{dimension}\marg{line width factor}\marg{outer factor}}
-    This command take three parameters and does the ``line width dependent
+    This command takes three parameters and does the ``line width dependent
     computation'' described on page~\pageref{length-arrow-key} for the |length|
     key. The result is returned in |\pgf at x|.
 
@@ -937,7 +937,7 @@
 \end{command}
 
 \begin{command}{\pgfarrowslengthdependent\marg{dimension}\marg{length factor}\marg{dummy}}
-    This command take three parameters, of which the last one is ignored, and
+    This command takes three parameters, of which the last one is ignored, and
     does the ``length dependent computation'' described for the |width'| and
     |inset'| keys. The result is returned in |\pgf at x|.
 

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -171,7 +171,7 @@
     As can be seen, all coordinate transformations are also applied to the text
     of the shape. Sometimes, it is desirable that the transformations are
     applied to the point where the shape will be anchored, but you do not wish
-    the shape itself to the transformed. In this case, you should call
+    the shape itself to be transformed. In this case, you should call
     |\pgftransformresetnontranslations| prior to calling the |\pgfnode|
     command.
     %

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -71,7 +71,7 @@
 line'' rule makes parsers harder to program.
 
 
-\subsection{Reference: Build-In Formats}
+\subsection{Reference: Built-In Formats}
 
 The following format is the default format, when no |format=...| is specified.
 

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -781,7 +781,7 @@
     visualizer.
 \end{stylesheet}
 
-\begin{stylesheet}{vary dashing and thickness}
+\begin{stylesheet}{vary thickness and dashing}
     This style alternates between varying the thickness and the dashing of
     lines. The difference to just using both the |vary thickness| and
     |vary dashing| is that too thick lines are avoided. Instead, this style

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -39,7 +39,7 @@
 
   The parser works as follows: At any moment, it is in a certain
   \emph{state}, initially this state is called |initial|. Then, the first
-  letter of the \meta{text} is examined (using the |\futurlet| command). For
+  letter of the \meta{text} is examined (using the |\futurelet| command). For
   each possible state and each possible letter, some action code is stored in
   the parser in a table. This code is then executed. This code may, but need
   not, trigger a \emph{state switch}, causing a new state to be set. The
@@ -72,19 +72,27 @@
   }%
   This command should be used repeatedly to define a parser named
   \meta{parser name}. With a call to this command you specify that the
-  \meta{parser name} should do the following: When it is in state \meta{state}%
-  and reads the letter \meta{symbol meaning}, perform the code stored in
-  \meta{action}.
+  \meta{parser name} should do the following: When it is in state
+  \meta{state} and reads the letter \meta{symbol meaning}, perform the code
+  stored in \meta{action}.
 
   The \meta{symbol meaning} must be the text that results from applying the
   \TeX\ command |\meaning| to the given character. For instance, |\meaning a|
   yields |the letter a|, while |\meaning 1| yields |the character 1|. A space
-  yields |blank space|. Alternatively you can give the symbol you want without
+  yields |blank space  |. Alternatively you can give the symbol you want without
   surrounding it in braces. So both
   |\pgfparserdef{myparser}{initial}{the letter a}{foo}|
   and
   |\pgfparserdef{myparser}{initial}a{foo}|
-  define an \meta{action} for |the letter a|.
+  define an \meta{action} for |the letter a|. This short form works for most
+  tokens, but not for a space (in which case you can use
+  |\pgfparserdef{myparser}{initial}{blank space}{foo}|), and opening braces
+  (in which case you can use
+  |\pgfparserdef{myparser}{initial}{\meaning\bgroup}{foo}|, and one might prefer
+  to use |\pgfparserdef{myparser}{initial}{\meaning\egroup}{foo}| for closing
+  braces as well). You can as well define an action for a macro's meaning (note
+  that macros with different names can have the same meaning), so things like
+  |\pgfparserdef{myparser}{initial}\texttt{foo}| are possible as well.
 
   The \meta{action} might require arguments which you can specify in the
   optional \meta{arguments} string. The argument string can contain up to nine
@@ -142,7 +150,7 @@
   goes back to the parser. You should not launch a parser inside the
   \meta{action} code, unless you put it in a scope.
 
-  When you set the \meta{state} to |all|, the state \meta{action} is performed
+  When you use |all| as the \meta{state}, the \meta{action} is performed
   in all states as a fallback, whenever \meta{symbol meaning} is encountered.
   This means that when you do not specify anything explicitly for a state and a
   letter, but you do specify something for |all| and this letter, then the
@@ -151,7 +159,9 @@
   When the parser encounters a letter for which nothing is specified in the
   current state (neither directly nor indirectly via |all|), an error occurs.
   Additionally you can specify an action that is executed after the error is
-  thrown using |\pgfparserdefunknown|.
+  thrown using |\pgfparserdefunknown|. To suppress these errors (but not the
+  action specified with |\pgfparserdefunknown|) you can use the
+  |/pgfparser/silent| key or the |silent| key of the current \meta{parser name}.
 \end{command}%
 
 \begin{command}%
@@ -160,11 +170,11 @@
     \marg{parser name 1}\marg{state 1}\meta{symbol meaning 1}%
     \oarg{opt 1}\oarg{opt 2}\meta{symbol meaning 2}%
   }%
-  If none of the optional arguments are given in the following \meta{parser
-  name 2} and \meta{state 2} are the same as \meta{parser name 1} and
-  \meta{state 1}. If only the first is given \meta{state 2} equals
-  \meta{opt 1}. If both are given \meta{parser name 2} equals \meta{opt 1} and
-  \meta{state 2} equals \meta{opt 2}.
+  If none of the optional arguments are given in the following explanation
+  \meta{parser name 2} and \meta{state 2} are the same as
+  \meta{parser name 1} and \meta{state 1}. If only the first is given
+  \meta{state 2} equals \meta{opt 1}. If both are given \meta{parser name 2}
+  equals \meta{opt 1} and \meta{state 2} equals \meta{opt 2}.
 
   Defines an action for \meta{parser name 1} in \meta{state 1} for the
   \meta{symbol meaning 1} to do the same as the action of \meta{parser name 2}
@@ -176,7 +186,8 @@
 
 \begin{command}{\pgfparserdefunknown\marg{parser name}\marg{state}\marg{action}}%
   With this macro you can define an \meta{action} for the \meta{parser name}
-  parser in \meta{state} if the letter which was encountered was undefined.
+  parser in \meta{state} if no action was defined for the letter which was
+  encountered.
 \end{command}%
 
 \begin{command}{\pgfparserdeffinal\marg{parser name}\marg{action}}%
@@ -200,9 +211,11 @@
 
 \begin{command}{\pgfparserreinsert}%
   You can use this as the final macro in an action of |\pgfparserdef| or
-  |\pgfparserdefunknown|. This has the effect that the letter which was parsed
-  in this action will be parsed again after this action (and after any arguments
-  were read).
+  |\pgfparserdefunknown|. This has the effect that the contents of
+  |\pgfparserletter| will be parsed next. Without any redefinition the result
+  will be that the last token will be parsed again. You can change the
+  definition of |\pgfparserletter| just before |\pgfparserreinsert| as well to
+  parse some specific tokens next.
 \end{command}%
 
 \begin{command}{\pgfparserstate}%
@@ -220,9 +233,9 @@
   |\def\pgfparserletter{a}|. This definition is done before any action code is
   executed. There are four special cases: If the next token is of category code
   1, 2, 6, or 10, so with standard category codes the tokens |{|, |}|, |#|, and
-  \textvisiblespace\ (a space) would be treated differently. In those cases this
-  macro expands to |\bgroup|, |\egroup|, |##|, and \textvisiblespace\ for the
-  categories 1, 2, 6, and 10, respectively.
+  \textvisiblespace\ (a space), it would be treated differently. In those cases
+  this macro expands to |\bgroup|, |\egroup|, |##|, and \textvisiblespace\ for
+  the categories 1, 2, 6, and 10, respectively.
 \end{command}%
 
 \begin{command}{\pgfparserset\marg{key list}}%
@@ -285,7 +298,7 @@
 available.
 %
 \begin{codeexample}[preamble={\usepgfmodule{parser}}]
-% using the same syntax as \pgfparserdef
+% using the long syntax of \pgfparserdef
 \pgfparserdef{arguments}{initial}{the letter a}[d()]
   {\pgfparserifmark{#1}{\textcolor{red}{\textit{use}}}{\textbf{#1}} }%
 % using the shortcut syntax

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -372,6 +372,27 @@
 \end{codeexample}
         %
     \end{key}
+
+    \begin{key}{/pgf/foreach/expand list=\marg{boolean} (default false)}
+        If this key is set to true the contents of the list are fully expanded
+        with |\edef| before further processing.  This allows using complex
+        macros which generate a list upon expansion without having to use an
+        intermediate macro.
+        %
+\begin{codeexample}[]
+\def\Iota#1#2{%
+  \ifnum\numexpr#1\relax<\numexpr#2\relax
+    \the\numexpr#1\relax,%
+    \expandafter\Iota\expandafter{\the\numexpr(#1)+1\relax}{#2}%
+  \else
+    \the\numexpr#2\relax
+  \fi}
+\foreach [expand list=true] \x in {\Iota{1}{5}} {
+  \x
+}
+\end{codeexample}
+      %
+    \end{key}
 \end{command}
 
 \begin{command}{\breakforeach}

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -402,7 +402,7 @@
 a certain character, two things need to be done:
 %
 \begin{enumerate}
-    \item First, the whole first char syntax detection must be ``switched on'',
+    \item First, the whole |first char syntax| detection must be ``switched on'',
         since, by default, it is turned off for efficiency reasons (the
         overhead is rather small, however). This is done by setting the
         following key:
@@ -1264,7 +1264,7 @@
 \end{handler}
 
 \begin{handler}{{.add}|=|\marg{prefix value}\marg{append value}}
-    Adds the \meta{prefix value} and the beginning and the \meta{append value}
+    Adds the \meta{prefix value} at the beginning and the \meta{append value}
     at the end of the value stored in \meta{key}.
 \end{handler}
 

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -620,7 +620,7 @@
         Section~\ref{section-tikz-arrows}, to setup which kinds of arrow tips
         you would like.
     \item The path may not be closed (like a circle or a rectangle) and, if
-        it consists of several subpath, further restrictions apply as
+        it consists of several subpaths, further restrictions apply as
         explained in Section~\ref{section-tikz-arrows}.
     \item The |tips| key must be set to an appropriate value, see
         Section~\ref{section-tikz-arrows} once more.

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -398,7 +398,7 @@
             to select this), the size of the arrow should still be the same
             as in the first case (that is, as if a miter join were used).
             This creates some ``visual consistency'' if the two modes are
-            mixed or if you later one change the mode.
+            mixed or if you later want to change the mode.
             %
 \begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}]
 \tikz{
@@ -417,7 +417,7 @@
 
 \begin{key}{/pgf/arrow keys/width=\meta{dimension}| |\opt{\meta{line width factor}}%
         | |\opt{\meta{outer factor}}}
-    This key works line the |length| key, only it specifies the ``width'' of
+    This key works like the |length| key, only it specifies the ``width'' of
     the arrow tip; so if width and length are identical, the arrow will just
     touch the borders of a square. (An exception to this rule are ``halved''
     arrow tips, see Section~\ref{section-arrow-key-harpoon}.) The meaning of

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -160,7 +160,7 @@
   \graph { foo -> bar -> blub };
 \end{codeexample}
 
-As can be seen, the text |foo -> bar -> my node| creates three nodes, one with
+As can be seen, the text |foo -> bar -> blub| creates three nodes, one with
 the text |foo|, one with |bar| and one with the text |blub|. These nodes are
 connected by arrows, which are caused by the |->| between the node texts. Such
 a sequence of node texts and arrows between them is called a \emph{chain} in
@@ -296,7 +296,7 @@
 effect, we can no longer specify the label as part of the options of |--|.
 Rather, we must pass the desired label to the nodes |c| and |d|, but we must
 somehow also indicate that these options actually ``belong'' to the edge
-``leading to'' to nodes. This is achieved by preceding the options with a
+``leading'' to nodes. This is achieved by preceding the options with a
 greater-than sign:
 %
 \begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}]

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -69,8 +69,8 @@
             %
 \begin{codeexample}[]
 \tikz{\draw (0,0) -- (1,1);
-      \draw [color=red] (2,0) -- (3,1);
-      \draw [color=blue] (3,0) -- (2,1);}
+      \draw [color=red] (1,1) -- (2,0) -- (3,1);
+      \draw [color=blue] (3,1) -- (3,0) -- (2,1);}
 \end{codeexample}
     \end{enumerate}
 
@@ -1134,6 +1134,7 @@
 
 The \emph{let operation} is the first of a number of path operations that do
 not actually extend that path, but have different, mostly local, effects.
+It requires the |calc| library, see Section~\ref{tikz-lib-calc}.
 
 \begin{pathoperation}{let}{\meta{assignment}
         \opt{|,|\meta{assignment}}%
@@ -1178,7 +1179,7 @@
     The second kind of \meta{assignments} have the following form:
     %
     \begin{quote}
-        |\p|\meta{point register}|={|\meta{formula}|}|
+        |\p|\meta{point register}|=|\meta{coordinate}
     \end{quote}
     %
     Point position registers store a single point, consisting of an $x$-part

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -198,7 +198,7 @@
 The following options influence how the \meta{coordinate expression} is
 evaluated:
 %
-\begin{key}{/tikz/variable=\meta{macro} (initially x)}
+\begin{key}{/tikz/variable=\meta{macro} (initially \string\x)}
     Sets the macro whose value is set to the different values when
     \meta{coordinate expression} is evaluated.
 \end{key}

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -3033,7 +3033,7 @@
     Expands to the last node on the path.
 \end{command}
 
-Instead of the |node also| syntax, you can also the following option:
+Instead of the |node also| syntax, you can also use the following option:
 
 \begin{key}{/tikz/late options=\meta{options}}
     This option can be given on a path (but not as an argument to a |node| path

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -97,7 +97,7 @@
     corner of the grid.
 
     If \meta{value} is a coordinate, the $x$-vector of \pgfname's
-    $xyz$-coordinate system to the specified coordinate. If \meta{value}
+    $xyz$-coordinate system is set to the specified coordinate. If \meta{value}
     contains a comma, it must be put in braces.
     %
 \begin{codeexample}[]

Modified: trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -822,7 +822,7 @@
 
 
 Naturally, all of this could have been written more clearly and more
-economically like this (either with a single of a double |+|):
+economically like this (either with a single or a double |+|):
 %
 \begin{codeexample}[]
 \tikz \draw (0,0) rectangle +(1,1)  (1.5,0) rectangle +(1,1);

Modified: trunk/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -163,7 +163,7 @@
     \advance\pgf at x by0.707107\pgf at xa
     \advance\pgf at y by-0.707107\pgf at ya
   }%
-  \anchorborder{
+  \anchorborder{%
     \edef\pgf at marshal{%
       \noexpand\pgfpointborderellipse
       {\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}

Modified: trunk/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -1260,7 +1260,7 @@
     \advance\pgf at x by0.707107\pgf at xa
     \advance\pgf at y by-0.707107\pgf at xa
   }%
-  \anchorborder{
+  \anchorborder{%
     \pgf at xa=\pgf at x%
     \pgf at ya=\pgf at y%
     \edef\pgf at marshal{%

Modified: trunk/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/pgf.revision.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -5,10 +5,10 @@
 \catcode`\:=12
 \catcode`\+=12
 \catcode`\-=12
-\gdef\pgfrevision{3.1.6a}
-\gdef\pgfversion{3.1.6a}
-\gdef\pgfversiondatetime{2020-10-01 21:02:59 +0200}
-\gdef\pgfrevisiondatetime{2020-10-01 21:02:59 +0200}
+\gdef\pgfrevision{3.1.7}
+\gdef\pgfversion{3.1.7}
+\gdef\pgfversiondatetime{2020-11-23 12:12:00 +0100}
+\gdef\pgfrevisiondatetime{2020-11-23 12:12:00 +0100}
 \gdef\pgf at glob@TMPa#1-#2-#3 #4\relax{#1/#2/#3}
 \xdef\pgfversiondate{\expandafter\pgf at glob@TMPa\pgfversiondatetime\relax}
 \xdef\pgfrevisiondate{\expandafter\pgf at glob@TMPa\pgfrevisiondatetime\relax}

Modified: trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvips.def	2020-11-23 22:01:18 UTC (rev 56989)
@@ -474,15 +474,27 @@
     \expandafter\xdef\csname pgfsmasktrans@#1\endcsname{%
       \noexpand\pgftransformcm{1}{0}{0}{1}{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}}%
     \edef\@tempa{\noexpand\pgfutil at insertatbegincurrentpagefrombox{%
-      % box coordinates (reference point and top) needed for distilling
+      % box coordinates (reference point and top) needed for ps2pdf
       \pgfsys at outerinvoke{currentpoint /pgf at refy exch def /pgf at refx exch def}%
       \hbox to 0pt {\hbox to \ifdim\ht#2>\ht\strutbox\ht#2\else\ht\strutbox\fi{\hss\pgfsys at outerinvoke{%
         /pgf at top pgf at refy currentpoint pop pgf at refx sub VResolution Resolution div mul sub def%
       }}\hss}%
+      % lower-right box corner coordinates for viewing
+      \hbox to 0pt {\hbox to \wd#2{\hss\pgfsys at outerinvoke{/pgf at right currentpoint pop def}}\hss}%
+      \hbox to 0pt {\hbox to \ifdim\dp#2>\dp\strutbox\dp#2\else\dp\strutbox\fi{\hss\pgfsys at outerinvoke{%
+        /pgf at bot pgf at refy currentpoint pop pgf at refx sub VResolution Resolution div mul add def%
+      }}\hss}%
       \pgfsys at outerinvoke{gsave
-        % translate box to upper left page corner, so we have the whole clipping path (i. e.
-        % page area) available for distilling, as outlying parts get clipped
-        clippath pathbbox newpath pop pop translate pgf at refx neg pgf at top neg translate
+        clippath pathbbox newpath pop pop translate
+        systemdict /pdfmark known {%
+          % for ps2pdf, translate box to upper-left page corner, so we have the whole clipping
+          % path (i. e. page area) available, as outlying parts get clipped
+          pgf at refx neg pgf at top neg translate%
+        } {%
+          % for viewing, however, we want to hide the box by moving it off-page; we do so by aligning
+          % the lower-right box corner with the upper-left page corner
+          pgf at right neg pgf at bot neg translate%
+        } ifelse
         % translate origin (0,0) to the reference point
         gsave pgf at refx pgf at refy translate
         mark /_objdef {pgfsmaskxform@\the\pgf at objectcount}

Modified: trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-luatex.def	2020-11-23 22:01:18 UTC (rev 56989)
@@ -84,7 +84,7 @@
   {%
     \pgf at parsefunc{#3}%
     \pgfmathparse{#2}%
-    \setbox\pgfutil at tempboxa=\hbox to\pgf at max{\vbox to\pgfmathresult pt{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
+    \setbox\pgfutil at tempboxa=\hbox dir TLT to\pgf at max{\vbox to\pgfmathresult pt{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
     \pgf at process{\pgfpoint{\pgf at max}{#2}}%
     \immediate\saveboxresource resources {%
       /Shading << /Sh << /ShadingType 2
@@ -101,7 +101,7 @@
   {%
     \pgf at parsefunc{#3}%
     \pgfmathparse{#2}%
-    \setbox\pgfutil at tempboxa=\hbox to\pgfmathresult pt{\vbox to\pgf at max{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
+    \setbox\pgfutil at tempboxa=\hbox dir TLT to\pgfmathresult pt{\vbox to\pgf at max{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
     \pgf at process{\pgfpoint{#2}{\pgf at max}}%
     \immediate\saveboxresource resources {%
       /Shading << /Sh << /ShadingType 2
@@ -117,7 +117,7 @@
 \def\pgfsys at radialshading#1#2#3{%
   {%
     \pgf at parsefunc{#3}%
-    \setbox\pgfutil at tempboxa=\hbox to2\pgf at max{\vbox to2\pgf at max{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
+    \setbox\pgfutil at tempboxa=\hbox dir TLT to2\pgf at max{\vbox to2\pgf at max{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
     \pgf at process{#2}%
     \pgf at xa=\pgf at x%
     \pgf at ya=\pgf at y%
@@ -149,7 +149,7 @@
     \pgf at yb=\pgf at y%
     \advance\pgf at x by-\pgf at xa%
     \advance\pgf at y by-\pgf at ya%
-    \setbox\pgfutil at tempboxa=\hbox to\pgf at x{\vbox to\pgf at y{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
+    \setbox\pgfutil at tempboxa=\hbox dir TLT to\pgf at x{\vbox to\pgf at y{\vfil\pgfsys at invoke{/Sh sh}}\hfil}%
     \pgf at sys@bp at correct{\pgf at xa}%
     \pgf at sys@bp at correct{\pgf at ya}%
     \pgf at sys@bp at correct{\pgf at xb}%

Modified: trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -79,10 +79,13 @@
     \fi%
 }
 
+\def\pgffor at expand@list at true{\let\pgffor at expand@list\edef}
+\def\pgffor at expand@list at false{\let\pgffor at expand@list\def}
 \def\pgffor at macro@list#1{%
   \expandafter\pgffor at normal@list\expandafter{#1}}
 \def\pgffor at normal@list#1{%
-  \def\pgffor at values{#1, \pgffor at stop,}%
+  \pgffor at expand@list\pgffor at values{#1}%
+  \expandafter\def\expandafter\pgffor at values\expandafter{\pgffor at values, \pgffor at stop,}%
   \ifx\pgffor at values\pgffor at emptyvalues
     \def\pgffor at values{\pgffor at stop,}%
   \fi%
@@ -619,6 +622,9 @@
     count/.code=\pgffor at count@parse#1\pgffor at stop,
     parse/.is if=pgffor at assign@parse,
     parse/.default=false,
+    expand list/.is if=pgffor at expand@list@,
+    expand list/.default=true,
+    expand list=false,
 }
 
 \def\pgffor at assign@parse#1{%

Modified: trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex	2020-11-23 22:01:18 UTC (rev 56989)
@@ -178,7 +178,13 @@
 %
 % \pgfkeysifdefined{/tikz/length}{key exists}{does not exist}
 
-\long\def\pgfkeysifdefined#1#2#3{\ifcsname pgfk@#1\endcsname#2\else#3\fi}
+\long\def\pgfkeysifdefined#1{%
+  \ifcsname pgfk@#1\endcsname
+    \expandafter\pgfkeys at firstoftwo
+  \else
+    \expandafter\pgfkeys at secondoftwo
+  \fi
+}
 
 % Tests whether a key is assignable. For standard keys which just
 % store their value, this is identical to \pgfkeysifdefined.
@@ -749,7 +755,7 @@
   {%
     \pgfkeysgetvalue{\pgfkeyscurrentpath/. at args}{\pgfkeys at tempargs}%
     \pgfkeysgetvalue{\pgfkeyscurrentpath/. at body}{\pgfkeys at tempbody}%
-    \def\pgfkeys at marshal{\expandafter\gdef\expandafter\pgfkeys at global@temp\pgfkeys at tempargs}%
+    \def\pgfkeys at marshal{\expandafter\long\expandafter\gdef\expandafter\pgfkeys at global@temp\pgfkeys at tempargs}%
     \expandafter\pgfkeys at marshal\expandafter{\pgfkeys at tempbody}%
   }%
     \pgfkeysifdefined{\pgfkeyscurrentpath/.@@body}{%
@@ -799,11 +805,7 @@
 
 % Defining a value
 
-\pgfkeys{/handlers/.initial/.code=%
-  \pgfkeyslet{\pgfkeyscurrentpath/. at cmd}\undefined
-  \pgfkeyslet{\pgfkeyscurrentpath/. at args}\undefined
-  \pgfkeyssetvalue{\pgfkeyscurrentpath}{#1}%
-}
+\pgfkeys{/handlers/.initial/.code=\pgfkeyssetvalue{\pgfkeyscurrentpath}{#1}}
 \pgfkeys{/handlers/.add/.code 2 args=\pgfkeysaddvalue{\pgfkeyscurrentpath}{#1}{#2}}
 \pgfkeys{/handlers/.prefix/.code=\pgfkeysaddvalue{\pgfkeyscurrentpath}{#1}{}}
 \pgfkeys{/handlers/.append/.code=\pgfkeysaddvalue{\pgfkeyscurrentpath}{}{#1}}
@@ -1039,50 +1041,50 @@
 
 \pgfkeys{
   /errors/boolean expected/.code 2 args=%
-  {
-    \toks1={#1}
-    \toks2={#2}
+  {%
+    \toks1={#1}%
+    \toks2={#2}%
     \pgfkeys at error{%
       Boolean parameter of key '\the\toks1' must be 'true' or 'false', not
       '\the\toks2'. I am going to ignore it%
-    }
+    }%
   },
   /errors/value required/.code 2 args=%
-  {
-    \toks1={#1}
+  {%
+    \toks1={#1}%
     \pgfkeys at error{%
       The key '\the\toks1' requires a value. I am going to ignore this
       key%
-    }
+    }%
   },
   /errors/value forbidden/.code 2 args=%
-  {
-    \toks1={#1}
-    \toks2={#2}
+  {%
+    \toks1={#1}%
+    \toks2={#2}%
     \pgfkeys at error{%
       You may not specify a value for the key '\the\toks1'. I am going to ignore
       the value '\the\toks2' that you provided%
-    }
+    }%
   },
   /errors/unknown choice value/.code 2 args=%
-  {
-    \toks1={#1}
-    \toks2={#2}
+  {%
+    \toks1={#1}%
+    \toks2={#2}%
     \pgfkeys at error{%
       Choice '\the\toks2' unknown in choice key '\the\toks1'. I am
       going to ignore this key%
-    }
+    }%
   },
   /errors/unknown key/.code 2 args=%
-  {
-    \toks1={#1}
-    \toks2={#2}
+  {%
+    \toks1={#1}%
+    \toks2={#2}%
     \def\pgf at temp{#2}%
     \pgfkeys at error{%
       I do not know the key '\the\toks1'\ifx\pgf at temp\pgfkeysnovalue at text\space\else, to which you passed
       '\the\toks2', \fi and I am going to ignore it. Perhaps you
       misspelled it%
-    }
+    }%
   }
 }
 

Modified: trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def	2020-11-23 18:08:29 UTC (rev 56988)
+++ trunk/Master/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def	2020-11-23 22:01:18 UTC (rev 56989)
@@ -92,6 +92,9 @@
 
 \AtBeginDocument{\AtEndDocument{\clearpage\the\pgfutil at everybye}}
 
+% \@ifl at t@r is defined \@onlypremable so we have to save it here
+\let\pgfutil at ifl@t at r=\@ifl at t@r
+
 \def\pgfutil at insertatbegincurrentpagefrombox#1{%
   \edef\pgf at temp{\the\wd\pgfutil at abb}%
   \global\setbox\pgfutil at abb\hbox{%
@@ -105,8 +108,9 @@
     %
     % CF observed problems when placing patterns in XObjects without
     % this skip (dvipdfmx driver for pgfplots shader=interp)
-    \hskip-\pgf at temp\relax%
+    \hskip\dimexpr\pgfutil at ifl@t at r\fmtversion{2020/10/01}{2in-2\hoffset}{}-\pgf at temp\relax%
     #1%
+    \pgfutil at ifl@t at r\fmtversion{2020/10/01}{\hskip\dimexpr-2in-2\hoffset\relax}{}%
   }%
 }
 \newbox\pgfutil at abb%
@@ -119,7 +123,7 @@
 }
 \let\pgfutil at abe\pgfutil at empty%
 
-\@ifl at t@r\fmtversion{2020/10/01}{%
+\pgfutil at ifl@t at r\fmtversion{2020/10/01}{%
   \AddToHook{shipout/background}{%
     \put(\hoffset-1in,\voffset-1in){%
       \pgfutil at abe\unhbox\pgfutil at abb\pgfutil at abc\global\let\pgfutil at abc\pgfutil at empty



More information about the tex-live-commits mailing list.