Web2C是一整套TeX相关程序的集合,也是TeX的一种实现,它包含TeX本身、MetaFontMetaPostBIBTeX等,是很多TeX发行套件的内核。Web2C的工作机理是将高德纳文学编程语言WEB所编写的原始代码转换为C语言,即Web-to-C[1]。Web2C最初适用于Unix系统,目前已扩展到包括DOSAmigaWindowsMac OS X等在内的多种操作系统[2]

历史

Web2C最早由Tomas Rokicki在1987年实现,他开发了第一套将TeX系统的代码转换为C语言代码的系统。Tim Morgan后来成为了这套系统的维护者,在这期间,软件的名称改为Web-to-C。在许多其他贡献者的帮助下,1990年Karl Berry接手了这项工作。1997年,Karl将这项工作交给了Olaf Weber。Olaf在2006年又把这项工作交还给了Karl[2]

主要内容

所有的Web2C程序均使用Kpathsea路径搜索库来查找文件,这套库结合环境变量和配置文件的使用来优化大量TeX文件的搜索[3]

以Web2C方式处理的核心TeX程序包括[2]

  • bibtex:维护参考文献
  • dvicopy:展开DVI中的虚拟字体引用
  • dvitomp:将DVI转换为MPX(MetaPost图片)
  • dvitype:将DVI转换为可读文本
  • gftodvi:生成Generic格式字体的proofsheet
  • gftopk:将Generic格式字体转换为packed格式字体
  • gftype:将Generic格式字体转换为可读文本
  • mf:创建字体
  • mft:以漂亮的方式排版输出MetaFont的代码
  • mpost:创建技术性插图
  • patgen:创建断字规则文件
  • pktogf:将Packed格式字体转换为generic格式字体
  • pktype:将PK格式转换为可读的文本
  • pltotf:将纯文本的property list转换为TFM格式
  • pooltype:显示WEB的pool文件
  • tangle:将WEB转换为Pascal代码
  • tex:排版
  • tftopl:将TFM格式转换为纯文本的property list格式
  • vftovp:将虚拟字体格式转换为virtual property list格式
  • vptovf:将virtual property list格式转换为虚拟字体格式
  • weave:将WEB转换为TeX

许可协议

由于创作者的情况各异,Web2C的不同部分采用了不同的许可协议。简而言之,Web2C的可执行文件都采用GPL协议;而源自斯坦福的底层源文件则有其特定的许可协议,不适用GPL协议[4]

参考资料

相关条目

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.