texlive[64179] Master/texmf-dist: pseudo (23aug22)

commits+karl at tug.org commits+karl at tug.org
Tue Aug 23 22:22:42 CEST 2022


Revision: 64179
          http://tug.org/svn/texlive?view=revision&revision=64179
Author:   karl
Date:     2022-08-23 22:22:42 +0200 (Tue, 23 Aug 2022)
Log Message:
-----------
pseudo (23aug22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/pseudo/VERSION
    trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.pdf
    trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.tex
    trunk/Master/texmf-dist/tex/latex/pseudo/pseudo.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/pseudo/test/overlaytest.tex

Modified: trunk/Master/texmf-dist/doc/latex/pseudo/VERSION
===================================================================
--- trunk/Master/texmf-dist/doc/latex/pseudo/VERSION	2022-08-23 20:22:21 UTC (rev 64178)
+++ trunk/Master/texmf-dist/doc/latex/pseudo/VERSION	2022-08-23 20:22:42 UTC (rev 64179)
@@ -1 +1 @@
-1.2
+1.2.1

Modified: trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.tex	2022-08-23 20:22:21 UTC (rev 64178)
+++ trunk/Master/texmf-dist/doc/latex/pseudo/doc/pseudo.tex	2022-08-23 20:22:42 UTC (rev 64179)
@@ -3806,9 +3806,10 @@
 \verb|\q_no_value| machinery rather than \verb|\c_novalue_tl| for
 compatibility with older \TeX\ distributions.)
 \begin{source}
-\cs_generate_variant:Nn \quark_if_no_value:nTF    { VTF   }
-\cs_generate_variant:Nn \tl_if_novalue:nTF        { VTF   }
-\cs_generate_variant:Nn \tl_set:Nn                { Ne    }
+\cs_generate_variant:Nn \quark_if_no_value:nTF    { VTF    }
+\cs_generate_variant:Nn \tl_if_novalue:nTF        { VTF    }
+\cs_generate_variant:Nn \tl_set:Nn                { Ne     }
+\exp_args_generate:n                              { NNVNNV }
 \end{source}
 \paragraph{Defining columns.} The \refk{preamble} is is configurable, but the
 \pkg{array} package makes sure it doesn't expand any part of its preamble. One
@@ -4591,10 +4592,12 @@
 \begin{source}
 \cs_new:Npn \@@_keys_set_overlay:nnn #1 #2 #3 {
     \bool_if:NT \c_@@_beamer_bool {
-        \only<#1>{ \keys_set:nn { #2 } { #3 } }
+        \tl_if_novalue:nF { #1 } {
+            \only<#1>{ \keys_set:nn { #2 } { #3 } }
+        }
     }
 }
-\cs_generate_variant:Nn \@@_keys_set_overlay:nnn  { VnV }
+
 \msg_new:nnn { pseudo } { unknown-key } {
     Unknown~key~'#1'~ignored.
 }
@@ -4606,6 +4609,12 @@
 
         \group_begin:
 
+        \int_zero:N \l_tmpa_int
+        \int_zero:N \l_tmpb_int
+
+        \tl_clear:N \l_tmpa_tl
+        \tl_clear:N \l_tmpb_tl
+
         \tl_map_inline:Nn \l_keys_key_tl {
 
             \tl_if_eq:nnTF { ##1 } { < } {
@@ -4652,8 +4661,16 @@
             \tl_if_blank:nF{ #1 } {
                 \tl_put_right:Nn \l_tmpb_tl {= #1}
             }
-            \@@_keys_set_overlay:VnV
-                \l_@@_overlay_tl { pseudo } \l_tmpb_tl
+\end{source}
+Rather than setting the keys here, inside a group, we put the code into a
+variable that we'll expand outside the group, later:
+\begin{source}
+            \tl_set:Nn \l_tmpa_tl {
+                \@@_keys_set_overlay:nnn
+            }
+            \tl_put_right:Nx \l_tmpa_tl { { \l_@@_overlay_tl } }
+            \tl_put_right:Nn \l_tmpa_tl { { pseudo           } }
+            \tl_put_right:Nx \l_tmpa_tl { { \l_tmpb_tl       } }
         } {
 \end{source}
 We have \emph{not} matched an overlay specification, so we just have an unknown
@@ -4662,7 +4679,10 @@
 specify extra space (normally done using \refk{extra-space}). If the unknown
 key doesn't have an attached (non-blank) value, we treat the key itself as a
 value, and use it as extra space. If this, too, fails, we emit an error message.
+Note that we'll also make sure the variable with the key-setting code is
+empty.
 \begin{source}
+            \tl_clear:N \l_tmpa_tl
             \bool_if:nTF {
                 \bool_lazy_and_p:nn
                     { \l_@@_in_eol_bool       }
@@ -4678,11 +4698,16 @@
             }
         }
 
-        % Make sure extra space carries over outside the group:
-        \exp_args:NNNV
+        % Make sure extra space and key-setting carry over
+        % outside the group:
+        \exp_args:NNNVNNV
             \group_end:
             \tl_set:Nn \l_@@_extra_space_tl \l_@@_extra_space_tl
+            \tl_set:Nn \l_tmpa_tl           \l_tmpa_tl
 
+        % Run the key-setting code with overlay specification:
+        \l_tmpa_tl
+
     }
 
 }

