2010-06-29 57 views
5

Tôi có một số bổ đề mà tôi chỉ định hằng số $ C_1 $, $ C_2 $, v.v. để tham khảo sau này. Đương nhiên, điều này là khó chịu khi tôi sau đó chèn một định nghĩa liên tục mới ở giữa. Những gì tôi muốn là một vĩ mô cho phép tôi gán nhãn cho các hằng số và xử lý việc đánh số cho tôi. Tôi đang suy nghĩ điều gì đó dọc theo các dòng củaHằng số được gắn nhãn trong LaTeX

%% Pseudocode 
\begin{lemma} 
    \newconstant{important-bound} 
    We will show that $f(x) \le \ref{important-bound} g(x)$ for all $x$. 
\end{lemma} 

Điều này có thể?

+0

là gì 'quan trọng-bound' liên quan đến? Nó có phải là số của bổ đề, ví dụ? –

+0

Tôi tin rằng anh ấy muốn * xác định * 'quan trọng ràng buộc' với lệnh' \ newconstant' là 'tiếp theo' C_i, và có thể '\ ref' cho nó sau đó. – finrod

+0

Vâng, cảm ơn bạn finrod. Và có thể '\ newconstant' sẽ lấy một tham số cho phép bạn chỉ định biểu tượng cơ sở (vì vậy bạn có thể có C_i hoặc c_i hoặc whathaveyou). – Joshua

Trả lời

3

Mở rộng trên gợi ý rcollyer của của việc sử dụng một bộ đếm:

%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}}} 

(Mã này đã được chỉnh sửa để cho phép nhãn dài hơn một ký tự)

Và đây là một đoạn mã mà dường như làm việc:

I want to define two constants:\newconstant{A}\newconstant{B}$\useconstant{A}$ and 
$\useconstant{B}$. Then I want to use $\useconstant{A}$ again. 
+0

Rất đẹp. Tôi đã nghĩ về một cái gì đó như thế này, nhưng không chắc chắn nếu nhãn sẽ làm việc như dự định. Chắc chắn +1. – finrod

+0

Cảm ơn Aniko, đây là những gì tôi đang tìm kiếm. – Joshua

0

Điều bạn đang tìm kiếm là tạo counter của riêng bạn.

0

Mở rộng câu trả lời của Aniko, tôi đã sử dụng this layered macro để tạo tốc ký cho nhãn,

\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}} } % 

Vì vậy, để sử dụng này, sau đó bạn sẽ làm gì

\defconstant{a} 
\defconstant{b} 
There exist constant $\ca$ and $\cb$ such that .... 

cẩn thận không để ghi đè lên các lệnh hiện có (tôi chắc chắn rằng nó sẽ cảnh báo bạn dù sao đi nữa)

+2

http://www.ctan.org/pkg/constants cũng có vẻ tương tự. Gói ubuntu texlive-latex-extra cũng bao gồm cả gói này. – Evan

Các vấn đề liên quan