First, welcome to TeX.SX. It's nice to see a new user, who knows how to ask and do a MWE.
The termcal
package only accepts dates in the format <month>/
. And the date argument of \begin{calendar}
is not expanded before parsing, i.e. macros can't be used. The latter can be changed, but this doesn't work with `\DTMusedate'.
If you don't insist on using the datetime2
package, then here is a solution without it.
To save the date, a simple command \startDate
is defined, just containing the date in the correct format. And to make macros work as argument for \begin{calendar}
\setdate
is redefined so it expands the argument before it's parsed.
\documentclass[12pt]{article}
\usepackage{termcal}
\newcommand*{\startDate}{08/29/2017}
\makeatletter
\renewcommand{\setdate}[1]{\expandafter\setdate@#1!}
\makeatother
\begin{document}
\begin{calendar}{\startDate}{16}
\setlength{\calboxdepth}{.3in}
\setlength{\calwidth}{0.8\textwidth}
% Description of the Week.
\calday[Tuesday]{\classday}
\skipday
\calday[Thursday]{\classday}
\skipday
\skipday
\skipday
\skipday
\end{calendar}
\end{document}
manpreet
Best Answer
2 years ago
I am making a class syllabus using the "termcal" package and would like to store the starting date for the first class so I can use it for different elements of the syllabus. I am currently trying to store the date using the
\DTMsavedate
function from the "datetime2" package.The date will show fine if you use, for example,
\DTMusedate{startDate}
within a paragraph. But if I try to pass it to the date option for\begin{calender}
, I get the error message "Paragraph ended before \setdate@ was complete". Is there a way to make this work? The MWE:I would really appreciate any help with this, thanks!