0

I have the following document. This is the preamble:

\def\year{2017}\relax
\documentclass[letterpaper]{article}
\usepackage[left=0.8cm,right=2.5cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{aaai17}
\usepackage{times}
\usepackage{helvet}
\usepackage{apacite}
\usepackage{courier}
\usepackage{amsmath, amsfonts, amssymb, amsthm, bm, mathtools}
\usepackage{multirow}
\usepackage{enumitem}
\usepackage{array}
\usepackage{dsfont} %for probability P
\usepackage{fancyhdr}
\usepackage{lastpage}
\usepackage{graphicx}
\usepackage{mdframed}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\frenchspacing
\setlength{\pdfpagewidth}{8.5in}
\setlength{\pdfpageheight}{11in}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\bf}[1]{\textit{#1}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\title{Title}
\author{Foo \AND Bar}

This is the document:

\begin{document}
\maketitle
\end{document}

When compiling I received the following error:

! Missing } inserted.
<inserted text> 
} l.77 \maketitle

When I delete the line \renewcommand{\bf}[1]{\textit{#1}} or delete the \AND character in \author{Foo \AND Bar}, the document compiles normally. Can anyone explain why this happens and how to fix? (Assuming I want to both redefine \bf and use \AND in \author)

EDITED: I just changed newline to \AND and got the same problem. As @UlrikeFischer points out, the use of aaai17 causes the problem. Note that the symbol \AND is only available in this package. What is wrong with this package?

  • I don't have \usepackage{aaai17} and without it it works fine. – Ulrike Fischer Oct 6 '17 at 16:37
  • @UlrikeFischer thanks for pointing out. Do you know why the package causes problems? I use it to split the article into 2 columns. – thbl2012 Oct 6 '17 at 16:43
  • As I wrote: I don't have the package so I can't know what it does. But try \let\bf\itshape instead of your definition . – Ulrike Fischer Oct 6 '17 at 16:55
  • \bf is not a command with arguments; use \renewcommand{\bf}{\itshape}. – egreg Oct 6 '17 at 17:13
  • @egreg I used \renewcommand{\bf}[1]{\textbf{#1}} in other documents and it works fine... – thbl2012 Oct 6 '17 at 17:19
1

The command \bf has been deprecated for almost 25 years, but apparently this long time hasn't been sufficient in order for package authors and maintainers to comply with this deprecation.

However, the command has never taken an argument: it is a declaration meaning “change to normalfont and then start typesetting in boldface” until the scope of the declaration ends.

If you want that boldface called with \bf becomes italic, the right instruction is

\renewcommand{\bf}{\itshape}

that is, substituting a declaration with another one.

With your code, since \AND in aaai17 is defined to be \end{tabular}, with \bf\AND you and up with \textit{\end}{tabular} which is very wrong code and, not surprisingly, causes a later error. Your redefinition has always been wrong to begin with.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.