diff options
author | Norbert Preining <norbert@preining.info> | 2024-02-08 03:01:02 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-02-08 03:01:02 +0000 |
commit | baa694429155689a0e8bba804206961689e0a606 (patch) | |
tree | e7074074037b2817025ce6abfeddc286d6b1eff7 /graphics | |
parent | 50fcb5024d3243d7e1601abf72b5f4444dd618b6 (diff) |
CTAN sync 202402080301
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/pgf/contrib/bodeplot/bodeplot-doc.pdf | bin | 883835 -> 0 bytes | |||
-rw-r--r-- | graphics/pgf/contrib/bodeplot/bodeplot.dtx | 202 | ||||
-rw-r--r-- | graphics/pgf/contrib/bodeplot/bodeplot.pdf | bin | 0 -> 1099158 bytes |
3 files changed, 108 insertions, 94 deletions
diff --git a/graphics/pgf/contrib/bodeplot/bodeplot-doc.pdf b/graphics/pgf/contrib/bodeplot/bodeplot-doc.pdf Binary files differdeleted file mode 100644 index 3635dba167..0000000000 --- a/graphics/pgf/contrib/bodeplot/bodeplot-doc.pdf +++ /dev/null diff --git a/graphics/pgf/contrib/bodeplot/bodeplot.dtx b/graphics/pgf/contrib/bodeplot/bodeplot.dtx index c3de68f524..d9964e4a1b 100644 --- a/graphics/pgf/contrib/bodeplot/bodeplot.dtx +++ b/graphics/pgf/contrib/bodeplot/bodeplot.dtx @@ -69,7 +69,7 @@ %</driver> % \fi % -% \CheckSum{1769} +% \CheckSum{1858} % % \changes{v1.0}{2021/10/25}{Initial release} % \changes{v1.0.4}{2021/11/05}{Fixed unintended optional argument macro expansion} @@ -79,12 +79,12 @@ % \changes{v1.0.8}{2022/07/06}{Added a new class option `declutter'} % \changes{v1.1.0}{2022/07/06}{Fixed phase wrapping in gnuplot mode} % \changes{v1.1.1}{2022/07/31}{Enable Hz and rad units} -% \changes{v1.1.5}{2024/01/11}{Detect `babel-french' to handle active characters} +% \changes{v1.1.7}{2024/02/06}{Detect and turn off shorthands to improve `babel' compatibility} % % \GetFileInfo{bodeplot.sty} -% \DoNotIndex{\newcommand,\xdef,\gdef,\def,\edef,\addplot,\approx,\arabic,\opt,\typ,\obj,\else,\if@pgfarg,\if@Hzarg,\if@radarg,\if@declutterarg,\if@babel@french,\fi,\begin,\end,\feature,\footnotesize,\draw,\detokenize,\DeclareOption,\foreach,\ifdim,\ifodd,\Im,\Re,\let,\newif,\nextgroupplot,\noexpand,\expandafter,\unexpanded,\PackageError,\PackageWarning,\relax,\RequirePackage,\tikzset,\pgfmathsetmacro,\pgfmathtruncatemacro,\ProcessOptions} +% \DoNotIndex{\newcommand,\xdef,\gdef,\def,\edef,\addplot,\approx,\arabic,\opt,\typ,\obj,\else,\if@pgfarg,\if@Hzarg,\if@radarg,\if@declutterarg,\if@babel,\fi,\begin,\end,\feature,\footnotesize,\draw,\detokenize,\DeclareOption,\foreach,\ifdim,\ifodd,\Im,\Re,\let,\newif,\nextgroupplot,\noexpand,\expandafter,\unexpanded,\PackageError,\PackageWarning,\relax,\RequirePackage,\tikzset,\pgfmathsetmacro,\pgfmathtruncatemacro,\ProcessOptions} % -% \title{The \textsf{bodeplot} package\\version 1.1.6} +% \title{The \textsf{bodeplot} package\\version 1.1.7} % \author{Rushikesh Kamalapurkar \\ \texttt{rlkamalapurkar@gmail.com}} % % \maketitle @@ -839,7 +839,6 @@ Nyquist plots with additional commands, using two different macros % \changes{v1.0.3}{2021/11/03}{Added jobname to gnuplot prefix} % \changes{v1.0.8}{2022/07/06}{Fixed issue \#6} % \changes{v1.1.4}{2023/10/12}{Changed phase wrapping in pgf mode} -% \changes{v1.1.5}{2024/01/11}{Added babel option to handle active characters} % We start by processing the class options. % \begin{macrocode} \newif\if@pgfarg\@pgfargfalse @@ -904,17 +903,27 @@ Nyquist plots with additional commands, using two different macros % \end{macro} % \end{macro} % \end{macro} -% \begin{macro}{\if@babel@french} -% Check if the |babel| package is loaded with French language option.\changes{v1.1.6}{2024/01/14}{Detect `babel-french' using `frenchbsetup'} +% \begin{macro}{\if@babel} +% \begin{macro}{\shorthand@list} +% Check if the |babel| package is loaded and generate a list of shorthands if it is. The code is based on \href{https://tex.stackexchange.com/a/708797/110602}{this stackexchange answer}.\changes{v1.1.6}{2024/01/14}{Detect `babel-french' using `frenchbsetup'}\changes{v1.1.7}{2024/02/06}{Directly detect shorthands instead of detecting the language.} % \begin{macrocode} -\newif\if@babel@french\@babel@frenchfalse -\AtBeginDocument{ - \ifdefined\frenchbsetup - \@babel@frenchtrue - \fi +\newif\if@babel\@babelfalse +\AtBeginDocument{% + \@ifpackageloaded{babel}{% + \@babeltrue + \let\shorthand@list\@empty + \def\do#1{% + \begingroup + \lccode`\~=`#1\relax + \lowercase{\ifbabelshorthand~{\g@addto@macro\shorthand@list{~}}{}} + \endgroup + } + \dospecials + }{} } % \end{macrocode} % \end{macro} +% \end{macro} % \begin{macro}{bode@style} % Default axis properties for all plot macros are collected in this |pgf| style. % \begin{macrocode} @@ -1325,19 +1334,19 @@ Nyquist plots with additional commands, using two different macros \end{tikzpicture} } % \end{macrocode} -% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \let\Orig@BodeZPK\BodeZPK - \renewcommand{\BodeZPK}{% - \shorthandoff{;:!?}% - \BodeZPK@Shorthandoff - } - \newcommand{\BodeZPK@Shorthandoff}[4][]{% - \Orig@BodeZPK[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% - } +\AtBeginDocument{% + \if@babel + \let\Orig@BodeZPK\BodeZPK + \renewcommand{\BodeZPK}{% + \expandafter\shorthandoff\expandafter{\shorthand@list} + \BodeZPK@Shorthandoff + } + \newcommand{\BodeZPK@Shorthandoff}[4][]{% + \Orig@BodeZPK[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} + } \fi } % \end{macrocode} @@ -1402,19 +1411,19 @@ Nyquist plots with additional commands, using two different macros \end{tikzpicture} } % \end{macrocode} -% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macrocode} \AtBeginDocument{ - \if@babel@french - \let\Orig@BodeTF\BodeTF - \renewcommand{\BodeTF}{% - \shorthandoff{;:!?}% - \BodeTF@Shorthandoff - } - \newcommand{\BodeTF@Shorthandoff}[4][]{% - \Orig@BodeTF[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% - } + \if@babel + \let\Orig@BodeTF\BodeTF + \renewcommand{\BodeTF}{% + \expandafter\shorthandoff\expandafter{\shorthand@list} + \BodeTF@Shorthandoff + } + \newcommand{\BodeTF@Shorthandoff}[4][]{% + \Orig@BodeTF[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} + } \fi } % \end{macrocode} @@ -1524,11 +1533,12 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} %\end{macro} % \begin{environment}{BodePhPlot} -% An environment to host phase plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2023/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters} +% An environment to host phase plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments. The body of the environment is grabbed as a macro to maintain compatibility with externalization in |tikz|.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2024/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of active characters instead of manually entering them.} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \AddToHook{env/BodePhPlot/begin}{\shorthandoff{;:!?}} +\AtBeginDocument{% + \if@babel + \AddToHook{env/BodePhPlot/begin}{\expandafter\shorthandoff\expandafter{\shorthand@list}} + \AddToHook{env/BodePhPlot/end}{\expandafter\shorthandon\expandafter{\shorthand@list}} \fi } \NewDocumentEnvironment{BodePhPlot}{O{}mm+b}{ @@ -1553,11 +1563,12 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} % \end{environment} % \begin{environment}{BodeMagPlot} -% An environment to host magnitude plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2023/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters} +% An environment to host magnitude plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2024/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of active characters instead of manually entering them.} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \AddToHook{env/BodeMagPlot/begin}{\shorthandoff{;:!?}} +\AtBeginDocument{% + \if@babel + \AddToHook{env/BodeMagPlot/begin}{\expandafter\shorthandoff\expandafter{\shorthand@list}} + \AddToHook{env/BodeMagPlot/end}{\expandafter\shorthandon\expandafter{\shorthand@list}} \fi } \NewDocumentEnvironment{BodeMagPlot}{O{}mm+b}{ @@ -1582,11 +1593,12 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} % \end{environment} % \begin{environment}{BodePlot} -% Same as |BodeMagPlot|. The |BodePlot| environment is deprecated as of v1.1.0, please use the |BodePhPlot| and |BodeMagPlot| environments instead.\changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.0}{2022/02/20}{Deprecated BodePlot environment}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2023/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters} +% Same as |BodeMagPlot|. The |BodePlot| environment is deprecated as of v1.1.0, please use the |BodePhPlot| and |BodeMagPlot| environments instead.\changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.0}{2022/02/20}{Deprecated BodePlot environment}\changes{v1.1.1}{2022/07/31}{Enabled `Hz' and `rad' units for frequency and phase, respectively}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEnviron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2024/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of active characters instead of manually entering them.} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \AddToHook{env/BodePlot/begin}{\shorthandoff{;:!?}} +\AtBeginDocument{% + \if@babel + \AddToHook{env/BodePlot/begin}{\expandafter\shorthandoff\expandafter{\shorthand@list}} + \AddToHook{env/BodePlot/end}{\expandafter\shorthandon\expandafter{\shorthand@list}} \fi } \NewDocumentEnvironment{BodePlot}{O{}mm+b}{ @@ -1889,19 +1901,19 @@ Nyquist plots with additional commands, using two different macros \end{tikzpicture} } % \end{macrocode} -% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \let\Orig@NyquistZPK\NyquistZPK - \renewcommand{\NyquistZPK}{% - \shorthandoff{;:!?}% - \NyquistZPK@Shorthandoff - } - \newcommand{\NyquistZPK@Shorthandoff}[4][]{% - \Orig@NyquistZPK[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% - } +\AtBeginDocument{% + \if@babel + \let\Orig@NyquistZPK\NyquistZPK + \renewcommand{\NyquistZPK}{% + \expandafter\shorthandoff\expandafter{\shorthand@list} + \NyquistZPK@Shorthandoff + } + \newcommand{\NyquistZPK@Shorthandoff}[4][]{% + \Orig@NyquistZPK[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} + } \fi } % \end{macrocode} @@ -1944,19 +1956,19 @@ Nyquist plots with additional commands, using two different macros \end{tikzpicture} } % \end{macrocode} -% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% The following code handles active characters to avoid conflicts with `babel.'\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \let\Orig@NyquistTF\NyquistTF - \renewcommand{\NyquistTF}{% - \shorthandoff{;:!?}% - \NyquistTF@Shorthandoff - } - \newcommand{\NyquistTF@Shorthandoff}[4][]{% - \Orig@NyquistTF[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% - } +\AtBeginDocument{% + \if@babel + \let\Orig@NyquistTF\NyquistTF + \renewcommand{\NyquistTF}{% + \expandafter\shorthandoff\expandafter{\shorthand@list} + \NyquistTF@Shorthandoff + } + \newcommand{\NyquistTF@Shorthandoff}[4][]{% + \Orig@NyquistTF[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} + } \fi } % \end{macrocode} @@ -2006,11 +2018,12 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} %\end{macro} %\begin{macro}{NyquistPlot} -% An environment to host |\addNyquist...| macros that pass parametric functions to |\addplot|. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |axis| environments. \changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEniron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2023/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters} +% An environment to host |\addNyquist...| macros that pass parametric functions to |\addplot|. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |axis| environments. \changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEniron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2024/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of active characters instead of manually entering them.} % \begin{macrocode} -\AtBeginDocument{ - \if@babel@french - \AddToHook{env/NyquistPlot/begin}{\shorthandoff{;:!?}} +\AtBeginDocument{% + \if@babel + \AddToHook{env/NyquistPlot/begin}{\expandafter\shorthandoff\expandafter{\shorthand@list}} + \AddToHook{env/NyquistPlot/end}{\expandafter\shorthandon\expandafter{\shorthand@list}} \fi } \NewDocumentEnvironment{NyquistPlot}{O{}mm+b}{ @@ -2067,11 +2080,11 @@ Nyquist plots with additional commands, using two different macros % \end{macro} % \subsection{Nichols charts} % \begin{macro}{\NicholsZPK} -% \changes{v1.0.3}{2021/11/03}{Added commands and tikz options}\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% \changes{v1.0.3}{2021/11/03}{Added commands and tikz options}\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macro}{\NicholsTF} -% \changes{v1.0.3}{2021/11/03}{Added commands and tikz options}\changes{v1.1.5}{2023/01/11}{Added code to handle active characters} +% \changes{v1.0.3}{2021/11/03}{Added commands and tikz options}\changes{v1.1.5}{2024/01/11}{Added code to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of shorthands instead of manually specifying them} % \begin{macro}{NicholsChart} -% \changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEniron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2023/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters} +% \changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.2}{2022/10/29}{Defined using the `NewEniron' command from the `environ' package to fix conflicts with externalization}\changes{v1.1.5}{2024/01/11}{Defined using the `NewDocumentEnvironment' command from the `xparse' package and added a hook to handle active characters}\changes{v1.1.7}{2024/02/06}{Use auto-generated list of active characters instead of manually entering them.} % \begin{macro}{\addNicholsZPKChart} % \changes{v1.1.3}{2022/11/02}{Changed implementation to respect user-supplied domain} % \begin{macro}{\addNicholsTFChart} @@ -2116,17 +2129,17 @@ Nyquist plots with additional commands, using two different macros \end{axis} \end{tikzpicture} } -\AtBeginDocument{ - \if@babel@french - \let\Orig@NicholsZPK\NicholsZPK - \renewcommand{\NicholsZPK}{% - \shorthandoff{;:!?}% - \NicholsZPK@Shorthandoff - } - \newcommand{\NicholsZPK@Shorthandoff}[4][]{% - \Orig@NicholsZPK[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% - } +\AtBeginDocument{% + \if@babel + \let\Orig@NicholsZPK\NicholsZPK + \renewcommand{\NicholsZPK}{% + \expandafter\shorthandoff\expandafter{\shorthand@list} + \NicholsZPK@Shorthandoff + } + \newcommand{\NicholsZPK@Shorthandoff}[4][]{% + \Orig@NicholsZPK[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} + } \fi } \newcommand{\NicholsTF}[4][]{ @@ -2171,17 +2184,18 @@ Nyquist plots with additional commands, using two different macros \end{tikzpicture} } \AtBeginDocument{ - \if@babel@french + \if@babel \let\Orig@NicholsTF\NicholsTF \renewcommand{\NicholsTF}{% - \shorthandoff{;:!?}% + \expandafter\shorthandoff\expandafter{\shorthand@list} \NicholsTF@Shorthandoff } \newcommand{\NicholsTF@Shorthandoff}[4][]{% - \Orig@NicholsTF[#1]{#2}{#3}{#4}% - \shorthandon{;:!?}% + \Orig@NicholsTF[#1]{#2}{#3}{#4} + \expandafter\shorthandon\expandafter{\shorthand@list} } - \AddToHook{env/NicholsChart/begin}{\shorthandoff{;:!?}} + \AddToHook{env/NicholsChart/begin}{\expandafter\shorthandoff\expandafter{\shorthand@list}} + \AddToHook{env/NicholsChart/end}{\expandafter\shorthandon\expandafter{\shorthand@list}} \fi } \NewDocumentEnvironment{NicholsChart}{O{}mm+b}{ diff --git a/graphics/pgf/contrib/bodeplot/bodeplot.pdf b/graphics/pgf/contrib/bodeplot/bodeplot.pdf Binary files differnew file mode 100644 index 0000000000..34a34a224a --- /dev/null +++ b/graphics/pgf/contrib/bodeplot/bodeplot.pdf |