我尝试设置
\newcommand{\SS}{\mathcal{S}}
但我发现这个命令已经定义了。
因此,我在我的代码上尝试了本机命令,我发现它是一个“简单”的双 S。
现在我可以使用以下方法解决我的问题
\renewcommand{\SS}{\mathcal{S}}
但我不确定它是否安全(我不知道\SS
LaTeX 是否仅使用它来绘制(简单或特殊的)双 S,或者也用于其他东西)。
有人知道执行“renewcommand”是否安全(或者什么时候不安全)吗\SS
?
答案1
如果你想了解命令的用途,你可以使用\show
宏:
% arara: pdflatex
\documentclass{article}
\begin{document}
%\show\cS
\show\SS
\end{document}
这将显示:
\SS=macro: ->\T1-cmd \SS \T1\SS . l.7 \show\SS
好吧,这些信息并不酷,但您可以看到它与 T1 编码有关,并且您看到它被用作宏。谷歌搜索相同的宏很容易找到定义(德语大写 sz 字母)。\cS
注释中推荐的命令结果是:
\cS=undefined. l.6 \show\cS
因此可以安全使用。
答案2
关于重新定义命令\SS
(“ß”的大写)以缩短命令的安全性\mathcal{S}
,@egreg 说:
“不太安全:您的书目数据可能包含 ß,而该 ß 又可能会大写:最终结果至少会令人费解。”
这绝对是真的,所以我决定遵循@PrzemysławScherwentke 的建议:
“那么,作为书法字母 S 的名称又如何呢
\cS
?在标准 LaTeX 中,它没有定义。”
事实上\cS
,正如@LaRiFaRi(以及)所示\show\cS
,命令是安全的:
\cS=undefined. l.6 \show\cS
谢谢大家:我将我的代码从 更改\renewcommand{\SS}{\mathcal{S}}
为\newcommand{\cS}{\mathcal{S}}
。
科拉多。
答案3
不,这不安全。
\SS 可能来自连续标题中 \ss(小写 ß)转换为大写。当您重新定义它时,如果章节或节标题中恰好有德语尖锐 s,则连续标题可能会出现意外外观。还可能出现后续错误,例如“缺少 $ 插入”,具体取决于您对 \SS 的重新定义。