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.