Тривиальная ошибка (синтаксическая) с командой RenewDocummentCommand и newdocument

Тривиальная ошибка (синтаксическая) с командой RenewDocummentCommand и newdocument

У меня было вот это:

\let\otitle\title
\renewcommand\title[2] {\otitle{#1 \\ \bigskip \large #2\\ \bigskip}}

работало нормально, изменил вот так (xparse):

\RenewDocumentCommand\title{m m} {\otitle{#1 \\ \bigskip \large #2\\ \bigskip}}

Намерен добавить необязательные параметры и другие функции xparse, однако на самом деле возникают ошибки

\title{Notes for Grade 7 Math, 2020}
{
   Complied from the 2013 Curriculum Guide
  \thanks{Thanks to Gereina Skanes for presentation and formatting review} 
}

который работал нормально раньше. Думал, что понял синтаксис RenewDocumentCommand?

решение1

\titleявляется надежной командой и \letне копирует такие команды правильно. Вы можете использовать \LetLtxMacro:

\documentclass{article}

\usepackage{letltxmacro}
\LetLtxMacro\otitle\title

\RenewDocumentCommand\title{m m} {\otitle{#1 \\ \bigskip \large #2\endgraf \bigskip}}

\title{abc}{cde}

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

В следующем выпуске LaTeX появится \NewCommandCopyкоманда, которую вы также сможете использовать:

\documentclass{article}
\NewCommandCopy\otitle\title %new in the next latex ...
\RenewDocumentCommand\title{m m} {\otitle{#1 \\ \bigskip \large #2\endgraf \bigskip}}

\title{abc}{cde}

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

Связанный контент