diff options
author | Norbert Preining <norbert@preining.info> | 2023-06-13 03:01:24 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-06-13 03:01:24 +0000 |
commit | af047c6e9cda7dd92590260e413522353215bf2d (patch) | |
tree | 41d7a73410e22152d46ea1c37e5c3425c38e4789 /macros/latex/contrib | |
parent | c17d6d7111c3e6e6d92d99ba3b5bf8caf4d5b911 (diff) |
CTAN sync 202306130301
Diffstat (limited to 'macros/latex/contrib')
41 files changed, 380 insertions, 116 deletions
diff --git a/macros/latex/contrib/acmart/README b/macros/latex/contrib/acmart/README index eeff791cae..3b62854d5d 100644 --- a/macros/latex/contrib/acmart/README +++ b/macros/latex/contrib/acmart/README @@ -12,6 +12,8 @@ The production version is the one on CTAN and ACM sites. Changes +Version 1.90a Changes in the sample keywords and concepts + Version 1.90 Journal ISSN updated Version 1.89a Added version info to .bst diff --git a/macros/latex/contrib/acmart/acm-jdslogo.png b/macros/latex/contrib/acmart/acm-jdslogo.png Binary files differdeleted file mode 100644 index 9772aed929..0000000000 --- a/macros/latex/contrib/acmart/acm-jdslogo.png +++ /dev/null diff --git a/macros/latex/contrib/acmart/acmart.dtx b/macros/latex/contrib/acmart/acmart.dtx index e0785f25e3..e08f337e3f 100644 --- a/macros/latex/contrib/acmart/acmart.dtx +++ b/macros/latex/contrib/acmart/acmart.dtx @@ -2269,7 +2269,7 @@ \ProvidesFile{acmart.dtx} %</gobble> %<class>\ProvidesClass{acmart} -[2023/03/30 v1.90 Typesetting articles for the Association for Computing Machinery] +[2023/06/11 v1.90a Typesetting articles for the Association for Computing Machinery] % \end{macrocode} % % \changes{v1.00}{2016/04/14}{First released version} @@ -2380,6 +2380,7 @@ % \changes{1.84}{2022/04/09}{New journals: JDS, GAMES} % \changes{1.85}{2022/05/08}{Added CC licenses} % \changes{1.87}{2022/08/02}{New format: |acmcp|} +% \changes{1.90a}{2023/06/11}{Changes in the sample keywords and concepts} % % And the driver code: % \begin{macrocode} diff --git a/macros/latex/contrib/acmart/acmart.pdf b/macros/latex/contrib/acmart/acmart.pdf Binary files differindex 98dc9ce130..c552cc81d5 100644 --- a/macros/latex/contrib/acmart/acmart.pdf +++ b/macros/latex/contrib/acmart/acmart.pdf diff --git a/macros/latex/contrib/acmart/acmguide.pdf b/macros/latex/contrib/acmart/acmguide.pdf Binary files differindex 9ea3331801..827b800a4b 100644 --- a/macros/latex/contrib/acmart/acmguide.pdf +++ b/macros/latex/contrib/acmart/acmguide.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmcp.pdf b/macros/latex/contrib/acmart/samples/sample-acmcp.pdf Binary files differdeleted file mode 100644 index 1452670cff..0000000000 --- a/macros/latex/contrib/acmart/samples/sample-acmcp.pdf +++ /dev/null diff --git a/macros/latex/contrib/acmart/samples/sample-acmengage.pdf b/macros/latex/contrib/acmart/samples/sample-acmengage.pdf Binary files differindex f1038f193e..f24e2c6ec1 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmengage.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmengage.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmlarge.pdf b/macros/latex/contrib/acmart/samples/sample-acmlarge.pdf Binary files differindex 30fe2c052c..4d673c5d80 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmlarge.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmlarge.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmsmall-biblatex.pdf b/macros/latex/contrib/acmart/samples/sample-acmsmall-biblatex.pdf Binary files differindex 7f14794779..9b47c3463f 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmsmall-biblatex.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmsmall-biblatex.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmsmall-conf.pdf b/macros/latex/contrib/acmart/samples/sample-acmsmall-conf.pdf Binary files differindex deb759aa6c..9061ab68a3 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmsmall-conf.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmsmall-conf.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmsmall-submission.pdf b/macros/latex/contrib/acmart/samples/sample-acmsmall-submission.pdf Binary files differindex c5855e98f0..2e1df7b022 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmsmall-submission.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmsmall-submission.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmsmall.pdf b/macros/latex/contrib/acmart/samples/sample-acmsmall.pdf Binary files differindex 6c78efb700..80d42df1f2 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmsmall.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmsmall.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-acmtog.pdf b/macros/latex/contrib/acmart/samples/sample-acmtog.pdf Binary files differindex 84ef572d8c..3bc83f69c7 100644 --- a/macros/latex/contrib/acmart/samples/sample-acmtog.pdf +++ b/macros/latex/contrib/acmart/samples/sample-acmtog.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-authordraft.pdf b/macros/latex/contrib/acmart/samples/sample-authordraft.pdf Binary files differindex e0e41395d7..00a2dfa98b 100644 --- a/macros/latex/contrib/acmart/samples/sample-authordraft.pdf +++ b/macros/latex/contrib/acmart/samples/sample-authordraft.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-lualatex.pdf b/macros/latex/contrib/acmart/samples/sample-lualatex.pdf Binary files differindex 160af90458..6ed8b6ff1c 100644 --- a/macros/latex/contrib/acmart/samples/sample-lualatex.pdf +++ b/macros/latex/contrib/acmart/samples/sample-lualatex.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-manuscript.pdf b/macros/latex/contrib/acmart/samples/sample-manuscript.pdf Binary files differindex bba208515d..e8adbcc302 100644 --- a/macros/latex/contrib/acmart/samples/sample-manuscript.pdf +++ b/macros/latex/contrib/acmart/samples/sample-manuscript.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-sigconf-biblatex.pdf b/macros/latex/contrib/acmart/samples/sample-sigconf-biblatex.pdf Binary files differindex e34c15f125..b7342c9f73 100644 --- a/macros/latex/contrib/acmart/samples/sample-sigconf-biblatex.pdf +++ b/macros/latex/contrib/acmart/samples/sample-sigconf-biblatex.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-sigconf-i13n.pdf b/macros/latex/contrib/acmart/samples/sample-sigconf-i13n.pdf Binary files differindex c232725b7d..b77e92afda 100644 --- a/macros/latex/contrib/acmart/samples/sample-sigconf-i13n.pdf +++ b/macros/latex/contrib/acmart/samples/sample-sigconf-i13n.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-sigconf.pdf b/macros/latex/contrib/acmart/samples/sample-sigconf.pdf Binary files differindex 0acb701daa..453a36bc4d 100644 --- a/macros/latex/contrib/acmart/samples/sample-sigconf.pdf +++ b/macros/latex/contrib/acmart/samples/sample-sigconf.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-sigplan.pdf b/macros/latex/contrib/acmart/samples/sample-sigplan.pdf Binary files differindex 71fd197a76..8db4c1d893 100644 --- a/macros/latex/contrib/acmart/samples/sample-sigplan.pdf +++ b/macros/latex/contrib/acmart/samples/sample-sigplan.pdf diff --git a/macros/latex/contrib/acmart/samples/sample-xelatex.pdf b/macros/latex/contrib/acmart/samples/sample-xelatex.pdf Binary files differindex dd64998d5f..da8d98051f 100644 --- a/macros/latex/contrib/acmart/samples/sample-xelatex.pdf +++ b/macros/latex/contrib/acmart/samples/sample-xelatex.pdf diff --git a/macros/latex/contrib/acmart/samples/samples.dtx b/macros/latex/contrib/acmart/samples/samples.dtx index 74b269a76e..b455ca191e 100644 --- a/macros/latex/contrib/acmart/samples/samples.dtx +++ b/macros/latex/contrib/acmart/samples/samples.dtx @@ -322,39 +322,40 @@ \begin{CCSXML} <ccs2012> <concept> - <concept_id>10010520.10010553.10010562</concept_id> - <concept_desc>Computer systems organization~Embedded systems</concept_desc> + <concept_id>00000000.0000000.0000000</concept_id> + <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc> <concept_significance>500</concept_significance> </concept> <concept> - <concept_id>10010520.10010575.10010755</concept_id> - <concept_desc>Computer systems organization~Redundancy</concept_desc> + <concept_id>00000000.00000000.00000000</concept_id> + <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc> <concept_significance>300</concept_significance> </concept> <concept> - <concept_id>10010520.10010553.10010554</concept_id> - <concept_desc>Computer systems organization~Robotics</concept_desc> + <concept_id>00000000.00000000.00000000</concept_id> + <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc> <concept_significance>100</concept_significance> </concept> <concept> - <concept_id>10003033.10003083.10003095</concept_id> - <concept_desc>Networks~Network reliability</concept_desc> + <concept_id>00000000.00000000.00000000</concept_id> + <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc> <concept_significance>100</concept_significance> </concept> </ccs2012> \end{CCSXML} -\ccsdesc[500]{Computer systems organization~Embedded systems} -\ccsdesc[300]{Computer systems organization~Redundancy} -\ccsdesc{Computer systems organization~Robotics} -\ccsdesc[100]{Networks~Network reliability} +\ccsdesc[500]{Do Not Use This Code~Generate the Correct Terms for Your Paper} +\ccsdesc[300]{Do Not Use This Code~Generate the Correct Terms for Your Paper} +\ccsdesc{Do Not Use This Code~Generate the Correct Terms for Your Paper} +\ccsdesc[100]{Do Not Use This Code~Generate the Correct Terms for Your Paper} %</manuscript|acmsmall|acmsmall-submission|acmsmall-biblatex|acmlarge|acmtog|sigconf|sigconf-biblatex|authordraft|sigplan|sigchi|sigchi-a|acmsmall-conf|sigconf-i13n> %<*manuscript|acmsmall|acmsmall-submission|acmsmall-biblatex|acmlarge|acmtog|sigconf|sigconf-biblatex|authordraft|sigplan|sigchi|sigchi-a|acmsmall-conf|sigconf-i13n|acmcp> %% %% Keywords. The author(s) should pick words that accurately describe %% the work being presented. Separate the keywords with commas. -\keywords{datasets, neural networks, gaze detection, text tagging} +\keywords{Do, Not, Us, This, Code, Put, the, Correct, Terms, for, + Your, Paper} %<sigconf-i13n>\translatedkeywords{french}{ensembles de données, %<sigconf-i13n> réseaux de neurones, %<sigconf-i13n> détection du regard, marquage de texte} diff --git a/macros/latex/contrib/postit/doc/postit-doc-en.pdf b/macros/latex/contrib/postit/doc/postit-doc-en.pdf Binary files differindex 808e152c71..b5c83267d7 100644 --- a/macros/latex/contrib/postit/doc/postit-doc-en.pdf +++ b/macros/latex/contrib/postit/doc/postit-doc-en.pdf diff --git a/macros/latex/contrib/postit/doc/postit-doc-en.tex b/macros/latex/contrib/postit/doc/postit-doc-en.tex index 933ecc8390..f08ec59d37 100644 --- a/macros/latex/contrib/postit/doc/postit-doc-en.tex +++ b/macros/latex/contrib/postit/doc/postit-doc-en.tex @@ -4,8 +4,8 @@ \documentclass[english,a4paper,11pt]{article} \usepackage[margin=2cm,includefoot]{geometry} -\def\TPversion{0.1.2} -\def\TPdate{06/06/2023} +\def\TPversion{0.1.3} +\def\TPdate{12/06/2023} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{amsmath,amssymb} @@ -88,7 +88,7 @@ morekeywords={PostItNote,\MiniPostIt},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={Color,PinColor,Pin,Width,Hieght,Rotate,Shadow,Corner,PinShift,AlignH,AlignV,AlignPostIt,Border,ExtraRightMargin,Render,Title,FontTitle},% + morekeywords={Color,PinColor,Pin,Width,Hieght,Rotate,Shadow,Corner,PinShift,AlignH,AlignV,AlignPostIt,Border,ExtraRightMargin,Render,Title,FontTitle,StorePostIt},% keywordstyle={\color{orange}} },% #1 @@ -162,18 +162,23 @@ \vspace{1cm} -\begin{PostItNote}<center> +\begin{PostItNote}[StorePostIt=PI1]<center> This is a small Post-It ! For example \[(a+b)^2=a^2+2ab+b^2.\] \end{PostItNote} -\begin{PostItNote}[Render=tikz,Width=8cm,Color=orange,Pin=Paperclip,PinColor=blue,Rotate=-5,AlignPostIt=center,Title={- With a title -},FontTitle={\color{blue!50!black}\bfseries\small\sffamily}] +\begin{PostItNote}[Render=tikz,Width=8cm,Color=orange,Pin=Paperclip,PinColor=blue,Rotate=-5,AlignPostIt=center,Title={- With a title -},FontTitle={\color{blue!50!black}\bfseries\small\sffamily},StorePostIt=PI2] \lipsum[1][1-4] \end{PostItNote} \hfill -\begin{PostItNote}[Height=6cm,AlignV=center,Color=pink,Pin=Scotch,Rotate=15,Corner,AlignPostIt=center,] +\begin{PostItNote}[Height=6cm,AlignV=center,Color=pink,Pin=Scotch,Rotate=15,Corner,AlignPostIt=center,StorePostIt=PI3] \lipsum[1][1-4] \end{PostItNote} +\begin{tikzpicture}[remember picture,overlay] + \draw[very thick,->,>=latex] (PI1-S)to[out=-90,in=90](PI2-N) ; + \draw[very thick,lime,densely dashed,->,>=latex] (PI2-E)to[out=0,in=180](PI3-S-W) ; +\end{tikzpicture} + \vspace{0.5cm} %\hfill{}\textit{Merci à Denis Bitouzé et à Gilles Le Bourhis pour leurs retours et idées !} @@ -205,6 +210,8 @@ \section{History} +\verb|v0.1.3|~:~~~~Nodes for anchor points. + \verb|v0.1.2|~:~~~~English version. \verb|v0.1.1|~:~~~~\motcletex!\vphantom! for \textit{mini-}Post-It + Bugfixes + \TikZ{} rendering + optional title . @@ -223,7 +230,8 @@ The package proposes small Post-It notes, in a \textsf{tex} doc, created with \p \begin{itemize} \item change dimensions orcolor ; \item use pin deocration like Paperclip, Pushpin or Scotch ; - \item customize border and/or corner. + \item customize border and/or corner ; + \item use anchor points for each Post-It. \end{itemize} The package propose a command to display \textit{mini-}Post-It (created with \motcletex!tcbox!), with color and shadow customization. @@ -251,10 +259,11 @@ There's no option, and \packagetex!xcolor! isn't loaded. \item \packagetex!tikz! libraries : \begin{itemize} \item \packagetex!tikz.calc! ; + \item \packagetex!tikz.babel! ; \item \packagetex!tikz.decorations! ; \item \packagetex!tikz.decorations.pathmorphing! ; \end{itemize} - \item \packagetex!settobox!, \packagetex!xstring! and \packagetex!simplekv!. + \item \packagetex!settobox!, \packagetex!xstring!, \packagetex!varwidth! and \packagetex!simplekv!. \end{itemize} It’s mostly compatible with \textsf{latex}, \textsf{pdflatex}, \textsf{lualatex} or \textsf{xelatex} compilation ! @@ -336,12 +345,13 @@ For horizontal alignement, \motcletex!\hfill! or \motcletex!flush...! can be use With a overlapping pin and the \textsf{tcbox} rendering, a vertical spacing before can be necessary, like \motcletex!\vspace! or \motcletex!\bigskip!\ldots \end{warningblock} -\subsection{Clés et options} +\subsection{Keys and options} \begin{tipblock} The first argument, mandatory and between \texttt{[...]}, proposes the following \Cle{keys} : \begin{itemize} + \item \cmaj{0.1.3} \Cle{StorePostIt} : name (for futher \TikZ{} code) of the Post-It ; \hfill{}default : \Cle{PostIt} \item \Cle{Width} : width (in cm) of the Post-It ; \hfill{}default : \Cle{6cm} \item \Cle{Color} : color of the Post-It (border is a bit darker) ; \hfill{}default : \Cle{yellow} \item \Cle{Height} : hieght (in cm, if needed) of the Post-It (\textit{automatic} by default) ; @@ -381,6 +391,47 @@ The second argument, optional and between \texttt{<...>} is used to parse option They can be used to modify locally options not present in the keys. \end{tipblock} +\subsection{Anchor points} + +\begin{tipblock} +Some anchor points are created with the code : + +\begin{itemize} + \item \motcletex!(<name>-N)!, \motcletex!(<name>-E)!, \motcletex!(<name>-S)! et \motcletex!(<name>-W)! for North/East/South/West ; + \item \motcletex!(<name>-N-W)!, \motcletex!(<name>-N-E)!, \motcletex!(<name>-S-E)! and \motcletex!(<name>-S-W)! for North East/North West/\ldots. +\end{itemize} +\end{tipblock} + +\begin{DemoCode}[] +\begin{center} +\begin{PostItNote}[Rotate=10,Pin=None,Render=tikz,StorePostIt=MySmallNote1] + \lipsum[1][1-2] +\end{PostItNote} +\end{center} +\end{DemoCode} + +\begin{tikzpicture}[remember picture,overlay] + \foreach \dir/\pos in {N-W/above left,N/above,N-E/above right,E/right, S-E/below right,S/below,S-W/below left,W/left} + {% + \draw[draw=blue,fill=red] (MySmallNote1-\dir) circle[radius=2pt] node[text=gray,\pos,font=\scriptsize\ttfamily] {MySmallNote1-\dir};% + } +\end{tikzpicture} + +\begin{DemoCode}[] +\begin{PostItNote}[StorePostIt=NoteY]<center> + This is a small Post-It ! For example \[(a+b)^2=a^2+2ab+b^2.\] +\end{PostItNote}\\ +\begin{PostItNote}[Render=tikz,Width=8cm,Color=blue,Rotate=-5,StorePostIt=NoteZ] + \lipsum[1][1-2] +\end{PostItNote} + +\begin{tikzpicture}[remember picture,overlay] + \draw[very thick,->,>=latex] (NoteY-S)to[out=-90,in=90](NoteZ-N) ; +\end{tikzpicture} +\end{DemoCode} + +\subsection{Examples} + \begin{DemoCode}[] \begin{PostItNote}%tcbox rendering [Color=cyan,Pin=Paperclip,Width=10cm,Rotate=10]<center,right=1.5cm> @@ -405,10 +456,6 @@ They can be used to modify locally options not present in the keys. \end{PostItNote}\hfill~ \end{DemoCode} -\pagebreak - -\subsection{Examples} - \begin{DemoCode}[] %usepackage{wrapstuff} \begin{wrapstuff}[r,top=1] diff --git a/macros/latex/contrib/postit/doc/postit-doc-fr.pdf b/macros/latex/contrib/postit/doc/postit-doc-fr.pdf Binary files differindex cd0466ba1f..4f1da42dd4 100644 --- a/macros/latex/contrib/postit/doc/postit-doc-fr.pdf +++ b/macros/latex/contrib/postit/doc/postit-doc-fr.pdf diff --git a/macros/latex/contrib/postit/doc/postit-doc-fr.tex b/macros/latex/contrib/postit/doc/postit-doc-fr.tex index 9cc78fa4ba..e86bc97ec9 100644 --- a/macros/latex/contrib/postit/doc/postit-doc-fr.tex +++ b/macros/latex/contrib/postit/doc/postit-doc-fr.tex @@ -4,8 +4,8 @@ \documentclass[french,a4paper,11pt]{article} \usepackage[margin=2cm,includefoot]{geometry} -\def\TPversion{0.1.2} -\def\TPdate{6 juin 2023} +\def\TPversion{0.1.3} +\def\TPdate{12 juin 2023} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{amsmath,amssymb} @@ -80,14 +80,14 @@ keywordstyle={\color{blue}},% classoffset=1,% alsoletter={-},% - morekeywords={center,right,justify,left,\lipsum},% + morekeywords={center,justify,\lipsum},% keywordstyle={\color{violet}},% classoffset=2,% alsoletter={-},% morekeywords={PostIt,\MiniPostIt},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={Couleur,CouleurAttache,Attache,Largeur,Hauteur,Inclinaison,Ombre,Coin,DecalAttache,AlignementH,AlignementV,AlignementPostIt,Bordure,ExtraMargeDroite,Rendu,Titre,PoliceTitre},% + morekeywords={Couleur,CouleurAttache,Attache,Largeur,Hauteur,Inclinaison,Ombre,Coin,DecalAttache,AlignementH,AlignementV,AlignementPostIt,Bordure,ExtraMargeDroite,Rendu,Titre,PoliceTitre,RappelPostIt},% keywordstyle={\color{orange}} },% #1 @@ -153,7 +153,7 @@ \vspace{0.25cm} -{$\blacktriangleright$~~Placer et personnaliser des Post-It ou des \textit{mini-}Post-It.} +{$\blacktriangleright$~~Placer/personnaliser/nommer des Post-It ou des \textit{mini-}Post-It.} \vspace{0.25cm} @@ -161,18 +161,24 @@ \vspace{1cm} -\begin{PostIt}<center> +\begin{PostIt}[RappelPostIt=PI1]<center> Ceci est un petit Post-It ! Pour rappeler par exemple que \[(a+b)^2=a^2+2ab+b^2.\] \end{PostIt} -\begin{PostIt}[Rendu=tikz,Largeur=8cm,Couleur=orange,Attache=Trombone,CouleurAttache=blue,Inclinaison=-5,AlignementPostIt=center,Titre={- Titre -},PoliceTitre={\color{blue!50!black}\bfseries\small\sffamily}] +\begin{PostIt}[Rendu=tikz,Largeur=8cm,Couleur=orange,Attache=Trombone,CouleurAttache=blue,Inclinaison=-5,AlignementPostIt=center,Titre={- Titre -},PoliceTitre={\color{blue!50!black}\bfseries\small\sffamily},RappelPostIt=PI2] \lipsum[1][1-4] + \end{PostIt} \hfill -\begin{PostIt}[Hauteur=6cm,AlignementV=center,Couleur=pink,CouleurAttache=blue,Inclinaison=15,Coin,AlignementPostIt=center,Attache=Scotch] +\begin{PostIt}[Hauteur=6cm,AlignementV=center,Couleur=pink,CouleurAttache=blue,Inclinaison=15,Coin,AlignementPostIt=center,Attache=Scotch,RappelPostIt=PI3] \lipsum[1][1-4] \end{PostIt} +\begin{tikzpicture}[remember picture,overlay] + \draw[very thick,->,>=latex] (PI1-S)to[out=-90,in=90](PI2-N) ; + \draw[very thick,lime,densely dashed,->,>=latex] (PI2-E)to[out=0,in=180](PI3-S-O) ; +\end{tikzpicture} + \vspace{0.5cm} %\hfill{}\textit{Merci à Denis Bitouzé et à Gilles Le Bourhis pour leurs retours et idées !} @@ -204,6 +210,8 @@ \section{Historique} +\verb|v0.1.3|~:~~~~Les Post-It ont désormais un nom pour réutilisation ultérieure. + \verb|v0.1.2|~:~~~~Ajout des clés en langue anglaise. \verb|v0.1.1|~:~~~~Ajout d'un \motcletex!\vphantom! pour les \textit{mini-}Post-It (hauteur \textit{uniforme}) + Correction de bugs. @@ -224,7 +232,8 @@ Le package propose de quoi afficher, dans son document \LaTeX, un Post-It (créà \begin{itemize} \item de spécifier les dimensions, la couleur ; \item de rajouter une \textit{attache} comme un trombone ou une punaise ; - \item de personnaliser les bordure et le coin. + \item de personnaliser les bordure et le coin ; + \item réutiliser des points d'ancrage du Post-It pour décorations ultérieures. \end{itemize} Le package propose également de quoi créer un \textit{mini-}Post-It (créé à l'aide d'une \motcletex!tcbox!), avec la possibilité de gérer la couleur et l'ombre. @@ -252,10 +261,11 @@ Il n'existe pas d'option pour le package, et \packagetex!xcolor! n'est pas charg \item les librairies \packagetex!tikz! : \begin{itemize} \item \packagetex!tikz.calc! ; + \item \packagetex!tikz.babel! ; \item \packagetex!tikz.decorations! ; \item \packagetex!tikz.decorations.pathmorphing! ; \end{itemize} - \item \packagetex!settobox!, \packagetex!xstring! et \packagetex!simplekv!. + \item \packagetex!settobox!, \packagetex!xstring!, \packagetex!varwidth! et \packagetex!simplekv!. \end{itemize} Il est compatible avec les compilations usuelles en \textsf{latex}, \textsf{pdflatex}, \textsf{lualatex} ou \textsf{xelatex}. @@ -342,7 +352,8 @@ Avec une \textit{attache} qui "déborde" verticalement (rendu \textsf{tcbox}), i Le premier argument, optionnel et entre \texttt{[...]}, propose les \Cle{clés} suivantes : \begin{itemize} - \item \Cle{Largeur} : largeur (en cm) du Post-It ; \hfill{}défaut : \Cle{6cm} + \item \cmaj{0.1.3} \Cle{RappelPostIt} : nom (pour du code \TikZ{} ultérieur) du Post-It ; \hfill{}défaut : \Cle{PostIt} + \item \Cle{Largeur} : largeur (en cm) du Post-It ; \hfill{}défaut : \Cle{6cm} \item \Cle{Couleur} : couleur du Post-It (la bordure sera plus foncée) ; \hfill{}défaut : \Cle{yellow} \item \Cle{Hauteur} : hauteur (en cm si déclarée) du Post-It (par défaut elle est \textit{automatique}) ; @@ -383,6 +394,47 @@ Le second argument, optionnel et entre \texttt{<...>} correspond à des options Elles permettent de modifier localement des options non paramétrées par des clés présentées précédemment. \end{tipblock} +\subsection{Fonctionnement des points d'ancrage} + +\begin{tipblock} +En plus du Post-It, le package \packagetex!postit! crée huit points d'ancrage pour le Post-It, qui seront nommés : + +\begin{itemize} + \item \motcletex!(<nom>-N)!, \motcletex!(<nom>-E)!, \motcletex!(<nom>-S)! et \motcletex!(<nom>-O)! pour les points Nord/Est/Sud/Ouest ; + \item \motcletex!(<nom>-N-O)!, \motcletex!(<nom>-N-E)!, \motcletex!(<nom>-S-E)! et \motcletex!(<nom>-S-O)! pour les points Nord Est/Nord Ouest/\ldots. +\end{itemize} +\end{tipblock} + +\begin{DemoCode}[] +\begin{center} +\begin{PostIt}[Inclinaison=10,Attache=Non,Rendu=tikz,RappelPostIt=MaPetiteNote1] + \lipsum[1][1-2] +\end{PostIt} +\end{center} +\end{DemoCode} + +\begin{tikzpicture}[remember picture,overlay] + \foreach \dir/\pos in {N-O/above left,N/above,N-E/above right,E/right, S-E/below right,S/below,S-O/below left,O/left} + {% + \draw[draw=blue,fill=red] (MaPetiteNote1-\dir) circle[radius=2pt] node[text=gray,\pos,font=\scriptsize\ttfamily] {MaPetiteNote1-\dir};% + } +\end{tikzpicture} + +\begin{DemoCode}[] +\begin{PostIt}[RappelPostIt=NoteY]<center> + Ceci est un petit Post-It ! Pour rappeler par exemple que \[(a+b)^2=a^2+2ab+b^2.\] +\end{PostIt}\\ +\begin{PostIt}[Rendu=tikz,Largeur=8cm,Couleur=blue,Inclinaison=-5,RappelPostIt=NoteZ] + \lipsum[1][1-2] +\end{PostIt} + +\begin{tikzpicture}[remember picture,overlay] + \draw[very thick,->,>=latex] (NoteY-S)to[out=-90,in=90](NoteZ-N) ; +\end{tikzpicture} +\end{DemoCode} + +\subsection{Exemples} + \begin{DemoCode}[] \begin{PostIt}%moteur de rendu tcbox (défaut) [Couleur=cyan,Attache=Trombone,Largeur=10cm,Inclinaison=10]<center,right=1.5cm> @@ -407,10 +459,6 @@ Elles permettent de modifier localement des options non paramétrées par des cl \end{PostIt}\hfill~ \end{DemoCode} -\pagebreak - -\subsection{Exemples} - \begin{DemoCode}[] %usepackage{wrapstuff} \begin{wrapstuff}[r,top=1] diff --git a/macros/latex/contrib/postit/tex/postit.sty b/macros/latex/contrib/postit/tex/postit.sty index eb52909d99..e5b78de089 100644 --- a/macros/latex/contrib/postit/tex/postit.sty +++ b/macros/latex/contrib/postit/tex/postit.sty @@ -3,7 +3,8 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{postit}[2023/06/06 0.1.2 Display sticky notes in a doc] +\ProvidesPackage{postit}[2023/06/12 0.1.3 Display sticky notes in a doc] +%0.1.3 Nodes for tikz' link between postits %0.1.2 English version (keys & command) %0.1.1 Ajout d'un \vphantom pour les mini-post-it + moteur de rendu tikz en supplément %0.1.0 Version initiale @@ -13,9 +14,10 @@ \RequirePackage{simplekv} \RequirePackage{xstring} \RequirePackage{settobox} +\RequirePackage{varwidth} %------Librairies \tcbuselibrary{skins} -\usetikzlibrary{calc,positioning,decorations,decorations.pathmorphing} +\usetikzlibrary{calc,positioning,decorations,decorations.pathmorphing,babel} %------variables utiles \newsavebox{\maboitepostit} @@ -86,7 +88,8 @@ Rendu=\def\PostItRender{#1},% ExtraMargeDroite=\def\PostItExtraMargin{#1},% Titre=\def\PostItTitre{#1},% - PoliceTitre=\def\PostItPoliceTitre{#1} + PoliceTitre=\def\PostItPoliceTitre{#1},% + RappelPostIt=\def\PostItRappel{#1} } \setKVdefault[postit]{% @@ -107,7 +110,8 @@ Rendu=tcbox,% ExtraMargeDroite=0cm,% Titre={},% - PoliceTitre=\normalfont\normalsize + PoliceTitre=\normalfont\normalsize,% + RappelPostIt=PostIt } %------Style principal tcolorbox @@ -140,6 +144,19 @@ \IfStrEq{\PostItDeco}{Non}% {\def\CommandeDecoration{}\def\MarginOffsetV{0mm}}% {}% + %gestion des coins/noeuds + \tcbset{noeudscoin/.style={remember,underlay={% + \coordinate (\PostItRappel-N-O) at (frame.north west) ; + \coordinate (\PostItRappel-N-E) at (frame.north east) ; + \coordinate (\PostItRappel-S-E) at (frame.south east) ; + \coordinate (\PostItRappel-S-O) at (frame.south west) ; + \coordinate (\PostItRappel-N) at (frame.north) ; + \coordinate (\PostItRappel-S) at (frame.south) ; + \coordinate (\PostItRappel-E) at (frame.east) ; + \coordinate (\PostItRappel-O) at (frame.west) ; + }% + }% + }% %cas de la bordure \ifboolKV[postit]{Bordure}% {% @@ -162,13 +179,13 @@ \IfStrEq{\PostItHauteur}{auto}% {% \ifboolKV[postit]{Ombre}% - {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,drop fuzzy shadow,top={2mm+\MarginOffsetV}]}% - {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,top={2mm+\MarginOffsetV}]}% + {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,drop fuzzy shadow,top={2mm+\MarginOffsetV},noeudscoin]}% + {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,top={2mm+\MarginOffsetV},noeudscoin]}% }% {% \ifboolKV[postit]{Ombre}% - {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,drop fuzzy shadow,height=\PostItHauteur,top={2mm+\MarginOffsetV}]}% - {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,height=\PostItHauteur,top={2mm+\MarginOffsetV}]}% + {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,drop fuzzy shadow,height=\PostItHauteur,top={2mm+\MarginOffsetV},noeudscoin]}% + {\begin{tcolorbox}[testpostit,#2,bordure,coincoin,height=\PostItHauteur,top={2mm+\MarginOffsetV},noeudscoin]}% }% \IfStrEq{\PostItTitre}{}% {}% @@ -214,7 +231,7 @@ {\def\OptionTikzPostIt{current bounding box.center}}{}% \IfStrEq{\PostItAlignPostIt}{top}% {\def\OptionTikzPostIt{current bounding box.north}}{}% - \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round] + \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round,remember picture] %tracé %ombre1/2/3 \ifboolKV[postit]{Ombre}% @@ -237,6 +254,15 @@ }% {}% %postit + \coordinate (\PostItRappel-N-O) at (0,0) ; + \coordinate (\PostItRappel-N-E) at ($(\PostItRappel-N-O)+({\PostItLarg+\PostItExtraMargin},0)$) ; + \coordinate (\PostItRappel-S-E) at ($(\PostItRappel-N-E)+({0.15},{-\hauteur+0.15})$) ; + \coordinate (\PostItRappel-S-O) at ($(\PostItRappel-S-E)+({-0.15-\PostItLarg-\PostItExtraMargin},{0.13})$) ; + \coordinate (\PostItRappel-N) at ($(\PostItRappel-N-O)!0.5!(\PostItRappel-N-E)$) ; + \coordinate (\PostItRappel-E) at ($(\PostItRappel-N-E)!0.5!(\PostItRappel-S-E)+(-0.08,0)$) ; + \coordinate (\PostItRappel-S) at ($(\PostItRappel-S-E)!0.5!(\PostItRappel-S-O)+(0,-0.07)$) ; + \coordinate (\PostItRappel-O) at ($(\PostItRappel-S-O)!0.5!(\PostItRappel-N-O)$) ; + %bordure \ifboolKV[postit]{Bordure} {% \shadedraw[draw=\PostItCoul!50!black,line width=0.1mm,top color=\PostItCoul!50,bottom color=\PostItCoul!33] @@ -402,7 +428,7 @@ {\def\OptionTikzPostIt{current bounding box.center}}{}% \IfStrEq{\PostItAlignPostIt}{top}% {\def\OptionTikzPostIt{current bounding box.north}}{}% - \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round] + \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round,remember picture] %tracé %ombre1/2/3 \ifboolKV[postit]{Ombre}% @@ -424,6 +450,15 @@ to[out=89,in=-90] (0,0) ; }% {}% + %postit noeuds + \coordinate (\PostItRappel-N-O) at (0,0) ; + \coordinate (\PostItRappel-N-E) at ($(\PostItRappel-N-O)+({\PostItLarg+\PostItExtraMargin},0)$) ; + \coordinate (\PostItRappel-S-E) at ($(\PostItRappel-N-E)+({0.05},{-\hauteur-0.05})$) ; + \coordinate (\PostItRappel-S-O) at ($(\PostItRappel-S-E)+({-\PostItLarg-\PostItExtraMargin-0.1},{0})$) ; + \coordinate (\PostItRappel-N) at ($(\PostItRappel-N-O)!0.5!(\PostItRappel-N-E)$) ; + \coordinate (\PostItRappel-E) at ($(\PostItRappel-N-E)!0.5!(\PostItRappel-S-E)+(-0.025,0)$) ; + \coordinate (\PostItRappel-S) at ($(\PostItRappel-S-E)!0.5!(\PostItRappel-S-O)$) ; + \coordinate (\PostItRappel-O) at ($(\PostItRappel-S-O)!0.5!(\PostItRappel-N-O)+(0.025,0)$) ; %postit \ifboolKV[postit]{Bordure} {% @@ -597,7 +632,8 @@ Render=\def\PostItRender{#1},% ExtraRightMargin=\def\PostItExtraMargin{#1},% Title=\def\PostItTitre{#1},% - FontTitle=\def\PostItPoliceTitre{#1} + FontTitle=\def\PostItPoliceTitre{#1},% + StorePostIt=\def\PostItRappel{#1} } \setKVdefault[postitnote]{% @@ -618,7 +654,8 @@ Render=tcbox,% ExtraRightMargin=0cm,% Title={},% - FontTitle=\normalfont\normalsize + FontTitle=\normalfont\normalsize,% + StorePostIt=PostIt } %------Style principal tcolorbox @@ -651,6 +688,19 @@ \IfStrEq{\PostItDeco}{None}% {\def\CommandeDecoration{}\def\MarginOffsetV{0mm}}% {}% + %gestion des coins/noeuds + \tcbset{noeudscoin/.style={remember,underlay={% + \coordinate (\PostItRappel-N-W) at (frame.north west) ; + \coordinate (\PostItRappel-N-E) at (frame.north east) ; + \coordinate (\PostItRappel-S-E) at (frame.south east) ; + \coordinate (\PostItRappel-S-W) at (frame.south west) ; + \coordinate (\PostItRappel-N) at (frame.north) ; + \coordinate (\PostItRappel-S) at (frame.south) ; + \coordinate (\PostItRappel-E) at (frame.east) ; + \coordinate (\PostItRappel-W) at (frame.west) ; + }% + }% + }% %cas de la bordure \ifboolKV[postitnote]{Border}% {% @@ -673,13 +723,13 @@ \IfStrEq{\PostItHauteur}{auto}% {% \ifboolKV[postitnote]{Shadow}% - {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,drop fuzzy shadow,top={2mm+\MarginOffsetV}]}% - {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,top={2mm+\MarginOffsetV}]}% + {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,drop fuzzy shadow,top={2mm+\MarginOffsetV},noeudscoin]}% + {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,top={2mm+\MarginOffsetV},noeudscoin]}% }% {% \ifboolKV[postitnote]{Shadow}% - {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,drop fuzzy shadow,height=\PostItHauteur,top={2mm+\MarginOffsetV}]}% - {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,height=\PostItHauteur,top={2mm+\MarginOffsetV}]}% + {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,drop fuzzy shadow,height=\PostItHauteur,top={2mm+\MarginOffsetV},noeudscoin]}% + {\begin{tcolorbox}[testpostitnote,#2,bordure,coincoin,height=\PostItHauteur,top={2mm+\MarginOffsetV},noeudscoin]}% }% \IfStrEq{\PostItTitre}{}% {}% @@ -725,7 +775,7 @@ {\def\OptionTikzPostIt{current bounding box.center}}{}% \IfStrEq{\PostItAlignPostIt}{top}% {\def\OptionTikzPostIt{current bounding box.north}}{}% - \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round] + \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round,remember picture] %tracé %ombre1/2/3 \ifboolKV[postitnote]{Shadow}% @@ -748,6 +798,15 @@ }% {}% %postit + \coordinate (\PostItRappel-N-W) at (0,0) ; + \coordinate (\PostItRappel-N-E) at ($(\PostItRappel-N-W)+({\PostItLarg+\PostItExtraMargin},0)$) ; + \coordinate (\PostItRappel-S-E) at ($(\PostItRappel-N-E)+({0.15},{-\hauteur+0.15})$) ; + \coordinate (\PostItRappel-S-W) at ($(\PostItRappel-S-E)+({-0.15-\PostItLarg-\PostItExtraMargin},{0.13})$) ; + \coordinate (\PostItRappel-N) at ($(\PostItRappel-N-W)!0.5!(\PostItRappel-N-E)$) ; + \coordinate (\PostItRappel-E) at ($(\PostItRappel-N-E)!0.5!(\PostItRappel-S-E)+(-0.08,0)$) ; + \coordinate (\PostItRappel-S) at ($(\PostItRappel-S-E)!0.5!(\PostItRappel-S-W)+(0,-0.07)$) ; + \coordinate (\PostItRappel-W) at ($(\PostItRappel-S-W)!0.5!(\PostItRappel-N-W)$) ; + %postit \ifboolKV[postitnote]{Shadow} {% \shadedraw[draw=\PostItCoul!50!black,line width=0.1mm,top color=\PostItCoul!50,bottom color=\PostItCoul!33] @@ -913,7 +972,7 @@ {\def\OptionTikzPostIt{current bounding box.center}}{}% \IfStrEq{\PostItAlignPostIt}{top}% {\def\OptionTikzPostIt{current bounding box.north}}{}% - \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round] + \begin{tikzpicture}[baseline=(\OptionTikzPostIt),rotate=\PostItIncline,line join=bevel,line cap=round,remember picture] %tracé %ombre1/2/3 \ifboolKV[postitnote]{Shadow}% @@ -935,6 +994,15 @@ to[out=89,in=-90] (0,0) ; }% {}% + %postit noeuds + \coordinate (\PostItRappel-N-W) at (0,0) ; + \coordinate (\PostItRappel-N-E) at ($(\PostItRappel-N-W)+({\PostItLarg+\PostItExtraMargin},0)$) ; + \coordinate (\PostItRappel-S-E) at ($(\PostItRappel-N-E)+({0.05},{-\hauteur-0.05})$) ; + \coordinate (\PostItRappel-S-W) at ($(\PostItRappel-S-E)+({-\PostItLarg-\PostItExtraMargin-0.1},{0})$) ; + \coordinate (\PostItRappel-N) at ($(\PostItRappel-N-W)!0.5!(\PostItRappel-N-E)$) ; + \coordinate (\PostItRappel-E) at ($(\PostItRappel-N-E)!0.5!(\PostItRappel-S-E)+(-0.025,0)$) ; + \coordinate (\PostItRappel-S) at ($(\PostItRappel-S-E)!0.5!(\PostItRappel-S-W)$) ; + \coordinate (\PostItRappel-W) at ($(\PostItRappel-S-W)!0.5!(\PostItRappel-N-W)+(0.025,0)$) ; %postit \ifboolKV[postitnote]{Border} {% diff --git a/macros/latex/contrib/postnotes/CHANGELOG.md b/macros/latex/contrib/postnotes/CHANGELOG.md index 54cc0ec345..7cc16f8afb 100644 --- a/macros/latex/contrib/postnotes/CHANGELOG.md +++ b/macros/latex/contrib/postnotes/CHANGELOG.md @@ -1,6 +1,18 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/postnotes/compare/v0.2.3...HEAD) +## [Unreleased](https://github.com/gusbrs/postnotes/compare/v0.2.4...HEAD) + +## [v0.2.4](https://github.com/gusbrs/postnotes/compare/v0.2.3...v0.2.4) (2023-06-12) + +### Changed +- Use new `\lTblrMeasuringBool` for identifying measuring passes in + `tabularray` tables. + +### Fixed +- Don't inhibit `postnote` counter stepping in contexts which restore counter + values in measuring passes to ensure proper measuring. +- Update User manual and regression tests for `l3kernel`'s renaming of + `\bool_case_true:n(TF)` to `\bool_case:n(TF)`. ## [v0.2.3](https://github.com/gusbrs/postnotes/compare/v0.2.2...v0.2.3) (2023-02-21) diff --git a/macros/latex/contrib/postnotes/postnotes-code.pdf b/macros/latex/contrib/postnotes/postnotes-code.pdf Binary files differindex 9c1f7bc4dd..392677b759 100644 --- a/macros/latex/contrib/postnotes/postnotes-code.pdf +++ b/macros/latex/contrib/postnotes/postnotes-code.pdf diff --git a/macros/latex/contrib/postnotes/postnotes-code.tex b/macros/latex/contrib/postnotes/postnotes-code.tex index 59ed76afd8..67aff57582 100644 --- a/macros/latex/contrib/postnotes/postnotes-code.tex +++ b/macros/latex/contrib/postnotes/postnotes-code.tex @@ -22,7 +22,7 @@ % % This work consists of the files postnotes.dtx, % postnotes.ins, -% postnotes.tex, +% postnotes-doc.tex, % postnotes-code.tex, % and the files generated from them. % diff --git a/macros/latex/contrib/postnotes/postnotes.pdf b/macros/latex/contrib/postnotes/postnotes-doc.pdf Binary files differindex 0b0f803611..11677d5e6c 100644 --- a/macros/latex/contrib/postnotes/postnotes.pdf +++ b/macros/latex/contrib/postnotes/postnotes-doc.pdf diff --git a/macros/latex/contrib/postnotes/postnotes.tex b/macros/latex/contrib/postnotes/postnotes-doc.tex index 0be7d50573..3d29f76a69 100644 --- a/macros/latex/contrib/postnotes/postnotes.tex +++ b/macros/latex/contrib/postnotes/postnotes-doc.tex @@ -22,7 +22,7 @@ % % This work consists of the files postnotes.dtx, % postnotes.ins, -% postnotes.tex, +% postnotes-doc.tex, % postnotes-code.tex, % and the files generated from them. % @@ -86,7 +86,7 @@ \ExplSyntaxOff , \NewDocumentCommand , \tl_if_eq:NNTF , - \bool_case_true:nF , + \bool_case:nF , \str_if_eq_p:ee , \prg_replicate:nn , \lipsum , @@ -754,7 +754,7 @@ their use (of course, the use of \pkg{lipsum} is just for demonstration): \ExplSyntaxOn \NewDocumentCommand \mypnheader {} { - \bool_case_true:nF + \bool_case:nF { { \str_if_eq_p:ee { \pnhdnamefirst } { intro } && diff --git a/macros/latex/contrib/postnotes/postnotes.dtx b/macros/latex/contrib/postnotes/postnotes.dtx index edf129ed9c..03a4391452 100644 --- a/macros/latex/contrib/postnotes/postnotes.dtx +++ b/macros/latex/contrib/postnotes/postnotes.dtx @@ -22,7 +22,7 @@ % % This work consists of the files postnotes.dtx, % postnotes.ins, -% postnotes.tex, +% postnotes-doc.tex, % postnotes-code.tex, % and the files generated from them. % @@ -153,7 +153,7 @@ % % % \begin{macrocode} -\ProvidesExplPackage {postnotes} {2023-02-21} {0.2.3} +\ProvidesExplPackage {postnotes} {2023-06-12} {0.2.4} {Endnotes for LaTeX} % \end{macrocode} % @@ -700,7 +700,7 @@ % offers a boolean to indicate when it is a measuring pass; \pkg{csquotes} % offers further handles. But the standard \cs{caption} offers none, and % neither does \pkg{amsmath}'s \cs{text} macro. Well, the pkg{caption} -% package has can disable the multiple passes for \cs{caption} with the option +% package can disable the multiple passes for \cs{caption} with the option % \opt{singlelinecheck}, but it is not reasonable to require it for our % purposes, so we must assume the worst case. % @@ -932,36 +932,50 @@ % conditional, obviously, will always return the true branch unless % something is done in the \texttt{postnotes/note/inhibit} hook. This hook % is meant to handle support for packages or features which may justify note -% inhibition, and the code there should set \cs{l_@@_inhibit_note_bool} and -% \cs{l_@@_print_plain_mark_bool} as appropriate to the case. +% inhibition, and the code there should set \cs{l_@@_inhibit_note_bool}, +% \cs{l_@@_print_plain_mark_bool} and +% \cs{l_@@_print_plain_mark_stepcounter_bool} as appropriate to the case. % \begin{macrocode} \bool_new:N \l_@@_inhibit_note_bool \bool_new:N \l_@@_print_plain_mark_bool +\bool_new:N \l_@@_print_plain_mark_stepcounter_bool \NewHook { postnotes/note/inhibit } \prg_new_protected_conditional:Npnn \@@_inhibit_note: { F } { \bool_set_false:N \l_@@_inhibit_note_bool \bool_set_false:N \l_@@_print_plain_mark_bool + \bool_set_false:N \l_@@_print_plain_mark_stepcounter_bool \UseHook { postnotes/note/inhibit } % \end{macrocode} % Printing a plain mark here may be needed because, if we are inhibiting the % note in a ``measuring context'' and omit it completely, the measuring being % performed will be off by the size of the mark. So, to ensure the measuring -% can be done correctly, we place the mark. Since we'd only print this mark -% in case of inhibition, when we don't actually step the counter, to typeset -% correctly the mark that would be printed if the counter had been stepped, we -% increment \cs{c@postnote} locally and grouped, and smuggle \cs{thepostnote} -% out of the group. +% can be done correctly, we place the mark. What to do with the counter +% itself, depends on the situation. In places that are known to restore the +% counter values after the measuring pass, we can let the counter be stepped. +% And, actually we should do so, for example, in a \env{tabularx} with +% multiple postnotes, if we don't step the counter, all the measuring will be +% done with the number of the first note. Otherwise, we don't actually step +% the counter but, to typeset correctly the mark that would be printed if the +% counter had been stepped, we increment \cs{c@postnote} locally and grouped, +% and smuggle \cs{thepostnote} out of the group. % \begin{macrocode} \bool_if:NT \l_@@_print_plain_mark_bool { \tl_if_empty:NT \l_@@_mark_tl { - \group_begin: - \int_incr:N \c@postnote - \exp_args:NNNx - \group_end: - \tl_set:Nn \l_@@_mark_tl { \thepostnote } + \bool_if:NTF \l_@@_print_plain_mark_stepcounter_bool + { + \stepcounter { postnote } + \tl_set:Nx \l_@@_mark_tl { \thepostnote } + } + { + \group_begin: + \int_incr:N \c@postnote + \exp_args:NNNx + \group_end: + \tl_set:Nn \l_@@_mark_tl { \thepostnote } + } } \@@_typeset_mark_wrapper:n { \@@_make_mark:nnn { \l_@@_mark_tl } { } { } } @@ -2371,6 +2385,7 @@ { \bool_set_true:N \l_@@_inhibit_note_bool \bool_set_true:N \l_@@_print_plain_mark_bool + \bool_set_true:N \l_@@_print_plain_mark_stepcounter_bool } } % \end{macrocode} @@ -2414,6 +2429,7 @@ { \bool_set_true:N \l_@@_inhibit_note_bool \bool_set_true:N \l_@@_print_plain_mark_bool + \bool_set_true:N \l_@@_print_plain_mark_stepcounter_bool } } } @@ -2445,6 +2461,7 @@ { \bool_set_true:N \l_@@_inhibit_note_bool \bool_set_true:N \l_@@_print_plain_mark_bool + \bool_set_true:N \l_@@_print_plain_mark_stepcounter_bool } } } @@ -2453,24 +2470,55 @@ % % \subsection*{\pkg{tabularray}} % -% I've tried, but I could not find any ``handle'' to distinguish in -% \pkg{tabularray} a trial/measure pass from the final one. So we use -% \cs{@@_verify_multipass:N} for it. -% -% See, however, \url{https://tex.stackexchange.com/q/675818} and -% \url{https://github.com/lvjr/tabularray/issues/179} (thanks -% \contributor{Ulrike Fischer}). In sum, there's a not yet released new -% boolean \cs{lTblrMeasuringBool} provided by \pkg{tabularray}, use it when it -% comes. -% % \begin{macrocode} \AddToHook { package/tabularray/after } { - \clist_map_inline:nn - { tblr , longtblr , talltblr , booktabs , longtabs , talltabs , +array } +% \end{macrocode} +% Since version \texttt{2023A}, from 2023-03-01, \pkg{tabularray} offers the +% \cs{lTblrMeasuringBool} which is true when measuring and false otherwise. +% See \url{https://tex.stackexchange.com/q/675818} +% and \url{https://github.com/lvjr/tabularray/issues/179} (thanks +% \contributor{Ulrike Fischer}). +% \begin{macrocode} + \bool_if_exist:NTF \lTblrMeasuringBool { - \AddToHook { env/#1/begin } [ postnotes ] - { \bool_set_true:N \l_@@_maybe_multi_bool } +% \end{macrocode} +% I'd be inclined to restrict the inhibition effect to known \pkg{tabularray} +% environments to ``keep things under control''. However this is a dedicated +% and public boolean, and users can create arbitrary new \pkg{tabularray} +% environments with \cs{NewTblrEnviron}, which we either wouldn't catch or +% have to provide an user interface for. So, for the time being, let's trust +% this boolean won't be misused by third-parties or users. Note that setting +% \cs{l_@@_print_plain_mark_stepcounter_bool} to true presumes +% \pkg{tabularray}'s \texttt{counter} module is enabled. But, since this is +% the only way to get the measuring right in this context if there is more +% than one \cs{postnote} inside a given table, pkg{postnotes} expects and +% requires the \texttt{counter} module. +% \begin{macrocode} + \AddToHook { postnotes/note/inhibit } [ postnotes ] + { + \bool_if:NT \lTblrMeasuringBool + { + \bool_set_true:N \l_@@_inhibit_note_bool + \bool_set_true:N \l_@@_print_plain_mark_bool + \bool_set_true:N \l_@@_print_plain_mark_stepcounter_bool + } + } + } + { +% \end{macrocode} +% If the new boolean is not yet available, we use \cs{@@_verify_multipass:N} +% to distinguish a trial/measure pass from the final one. +% \begin{macrocode} + \clist_map_inline:nn + { + tblr , longtblr , talltblr , booktabs , + longtabs , talltabs , +array + } + { + \AddToHook { env/#1/begin } [ postnotes ] + { \bool_set_true:N \l_@@_maybe_multi_bool } + } } } % \end{macrocode} diff --git a/macros/latex/contrib/postnotes/postnotes.ins b/macros/latex/contrib/postnotes/postnotes.ins index 3897fb0534..08c592ad16 100644 --- a/macros/latex/contrib/postnotes/postnotes.ins +++ b/macros/latex/contrib/postnotes/postnotes.ins @@ -22,7 +22,7 @@ % % This work consists of the files postnotes.dtx, % postnotes.ins, -% postnotes.tex, +% postnotes-doc.tex, % postnotes-code.tex, % and the files generated from them. % @@ -68,7 +68,7 @@ This work is "maintained" (as per LPPL maintenance status) by This work consists of the files postnotes.dtx, postnotes.ins, - postnotes.tex, + postnotes-doc.tex, postnotes-code.tex, and the files generated from them. diff --git a/macros/latex/contrib/siunitx/CHANGELOG.md b/macros/latex/contrib/siunitx/CHANGELOG.md index 8f8d0a1972..05f3d28572 100644 --- a/macros/latex/contrib/siunitx/CHANGELOG.md +++ b/macros/latex/contrib/siunitx/CHANGELOG.md @@ -7,22 +7,35 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to ## [Unreleased] +## [v3.2.6] - 2023-06-12 + +### Fixed +- Printing of symbols explicitly wrapped in `\ensuremath` + (see issue + [\#656](https://github.com/josephwright/siunitx/issues/656)) +- Printing of magnitudes for polar values when not parsing numbers + (see issue + [\#658](https://github.com/josephwright/siunitx/issues/658)) + - Alignment of separated uncertainties in tables + (see issue + [\#665](https://github.com/josephwright/siunitx/issues/665)) + ## [v3.2.5] - 2023-04-13 ### Fixed -- Use of `\mathsf` for sanserif text documents (see issues +- Use of `\mathsf` for sanserif text documents (see issue [\#655](https://github.com/josephwright/siunitx/issues/655)) ## [v3.2.4] - 2023-04-04 ### Fixed -- Parsing of 'full' uncertainty parts with leading zeros (see issues +- Parsing of 'full' uncertainty parts with leading zeros (see issue [\#652](https://github.com/josephwright/siunitx/issues/652)) ## [v3.2.3] - 2023-03-14 ### Fixed -- Allow for `parse-nmumbers = false` in handling `\ang` (see issues +- Allow for `parse-numbers = false` in handling `\ang` (see issue [\#649](https://github.com/josephwright/siunitx/issues/649)) ## [v3.2.2] - 2023-03-04 @@ -1894,7 +1907,8 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to ### Added - First public testing release (as `si`) -[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.2.5...HEAD +[Unreleased]: https://github.com/josephwright/siunitx/compare/v3.2.6...HEAD +[v3.2.6]: https://github.com/josephwright/siunitx/compare/v3.2.5...v3.2.6 [v3.2.5]: https://github.com/josephwright/siunitx/compare/v3.2.4...v3.2.5 [v3.2.4]: https://github.com/josephwright/siunitx/compare/v3.2.3...v3.2.4 [v3.2.3]: https://github.com/josephwright/siunitx/compare/v3.2.2...v3.2.3 diff --git a/macros/latex/contrib/siunitx/siunitx-code.pdf b/macros/latex/contrib/siunitx/siunitx-code.pdf Binary files differindex e757f4d116..6c105fa972 100644 --- a/macros/latex/contrib/siunitx/siunitx-code.pdf +++ b/macros/latex/contrib/siunitx/siunitx-code.pdf diff --git a/macros/latex/contrib/siunitx/siunitx-complex.dtx b/macros/latex/contrib/siunitx/siunitx-complex.dtx index fe23598950..21a8fa3be9 100644 --- a/macros/latex/contrib/siunitx/siunitx-complex.dtx +++ b/macros/latex/contrib/siunitx/siunitx-complex.dtx @@ -650,7 +650,9 @@ % \begin{macrocode} \cs_new_protected:Npn \@@_parse_polar:nn #1#2 { - \siunitx_number_parse:nN {#1} \l_@@_mag_tl + \bool_if:NTF \l_siunitx_number_parse_bool + { \siunitx_number_parse:nN {#1} \l_@@_mag_tl } + { \tl_set:Nn \l_@@_mag_tl { \ensuremath {#1} } } \group_begin: \keys_set:nn { siunitx } { @@ -693,7 +695,9 @@ % \begin{macrocode} \cs_new_protected:Npn \siunitx_complex_number:n #1 { - \bool_if:NTF \l_@@_force_polar_bool + \bool_lazy_and:nnTF + { \l_@@_force_polar_bool } + { \l_siunitx_number_parse_bool } { \use:e { @@ -726,7 +730,9 @@ } \cs_new_protected:Npn \@@_number:nn #1#2 { - \bool_if:NTF \l_@@_force_cartesian_bool + \bool_lazy_and:nnTF + { \l_@@_force_cartesian_bool } + { \l_siunitx_number_parse_bool } { \exp_args:Ne \siunitx_complex_number:n { \@@_convert_cartesian:nn {#1} {#2} } @@ -738,7 +744,9 @@ } \cs_new_protected:Npn \siunitx_complex_quantity:nn #1#2 { - \bool_if:NTF \l_@@_force_polar_bool + \bool_lazy_and:nnTF + { \l_@@_force_polar_bool } + { \l_siunitx_number_parse_bool } { \use:e { @@ -769,7 +777,9 @@ } \cs_new_protected:Npn \@@_quantity:nnn #1#2#3 { - \bool_if:NTF \l_@@_force_cartesian_bool + \bool_lazy_and:nnTF + { \l_@@_force_cartesian_bool } + { \l_siunitx_number_parse_bool } { \exp_args:Ne \siunitx_complex_quantity:nn { \@@_convert_cartesian:nn {#1} {#2} } @@ -1019,14 +1029,23 @@ \cs_new_protected:Npn \@@_format_polar:n #1 { \tl_if_blank:nTF {#1} - { \siunitx_number_process:NN \l_@@_mag_tl \l_@@_mag_tl } { - \use:c - { @@_format_polar_ \l_siunitx_quantity_prefix_mode_tl :n } {#1} + \bool_if:NT \l_siunitx_number_parse_bool + { \siunitx_number_process:NN \l_@@_mag_tl \l_@@_mag_tl } + } + { + \bool_if:NTF \l_siunitx_number_parse_bool + { + \use:c + { @@_format_polar_ \l_siunitx_quantity_prefix_mode_tl :n } {#1} + } + { \@@_format_polar_input:n {#1} } } \tl_set:Nx \l_@@_tmp_tl { - \siunitx_number_output:N \l_@@_mag_tl + \bool_if:NTF \l_siunitx_number_parse_bool + { \siunitx_number_output:N \l_@@_mag_tl } + { \exp_not:V \l_@@_mag_tl } \exp_not:V \l_@@_symbol_angle_tl \mathord % TEMP \exp_not:V \l_@@_angle_tl @@ -1058,7 +1077,8 @@ } \cs_new_protected:Npn \@@_format_polar_input:n #1 { - \siunitx_number_process:NN \l_@@_mag_tl \l_@@_mag_tl + \bool_if:NT \l_siunitx_number_parse_bool + { \siunitx_number_process:NN \l_@@_mag_tl \l_@@_mag_tl } \siunitx_unit_format:nN {#1} \l_@@_unit_tl } % \end{macrocode} diff --git a/macros/latex/contrib/siunitx/siunitx-print.dtx b/macros/latex/contrib/siunitx/siunitx-print.dtx index 236cbbab80..0e8277cd93 100644 --- a/macros/latex/contrib/siunitx/siunitx-print.dtx +++ b/macros/latex/contrib/siunitx/siunitx-print.dtx @@ -865,21 +865,18 @@ { \exp_after:wN \cs_set_eq:NN \l_siunitx_unit_font_tl \use:n } \cs_set:Npn \mathord ##1 { \@@_text_replace_first:N ##1 } - \group_begin: - \cs_set:Npn \pm { \: \exp_not:N \textpm \: } + \group_begin: \tl_map_inline:nn { \mp \approx \sim \ge \le \geq \leq \gg \ll \angle } { \cs_set:Npn ##1 { \exp_not:N \ensuremath { \exp_not:N ##1 } } } - \cs_set:Npn \cdot { \: \exp_not:N \textperiodcentered \: } \cs_set:Npn \sqrt ##1 { \exp_not:N \ensuremath { \exp_not:N \sqrt { \exp_not:N \text {##1} } } } - \cs_set:Npn \times { \: \exp_not:N \texttimes \: } \protected@edef \l_@@_tmp_tl { \exp_after:wN \@@_text_replace_first:N \l_@@_tmp_tl } \exp_args:NNNV \group_end: @@ -910,6 +907,12 @@ { \exp_not:N \@@_text_sub:n } ^ { \exp_not:N \@@_text_super:n } + \exp_not:N \cdot + { \exp_not:N \: \exp_not:N \textperiodcentered \exp_not:N \: } + \exp_not:N \pm + { \exp_not:N \: \exp_not:N \textpm \exp_not:N \: } + \exp_not:N \times + { \exp_not:N \: \exp_not:N \texttimes \exp_not:N \: } \exp_not:N \q_recursion_tail { ? } \exp_not:N \q_recursion_stop diff --git a/macros/latex/contrib/siunitx/siunitx-table.dtx b/macros/latex/contrib/siunitx/siunitx-table.dtx index 4b7cd9ea9f..6e81d1b7c5 100644 --- a/macros/latex/contrib/siunitx/siunitx-table.dtx +++ b/macros/latex/contrib/siunitx/siunitx-table.dtx @@ -1513,7 +1513,7 @@ + \box_wd:N \l_@@_tmp_box } { - \box_use:N \l_@@_uncert_box + \hbox_unpack:N \l_@@_uncert_box \tl_if_blank:nF {#2#5} { \siunitx_print_number:n {#4#5} } \@@_fil: diff --git a/macros/latex/contrib/siunitx/siunitx.dtx b/macros/latex/contrib/siunitx/siunitx.dtx index 84e10ad678..e8652f875a 100644 --- a/macros/latex/contrib/siunitx/siunitx.dtx +++ b/macros/latex/contrib/siunitx/siunitx.dtx @@ -122,7 +122,7 @@ % % Identify the package and give the over all version information. % \begin{macrocode} -\ProvidesExplPackage {siunitx} {2023-04-13} {3.2.5} +\ProvidesExplPackage {siunitx} {2023-06-12} {3.2.6} {A comprehensive (SI) units package} % \end{macrocode} % diff --git a/macros/latex/contrib/siunitx/siunitx.pdf b/macros/latex/contrib/siunitx/siunitx.pdf Binary files differindex 71c7720642..dd90e20a8c 100644 --- a/macros/latex/contrib/siunitx/siunitx.pdf +++ b/macros/latex/contrib/siunitx/siunitx.pdf |