diff options
author | Karl Berry <karl@freefriends.org> | 2015-01-17 23:48:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-01-17 23:48:13 +0000 |
commit | f302d1aaabaeb41bdd624d8ab7ec10414480e124 (patch) | |
tree | dd5fbdf951f582467bd8c347fb6b34e61e0f8990 /Master | |
parent | e852fa089d4c198a477d005c51e0facb8c737d81 (diff) |
jslectureplanner (17jan15)
git-svn-id: svn://tug.org/texlive/trunk@36079 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/jslectureplanner/README | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/jslectureplanner/examples/lectureprogram.pdf | bin | 57439 -> 57438 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf | bin | 112454 -> 113392 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex | 58 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps | 55 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty | 51 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 1 |
7 files changed, 135 insertions, 40 deletions
diff --git a/Master/texmf-dist/doc/latex/jslectureplanner/README b/Master/texmf-dist/doc/latex/jslectureplanner/README index 60290318658..ea21eebc0ce 100644 --- a/Master/texmf-dist/doc/latex/jslectureplanner/README +++ b/Master/texmf-dist/doc/latex/jslectureplanner/README @@ -58,6 +58,16 @@ instructions; also have a look at the example files. == CHANGES == +* V. 0.8 (2015-01-17): - Fix corruption of \today. + - Add framework for different styles. + - Add option and macro to set a room + for the course as well as a + session-specific room. + - Remove redundant lecture type "vo" + from the documentation. + - Change \leccancel default definition + in favour of better translatability. + * V. 0.7 (2015-01-04): Add macro for resetting \today. Minor corrections in the manual. diff --git a/Master/texmf-dist/doc/latex/jslectureplanner/examples/lectureprogram.pdf b/Master/texmf-dist/doc/latex/jslectureplanner/examples/lectureprogram.pdf Binary files differindex 19d707e1ffd..d8dbc7b6e61 100644 --- a/Master/texmf-dist/doc/latex/jslectureplanner/examples/lectureprogram.pdf +++ b/Master/texmf-dist/doc/latex/jslectureplanner/examples/lectureprogram.pdf diff --git a/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf b/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf Binary files differindex 81ce8953f6f..4334235e7fc 100644 --- a/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf +++ b/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.pdf diff --git a/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex b/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex index 5f124404152..86da67de7d5 100644 --- a/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex +++ b/Master/texmf-dist/doc/latex/jslectureplanner/jslectureplanner.tex @@ -27,9 +27,9 @@ \title{The jslectureplanner package} \author{Jürgen Spitzmüller% -\thanks{Please report issues via \protect\url{https://github.com/jspitz/jslectureplanner}}} +\thanks{Please report issues via \protect\url{https://github.com/jspitz/jslectureplanner}.}} -\date{Version 0.7, 2015/01/04} +\date{Version 0.8, 2015/01/17} \maketitle @@ -112,9 +112,6 @@ in ``the second \emph{session} of this course''). \begin{itemize} \item \joption{vl}: a lecture (verbose form: ``Vorlesung''\footnote{Sec.~\ref{sec:customizing-strings} explains how to customize these strings.}, short form: ``VL'', session form: ``Vorlesung'') -\item \joption{vo}: also a lecture\footnote{The division of ``vl'' and ``vo'' has historical (personal) reasons.} -(verbose form: ``Vorlesung'', short form: ``VO'', session form: -``Vorlesung'') \item \joption{ps}: undergraduate seminar (verbose form: ``Proseminar'', short form: ``PS'', session form: ``Sitzung'') \item \joption{se}: seminar (verbose form: ``Seminar'', short form: ``SE'', @@ -150,9 +147,9 @@ etc.) \item [{year=<year>}]~ \item [{uni=<university>}]~ \item [{institute=<institute>}]~ +\item [{room=<room>}]~ \item [{startdate=<startdate>}] Date of the first session (argument\emph{ -must} have the form DD/MM/YYYY). Note that this option changes the value of \jfcsmacro{today}. -See sec.~\ref{sec:resetdate} how to reset it. +must} have the form DD/MM/YYYY). \end{description} \subsubsection{Additional information} @@ -174,9 +171,8 @@ description.} \begin{itemize} \item \joption{vl}: lecture (\emph{Vorlesung}) -\item \joption{vo}: lecture (alternative) \item \joption{ps}: undergraduate seminar (\emph{Proseminar}) -\item \joption{se}: seminar (Seminar) +\item \joption{se}: seminar (\emph{Seminar}) \item \joption{ue}: practical course (\emph{Übung}) \item \joption{ko}: colloquium (\emph{Kolloquium}) \item \joption{pv}: research seminar (\emph{Privatissimum}) @@ -209,10 +205,9 @@ description.} your university \item \jcsmacro{LecInstitute\{<institute>\}}: Set your institute name +\item \jcsmacro{LecRoom\{<room>\}}: Set the room where the course takes place \item \jcsmacro{LecStartDate\{<startdate>\}}: Set date of the first session (argument\emph{ must} have the form DD/MM/YYYY). -Note that this macro changes the value of \jfcsmacro{today}. -See sec.~\ref{sec:resetdate} how to reset it. \end{itemize} \subsubsection{Additional information} @@ -239,6 +234,7 @@ subtitle \item \joption{subtitle=<subtitle>}: Subtitle of the session \item \joption{shorttitle=<shorttitle>}: Short title of the session (for headings etc.) +\item \joption{room=<room>}: Specific room for this session (if it differs) \item \joption{bibsec=<keyword>}: Session keyword for the bibliography (see below sec.~\ref{sub:bibliographies}) \item \joption{cancel=<true|false>}: Whether this session takes place. @@ -303,8 +299,6 @@ code to the beamer program Thematic block consisting of several sessions. Respective sessions are nested inside this block. \end{itemize} -Note that setting up a course plan changes the value of \jfcsmacro{today}. -See sec.~\ref{sec:resetdate} how to reset it. \section{Retrieving general course information\label{sec:general-course-info}} @@ -344,6 +338,7 @@ the semester (e.\,g., ``WS 2014'') of the semester (e.\,g., ``Wintersemester 2014'') \item \jcsmacro{lecuniversity}: Outputs the university name \item \jcsmacro{lecinstitute}: Outputs the institute name +\item \jcsmacro{lecroom}: Outputs the room \item \jcsmacro{lecplatform}: Outputs information on the e-learning platform \item \jcsmacro{officehours}: Outputs the office hours @@ -457,6 +452,7 @@ the current session \item \jcsmacro{sesfulltitle}: Full title of the current session (title, separator, subtitle) \item \jcsmacro{sesnr}: Number of the current session +\item \jcsmacro{sesroom}: Room of the current session \end{itemize} \subsection{Generating session-specific information for an arbitrary session} @@ -475,6 +471,7 @@ title of session number \joption{<nr>} session number \joption{<nr>} \item \jcsmacro{SessionShortDate\{<nr>\}}: Outputs the short date (no year) of session number \joption{<nr>} +\item \jcsmacro{SessionRoom\{<nr>\}}: Outputs the room of session number \joption{<nr>} \item \jcsmacro{MakeProgramline\{<nr>\}}: Outputs a list item line for session number \joption{<nr>} in the form @@ -487,24 +484,14 @@ item line for session number \joption{<nr>} in the form \end{itemize} -\section{Resetting the current date} -\label{sec:resetdate} +\section{Customizing the output}\label{sec:customizing-strings} -The date calculation mechanism (as provided by the \textsf{advdate} package) rewrites the value -of \jfcsmacro{today}. So after you defined a start date via the \joption{startdate} option or -the \jcsmacro{LecStartDate} macro and/or set up a course plan as described in sec.~\ref{sec:lecprog}, -\jfcsmacro{today} will most likely not return today's date anymore. -To restore the current date, use the macro \jcsmacro{ResetDate} after your course plan has been set up. -\section{Customizing the output} - - -\subsection{Customizing the course type strings\label{sec:customizing-strings}} +\subsection{Customizing the course type strings} The strings of the course types can be changed via the macros: \begin{itemize} \item \jcsmacro{DefTypeVL\{<short form>\}\{<title>\}\{<session title>\}} -\item \jcsmacro{DefTypeVO\{<short form>\}\{<title>\}\{<session title>\}} \item \jcsmacro{DefTypePS\{<short form>\}\{<title>\}\{<session title>\}} \item \jcsmacro{DefTypeSE\{<short form>\}\{<title>\}\{<session title>\}} \item \jcsmacro{DefTypeUE\{<short form>\}\{<title>\}\{<session title>\}} @@ -516,7 +503,7 @@ An English form for a lecture, thus, can be achieved by e.\,g. \item \jcsmacro{DefTypeVL\{LEC\}\{Lecture\}\{Session\}} \end{itemize} The types themselves are hardcoded. If you need further\slash{}other -types, you need to modify the package. +types, you need to modify the package (or ask me to do it). \subsection{Customizing the term types} @@ -554,7 +541,7 @@ is German for ``no''). To modify or translate this, redefine the following macro \begin{lstlisting}[language={[LaTeX]TeX},basicstyle={\small\ttfamily},frame=single] -\newcommand*\leccancel{-- keine} +\newcommand*\leccancel{\ -- keine \lectypesession} \end{lstlisting} @@ -577,9 +564,26 @@ Again, use \jfcsmacro{renewcommand{*}} to redefine those. +\subsection{Using styles} + +The most elegant way to do the customizing is to use \emph{lecture planner style} (*.lps) files. +These files can be loaded via the \joption{style=<style>} package option, where <style> +is the file name without *.lps extension. + +Currently, the package ships only one style, \emph{german-default}, which includes the default +strings. This one can be used as a model. If you provide me with other style files, in particular +translations to other languages than German (but also other university conventions), I consider +them for inclusion to the package. + + \section{History} \begin{itemize} +\item 2015/01/17 (v. 0.8): Fix corruption of \jfcsmacro{today}; + add framework for different styles; + add option and macro to set a room for the course as well as a session-specific room; + remove redundant lecture type \joption{vo} from the documentation; + change \jcsmacro{leccancel} default definition in favour of better translatability. \item 2015/01/04 (v. 0.7): Add macro for resetting \jfcsmacro{today}; minor corrections in the manual. \item 2014/12/12 (v. 0.6\,b): Minor corrections in the manual and example files. \item 2014/12/12 (v. 0.6): Initial release to CTAN. diff --git a/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps b/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps new file mode 100644 index 00000000000..e7318a054fd --- /dev/null +++ b/Master/texmf-dist/tex/latex/jslectureplanner/german-default.lps @@ -0,0 +1,55 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% File german-default.lps +%% +%% Default German style for lecture planning +%% +%% This file is part of the jslectureplanner package. +%% +%% Author: Juergen Spitzmueller <juergen.spitzmueller@univie.ac.at> +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainer of this work is Juergen Spitzmueller. +%% +%% Code repository and issue tracker: https://github.com/jspitz/jslectureplanner +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Lecture types +\DefTypeVL{VL}{Vorlesung}{Vorlesung}% lecture +\DefTypePS{PS}{Proseminar}{Sitzung}% undergraduate seminar +\DefTypeSE{SE}{Seminar}{Sitzung}% seminar +\DefTypeUE{UE}{\"Ubung}{Sitzung}% practical course +\DefTypeKO{KO}{Kolloquium}{Sitzung}% colloquium +\DefTypePV{PV}{Privatissimum}{Sitzung}% research seminar + +% Term types +\DefTypeFS{FS}{Fr\"ujahrssemester}% spring term +\DefTypeHS{HS}{Herbstsemester}% fall term +\DefTypeSS{SoSe}{Sommersemester}% summer term +\DefTypeWS{WS}{Wintersemester}% winter term + +% Date formats +\renewcommand*\lecdateformat{% + \THEDAY.\,\twodigit{\THEMONTH}.\,\THEYEAR}% long date +\renewcommand*\lecdateshortformat{% + \THEDAY.\,\twodigit{\THEMONTH}.}% short date + +% Suffix to cancelled sessions +\renewcommand*\leccancel{\ -- keine \lectypesession} + +% Program heading +\renewcommand*\lecprogram{Programm} + +% Indentation of program list +\renewcommand*\lecprogramlistindent{\textbf{88.\,88.}} + +% Finis diff --git a/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty b/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty index 767dddab36b..89827f0074b 100644 --- a/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty +++ b/Master/texmf-dist/tex/latex/jslectureplanner/jslectureplanner.sty @@ -21,8 +21,8 @@ %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\filedate{2014/01/04} -\def\fileversion{0.7} +\def\filedate{2015/01/17} +\def\fileversion{0.8} \def\filename{jslectureplanner.sty} \NeedsTeXFormat{LaTeX2e} @@ -61,6 +61,8 @@ \def\lecsemesterverb{} \def\lecuniversity{} \def\lecinstitute{} +\def\lecroom{} +\def\lecstartdate{} \def\lecplatform{} \def\officehours{} @@ -83,7 +85,8 @@ \def\lectypevl{Vorlesung} \def\lectypevls{VL} \def\lectypevlses{Vorlesung} -% vo +% vo (redundant and undocumented; +% just kept for historical reasons) \def\lectypevo{Vorlesung} \def\lectypevos{VO} \def\lectypevoses{Vorlesung} @@ -122,7 +125,7 @@ \def\lectermwss{WS} % misc. -\newcommand*\leccancel{-- keine} +\newcommand*\leccancel{\ -- keine \lectypesession} \newcommand*\lecprogram{Programm} \newcommand*\lecprogramlistindent{\textbf{88.\,88.}} @@ -134,7 +137,7 @@ \def\lectype{\lectypevls} \def\lectypeverb{\lectypevl} \def\lectypesession{\lectypevlses} - \or% vo (wien) + \or% vo (redundant and undocumented; just kept for historical reasons) \def\lectype{\lectypevos} \def\lectypeverb{\lectypevo} \def\lectypesession{\lectypevoses} @@ -192,7 +195,9 @@ \define@key{lec}{institute}{\def\lecinstitute{#1}} \define@key{lec}{platform}{\def\lecplatform{#1}} \define@key{lec}{officehours}{\def\officehours{#1}} -\define@key{lec}{startdate}{\SetDate[#1]} +\define@key{lec}{room}{\def\lecroom{#1}} +\define@key{lec}{startdate}{\def\lecstartdate{#1}} +\define@key{lec}{style}{\AtEndOfPackage{\input{#1.lps}}} \DeclareOptionX{title}{\setkeys{lec}{title=#1}} \DeclareOptionX{titlesep}{\setkeys{lec}{titlesep=#1}} @@ -204,6 +209,8 @@ \DeclareOptionX{startdate}{\setkeys{lec}{startdate=#1}} \DeclareOptionX{platform}{\setkeys{lec}{platform=#1}} \DeclareOptionX{officehours}{\setkeys{lec}{officehours=#1}} +\DeclareOptionX{room}{\setkeys{lec}{room=#1}} +\DeclareOptionX{style}{\setkeys{lec}{style=#1}} \ProcessOptionsX @@ -222,6 +229,7 @@ \newcommand*{\LecYear}[2]{\setkeys{lec}{lecsem=#1,year=#2}} \newcommand*{\LecUni}[1]{\setkeys{lec}{uni=#1}} \newcommand*{\LecInstitute}[1]{\setkeys{lec}{institute=#1}} +\newcommand*{\LecRoom}[1]{\setkeys{lec}{room=#1}} \newcommand*{\LecStartDate}[1]{\setkeys{lec}{startdate=#1}} % @@ -263,7 +271,8 @@ \def\lectypevls{#1} \def\lectypevlses{#2} } -% vo +% vo (redundant and undocumented; +% just kept for historical reasons) \newcommand*\DefTypeVO[3]{% \def\lectypevo{#2} \def\lectypevos{#1} @@ -474,6 +483,7 @@ \define@key{session}{subtitle}{\csdef{@vasutitle}{#1}} \define@key{session}{shorttitle}{\csdef{@vashorttitle}{#1}} \define@key{session}{bibsec}{\csdef{@sesbibsec}{#1}} +\define@key{session}{room}{\csdef{@sesroom}{#1}} \define@boolkey{session}{cancel}[true]{} \newcommand*\NewSession[2][]{% @@ -485,24 +495,30 @@ \csdef{@vasutitle}{} \csdef{@vashorttitle}{} \csdef{@sesbibsec}{} + \csdef{@sesroom}{\lecroom} \setkeys{session}{cancel=false} \setkeys{session}{#1} \csdef{@sestitle}{#2} - \protected@csxdef{sesdate\thesnum}{\AdvanceDate[\thedateratio]\vldate\today\AdvanceDate[-\thedateratio]} - \protected@csxdef{sesshortdate\thesnum}{\AdvanceDate[\thedateratio]\vlshdate\today\AdvanceDate[-\thedateratio]} + \protected@csxdef{sesdate\thesnum}{% + \bgroup\ifx\lecstartdate\empty\else\SetDate[\lecstartdate]\fi% + \AdvanceDate[\thedateratio]\vldate\today\egroup} + \protected@csxdef{sesshortdate\thesnum}{% + \bgroup\ifx\lecstartdate\empty\else\SetDate[\lecstartdate]\fi% + \AdvanceDate[\thedateratio]\vlshdate\today\egroup} \protected@csxdef{sestitle\thesnum}{\csuse{@sestitle}} \protected@csxdef{sestitlesep\thesnum}{\csuse{@sestitlesep}} \protected@csxdef{sessubtitle\thesnum}{\csuse{@vasutitle}} \protected@csxdef{sesshorttitle\thesnum}{\csuse{@vashorttitle}} \protected@csxdef{sesbib\thesnum}{\csuse{@sesbibsec}} + \protected@csxdef{sesroom\thesnum}{\csuse{@sesroom}} \ifKV@session@cancel \stepcounter{cancellations} \protected@eappto\programlist{\noexpand\item[{\noexpand\bfseries\csuse{sesshortdate\thesnum}}]% \noexpand\bgroup\noexpand\bfseries\csuse{sestitle\thesnum}\csuse{@sestitlesep}\csuse{@vasutitle}% - \ \leccancel\ \lectypesession\noexpand\egroup} + \leccancel\noexpand\egroup} \protected@eappto\programlistbeamer{\noexpand\item[{\noexpand\bfseries\csuse{sesshortdate\thesnum}}]% \noexpand\bgroup\noexpand\bfseries\csuse{sestitle\thesnum}\csuse{@sestitlesep}\csuse{@vasutitle}% - \ \leccancel\ \lectypesession\noexpand\egroup} + \leccancel\noexpand\egroup} \else \protected@eappto\programlist{\noexpand\item[{\noexpand\bfseries\csuse{sesshortdate\thesnum}}]% \csuse{sestitle\thesnum}\csuse{@sestitlesep}\csuse{@vasutitle}} @@ -590,6 +606,7 @@ \gdef\sestitlesep{\csuse{sestitlesep#1}}% \gdef\sesshorttitle{\csuse{sesshorttitle#1}}% \gdef\sessubtitle{\csuse{sessubtitle#1}}% + \gdef\sesroom{\csuse{sesroom#1}}% } \newcommand\LocalSession[1]{% @@ -600,6 +617,7 @@ \gdef\lsestitlesep{\csuse{sestitlesep#1}}% \gdef\lsesshorttitle{\csuse{sesshorttitle#1}}% \gdef\lsessubtitle{\csuse{sessubtitle#1}}% + \gdef\lsesroom{\csuse{sesroom#1}}% } % Session information @@ -628,13 +646,20 @@ \lsesshortdate% } +\newcommand*\SessionRoom[1]{% + \LocalSession{#1}% + \lsesroom% +} + \newcommand*\MakeProgramline[1]{% \LocalSession{#1}% -\item[{\bfseries\lsesshortdate}]% - \lsestitle\lsestitlesep\lsessubtitle% + \item[{\bfseries\lsesshortdate}]% + \lsestitle\lsestitlesep\lsessubtitle% } % Reset to today +% Not needed anymore as of v. 0.8, +% but kept for backwards compatibility reasons \newcommand*\ResetDate{\SetDate} % Finis diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index efe0001d2f6..f6a2ebc1128 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -1494,6 +1494,7 @@ $standardtex='\.(.bx|cfg|sty|clo|ldf|cls|def|fd|fontspec|cmap|4ht)$'; 'isodoc', '\.cls|\.sty|iso.*\.ldf', # not template.ldf 'jadetex', '\.ltx|\.def|\.tex|\.ini|\.sty|\.fd', 'js-misc', '(cassette|idverb|js-misc|schild|sperr|xfig)\.tex', + 'jslectureplanner', '\.lps|' . $standardtex, 'karnaugh', 'kvmacros.tex', 'kastrup', 'binhex.tex|' . $standardtex, 'keystroke', 'keystroke_.*|\.sty', |