【问题标题】:LaTeX: Redefining the citation macro temporarilyLaTeX:暂时重新定义引用宏
【发布时间】:2010-09-20 19:59:49
【问题描述】:

我是 Latex 新手,但您似乎可以暂时重新定义一些命令?我遇到的问题是通常引用是(SMITH,2000)。但有时,我想用 Smith (2000) 代替。无论如何我可以暂时重新定义它,然后在代码“块”之后再次使用标准版本?

【问题讨论】:

标签: latex


【解决方案1】:

将局部定义括在大括号 ({}) 中。

\newcommand\foo{FOO!}
\foo
{\renewcommand\foo{BAR?}\foo\foo}
\foo

这将产生类似的东西:

FOO!BAR?BAR? FOO!

这也可以在宏定义中完成 - 只需确保添加额外的大括号:

\newcommand\newfoo{{\renewcommand\foo{BAR?}\foo}}

希望这会有所帮助。

【讨论】:

  • \newcommand 中包含大括号的好建议。
【解决方案2】:

您应该已经有 \citep\citet 命令可以执行您想要的操作,没有理由自己重新定义宏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-30
    • 2019-08-05
    • 2021-07-26
    • 2012-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多