什么导致了错误?

什么导致了错误?

我一直在试图弄清楚为什么下面的序言会产生错误

"\Alpha undefined \renewcommand{\Alpha}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oAlpha$}}}" 

几个小时,但我似乎根本无法发现它,这让我非常沮丧(错误也出现在其他几个字母上;但不是全部)。有人能发现以下 MWE 中错误的原因吗?

\documentclass{report}

% PACKAGES LOADING

\usepackage[sloped]{fourier} % To customise font.

% GREEK ITALIC CAPITAL LETTERS

\let\Alpha\otherAlpha
\let\Beta\otherBeta
\let\Gamma\otherGamma
\let\Delta\otherDelta
\let\Epsilon\otherEpsilon
\let\Theta\otherTheta
\let\Eta\otherEta
\let\Theta\otherTheta
\let\Iota\otherIota
\let\Kappa\otherKappa
\let\Lambda\otherLambda
\let\Mu\otherMu
\let\Nu\otherNu
\let\Chi\otherChi
\let\Omicron\otherOmicron
\let\Pi\otherPi
\let\Rho\otherRho
\let\Sigma\otherSigma
\let\Tau\otherTau
\let\Upsilon\otherUpsilon
\let\Phi\otherPhi
\let\Chi\otherChi
\let\Psi\otherPsi
\let\Omega\otherOmega

\newcommand*{\Scale}[2][4]{\scalebox{#1}{\ensuremath{#2}}}

\let\oAlpha\Alpha
\renewcommand{\Alpha}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oAlpha$}}}
\let\oBeta\Beta
\renewcommand{\Beta}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oBeta$}}}
\let\oGamma\Gamma
\renewcommand{\Gamma}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oGamma$}}}
\let\oDelta\Delta
\renewcommand{\Delta}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oDelta$}}}
\let\oEpsilon\Epsilon
\renewcommand{\Epsilon}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oEpsilon$}}}
\let\oTheta\Theta
\renewcommand{\Theta}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oTheta$}}}
\let\oIota\Iota
\renewcommand{\Iota}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oIota$}}}
\let\oKappa\Kappa
\renewcommand{\Kappa}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oKappa$}}}
\let\oLambda\Lambda
\renewcommand{\Lambda}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oLambda$}}}
\let\oMu\Mu
\renewcommand{\Mu}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oMu$}}}
\let\oNu\Nu
\renewcommand{\Nu}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oNu$}}}
\let\oChi\Chi
\renewcommand{\Chi}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oChi$}}}
\let\oOmicron\Omicron
\renewcommand{\Omicron}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oOmicron$}}}
\let\oPi\Pi
\renewcommand{\Pi}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oPi$}}}
\let\oRho\Rho
\renewcommand{\Rho}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oRho$}}}
\let\oSigma\Sigma
\renewcommand{\Sigma}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oSigma$}}}
\let\oUpsilon\Upsilon
\renewcommand{\Upsilon}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oUpsilon$}}}
\let\oPhi\Phi
\renewcommand{\Phi}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oPhi$}}}
\let\oPsi\Psi
\renewcommand{\Psi}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oPsi$}}}
\let\oOmega\Omega
\renewcommand{\Omega}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oOmega$}}}

\begin{document}
WHATEVER.
\end{document}

提前感谢大家抽出时间并对这个相当“无用”的问题表示抱歉。

答案1

大写希腊字母命令\Alpha\Beta\Epsilon\Zeta\Eta\Iota\Kappa\Mu\Nu、、和均未定义。为什么?!这是因为(在大多数键盘上!)将这些字母分别输入为、、、\Omicron、... 、和更加容易。\Rho\Tau\ChiABEZTX

因为\Alpha没有定义,

\renewcommand{\Alpha}{...}

注定会崩溃。在这些情况下,请使用\newcommand{\Alpha}{...}等。请确保这些定义是根据已定义的宏进行的。例如,由于您已经定义\let\oAlpha\Alpha并且\Alpha尚未定义,因此\oAlpha无法通过此指令正确定义\let。因此,

\newcommand{\Alpha}{\raisebox{-1.5pt}{\scalebox{1.3}{$\oAlpha$}}}

也必然会崩溃。真的需要的是

\newcommand{\Alpha}{\raisebox{-1.5pt}{\scalebox{1.3}{$A$}}}

还有\Beta,,\Epsilon等等。

相关内容