在Sage中修改LaTeX代码转录

时间:2017-06-22 15:36:49

标签: sage

我想在Sage中修改函数val res = resources val text = String.format(res.getString(R.string.welcome_messages), username, mailCount) :有没有办法选择如何在TeX中翻译符号列表?在我的特殊情况下,我希望矩阵用'矩阵'来编码。而不是latex(),更好的是,使用乳胶中的个性化宏,允许人们在展示风格中使用矩阵的条目。

1 个答案:

答案 0 :(得分:2)

这有两个答案。一种类型的定制很容易并且记录在案,例如:如果你这样做

latex.matrix_delimiters?

文档为您提供

sage: a = matrix(1, 1, [17])
sage: latex.matrix_delimiters("[", "]")
sage: latex(a)
\left[\begin{array}{r}
17
\end{array}\right]

有一个类似latex.matrix_column_alignment()的地方可以设置它。

但是,虽然latex.add_macro()允许添加各种类型的额外宏,但它不应该对矩阵有帮助,因为它们已经有_latex_()方法。见src/sage/matrix/matrix0.pyx。但是你可以(原则上)将其最后一行更改为你想要的任何内容。

return "\\left" + matrix_delimiters[0] + "\\begin{array}{%s}\n"%format + s + "\n\\end{array}\\right" + matrix_delimiters[1]

或者甚至可以根据您的喜好以自定义方式修改其余代码。或者,您可以想出一种方法,让每个人都可以自定义,并在Trac上提交 - 也许latex.matrix_type()\matrix\pmatrix,{{{{}}之间进行选择1}}和朋友们。

尽管如此,我并不完全清楚你在上一篇评论中提出的建议,并提出一个很好的方法来概念化。