texlive[53672] Master/texmf-dist: jslectureplanner (4feb20)
commits+karl at tug.org
commits+karl at tug.org
Tue Feb 4 23:16:51 CET 2020
Revision: 53672
http://tug.org/svn/texlive?view=revision&revision=53672
Author: karl
Date: 2020-02-04 23:16:50 +0100 (Tue, 04 Feb 2020)
Log Message:
-----------
jslectureplanner (4feb20)
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/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 2020-02-04 22:16:32 UTC (rev 53671)
+++ trunk/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex 2020-02-04 22:16:50 UTC (rev 53672)
@@ -72,7 +72,7 @@
\author{J\xFCrgen Spitzm\xFCller%
\thanks{Please report issues via \protect\url{https://github.com/jspitz/jslectureplanner}.}}
-\date{Version 1.8, 2019/02/06}
+\date{Version 1.9, 2020/02/04}
\maketitle
@@ -312,12 +312,21 @@
Default is 90.
\item \jcsmacro{LecInterval\{\jparam{interval}\}}: Adjust the interval (in days) between two sessions.
The preset interval is 7 (=~weekly courses).
-\item \jcsmacro{SetAutoOffset\{\jparam{n}\}\{\jparam{days}\}}: Automatically shift all subsequent sessions
- by \jparam{days} extra days after every \jparam{n}th session. This is useful if you have each week
- two regular sessions and then a pause until the next week (for instance, a Tuesday +
- Thursday course could be defined via \jcsmacro{LecInterval\{2\}} and
- \jcsmacro{SetAutoOffset\{2\}\{3\}}). \jparam{n} must be a positive integer, \jparam{days} can
- also be a negative integer value.
+\item \jcsmacro{SetAutoOffset[\jparam{first}]\{\jparam{n}\}\{\jparam{days}\}}:
+ Automatically shift all subsequent sessions
+ by \jparam{days} extra days after every \jparam{n}th session,
+ counting the first session as the \jparam{first}th session for
+ this purpose. This is useful if your course meets multiple times
+ a week. For instance, a course meeting Tuesdays and Thursdays
+ could be defined via \jcsmacro{LecInterval\{2\}} and
+ \jcsmacro{SetAutoOffset\{2\}\{3\}}, a course meeting Monday,
+ Wednesday, Friday using \jcsmacro{LecInterval\{2\}} and
+ \jcsmacro{SetAutoOffset\{3\}\{1\}}. \jparam{n} must be a
+ positive integer, \jparam{days} can also be a negative integer
+ value. Use the optional \jparam{first} if the first session in
+ the course is not the first session in a group. For instance, if
+ your course meets Monday/Wednesday/Friday but the first day of
+ term is a Wednesday, use \jcsmacro{SetAutoOffset[2]\{3\}\{1\}}.
\end{itemize}
\subsubsection{Additional information}\label{ses-add}
@@ -437,10 +446,10 @@
\end{itemize}
\item \jcsmacro{SetLecOffset\{\jparam{n}\}}: Shift the date of all subsequent sessions by \jparam{n} days.
\jparam{n} can also be negative.
-\item \jcsmacro{SetBeamerFrameBreak}: Add a frame break in
-the beamer program at this position (more precisely, start a new frame).
-This also increments the frame counter which is used for subsequent program
-frame titles. Note that you can insert maximally 3 breaks.
+\item \jcsmacro{SetBeamerFrameBreak}: Add a frame break in the beamer program at this position
+ (more precisely, start a new frame; see sec.~\ref{sec:lecprog} for details).
+ This also increments the frame counter which is used for subsequent program
+ frame titles. Note that you can insert maximally 3 breaks.
\item \jcsmacro{SetBeamerHook\{\jparam{code}\}}: Add arbitrary LaTeX code to the
beamer program
\item \jcsmacro{begin\{SessionBlock\}\{\jparam{Block title}\}}\\
@@ -545,14 +554,18 @@
\end{frame}
\end{lstlisting}
-Note that multiple subsequent frames (not just slides) are generated if the metadata
-file contains \jcsmacro{SetBeamerFrameBreak} macros.
-Also note that you can refer to the frames via the automatically generated
-labels \emph{beamerprogram} (for the first frame), \emph{beamerprogram2}
-for the second, etc. Finally note that the number of program frames
-is currently limited to 4. If you need more, you should probably rethink
-your program structure.
-
+Note that
+\begin{itemize}
+ \item multiple subsequent frames (not just slides) are generated if the metadata
+ file contains \jcsmacro{SetBeamerFrameBreak} macros (this is because beamer frame breaks
+ via \jfoption{allowframebreaks} and \jfcsmacro{framebreak} do not allow for overlays).
+ \item you can refer to the frames via the automatically generated
+ labels \emph{beamerprogram} (for the first frame), \emph{beamerprogram2}
+ for the second, etc.
+ \item the number of program frames is currently limited to 4. If you need more, you should probably rethink
+ your program structure.
+\end{itemize}
+%
\joption{\jparam{options}} include
\begin{itemize}
\item \joption{title=\jparam{title}}: Program title (\jparam{Heading})
@@ -1164,7 +1177,7 @@
I could not have written the packages of the \jslp\ bundle without the expertise of the incredible \LaTeX\
community. The packages heavily rely on functions and features
provided by other packages (which are listed in sec.~\ref{sec:req-jslp} and \ref{sec:req-jsmt}).
-I am deeply indepted to the authors of those packages.
+I am deeply indebted to the authors of those packages.
Furthermore, \emph{stackexchange} proved to be a great source of knowledge which
provided me with solutions for specific tasks:
\jsmt\ heavily draws on code for dynamic table generation that has been
@@ -1173,7 +1186,9 @@
a \emph{stackexchange} post by Enrico Gregorio (\url{http://tex.stackexchange.com/a/50131}).
The time span calculation uses code provided by Christian Hupfer at
\url{https://tex.stackexchange.com/a/473552/19291}.
-Thank you, Herbert, Enrico and Christian! Finally, Dominik Wa\xDFenhoven tested the package and provided
+Thank you, Herbert, Enrico and Christian!
+Richard Zach provided a fix and enhancement to \jcsmacro{SetAutoOffset}. Many thanks for this.
+Finally, Dominik Wa\xDFenhoven tested the package and provided
me with multiple suggestions, which effectively manifested in major new features such as
the \jslp\ style files. Thanks, Dominik.
@@ -1180,10 +1195,16 @@
\section{Release History}
\begin{itemize}
+\item 2020/02/04 (v. 1.9):
+ \begin{itemize}
+ \item Allow \jcsmacro{SetBeamerFrameBreak} within \joption{SessionBlock}.
+ \item Fix \jcsmacro{SetAutoOffset} at first session and add optional argument
+ to alter first session (fix contributed by Richard Zach).
+ \end{itemize}
\item 2019/02/06 (v. 1.8):
\begin{itemize}
- \item Add support for displaying the next semester (\jcsmacro{AdjSem} and
- \jcsmacro{AdjSemVerb}).
+ \item Add support for displaying the next semester (macros \jcsmacro{adjsemester} and
+ \jcsmacro{adjsemesterverb}).
\item Add support for lecture and session start time, duration and thus also end time
calculation.
\item Add unstyled date formats which allow preceding \jfcsmacro{DTMsetdatestyle}
Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty 2020-02-04 22:16:32 UTC (rev 53671)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty 2020-02-04 22:16:50 UTC (rev 53672)
@@ -23,8 +23,8 @@
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\filedate{2019/02/06}
-\def\fileversion{1.8}
+\def\filedate{2020/02/04}
+\def\fileversion{1.9}
\def\filename{jslectureplanner.sty}
\NeedsTeXFormat{LaTeX2e}
@@ -1039,13 +1039,15 @@
}
% Automatic Offset after n sessions
-\newcommand*\SetAutoOffset[2]{%
- \setcounter{autooffsettrigger}{#1}
- \setcounter{autooffset}{#2}
+\newcommand*{\SetAutoOffset}[3][1]{%
+ \setcounter{autooffsetcounter}{#1}
+ \setcounter{autooffsettrigger}{#2}
+ \setcounter{autooffset}{#3}
}
% 3) Definition of thematic blocks
%
+\newtoggle{inblock}
\newcommand*\StartBlock[1]{%
\stepcounter{blocks}%
\protected at eappto\programlist{\noexpand\item[{\noexpand\bfseries\Roman{blocks}}.]%
@@ -1057,6 +1059,7 @@
\protected at xappto\programblocklistbeamer{\noexpand\item[{\Roman{blocks}}.] #1}%
\csxdef{@currentblock}{#1}%
\csxdef{@currentblockno}{\Roman{blocks}}%
+ \global\toggletrue{inblock}%
}
\newcommand*\EndBlock{%
@@ -1064,6 +1067,7 @@
\gappto\programlistbeamer{\end{description}}
\csxdef{@currentblock}{}%
\csxdef{@currentblockno}{}%
+ \global\togglefalse{inblock}%
}
\newcommand*\NewBlock[1]{%
@@ -1071,6 +1075,17 @@
\StartBlock{#1}
}
+\newcommand*\@PauseBlock{%
+ \gappto\programlist{\end{labeling}}
+ \gappto\programlistbeamer{\end{description}}
+}
+
+\newcommand*\@ResumeBlock{%
+ % the \item here is necessary since this is nested immediately into another list
+ \gappto\programlist{\item \begin{labeling}{\lecprogramlistindent}}%
+ \gappto\programlistbeamer{\item \begin{description}[\lecprogramlistindent]}
+}
+
\newenvironment{SessionBlock}[1]{\StartBlock{#1}}{\EndBlock}
% 4) Beamer-specific features
@@ -1077,17 +1092,19 @@
%
% Beamer frame breaks
\newcommand*\SetBeamerFrameBreak{%
+ \iftoggle{inblock}{\@PauseBlock}{}%
\stepcounter{fbreaks}
- \@ifundefined{programlistbeamerii}{%
+ \ifdefined\programlistbeamerii
+ \ifdefined\programlistbeameriii
+ \global\let\programlistbeameriv\programlistbeamer
+ \else
+ \global\let\programlistbeameriii\programlistbeamer
+ \fi
+ \else%
\global\let\programlistbeamerii\programlistbeamer
- }{%
- \@ifundefined{programlistbeameriii}{%
- \global\let\programlistbeameriii\programlistbeamer
- }{%
- \global\let\programlistbeameriv\programlistbeamer
- }
- }
+ \fi
\global\let\programlistbeamer\empty
+ \iftoggle{inblock}{\@ResumeBlock}{}%
}
% Beamer program hook
Modified: trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty 2020-02-04 22:16:32 UTC (rev 53671)
+++ trunk/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty 2020-02-04 22:16:50 UTC (rev 53672)
@@ -24,8 +24,8 @@
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\filedate{2019/02/06}
-\def\fileversion{1.8}
+\def\filedate{2020/02/04}
+\def\fileversion{1.9}
\def\filename{jsmembertable.sty}
\NeedsTeXFormat{LaTeX2e}
More information about the tex-live-commits
mailing list.