先说说软件的选择这几年我一直都是用LyX这个“所见即所想”的LaTeX前台编辑器的,偶尔也直接写LaTeX代码。但这次写论文时却不得不放弃了LyX。首先是新版的LyX(1.5)在我的Mac (PPC)上很不好用,打字的时候反应迟缓。我打了半天了屏幕上还是空白,我停下之后屏幕上才一个一个字母蹦出来。Linux/Windows版运行都很顺畅,据说问题出在Mac PPC版的Qt里,总之是拖了半年都没解决,迫使我放弃了。
其次是LyX不支持很多LaTeX宏包,比如说per chapter reference list就需要手工干预。
最后是因为听说了ConTeXt,好奇心起来了。ConTeXt有很多独特的优点,后面会详细讲,但当时更多的是尝鲜的好奇心驱使,选了ConTeXt。
用了很多年LaTeX,学会了尽量把排版的事情交给LaTeX,自己只管输入内容。这的确是LaTeX的优点。但反过来说,调整LaTeX模板预定的版式就很困难,经常需要修改模板源代码。而TeX实在不是一种好用的programming language,又不好调试,读懂并修改一个模板实在是太折磨人了。相反,ConTeXt的思路是提供很多控制版式的macro,方便用户自己写format file。下面是我的format file里的三段:
\setuppapersize[A4][A4]
\setuplayout
[width=147mm,
height=fit,
backspace=38mm,
topsp (more...)
再帖两个ConTeXt做的文档
先是一张幻灯片。左边的图是asymptote做的,右边三幅图是用ConTeXt调用一个metapost宏画的,宏的参数是需要的小圆圈的数量,圆圈的位置是随机生成的。幻灯片的字体用的是Helvetica,数学公式的字体是Euler。
然后是一个含很多示意图的文档。为了看起来方便,插图放在右边的margin里。
然后是一个含很多示意图的文档。为了看起来方便,插图放在右边的margin里。