summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pstricks
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-08-27 22:38:46 +0000
committerKarl Berry <karl@freefriends.org>2021-08-27 22:38:46 +0000
commit2c2c812019a619998582cc66667be017388b919a (patch)
treee16af7ac4693b8a2ef35272dca1d9e5b7b5ffaf2 /Master/texmf-dist/tex/generic/pstricks
parentc3144f8fa8f4c99465bb1e746086c643b569e9c7 (diff)
pstricks (28aug21)
git-svn-id: svn://tug.org/texlive/trunk@60335 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pstricks')
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg2
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg.orig244
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/pst-fp.tex2
-rw-r--r--Master/texmf-dist/tex/generic/pstricks/pstricks.tex91
4 files changed, 318 insertions, 21 deletions
diff --git a/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg b/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg
index 668ba419055..663e342f79c 100644
--- a/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg
+++ b/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg
@@ -1,4 +1,4 @@
-% $Id: xdvipdfmx.cfg 152 2021-08-19 11:24:26Z herbert $
+% $Id: xdvipdfmx.cfg 158 2021-08-24 06:57:13Z herbert $
%
%% BEGIN: pstricks.con (for dvipdfmx driver)
%%
diff --git a/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg.orig b/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg.orig
new file mode 100644
index 00000000000..75a596ca353
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/pstricks/config/xdvipdfmx.cfg.orig
@@ -0,0 +1,244 @@
+% $Id: xdvipdfmx.cfg 4 2020-06-09 08:32:19Z herbert $
+%
+%% BEGIN: pstricks.con (for xdvipdfmx driver)
+%%
+%% Configuration file for PSTricks
+%%
+%% Version 0.05 (2015/09/11)
+%%
+%% For use with xdvipdfmx
+%% Created by SMiyata based on standard pstricks.con from TeXLive distribution.
+%% This file may be distributed, used and modified freely.
+%% Modified by Denis Girou, Herbert Voss
+%%
+\def\pstdriver{xdvipdfmx}%
+\def\pstverb#1{\special{pst: #1}}% Check catcode of "
+\def\pstunit{1bp}%
+\def\pstVerb#1{\immediate\special{PST: #1}}%
+\def\pstverbscale{72.27 72 div dup scale }%
+\def\pstnodescale{72 72.27 div dup scale }%
+% DG/SR modification begin - Apr. 28, 1997 (D. Carlisle + S. Rahtz)
+% \def\pstheader#1{\special{header=#1}}
+% We used to check for |\AtBeginDvi|, but that was broken in early release
+% so we now check for the existence of |\textsuperscript| (added 1995/05/16)
+\ifx\textsuperscript\@undefined
+ \def\pstheader#1{\special{header=#1}}%
+\else
+ \ifx\Gin@PS@file@header\@undefined
+ \def\pstheader#1{\AtBeginDvi{\special{header=#1}}}%
+ \else
+ \let\pstheader\Gin@PS@file@header%
+ \fi
+\fi
+% DG/SR modification end
+%
+%%
+%%
+%% In the following, CP is short for currentpoint.
+%% The neg is necessary because dvips scales the coordinates by 1 -1.
+%% \tx@NET means neg exch neg exch translate.
+\def\pstrotate{CP CP translate 3 -1 roll neg rotate \tx@NET}%
+%%
+%% ****************** END xdvipdfmx *****************************
+
+
+%%%%%%%%%%%%%%%%%%% !! CUSTOMIZATION STUFF GOES HERE: !! %%%%%%%%%%%%%%%%%%
+%% If you want to include your own customizations to pstricks.tex, then
+%% uncomment the \pstcustomize command, and include your modifications
+%% after \pstcustomize. These will be read in after pstricks.tex.
+\def\c@lor@to@ps#1 #2\@@{\csname c@lor@ps@#1\endcsname#2 \@@}%
+\def\c@lor@ps@#1 #2\@@{TeXDict begin #1 end}%
+\def\c@lor@ps@rgb#1\@@{#1 setrgbcolor}%
+\def\c@lor@ps@hsb#1\@@{#1 sethsbcolor}%
+\def\c@lor@ps@cmyk#1\@@{#1 setcmykcolor}%
+\def\c@lor@ps@gray#1\@@{#1 setgray}%
+\pstcustomize
+\typeout{Using PSTricks configuration for XeTeX+xdvipdfmx}%
+\def\@@scalebox{%
+ \leavevmode
+ \hbox{%
+\ifdim\pst@tempd\p@<\z@
+\pst@dimg=\pst@tempd\ht\pst@hbox
+\pst@dimh=\pst@tempd\dp\pst@hbox
+\dp\pst@hbox=-\pst@dimg
+\ht\pst@hbox=-\pst@dimh
+\else
+\ht\pst@hbox=\pst@tempd\ht\pst@hbox
+\dp\pst@hbox=\pst@tempd\dp\pst@hbox
+\fi
+\pst@dima=\pst@tempc\wd\pst@hbox
+\ifdim\pst@dima<\z@\kern-\pst@dima\fi
+\special{x: bscale \pst@tempc \pst@tempd}%
+\hbox to \z@{\box\pst@hbox\hss}%
+\special{x: escale}%
+\ifdim\pst@dima>\z@\kern\pst@dima\fi}}%
+%
+\let\ps@@scalebox\@@scalebox
+\def\ps@rotateleft#1{%
+\leavevmode\hbox{\hskip\ht#1\hskip\dp#1\vbox{\vskip\wd#1%
+\pst@Verb{90 \tx@RotBegin}%
+\vbox to \z@{\vss\hbox to \z@{\box#1\hss}\vskip\z@}%
+\pst@Verb{\tx@RotEnd}}}}%
+%
+\def\ps@rotateright#1{%
+ \leavevmode\hbox{%
+ \hskip\ht#1\hskip\dp#1\vbox{\vskip\wd#1%
+ \pst@Verb{-90 \tx@RotBegin}%
+ \vbox to \z@{\hbox to \z@{\hss\box#1}\vss}%
+ \pst@Verb{\tx@RotEnd}}}}%
+%
+\def\ps@rotatedown#1{%
+\hbox{\hskip\wd#1\vbox{\vskip\ht#1\vskip\dp#1%
+\pst@Verb{180 \tx@RotBegin}%
+\vbox to \z@{\hbox to \z@{\box#1\hss}\vss}%
+\pst@Verb{\tx@RotEnd}}}}%
+%
+\def\begin@psclip{\special{x: gsave}}%
+\def\end@psclip{\special{x: grestore}}%
+\def\@newcolor#1#2#3{%
+\expandafter\edef\csname #1\endcsname{\noexpand\pst@color{#2}}%
+\expandafter\edef\csname\string\color@#1\endcsname{#2}% hv 1.14 2005-12-17
+\expandafter\edef\csname\string\color@xetex@#1\endcsname{#3}%
+\ignorespaces}%
+%
+\def\newgray#1#2{%
+ \pst@checknum{#2}\pst@tempg
+ \@newcolor{#1}{\pst@tempg setgray}{gray \pst@tempg}%
+}
+\def\newrgbcolor#1#2{%
+ \pst@expandafter\pst@getnumiii{#2} {} {} {} {}\@nil
+ \@newcolor{#1}{\pst@tempg \pst@temph \pst@tempi setrgbcolor}{rgb \pst@tempg \pst@temph \pst@tempi}%
+}%
+\def\newhsbcolor#1#2{%
+ \pst@expandafter\pst@getnumiii{#2} {} {} {} {}\@nil
+ \@newcolor{#1}{\pst@tempg \pst@temph \pst@tempi sethsbcolor}{hsb \pst@tempg \pst@temph \pst@tempi}%
+}%
+\def\newcmykcolor#1#2{%
+ \pst@expandafter\pst@getnumiv{#2} {} {} {} {} {}\@nil
+ \@newcolor{#1}{\pst@tempg \pst@temph \pst@tempi \pst@tempj setcmykcolor}%
+ {cmyk \pst@tempg \pst@temph \pst@tempi \pst@tempj}%
+}%
+\newgray{black}{0}%
+\newgray{darkgray}{.25}%
+\newgray{gray}{.5}%
+\newgray{lightgray}{.75}%
+\newgray{white}{1}%
+\newrgbcolor{red}{1 0 0}%
+\newrgbcolor{green}{0 1 0}%
+\newrgbcolor{blue}{0 0 1}%
+\newrgbcolor{yellow}{1 1 0}%
+\newrgbcolor{cyan}{0 1 1}%
+\newrgbcolor{magenta}{1 0 1}%
+
+\@ifundefined{LaTeXe}%
+ {\def\current@@@@color{\csname\string\color@xetex@\psfillcolor\endcsname}}{%
+ \AtBeginDocument{\@ifpackageloaded{xcolor}{\def\current@@@@color{\psfillcolor}}%
+ {\def\current@@@@color{\csname\string\color@\psfillcolor\endcsname}}}}%
+%
+\iffalse
+\def\pst@starbox{%
+\setbox\pst@hbox\hbox{{%
+ \def\current@color{\current@@@@color}%
+\dimen@\wd\pst@hbox\advance\dimen@2\psframesep\wd\pst@hbox\dimen@%
+\dimen@\ht\pst@hbox\advance\dimen@\psframesep\ht\pst@hbox\dimen@%
+\dimen@\dp\pst@hbox\advance\dimen@\psframesep\dp\pst@hbox\dimen@%
+\@ifundefined{LaTeXe}{\special{color push \current@color}%
+ \rlap{\vrule width\wd\pst@hbox height\ht\pst@hbox depth\dp\pst@hbox}%
+ \special{color pop}}%
+ {\color@block{\wd\pst@hbox}{\ht\pst@hbox}{\dp\pst@hbox}}}%
+\rlap{\hskip\psframesep\unhbox\pst@hbox}}}
+\fi
+%
+\def\AltClipMode{}%
+%
+\def\putoverlaybox#1{%
+\hbox{\special{x: gsave}\special{x: initoverlay #1}\copy\theoverlaybox\special{x: grestore}}}%
+%
+\def\pst@overlay#1{\edef\curr@overlay{#1}\special{x: clipoverlay #1}\aftergroup\pst@endoverlay}%
+\def\pst@endoverlay{\special{x: clipoverlay \curr@overlay}}%
+\def\AltOverlayMode{}%
+%The next line is not necessary, if pstricks.sty of [2007/02/18 v0.33] or newer is used.
+\@ifundefined{LaTeXe}{}{\AtBeginDocument{\psset{fillcolor=white}}}%
+%
+\endinput
+%
+%
+%%%%%%%%%%%%%%%% DESCRIPTION OF CONFIGURATION DEFINITIONS %%%%%%%%%%%%%%%
+
+Here are the commands that must be defined in this file:
+
+ \pstverb{} - The argument is included as verbatim PostScript,
+ grouped by save and restore. The coordinate system
+ should be square, not rotated, and with the origin
+ at TeX's currentpoint.
+
+ \pstVerb{} - The argument is included as verbatim PostScript, not
+ grouped by (g)save and (g)restore. The currentpoint
+ should be TeX's currentpoint.
+
+ \pstunit - The units used by driver for graphics included with
+ \pstverb. Probably 1bp or 1sp.
+
+ \pstverbscale - The PostScript code that scales the coordinate system
+ from that in effect with \pstVerb to that in effect
+ with \pstverb. Should not translate to the currentpoint.
+
+ \pstrotate - The PostScript code that takes a number off the stack
+ and rotates the axes properly. I.e.,
+ \pstVerb{angle \pstrotate} is used to begin rotations.
+
+ \pstheader{} - The argument is a header file (e.g., .pro file).
+ If your driver does not support such a special, then
+ the command might just remind you to include the header
+ when printing. You can use PSTricks without a header,
+ in which case it does not matter how you define
+ \pstheader. See read-me.pst for details.
+ If you cannot change the default directory where your
+ driver looks for header files, and you cannot write to
+ that directory, then you include the path for your
+ PSTricks header files.
+ E.g., \def\pstheader#1{\special{header=~/tex/#1}}.
+
+ \pstdriver - The name of the driver.
+
+
+%%%%%%%%% !! HOW TO MAKE A TEX FORMAT WITH PSTRICKS PRELOADED !! %%%%%%%%
+
+See your local TeX documentation for instructions on creating a TeX format.
+
+Before making the format, be sure that this configuration file is correct.
+It will be read only when creating the format, and not with every job.
+
+If you are not using header files, there are no more special instructions.
+
+Special instructions when using header files:
+
+ - If you want to include supplementary PSTricks files (e.g., pst-node.tex),
+ add \input commands in the customization section above.
+
+ - If your definition of \pstheader is, e.g.
+
+ \def\pstheader#1{\special{\header=#1}}
+
+ then change it to
+
+ \def\pstheader#1{%
+ \expandafter\everyjob\expandafter{\the\everyjob
+ \special{header=#1}}}
+
+ and put your original definition in the customization section, AFTER
+ any \input commands. E.g., the customization section might look like:
+
+ \pstcustomize
+ \input pst-node.tex
+ \input pst-coil.tex
+ \def\pstheader#1{\special{header=#1}}
+
+ - Input pstricks.tex at the appropriate time when creating the format.
+ E.g., when initex stops running:
+ *\input pstricks
+ *\dump
+
+
+%%
+%% END: pstricks.con
diff --git a/Master/texmf-dist/tex/generic/pstricks/pst-fp.tex b/Master/texmf-dist/tex/generic/pstricks/pst-fp.tex
index 49638dbb0a0..e00736bdeb6 100644
--- a/Master/texmf-dist/tex/generic/pstricks/pst-fp.tex
+++ b/Master/texmf-dist/tex/generic/pstricks/pst-fp.tex
@@ -1,4 +1,4 @@
-%% $Id: pst-fp.tex 4 2020-06-09 08:32:19Z herbert $
+%% $Id: pst-fp.tex 68 2021-04-08 06:41:14Z herbert $
%%
%%
%% This is file `pst-fp.tex',
diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
index 10cd89eba51..3bbf6a341ee 100644
--- a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
+++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex
@@ -81,8 +81,8 @@
\fi
\let\pgfforeach\foreach
%
-\def\fileversion{3.05}
-\def\filedate{2021/08/25}
+\def\fileversion{3.06}
+\def\filedate{2021/08/27}
\pst@addfams{pstricks}
%
%\define@boolkey[psset]{pstricks}[Pst@]{useURWfonts}[true]{}
@@ -429,20 +429,53 @@
\fi%
}
\fi
-%-------------- end old vesrion ---------------
+%-------------- end old version ---------------
%
\def\pst@configerr#1{\@pstrickserr{\string#1 not defined in pstricks.con}\@ehpc}
-%
-\def\pstVerb#1{\pst@configerr\pstVerb}
-\def\pstverb#1{\pst@configerr\pstverb}
-\def\pstverbscale{\pst@configerr\pstverbscale}
-\def\pstrotate{\pst@configerr\pstrotate}
-\def\pstheader#1{\pst@configerr\pstheader}
-\def\pstdriver{\pst@configerr\pstdriver}
-\@ifundefined{pstcustomize}%
- {\def\pstcustomize{\endinput\let\pstcustomize\relax}}{}
-%
-\input pstricks.con % local config file
+
+\newif\ifPSTlualatex
+
+\ifdefined\directlua
+ \ifdefined\app@cmd@latex % do we have auto-pst-pdf-lua loaded?
+ \PSTlualatexfalse %
+ \typeout{--- We are running lualatex or dvilualatex with auto-pst-pdf-lua ---}%
+ \else
+ \ifnum\outputmode=1
+ \PSTlualatextrue %
+ \typeout{--- We are running lualatex with luapstricks ---}%
+ \else
+ \PSTlualatexfalse %
+ \typeout{--- We are running dvilualatex without luapstricks ---}%
+ \fi
+ \fi
+\else
+ \typeout{--- We are running latex or xelatex ---}%
+ \PSTlualatexfalse
+\fi
+\ifPSTlualatex
+ \directlua{require'luapstricks'}%
+ \def\pstdriver{LuaLaTeX}%
+ \def\pstverb{\luaPST}%
+ \def\pstVerb{\luaPST direct}%
+ \def\pstunit{1bp}%
+ \def\pstverbscale{}%
+ \def\pstnodescale{}%
+ \def\pstheader{\luaPSTheader}%
+ \def\c@lor@to@ps#1\@@{(#1) setpdfcolor}
+% \AltClipMode % now done after the definition of \AltClipMode, see below
+ % Not sure if we need ``neg'' here or not
+ % \def\pstrotate{CP CP translate 3 -1 roll neg rotate \tx@NET}
+\else
+ \def\pstVerb#1{\pst@configerr\pstVerb}%
+ \def\pstverb#1{\pst@configerr\pstverb}%
+ \def\pstverbscale{\pst@configerr\pstverbscale}%
+ \def\pstrotate{\pst@configerr\pstrotate}%
+ \def\pstheader#1{\pst@configerr\pstheader}%
+ \def\pstdriver{\pst@configerr\pstdriver}%
+ \@ifundefined{pstcustomize}%
+ {\def\pstcustomize{\endinput\let\pstcustomize\relax}}{}%
+ \input pstricks.con % local config file
+\fi
%
\newif\ifPSTricks
\PSTrickstrue
@@ -2664,7 +2697,22 @@
\pst@cntg=#1\relax\edef\psk@subgriddiv{\the\pst@cntg}}
\psset[pstricks]{subgriddiv=5}
%
-\define@key[psset]{pstricks}{gridfont}[NimbusSanL-Regu]{\def\psk@gridfont{/#1 }}% hv 2007-11-13
+\define@key[psset]{pstricks}{gridfont}[NimbusSanL-Regu]{%
+ \typeout{Test lualatex}%
+ \ifPSTlualatex
+ \typeout{Test true}%
+ \ifx\relax#1\relax
+ \typeout{>>>>>>>>>>>>>>>> HIER <<<<<<<<<<<<<<}%
+ \def\psk@gridfont{\fontid\font\space .findfontid }%
+ \else
+ \def\psk@gridfont{/#1 findfont }% hv 2007-11-13
+ \fi
+ \else
+ \typeout{Test false}%
+ \def\psk@gridfont{/#1 findfont }% hv 2007-11-13
+ \fi
+}%
+
\ifpst@psfonts
\psset[pstricks]{gridfont=Helvetica}%
\else
@@ -2707,7 +2755,7 @@
\pst@number\psxunit abs \pst@number\psyunit abs % hv 1.11
\psk@subgriddiv\space \psk@subgriddots\space
{} 0
- \psk@gridfont findfont 0 scalefont setfont % hv 1.16
+ \psk@gridfont 0 scalefont setfont % hv 1.16
\tx@Grid
grestore
}%
@@ -2726,8 +2774,8 @@
% \pst@number\psxunit \pst@number\psyunit % hv 1.11
1 \psk@griddots\space { \pst@usecolor\psgridlabelcolor }
\psk@gridlabels
- \psk@gridfont findfont \psk@gridlabels scalefont setfont % hv 1.16
- \tx@Grid
+ \psk@gridfont \psk@gridlabels scalefont setfont % hv 1.16
+ \tx@Grid
grestore
}%
\end@SpecialObj
@@ -2892,7 +2940,12 @@
\def\AltClipMode{%
\def\end@psclip{\pstVerb{\pst@grestore}}%
\def\begin@psclip{\pstVerb{gsave}}}
- \def\clipbox{\@ifnextchar[{\clipbox@}{\clipbox@[\z@]}}
+
+\ifPSTlualatex
+ \AltClipMode
+\fi
+
+\def\clipbox{\@ifnextchar[{\clipbox@}{\clipbox@[\z@]}}
% DG modification begin - Apr. 3, 1997
% From paulus@immd5.informatik.uni-erlangen.de (Dietrich Paulus)
%\def\clipbox@[#1]{\pst@makebox\clipbox@@{#1}}