在哪里可以找到 expl3 中的编程介绍?

在哪里可以找到 expl3 中的编程介绍?

expl3 中有编程入门吗?我看到了http://ctan.math.washington.edu/tex-archive/macros/latex/contrib/l3kernel/expl3.pdf 但它没有讨论控制结构(例如,它是否取代 ifthen 包?)也没有任何例子。

更具体地说,ifthen 包命令在某些 tikz 代码中不起作用,我希望 expl3 可以解决这个问题。

这个一般性问题以前曾被问过,但那是 9 年前的事了,所以现在也许有更好的答案了?我在哪里可以找到 LaTeX3 手册?

答案1

您的问题是有关 expl3 的多个误解的不祥混合。

首先,expl3.pdf文档是设计文档,expl3它解释了架构背后的原理以及如何使用它。当然,由于其目的,expl3.pdf它不讨论控制结构,这是参考手册的任务interface3.pdf

其次,expl3不会取代ifthen包装,就像苹果不会取代橙子一样。它们是针对同一问题的互补方法。因此,除非您了解其含义,否则也不应该将它们混合在一起。

最后你应该避免混合 TiZ 代码和expl3,同样是因为设计理念上的冲突。TeX 世界中一个臭名昭著的陷阱是“虚假空间”问题,expl3通过忽略 内的所有空格可以解决这个问题\ExplSyntaxOn...Off。然而,这与其他任何依赖空格存在的代码不兼容,例如pgfkeys构成 Ti 基础的代码Z。尽管如此,还是可以让两者合理地协同工作,但这需要用户编写适当的包装器来连接无空间和有空间的世界。

相关内容