2

I am using the MIT LaTeX thesis templates as a template.

On the cover.tex page I've tried commenting out / removing the \chairman command.

%\chairman{Arthur C. Smith}{Chairman, Department Committee on Graduate Theses}

but this leads to an unexpected error:

line 91: Undefined control sequence \maketitle
line 91: There's no line here to end. \maketitle
line 91: Undefined control sequence \maketitle

What is the root cause of this behavior? It looks to me like somehow some commands (eg. \thesisdate, \degreeyear etc. are required by this template.

2 Answers 2

5

Your quoting of the error message is misleading, the actual error is

! Undefined control sequence.
<argument> \@chairmanname 
                          \\ \@chairmantitle 
l.91 \maketitle

The undefined command is always the last token on the second line so \@chairmanname the later lines show the context where the error was detected which is \maketitle.

Note the comments in the file say

%% Make the titlepage based on the above information.  If you need
%% something special and can't use the standard form, you can specify
%% the exact text of the titlepage yourself.  Put it in a titlepage
%% environment and leave blank lines where you want vertical space.
%% The spaces will be adjusted to fill the entire page.  The dotted
%% lines for the signatures are made with the \signature command.

So what you are intended to do is use \begin{titlepage} not \maketitle alternatively redefine \maketitle the original is:

\def\maketitle{\begin{titlepage}
\large
{\def\baselinestretch{1.2}\Large\bf \choosecase{\@title} \par}
by\par
{\Large  \choosecase{\@author}}
\par
\@prevdegrees
\par
\choosecase{Submitted to the} \choosecase{\@department} \\
\choosecase{in partial fulfillment of the requirements for the}
\choosecase{\@degreeword} 
\choosecase{of}
\par
\choosecase{\@degree}
\par
at the
\par\MIT\par
\@degreemonth\ \@degreeyear
\par
\@copyrightnotice
\par
\vskip 3\baselineskip
\signature{Author}{\@department \\ \@thesisdate}
\par
\vfill
\unvbox\@titlesupervisor
\par
\vfill
\signature{Accepted by}{\@chairmanname \\ \@chairmantitle}
\vfill
\end{titlepage}}

so if you remove

 \signature{Accepted by}{\@chairmanname \\ \@chairmantitle}

The error will go.

5
  • 2
    It's quite unfortunate that front-ends such as TeXStudio are not able to sensibly parse error messages.
    – egreg
    Commented Oct 20, 2013 at 10:01
  • 1
    @egreg I wasn't aware there were front ends other than emacs Commented Oct 20, 2013 at 10:03
  • @egreg At first, it would be the responsibility of latex to create sensible error messages. However, if you have an idea how to sensibly parse error messages, you are welcome to describe it in a feature request. Commented Oct 20, 2013 at 16:43
  • @TimHoffmann The undefined control sequence is always in the line below the one starting with ! Undefined; TeXStudio is using the bottom line, which doesn't give precise information.
    – egreg
    Commented Oct 20, 2013 at 17:56
  • @TimHoffmann The undefined error message is not under the control of LaTeX, it is a TeX primitive behaviour. Commented Oct 20, 2013 at 19:09
2

This reply comes much too late for the OP, but since the question is archived, I'll mention that a new MIT thesis template was released in 2023: https://ctan.org/pkg/mitthesis

This new latex template allows dropping the chairman (or thesis "acceptor") simply by omitting the \Acceptor{..}{..}{..} command. To suppress the resultant error message, put \SuppressAcceptorError before \maketitle*. See the package documentation for details about the various commands.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .