2016年,创建包的不同方法有哪些优缺点?

2016年,创建包的不同方法有哪些优缺点?

现在我们需要在 TeX、LaTeX2e、LaTeX 3、ConTeXt(LuaTeX)、LuaLaTeX、XeTeX、XeLaTeX 等之间做出一些选择...

我并不是特别喜欢 L3 的语法,但最近 L3 和 Lua 的非常令人信服的示例给我留下了深刻的印象,所以无论语法如何,学习如何使用 L3 以及如何使用 Lua 编程也许是件好事。但如果我在包中引入一些 L3 代码,可能会给一些用户带来一些问题。是否可以混合使用 L3 和 Latex2e?Lua 是一个非常大的进步……但 lualatex 似乎很有前途。

我们需要使用包中的选项,我们需要使用键...每种方法推荐使用哪些包?

我认为不动并不是一件好事,我必须选择一个方向,所以我的问题是问不同方法的优缺点是什么?(如果我的英语很粗糙,请原谅!)

答案1

最佳方法将引发基于意见的答案......

好吧,我的看法是:

乍一看,我发现expl3语法很糟糕,但与此同时,我将我的第一个包从 转换L2expl3,极大地扩展了它的功能。

'目前' 我也会用它expl3来重写其他软件包,至于未来的软件包('我有一些计划 - 编写软件包是必须的'尤达大师会说 ;-))

我并不是说那个L3语法是最好的——但同时,我喜欢它。但事实是,L2L3 团队至今仍未解决一些遗留问题。

关于选项:用户 A 偏好键值包Z,下一个用户偏好包Y

只要您知道自己在做什么,那么在任何设置下都可以进行写作,无论是plain TeXLuaLaTeX还是。L2L3

也许混合将是未来的趋势(至于 L2 和 L3,目前为止还只是混合,因为还没有\use_package:n {classicthesis};-))

(我不能说什么ConTeXt,因为除了一些小测试之外我还没有真正使用过它,所以我没有产生任何有用的结果 —— 但这是我的错 ;-))

芭芭拉·比顿 (Barbara Beeton) 对出版商等做了一些重要说明。

在我看来,包的目的/目标决定了类或包的用途。一个可以广泛应用于大量适用文档类型的更通用的包应该用 L2 或 编写expl3,因为lualatex它不是那么先进(就编写而言),而且目前还没有达到人们所要求的程度。

答案2

如果您正在创建一个供作者提交书籍和论文出版使用的包,那么您应该考虑可能的出版商设置的限制以及这些限制的原因。

大多数情况下,这种限制并不是任意的,而是基于生产和印刷过程的要求以及档案稳定性的需要而做出的。(后者取决于领域;它对数学非常重要,但对化学则不那么重要。)

这里有些例子。

  • luatex 尚未足够稳定,不能被视为生产工具。

  • 上下文不能轻易适应某些出版商的要求。

  • 限制性许可可能是一个问题;lppl 很好。

  • “drop dead” 代码会在代码中指定的日期之后导致软件包无法使用/无法运行,这使得具有存档要求(包括支持修订版或将文章纳入“文集”)的出版商无法使用该软件包。

pdf(la)tex 和 xe(la)tex 已被证明是稳定的碱基。

相关内容