باسلام
کد زیر را در نظر بگیرید:
\documentclass{report}
\usepackage[nonamebreak,square]{natbib}
\renewcommand{\cite}[2][]{\citep[#2]{#1}}
\begin{document}
\cite[\S\S 1.2.1]{Shapiro2009Lectures}
\end{document}
هدف من آن است که می خواهم به نحوی دستور \cite
را باز تعریف کنم، اما وقتی از کد بالا استفاده می کنم با خطای
! TeX capacity exceeded, sorry [input stack size=5000].
مواجه می شوم. البته اگر دستور را به صورت
\renewcommand{\cite}[1]{\citep{#1}}
تعریف کنیم، مشکلی وجود نخواهد داشت. علت تعریف به صورت اول، این بود که می خواستم option دستور \cite
را نیز به دستور \citep
بدهم.
باتشکر