我有几个lemma,其中我指定常量$ C_1 $,$ C_2 $等等以供稍后参考。当然,当我稍后在中间插入一个新的常量定义时,这很烦人。我想要的是一个宏,它允许我为常量指定标签并为我处理编号。
我正在考虑一些事情%% Pseudocode
\begin{lemma}
\newconstant{important-bound}
We will show that $f(x) \le \ref{important-bound} g(x)$ for all $x$.
\end{lemma}
这可能吗?
答案 0 :(得分:3)
扩展rcollyer使用计数器的建议:
%counter of current constant number:
\newcounter{constant}
%defines a new constant, but does not typeset anything:
\newcommand{\newconstant}[1]{\refstepcounter{constant}\label{#1}}
%typesets named constant:
\newcommand{\useconstant}[1]{C_{\ref{#1}}}
(编辑此代码以允许超过一个字符的标签)
这是一个似乎有用的代码片段:
I want to define two constants:\newconstant{A}\newconstant{B}$\useconstant{A}$ and
$\useconstant{B}$. Then I want to use $\useconstant{A}$ again.
答案 1 :(得分:0)
您正在寻找的是创建自己的counter。
答案 2 :(得分:0)
扩展Aniko的答案,我用过 this layered macro以便为标签创建简写
\newcounter{constant}
\newcommand{\newconstant}[1]{\refstepcounter{constant}\label{#1}}
\newcommand{\useconstant}[1]{C_{\ref{#1}}}
\newcommand{\defconstant}[1]{ \newconstant{c_#1}\expandafter\newcommand\csname c#1\endcsname{\useconstant{c_#1}} } %
所以要使用它,你会做
\defconstant{a}
\defconstant{b}
There exist constant $\ca$ and $\cb$ such that ....
小心不要覆盖现有的命令(我确定无论如何都会警告你)