summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/jslectureplanner
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-12-14 21:55:39 +0000
committerKarl Berry <karl@freefriends.org>2018-12-14 21:55:39 +0000
commit6a45e1ed4207f5f056d0d7e95fc392df26fdbd62 (patch)
tree5c209ca7d9fb5ee1833f8bd7a29e628f2309d0e7 /Master/texmf-dist/tex/latex/jslectureplanner
parent6db1d02d81aeaaf5d9e2eed509942f726f1d51ba (diff)
jslectureplanner (14dec18)
git-svn-id: svn://tug.org/texlive/trunk@49414 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/jslectureplanner')
-rw-r--r--Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty209
-rw-r--r--Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty4
2 files changed, 165 insertions, 48 deletions
diff --git a/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty b/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
index 18a2191bca2..c8e34c2344d 100644
--- a/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
+++ b/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty
@@ -23,8 +23,8 @@
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\filedate{2018/09/26}
-\def\fileversion{1.6}
+\def\filedate{2018/12/14}
+\def\fileversion{1.7}
\def\filename{jslectureplanner.sty}
\NeedsTeXFormat{LaTeX2e}
@@ -442,6 +442,10 @@
\define@key{beamerprogram}{title}{\csdef{@bptitle}{#1}}
\define@key{beamerprogram}{options}{\csdef{@bpopts}{#1}}
\define@key{beamerprogram}{listoptions}{\csdef{@bplistopts}{#1}}
+\define@key{beamerprogram}{overlayarg}{\csdef{@bpolarg}{#1}}
+\define@key{beamerprogram}{overlayarg2}{\csdef{@bpolargii}{#1}}
+\define@key{beamerprogram}{overlayarg3}{\csdef{@bpolargiii}{#1}}
+\define@key{beamerprogram}{overlayarg4}{\csdef{@bpolargiv}{#1}}
\define@boolkey{beamerprogram}{alerted}[true]{}
\define@boolkey{beamerprogram}{blocksonly}[true]{}
\define@boolkey{beamerprogram}{uncover}[true]{}
@@ -464,7 +468,21 @@
\boolfalse{uncoveredlist}
\fi
\ifKV@beamerprogram@blocksonly
- \begin{frame}[label=beamerprogram1]{\csuse{@bptitle}\btitleapp}
+ \ifcsdef{@bpolarg}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolarg}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolarg}>[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
\ifbool{uncoveredlist}{%
\begin{description}[<+->][\lecprogramlistindent]
}{%
@@ -473,15 +491,25 @@
\programblocklistbeamer
\end{description}
\end{frame}
- \else
+ \else% not \ifKV@beamerprogram@blocksonly
+ % All but last slide(s) are generated in what follows
\@ifundefined{programlistbeamerii}{}{%
\def\btitleapp{\ (1/\pframes)}
- \ifcsdef{@bpopts}{%
- \begingroup\edef\tempa{\endgroup\noexpand%
- \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
- }{%
- \begin{frame}[label=beamerprogram1]{\csuse{@bptitle}\btitleapp}
- }
+ \ifcsdef{@bpolarg}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolarg}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolarg}>[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
\ifbool{uncoveredlist}{%
\begin{description}[<+(1)->][\lecprogramlistindent]
}{%
@@ -493,12 +521,21 @@
}
\@ifundefined{programlistbeameriii}{}{%
\def\btitleapp{\ (2/\pframes)}
- \ifcsdef{@bpopts}{%
- \begingroup\edef\tempa{\endgroup\noexpand%
- \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
- }{%
- \begin{frame}[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
- }
+ \ifcsdef{@bpolargii}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolargii}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolargii}>[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
\ifbool{uncoveredlist}{%
\begin{description}[<+->][\lecprogramlistindent]
}{%
@@ -509,13 +546,22 @@
\end{frame}
}
\@ifundefined{programlistbeameriv}{}{%
- \def\btitleapp{\ (2/\pframes)}
- \ifcsdef{@bpopts}{%
- \begingroup\edef\tempa{\endgroup\noexpand%
- \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
- }{%
- \begin{frame}[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
- }
+ \def\btitleapp{\ (3/\pframes)}
+ \ifcsdef{@bpolargiii}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolargiii}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolargiii}>[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
\ifbool{uncoveredlist}{%
\begin{description}[+(1)->][\lecprogramlistindent]
}{%
@@ -525,25 +571,78 @@
\end{description}
\end{frame}
}
+ % The last slide is generated separately:
\ifnumgreater{\thefbreaks}{0}{\def\btitleapp{\ (\pframes/\pframes)}}{}
- \ifcsdef{@bpopts}{%
- \begingroup\edef\tempa{\endgroup\noexpand%
- \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
- }{%
- \@ifundefined{programlistbeamerii}{%
- \begin{frame}[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
- }{%
- \@ifundefined{programlistbeameriii}{%
- \begin{frame}[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
- }{%
- \@ifundefined{programlistbeameriv}{%
- \begin{frame}[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
- }{%
- \begin{frame}[label=beamerprogram4]{\csuse{@bptitle}\btitleapp}
- }
- }
- }
- }
+ \@ifundefined{programlistbeamerii}{%
+ \ifcsdef{@bpolarg}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolarg}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolarg}>[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
+ }{%
+ \@ifundefined{programlistbeameriii}{%
+ \ifcsdef{@bpolargii}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolargii}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolargii}>[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram2]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
+ }{%
+ \@ifundefined{programlistbeameriv}{%
+ \ifcsdef{@bpolargiii}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolargiii}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolargiii}>[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram3]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
+ }{%
+ \ifcsdef{@bpolargiv}{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}<\csuse{@bpolargiv}>[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}<\csuse{@bpolargiv}>[label=beamerprogram4]{\csuse{@bptitle}\btitleapp}
+ }%
+ }{%
+ \ifcsdef{@bpopts}{%
+ \begingroup\edef\tempa{\endgroup\noexpand%
+ \begin{frame}[\csuse{@bpopts}]{\csuse{@bptitle}\btitleapp}}\tempa
+ }{%
+ \begin{frame}[label=beamerprogram4]{\csuse{@bptitle}\btitleapp}
+ }%
+ }%
+ }%
+ }%
+ }%
+
\ifbool{uncoveredlist}{%
\begin{description}[<+->][\lecprogramlistindent]
}{%
@@ -630,6 +729,7 @@
\protected@csxdef{usesinstructor\thesnum}{\csuse{@usesinstructor}}
\protected@csxdef{usesshortinstructor\thesnum}{\csuse{@usesshortinstructor}}
\protected@csxdef{sespresstudents\thesnum}{\csuse{@sespresstudents}}
+ \protected@csxdef{sesblock\thesnum}{\csuse{@currentblock}}
\ifKV@session@cancel
\stepcounter{cancellations}
\protected@eappto\programlist{\noexpand\item[{\noexpand\bfseries\csuse{sesshortdate\thesnum}}]%
@@ -722,19 +822,21 @@
% 3) Definition of thematic blocks
%
\newcommand*\StartBlock[1]{%
- \stepcounter{blocks}
+ \stepcounter{blocks}%
\protected@eappto\programlist{\noexpand\item[{\noexpand\bfseries\Roman{blocks}}.]%
- \noexpand\bgroup\noexpand\bfseries #1\noexpand\egroup}
- \gappto\programlist{\begin{labeling}{\lecprogramlistindent}}
+ \noexpand\bgroup\noexpand\bfseries #1\noexpand\egroup}%
+ \gappto\programlist{\begin{labeling}{\lecprogramlistindent}}%
\protected@eappto\programlistbeamer{\noexpand\item[{\noexpand\bfseries\Roman{blocks}}.]%
- \noexpand\bgroup\noexpand\bfseries #1\noexpand\egroup}
+ \noexpand\bgroup\noexpand\bfseries #1\noexpand\egroup}%
\gappto\programlistbeamer{\begin{description}[\lecprogramlistindent]}
- \protected@xappto\programblocklistbeamer{\noexpand\item[{\Roman{blocks}}.] #1}
+ \protected@xappto\programblocklistbeamer{\noexpand\item[{\Roman{blocks}}.] #1}%
+ \csxdef{@currentblock}{#1}%
}
\newcommand*\EndBlock{%
\gappto\programlist{\end{labeling}}
\gappto\programlistbeamer{\end{description}}
+ \csxdef{@currentblock}{}%
}
\newcommand*\NewBlock[1]{%
@@ -870,6 +972,7 @@
\gdef\@usesinstructor{\csuse{usesinstructor#1}}%
\gdef\@usesshortinstructor{\csuse{usesshortinstructor#1}}%
\gdef\sespresstudents{\csuse{sespresstudents#1}}%
+ \gdef\sesblocktitle{\csuse{sesblock#1}}%
\if\hfuzz\@usesinstructor\hfuzz%
\global\togglefalse{uniquesesinstructor}%
\else
@@ -903,6 +1006,7 @@
\gdef\@lusesinstructor{\csuse{usesinstructor#1}}%
\gdef\@lusesshortinstructor{\csuse{usesshortinstructor#1}}%
\gdef\lsespresstudents{\csuse{sespresstudents#1}}%
+ \gdef\lsesblock{\csuse{sesblock#1}}%
}
% \ses[short]instructor and \ses[short]instructor*.
@@ -992,6 +1096,12 @@
\lsespresstudents%
}
+% Session block title
+\newcommand*\SessionBlockTitle[1]{%
+ \LocalSession{#1}%
+ \lsesblock%
+}
+
% Program line suitable for
% a description or labeling list
\newcommand*\MakeProgramline[1]{%
@@ -1030,6 +1140,13 @@
\SessionTitle{\theadjsession}%
\fi
}
+% Session block title
+\newcommand*\AdjSessionBlockTitle[1][1]{%
+ \ifnum0<0\sesnr\relax
+ \setcounter{adjsession}{\numexpr\sesnr+#1\relax}%
+ \SessionBlockTitle{\theadjsession}%
+ \fi
+}
% Short date
\newcommand*\AdjSessionShortDate[1][1]{%
\ifnum0<0\sesnr\relax
diff --git a/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty b/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty
index a5e8d6d0e6b..7a33c328913 100644
--- a/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty
+++ b/Master/texmf-dist/tex/latex/jslectureplanner/jsmembertable.sty
@@ -24,8 +24,8 @@
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\filedate{2017/09/26}
-\def\fileversion{1.6}
+\def\filedate{2017/12/14}
+\def\fileversion{1.7}
\def\filename{jsmembertable.sty}
\NeedsTeXFormat{LaTeX2e}