是否有可能为LaTeX开发功能?

时间:2009-12-18 22:30:56

标签: latex

好的,我是一个真正的LaTeX菜鸟。但我必须使用它。一个知道它的朋友(作为一名学生用它来写文凭)说,有一个列表包可以将源代码放入文档中。好吧,在我看到那个列表包之后,我意识到这不是我想要的。所以我很好奇是否可以开发像列表包这样的东西。我不知道这样的“包”究竟是什么类型的东西。现在我打赌它是某种程序。

所以:我怎样才能编写一个模块或包(或LaTeX人员所称的那些)来扩展具有自定义功能的LaTeX?我必须在那里使用什么编程语言?在线是否有任何有用的教程?

5 个答案:

答案 0 :(得分:4)

看看The latex class and package authors guide。另外请看this rather similar SO question,特别是,texments的实现为您提供了另一种实现方法。

答案 1 :(得分:2)

LaTeX是一个用TeX语言开发的程序套件:)

答案 2 :(得分:2)

对于简单的事情,您可以定义自己的环境和命令。了解如何使用\newcommand\newenvironment。看一些例子here。这很容易。

将命令和环境放在单独的包中是下一步。

编程TeX(LaTeX所基于的引擎)更复杂。 TeXbook [1][2]是您的朋友。

答案 3 :(得分:1)

如果您对其工作感兴趣,可以查看source code of the listings package但请注意。自己编写LaTeX包并不容易。

答案 4 :(得分:0)

重新编写列表的一个例子是mcode which I found here。如果您浏览.sty文件,您将有一个好主意。 但是,如果作为一个初学者,你应该开发一个完整的包,这可能是因为你不知道如何使用现有的东西。例如,对于列表,您有很多选项,它可以适应许多不同的语言。 如果您更喜欢使用伪代码,可以查看“algorithm”包。