帮助定义一个新命令以快捷方式到方程式

帮助定义一个新命令以快捷方式到方程式

有没有办法为环境快捷方式定义一个新命令?这是我目前所拥有的,但没有像我希望的那样工作。

\newcommand{\beq}{\begin{equation}
    \label{eq:}

\newcommand{\eeq}{\end{equation}}

我想定义一个命令,这样输入

\eq{1} 
x + y = z 
\eeq

相当于输入类似以下内容

 \begin{equation} 
\label{eq:1} 
x + y = z
\end{equation}. 

这可能吗?我读过定义一个新命令,并在 newcommand 内添加参数\csname 和 \endcsname 到底起什么作用?但我并不完全理解,所以如果有人能帮助我就太好了,因为我对 latex 还比较陌生。我使用的编译器是 texstudios,非常感谢任何帮助。

谢谢

答案1

或者更短一点:

\documentclass{article}
\newcommand{\eq}[2]{\begin{equation} \label{eq:#1} #2 \end{equation}}

\begin{document}

    \eq{1}{x + y = z}

    \eq{2}{a + b = c}

\end{document} 

在文档中输入内容后,您可以使用sed或类似的方法将源 tex 文件“翻译”回常规环境。尽管其他人说了什么,我还是经常这样做(我通常同意这一点 - 但当你在一本书中有 10000 个方程式嵌套在各种环境中,并且同一个文件中有 3 个嵌套翻译时,情况就不同了)。TeX 吹嘘让你专注于内容,不是吗?

答案2

使用以下内容:

\documentclass{article}

\makeatletter
\newcommand{\beq}[1]{\begin{equation}\label{eq:#1}}
\newcommand{\eeq}{\end{equation}}
\makeatother

\begin{document}

\beq{1} 
x + y = z 
\eeq

\beq{2} 
x + y = z 
\eeq

\end{document}

输出:

在此处输入图片描述

相关内容