texlive[73640] Master/texmf-dist: jslectureplanner (29jan25)

commits+karl at tug.org commits+karl at tug.org
Wed Jan 29 21:31:12 CET 2025


Revision: 73640
          https://tug.org/svn/texlive?view=revision&revision=73640
Author:   karl
Date:     2025-01-29 21:31:12 +0100 (Wed, 29 Jan 2025)
Log Message:
-----------
jslectureplanner (29jan25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/README
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturebib-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturehandout-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturepresentation-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lectureprogram-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturescript-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/membertable-blank-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/membertable-filled-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presencetable-blank-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presencetable-filled-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presentation-list-english.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturebib.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturehandout.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturepresentation.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lectureprogram.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturescript.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/membertable-blank.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/membertable-filled.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presencetable-blank.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presencetable-filled.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presentation-list.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf
    trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex
    trunk/Master/texmf-dist/tex/latex/jslectureplanner/cologne.lps
    trunk/Master/texmf-dist/tex/latex/jslectureplanner/english.lps
    trunk/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps
    trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
    trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/README
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturebib-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturehandout-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturepresentation-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lectureprogram-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/lecturescript-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/membertable-blank-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/membertable-filled-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presencetable-blank-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presencetable-filled-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/English/presentation-list-english.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturebib.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturehandout.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturepresentation.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lectureprogram.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/lecturescript.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/membertable-blank.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/membertable-filled.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presencetable-blank.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presencetable-filled.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/examples/German/presentation-list.pdf
===================================================================
(Binary files differ)

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

Modified: trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex	2025-01-29 20:31:12 UTC (rev 73640)
@@ -87,7 +87,7 @@
 \author{Jürgen Spitzmüller%
 \thanks{Please report issues via \protect\url{https://github.com/jspitz/jslectureplanner}.}}
 
-\date{Version 1.13, 2024/03/06}
+\date{Version 1.14, 2025/01/29}
 
 \maketitle
 
@@ -565,6 +565,9 @@
 The package provides a fallback, however, if a different class is used.
 The list type can also be customized. See sec.~\ref{sec:listcust} for details.
 
+\item \jcsmacro{makeprogram*}: as opposed to the unstarred form, the session instructors
+(if there are specific instructors for a given session) are added to the program items.
+
 \item \jcsmacro{makebeamerprogram[\jparam{options}]}: Generates
 a beamer-suited lecture program from the metadata in the form
 \begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},
@@ -609,6 +612,8 @@
      This option applies to the first program frame only. For subsequent frames,
      use \joption{overlayarg2}, \joption{overlayarg3} and \joption{overlayarg4},
      respectively.
+\item \joption{instructors=\jparam{true|false}}: If \joption{true}, the session instructors
+    (if there are specific instructors for a given session) are added to the program items.
 \end{itemize}
 
 \end{itemize}
@@ -1379,6 +1384,12 @@
 The tables will be too wide for portrait page format. Also, the tables have been optimized for A4
 page size.
 
+If you want to add text before the second of these tables (e.\,g., repeating the course title),
+you can employ the \LaTeX\ hook \texttt{jsmembertable/followuptable/before}, as in:
+\begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single,moretexcs={[1]{AddToHook}}]
+\AddToHook{jsmembertable/followuptable/before}{additional text}
+\end{lstlisting}
+%
 The header strings of the presence tables can be adjusted by redefining the following
 macros (using \jfcsmacro{renewcommand*}), for instance like this:
 \begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single]
@@ -1406,7 +1417,6 @@
 \jslp\ is loaded before \jsmt. So if \jcsmacro{lectypesession} fits, you do not have to redefine
 \jcsmacro{jsmsession}.
 
-
 \clearpage
 
 \appendix
@@ -1437,6 +1447,13 @@
 \section{Release History}
 
 \begin{itemize}
+\item Forthcoming (v. 1.14):
+\begin{itemize}
+	\item Add \texttt{jsmembertable/followuptable/before} \LaTeX\ hook.
+	\item Add way to generate programs with session instructors
+	      (\jcsmacro{makeprogram*} and \joption{instructors=true}
+	       with \jcsmacro{makebeamerprogram}).
+\end{itemize}
 \item 2024/03/06 (v. 1.13):
 \begin{itemize}
 	\item Use legacy keyvals rather than \textsf{xkeyval}.

Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/cologne.lps
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/cologne.lps	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/cologne.lps	2025-01-29 20:31:12 UTC (rev 73640)
@@ -23,7 +23,7 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-% Version: 1.13 -- 2024/03/06
+% Version: 1.14 -- 2025/01/29
 
 % Additional lecture types
 \DefLecType{evl}{EVL}{Einf\"uhrungsvorlesung}{Vorlesung}% introductory lecture

Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/english.lps
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/english.lps	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/english.lps	2025-01-29 20:31:12 UTC (rev 73640)
@@ -27,7 +27,7 @@
 % English localization of the default strings used by the jslectureplanner package
 %
 
-% Version: 1.13 -- 2024/03/06
+% Version: 1.14 -- 2025/01/29
 
 % Lecture types
 \DefLecType{vl}{LEC}{Lecture}{Lecture}% lecture

Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps	2025-01-29 20:31:12 UTC (rev 73640)
@@ -27,7 +27,7 @@
 % Default strings (German) used by the jslectureplanner package
 %
 
-% Version: 1.13 -- 2024/03/06
+% Version: 1.14 -- 2025/01/29
 
 % Lecture types
 \DefLecType{vl}{VL}{Vorlesung}{Vorlesung}% lecture

Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty	2025-01-29 20:31:12 UTC (rev 73640)
@@ -23,8 +23,8 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\def\filedate{2024/03/06}
-\def\fileversion{1.13}
+\def\filedate{2025/01/29}
+\def\fileversion{1.14}
 \def\filename{jslectureplanner.sty}
 
 \NeedsTeXFormat{LaTeX2e}
@@ -86,8 +86,9 @@
 \def\sesnr{}
 
 \def\programlist{}
+\def\programlist at instr{}
 \def\programlistexam{}
-\def\programlistbeamer{}
+\def\programlistbeamer at instr{}
 \def\programlistbeamerexam{}
 \def\programblocklistbeamer{}
 \def\jsbiblist{}
@@ -580,7 +581,11 @@
 }{}
 %
 % Program generation
-\newcommand\makeprogram{%
+\newcommand*\makeprogram{%
+  \@ifstar{\@makeinstrprogram}{\@makeprogram}%
+}
+
+\newcommand\@makeprogram{%
   \raggedright
   \begin{ProgramList}
   \programlist
@@ -587,6 +592,13 @@
   \end{ProgramList}
 }
 
+\newcommand\@makeinstrprogram{%
+  \raggedright
+  \begin{ProgramList}
+  \programlist at instr
+  \end{ProgramList}
+}
+
 % Exam schedule generation
 \newcommand\makeexamprogram{%
   \raggedright
@@ -674,6 +686,7 @@
 \newif\if at jslp@beamerprogram at alerted\@jslp at beamerprogram@alertedfalse
 \newif\if at jslp@beamerprogram at blocksonly\@jslp at beamerprogram@blocksonlyfalse
 \newif\if at jslp@beamerprogram at uncover\@jslp at beamerprogram@uncoverfalse
+\newif\if at jslp@beamerprogram at instr\@jslp at beamerprogram@instrfalse
 
 \DeclareKeys[beamerprogram]
 {
@@ -696,7 +709,9 @@
   % blocksonly = <true|false>
   blocksonly.if = @jslp at beamerprogram@blocksonly,
   % uncover = <true|false>
-  uncover.if = @jslp at beamerprogram@uncover
+  uncover.if = @jslp at beamerprogram@uncover,
+  % instructors = <true|false>
+  instructors.if = @jslp at beamerprogram@instr
 }
 
 % Overlay specifications for uncover programs
@@ -712,6 +727,7 @@
   \SetKeys[beamerprogram]{alerted=false}
   \SetKeys[beamerprogram]{blocksonly=false}
   \SetKeys[beamerprogram]{uncover=false}
+  \SetKeys[beamerprogram]{instructors=false}
   \SetKeys[beamerprogram]{#1}
   \def\bpdescbeg{\begin{BeamerProgramList}}
   \providebool{alerted}
@@ -781,7 +797,11 @@
      }%
      \ifbool{uncoveredlist}{\beameruncoverspec}{\beameralertspec}
      \begin{BeamerProgramList}
-      \programlistbeamerii
+      \if at jslp@beamerprogram at instr
+        \programlistbeamerii at instr
+      \else
+        \programlistbeamerii
+      \fi
      \end{BeamerProgramList}
     \end{frame}
     }
@@ -804,7 +824,11 @@
      }%
      \ifbool{uncoveredlist}{\beameruncoverffslidesspec}{\beameralertspec}
      \begin{BeamerProgramList}
-      \programlistbeameriii
+      \if at jslp@beamerprogram at instr
+        \programlistbeameriii at instr
+      \else
+        \programlistbeameriii
+      \fi
      \end{BeamerProgramList}
     \end{frame}
     }