Added: trunk/Master/texmf-dist/doc/latex/pseudo/test/overlaytest.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/pseudo/test/overlaytest.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/pseudo/test/overlaytest.tex	2022-08-23 20:22:42 UTC (rev 64179)
@@ -0,0 +1,12 @@
+\documentclass{beamer}
+\usepackage{pseudo}
+
+\begin{document}
+\begin{frame}
+\begin{pseudo}
+    foo \\[dim<2->]
+    bar \\[dim<3>]
+    baz
+\end{pseudo}
+\end{frame}
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/pseudo/test/overlaytest.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/pseudo/pseudo.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/pseudo/pseudo.sty	2022-08-23 20:22:21 UTC (rev 64178)
+++ trunk/Master/texmf-dist/tex/latex/pseudo/pseudo.sty	2022-08-23 20:22:42 UTC (rev 64179)
@@ -20,8 +20,8 @@
 % OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 % SOFTWARE.
 %
-\def \pseudoversion {1.2}
-\def \pseudodate    {2022/07/14}
+\def \pseudoversion {1.2.1}
+\def \pseudodate    {2022/08/23}
 \RequirePackage{expl3}
 \ProvidesExplPackage
     {pseudo}
@@ -44,9 +44,10 @@
 \int_new:N  \g__pseudo_indent_level_int
 \int_new:N  \l__pseudo_initial_indent_level_int
 \bool_new:N \l__pseudo_in_eol_bool
-\cs_generate_variant:Nn \quark_if_no_value:nTF    { VTF   }
-\cs_generate_variant:Nn \tl_if_novalue:nTF        { VTF   }
-\cs_generate_variant:Nn \tl_set:Nn                { Ne    }
+\cs_generate_variant:Nn \quark_if_no_value:nTF    { VTF    }
+\cs_generate_variant:Nn \tl_if_novalue:nTF        { VTF    }
+\cs_generate_variant:Nn \tl_set:Nn                { Ne     }
+\exp_args_generate:n                              { NNVNNV }
 \cs_new:Npn \__pseudo_undef_col:n #1 {
     \tl_set_eq:cN { NC at find@ \token_to_str:N #1 } \scan_stop:
 }
@@ -455,10 +456,11 @@
 }
 \cs_new:Npn \__pseudo_keys_set_overlay:nnn #1 #2 #3 {
     \bool_if:NT \c__pseudo_beamer_bool {
-        \only<#1>{ \keys_set:nn { #2 } { #3 } }
+        \tl_if_novalue:nF { #1 } {
+            \only<#1>{ \keys_set:nn { #2 } { #3 } }
+        }
     }
 }
-\cs_generate_variant:Nn \__pseudo_keys_set_overlay:nnn  { VnV }
 \msg_new:nnn { pseudo } { unknown-key } {
     Unknown~key~'#1'~ignored.
 }
@@ -466,6 +468,10 @@
 \keys_define:nn { pseudo } {
     unknown .code:n = {
         \group_begin:
+        \int_zero:N \l_tmpa_int
+        \int_zero:N \l_tmpb_int
+        \tl_clear:N \l_tmpa_tl
+        \tl_clear:N \l_tmpb_tl
         \tl_map_inline:Nn \l_keys_key_tl {
             \tl_if_eq:nnTF { ##1 } { < } {
                 \int_incr:N \l_tmpa_int
@@ -491,9 +497,14 @@
             \tl_if_blank:nF{ #1 } {
                 \tl_put_right:Nn \l_tmpb_tl {= #1}
             }
-            \__pseudo_keys_set_overlay:VnV
-                \l__pseudo_overlay_tl { pseudo } \l_tmpb_tl
+            \tl_set:Nn \l_tmpa_tl {
+                \__pseudo_keys_set_overlay:nnn
+            }
+            \tl_put_right:Nx \l_tmpa_tl { { \l__pseudo_overlay_tl } }
+            \tl_put_right:Nn \l_tmpa_tl { { pseudo           } }
+            \tl_put_right:Nx \l_tmpa_tl { { \l_tmpb_tl       } }
         } {
+            \tl_clear:N \l_tmpa_tl
             \bool_if:nTF {
                 \bool_lazy_and_p:nn
                     { \l__pseudo_in_eol_bool       }
@@ -508,9 +519,11 @@
                     { \l_keys_path_str }
             }
         }
-        \exp_args:NNNV
+        \exp_args:NNNVNNV
             \group_end:
             \tl_set:Nn \l__pseudo_extra_space_tl \l__pseudo_extra_space_tl
+            \tl_set:Nn \l_tmpa_tl           \l_tmpa_tl
+        \l_tmpa_tl
     }
 }
 \cs_new:Npn \__pseudo_set:n #1 { \keys_set:nn { pseudo } { #1 } }



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