LaTeX3 错误:命令‘\sc’已定义!

LaTeX3 错误:命令‘\sc’已定义!

有人能向我解释一下为什么我会收到以下编译错误

LaTeX3 Error: Command '\sc' already defined!

\documentclass[10pt]{book}
  \NewDocumentCommand{\ch}{om}{
    \IfNoValueTF{#1}{
       \chapter{#2}
    }{ 
       \chapter{#2}\label{ch:#1}
          
    }
}
\NewDocumentCommand{\sc}{om}{
    \IfNoValueTF{#1}{
       \section{#2}
    }{ 
       \section{#2}\label{sc:#1}
          
    }
}

\begin{document}

\ch{AAA}
\sc{BBB}

\end{document}

答案1

\sc是基于的旧字体命令,\scshape用于book类中以兼容 LaTeX2.09。您可以使用其他名称,例如,但请注意,这种简写会使使用标准部分功能(例如未编号变体的形式和标题的目录版本的可选参数)\Sc变得更加困难。*

此外,由于您添加了大量空格(在标准上下文中而不是在中\ExplSyntaxOn),这些空格标记可能会影响输出,请考虑

\documentclass[10pt]{book}
  \NewDocumentCommand{\ch}{om}{
    \IfNoValueTF{#1}{
       \chapter{#2}
    }{ 
       \chapter{#2}\label{ch:#1}
          
    }
}
\NewDocumentCommand{\Sc}{om}{
    \IfNoValueTF{#1}{
       \section{#2}
    }{ 
       \section{#2}\label{sc:#1}
          
    }
}

\begin{document}

\ch{AAA}


aaaaa aaaaaaaaaaaaa aaaaaaaaaaaaaaa a
aaaaa aaaaaaaaa aaaaaaaaaaaaaaa. a
\Sc{BBB}

aaaaa aaaaaaaaaaaaa aaaaaaaaaaaaaaa a
aaaaa aaaaaaaaa aaaaaaaaaaaaaaa. a {} {}
\section{BBB}

aaaaa aaaaaaaaaaaaa aaaaaaaaaaaaaaa a
aaaaa aaaaaaaaa aaaaaaaaaaaaaaa. a
\section{BBB}

\end{document}

产生

在此处输入图片描述

\Sc版本产生的标题好像前一段以第 2 节中所示的额外空间结束,而不是第\section3 节中产生的预期布局。

相关内容