我想在序言中声明一些宏,这样我就可以更快地创建 2 x 2 矩阵,特别是,我希望能够通过四个条目位置进行制表。我觉得这太基础了,我缺少一个明显的解决方案。理想情况下,我希望命令能够实现smallmatrix
和pmatrix
。
提前致谢!
编辑:抱歉,造成混淆。我的意思是,\newcommand{\norm}[1]{\left|\left|#1\right|\right|}
命令带有参数,使用 TexWorks 中的 tab 补全或 Kile 中的 enter 补全会自动将光标放在参数字段中。希望这个解释能有所帮助!
答案1
对于矩阵宏,我一直在使用以下内容,尽管其他评论者的任何内容都可以:
\newcommand{\mat}[4]{\left(
\begin{array}{cc}
#1 & #2 \\
#3 & #4 \\
\end{array}
\right)
}
然后\mat{a}{b}{c}{d}
生成具有行 (a, b) 和 (c, d) 的矩阵。将其插入到序言中。
然后您需要启用此新命令的自动完成功能。以下是如何在 TeXworks 中执行此操作。
首先,在完成文件夹 TeXworks 资源目录中找到文件 tw-latex.txt;在 Ubuntu 中,它是~/.TeXworks/completion
,在其他系统上,请参考手册. 以管理员身份编辑它(在 Linux 上默认情况下是只读的)。
在文件的某个位置(理想情况下按字母顺序)添加以下行:
\mat{#INS#}{•}{•}{•}#RET#
这将为您的新命令添加 Tab 和Ctrl+自动完成功能。Tab\mat
或者,在 TeXworks 中您可以定义这样的自动完成宏:
\mat:=\left(\begin{array}{cc}#INS# & • \\• & • \\ \end{array}\right)#RET#
这将自动扩展\mat
到整个构造。此方法的优点是可以在所有 TeX 文档中工作,而无需\mat
在序言中定义命令,也不必包含样式文件。
但是,它很丑陋,特定于 TeXworks,并且需要自动完成(而使用\mat
定义的 via \newcommand
,您可以自己高效地键入)。因此,在这种情况下,这种方法可能不是首选,但它对于其他构造仍然有用。
要根据自己的喜好修改自动完成规则,请参阅本手册的这一部分。
答案2
我不确定您通过这四个条目进行制表是什么意思,但以下内容对 Stefan Kottwitz 给出的内容进行了轻微的修改。
\documentclass{article}
\usepackage{amsmath}
\newcommand*\pmat[4]{\begin{pmatrix}#1\\#3\end{pmatrix}}
\newcommand*\smat[4]{\begin{smallmatrix}#1\\#3\end{smallmatrix}}
\begin{document}
\[
\pmat{a}{b}{c}{d}
\smat{e}{f}{g}{h}
\]
\end{document}
答案3
你是指快捷方式吗?这里有一个定义命令而不是环境的可能性:
\documentclass{article}
\usepackage{amsmath}
\newcommand*{\pmat}[1]{\begin{pmatrix}#1\end{pmatrix}}
\newcommand*{\smat}[1]{\begin{smallmatrix}#1\end{smallmatrix}}
\begin{document}
\[
\pmat{a & b \\ c & d}
\smat{e & f \\ g & h}
\]
\end{document}
答案4
这gedit 的 LaTeX 插件与大多数优秀的 LaTeX 编辑器一样,它有一个用于表格和矩阵的宏。它支持在条目之间进行制表。作为一个 gnome 应用程序,您可以为任何菜单项分配快捷方式,只需选择它然后按下您想要的键即可。gedit 适用于大多数操作系统。
Texmaker 有一个类似电子表格的向导,用于创建矩阵和表格,并且适用于大多数平台。