Latex 乳胶中的符号@是什么意思

Latex 乳胶中的符号@是什么意思,latex,Latex,比如说 \def\if@nch@mpty#1{\def\temp@a{#1}\ifx\temp@a\@empty} \def\f@nch@def#1#2{\if@nch@mpty{#2}\f@nch@gbl\def#1{\leavevmode}\else \f@nch@gbl\def#1{#2\strut}\fi} latex中的符号@是什么意思?在正常模式下,命令(或者您可以将其命名为marco)只能命名 按[a-zA-Z

比如说

\def\if@nch@mpty#1{\def\temp@a{#1}\ifx\temp@a\@empty}
\def\f@nch@def#1#2{\if@nch@mpty{#2}\f@nch@gbl\def#1{\leavevmode}\else
                                   \f@nch@gbl\def#1{#2\strut}\fi}

latex中的符号@是什么意思?在正常模式下,命令(或者您可以将其命名为
marco
)只能命名 按[a-zA-Z]但没有其他符号,如符号
@

但是为什么呢?因为echo字符有其catcode,并且只有[a-zA-Z]可以有 将word作为命令的catcode(或
marco
)。但令人惊讶的是,特克斯 假设您可以更改角色的catcode!所以在开始的时候 cls/sty文件,LaTeX在
marco
catcode中设置符号
@
。在结尾处 重置

LaTeX支持两个命令
\makeatletter
\makeatother
可以轻松设置和重置符号
@

乞求 获取更多信息


(如果此答案的英文语法错误,请告诉我或编辑它。谢谢)

它实际上没有任何意义,只是宏名称中的另一个字符。在正常的LaTeX模式下,只允许在包内(或者更一般地说,在调用
\makeatletter
之后)使用它。