@@ -827,7 +851,11 @@
      }%
      \ifbool{uncoveredlist}{\beameruncoverffslidesspec}{\beameralertspec}
      \begin{BeamerProgramList}
-      \programlistbeameriv
+      \if at jslp@beamerprogram at instr
+        \programlistbeameriv at instr
+      \else
+        \programlistbeameriv
+      \fi
      \end{BeamerProgramList}
     \end{frame}
     }
@@ -904,7 +932,11 @@
       }%
      \ifbool{uncoveredlist}{\beameruncoverffslidesspec}{\beameralertspec}
      \begin{BeamerProgramList}
-      \programlistbeamer
+      \if at jslp@beamerprogram at instr
+        \programlistbeamer at instr
+      \else
+        \programlistbeamer
+      \fi
      \end{BeamerProgramList}
     \end{frame}
   \fi%\else\if at jslp@beamerprogram at blocksonly
@@ -1129,7 +1161,9 @@
   \if at jslp@session at cancel
     \stepcounter{cancellations}
     \protected at eappto\programlist{\noexpand\ProgramListCancelItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
+    \protected at eappto\programlist at instr{\noexpand\ProgramListCancelItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
     \protected at eappto\programlistbeamer{\noexpand\BeamerProgramListCancelItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
+    \protected at eappto\programlistbeamer at instr{\noexpand\BeamerProgramListCancelItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
   \else
     \if at jslp@session at exam
         \stepcounter{exams}
@@ -1147,7 +1181,11 @@
             \ifcsempty{@sestitle}{\protected at csxdef{sestitle\thesnum}{\sestopic}}{}
         \fi
         \protected at eappto\programlist{\noexpand\ProgramListItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
+        \protected at eappto\programlist at instr{\noexpand\ProgramListItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}%
+                  \ifcsempty{usesinstructor\thesnum}{}{\ [\csuse{usesinstructor\thesnum}]}}
         \protected at eappto\programlistbeamer{\noexpand\BeamerProgramListItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}}
+        \protected at eappto\programlistbeamer at instr{\noexpand\BeamerProgramListItem{\csuse{sesshortdate\thesnum}}{\csuse{sestitle\thesnum}}{\csuse{@sestitlesep}}{\csuse{@sessubtitle}}%
+                  \ifcsempty{usesinstructor\thesnum}{}{\ [\csuse{usesinstructor\thesnum}]}}
         \ifcsempty{sesbib\thesnum}{}{%
         \xappto\jsbiblist{\noexpand\section{\csuse{sestitle\thesnum}\csuse{@sestitlesep}\csuse{@sessubtitle}}%
           \noexpand\nocite{*}%
@@ -1172,9 +1210,13 @@
   \ifx\empty#1
     \protected at eappto\programlist{\noexpand\ProgramListBreak{#2}}
     \protected at eappto\programlistbeamer{\noexpand\begin{center} (#2) \noexpand\end{center}}
+    \protected at eappto\programlist at instr{\noexpand\ProgramListBreak{#2}}
+    \protected at eappto\programlistbeamer at instr{\noexpand\begin{center} (#2) \noexpand\end{center}}
   \else
     \protected at eappto\programlist{\noexpand\ProgramListBreak[#1]{#2}}
     \protected at eappto\programlistbeamer{\noexpand\begin{center} (#1: #2) \noexpand\end{center}}
+    \protected at eappto\programlist at instr{\noexpand\ProgramListBreak[#1]{#2}}
+    \protected at eappto\programlistbeamer at instr{\noexpand\begin{center} (#1: #2) \noexpand\end{center}}
   \fi
 }
 
@@ -1213,9 +1255,13 @@
   \ifcsempty{@breakspan}{%
     \protected at eappto\programlist{\noexpand\ProgramListBreak{#2}}
     \protected at eappto\programlistbeamer{\noexpand\begin{center} (#2) \noexpand\end{center}}
+    \protected at eappto\programlist at instr{\noexpand\ProgramListBreak{#2}}
+    \protected at eappto\programlistbeamer at instr{\noexpand\begin{center} (#2) \noexpand\end{center}}
   }{%
     \protected at eappto\programlist{\noexpand\ProgramListBreak[\csuse{@breakspan}]{#2}}
     \protected at eappto\programlistbeamer{\noexpand\begin{center} (\csuse{@breakspan}: #2) \noexpand\end{center}}
+    \protected at eappto\programlist at instr{\noexpand\ProgramListBreak[\csuse{@breakspan}]{#2}}
+    \protected at eappto\programlistbeamer at instr{\noexpand\begin{center} (\csuse{@breakspan}: #2) \noexpand\end{center}}
   }
 }
 
@@ -1239,6 +1285,9 @@
   \protected at eappto\programlist{\noexpand\begin{ProgramListBlock}{\Roman{blocks}}{#1}}
   \protected at eappto\programlistbeamer{\noexpand\BeamerProgramBlockItem{\Roman{blocks}}{#1}}%
   \gappto\programlistbeamer{\begin{BeamerProgramList}}
+  \protected at eappto\programlist at instr{\noexpand\begin{ProgramListBlock}{\Roman{blocks}}{#1}}
+  \protected at eappto\programlistbeamer at instr{\noexpand\BeamerProgramBlockItem{\Roman{blocks}}{#1}}%
+  \gappto\programlistbeamer at instr{\begin{BeamerProgramList}}
   \protected at xappto\programblocklistbeamer{\noexpand\BeamerProgramBlockBlocksOnlyItem{\Roman{blocks}}{#1}}%
   \csxdef{@currentblock}{#1}%
   \csxdef{@currentblockno}{\Roman{blocks}}%
@@ -1248,6 +1297,8 @@
 \newcommand*\EndBlock{%
   \gappto\programlist{\end{ProgramListBlock}}
   \gappto\programlistbeamer{\end{BeamerProgramList}}
+  \gappto\programlist at instr{\end{ProgramListBlock}}
+  \gappto\programlistbeamer at instr{\end{BeamerProgramList}}
   \csxdef{@currentblock}{}%
   \csxdef{@currentblockno}{}%
   \global\togglefalse{inblock}%
@@ -1260,11 +1311,13 @@
 
 \newcommand*\@PauseBlock{%
   \gappto\programlistbeamer{\end{BeamerProgramList}}
+  \gappto\programlistbeamer at instr{\end{BeamerProgramList}}
 }
 
 \newcommand*\@ResumeBlock{%
-  % the \item here is necessary since this is nested immediately into another list
-  \gappto\programlistbeamer{\item \begin{BeamerProgramList}}
+  % the \item here is necessary since this is nested immediately into an
+  \gappto\programlistbeamer{\item \begin{BeamerProgramList}}other list
+  \gappto\programlistbeamer at instr{\item \begin{BeamerProgramList}}
 }
 
 \newenvironment{SessionBlock}[1]{\StartBlock{#1}}{\EndBlock}
@@ -1278,13 +1331,17 @@
   \ifdefined\programlistbeamerii
      \ifdefined\programlistbeameriii
         \global\let\programlistbeameriv\programlistbeamer
+        \global\let\programlistbeameriv at instr\programlistbeamer at instr
      \else
        \global\let\programlistbeameriii\programlistbeamer
+        \global\let\programlistbeameriii at instr\programlistbeamer at instr
      \fi
   \else%
     \global\let\programlistbeamerii\programlistbeamer
+    \global\let\programlistbeamerii at instr\programlistbeamer at instr
   \fi
   \global\let\programlistbeamer\empty
+  \global\let\programlistbeamer at instr\empty
   \iftoggle{inblock}{\@ResumeBlock}{}%
 }
 
@@ -1291,6 +1348,7 @@
 % Beamer program hook
 \newcommand*\SetBeamerHook[1]{%
     \protected at eappto\programlistbeamer{\noexpand#1}
+    \protected at eappto\programlistbeamer at instr{\noexpand#1}
 }
 
 % 5) Infrastructure

Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty	2025-01-29 20:31:01 UTC (rev 73639)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty	2025-01-29 20:31:12 UTC (rev 73640)
@@ -24,8 +24,8 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\def\filedate{2024/03/06}
-\def\fileversion{1.13}
+\def\filedate{2025/01/29}
+\def\fileversion{1.14}
 \def\filename{jsmembertable.sty}
 
 \NeedsTeXFormat{LaTeX2e}
@@ -76,6 +76,11 @@
 \fi
 
 %
+% HOOKS
+%
+\NewHook{jsmembertable/followuptable/before}
+
+%
 % STRETCH ROW HEIGHT
 %
 
@@ -664,7 +669,8 @@
   \printtabtoks
   \end{longtable}
   \ifnum\thesnum>7
-    \clearpage
+    \clearpage%
+    \UseHook{jsmembertable/followuptable/before}%
     \setcounter{tabrow}{0}
     \ifx\relax#1\relax\else
       % test if the input is a number



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