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.