ConTeXt:使用分离列表简化数学矩阵符号

ConTeXt:使用分离列表简化数学矩阵符号

我发现自己使用了很多矩阵,并且我想通过使用模块separatedlist中的环境来节省一些打字时间database,但我一直收到错误。

以下会产生“缺失数字,视为零”错误:

\usemodule[database]

\defineseparatedlist
  [Test]
  [before={\startmathmatrix},
   after={\stopmathmatrix},
   first=,
   last={\NR},
   left={\NC},
   right=,
   separator={;}]

\starttext

\startformula
\startTest
  x_{1,1}; x_{1,2}; x_{1,3}
  1; 2; 3
\stopTest
\stopformula

\stoptext

但更改mathmatrixalign似乎没有任何问题:

\usemodule[database]

\defineseparatedlist
  [Test]
  [before={\startalign[n=3]},
   after={\stopalign},
   first=,
   last={\NR},
   left={\NC},
   right=,
   separator={;}]

\starttext

\startformula
\startTest
  x_{1,1}; x_{1,2}; x_{1,3}
  1; 2; 3
\stopTest
\stopformula

\stoptext

我错过了什么?

答案1

您无需定义新命令即可轻松排版矩阵。ConTeXt 已经有一个使用 MATLAB 矩阵符号的机制。要使用它,只需指定simplecommand=NAME,然后\NAME{...}就可以使用该宏来排版矩阵。例如

\definemathmatrix [bmatrix][matrix:brackets][simplecommand=MATRIX]

\starttext
\startformula
  \MATRIX{1,2,3; 4,5,6; 7,8,9} 
  \MATRIX{2;3;4}
\stopformula
\stoptext

给出

在此处输入图片描述

相关内容