我最早听闻并接触 ConTeXt,大概是 2008 年在王垠的个人主页上看到他对 ConTeXt的谥美之文。当时我猎奇心甚为严重,又觉得大家都在用的 LaTeX 无法体现我的气质,便开始自学 ConTeXt。或许这是年青人的通病。
现在,我已不再年青,却依然喜欢 ConTeXt。曾经沧海难为水,或许这是人老了之后的通病,而我觉得更可能是因为 ConTeXt 依然年青。2008 年,ConTeXt 正处于从 MkII 版本向 MkIV 版本跃迁期间。待 2019 年 MKIV 版本尘埃落定时,ConTeXt 的开发者大刀阔斧,如火如荼,开启了下一个版本 LMTX的开发工作,至今方兴未艾。
任何工具,只要有人长时间维持和改进,便会趋向于复杂而难以被他人驾驭,但是它能胜任复杂的任务。TeX 是复杂的,以它为基础的 Plain TeX,LaTeX 和 ConTeXt 则更为复杂。事实上,并非工具趋向于变得复杂,而是任务趋向于变得复杂,更本质一些,是人心趋向于变得复杂。例如,使用 Markdown 之类的标记语言写散文类的文章,轻松愉快,这是近年来 Markdown 广泛用于网文创作的主要原因。倘若用 Markdown 写一本含有许多插图、数学公式、表格、参考文献等内容的书籍,便需要为它增加许多功能,最终的结果相当于又重新发明了一次 TeX。
Plain TeX,LaTeX 和 ConTeXt 虽然皆为构建在 TeX 系统上的宏包,但是国内熟悉前两者的人数远多于 ConTeXt,究其原因,我觉得是因为 ConTeXt 入门文档甚少,其中中文文档则更为罕见。ConTeXt 创始人兼主要开发者 Hans Hagen 为 ConTeXt 撰写了一份内容全面、排版精美的英文版入门文档,对于具备一些英文阅读能力的人,原本可从该文档入门,但遗憾的是,除非读者知道如何在 ConTeXt 中使用汉字(也包括日、韩文字)字体,否则所学知识仅能用于英文排版。
我曾于 2009 年写过一份 ConTeXt学习笔记,介绍了在 ConTeXt MkIV 中如何加载汉字字体以及基本的 ConTeXt 排版命令的用法,内容颇为粗陋,由 CTeX 论坛里的朋友整合至 ctex-doc 项目并打包呈交 https://ctan.org 网站。2011 年夏天曾许诺将我发布于网络上的一些相关文章合并至该笔记,但因俗务缠身,后来兴趣又有漂移,便不了了之。
光阴荏苒,时过境迁,当年曾在 CTeX 论坛一起折腾 TeX 的朋友大多已不知所踪——在他们看来,我亦如是。现在,若学习 LaTeX 尚能找到一些讨论区,而 ConTeXt 似乎再也无人问津了。爱好终归属于自己。即使现在国内只有我一个人还在喜欢 ConTeXt,依然应当为自己写一份新的 ConTeXt 学习笔记,以偿旧诺。
文章下载:https://www.ctan.org/pkg/context-notes-zh-cn