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]

參考資料

編輯
  1. ^ Web2C项目主页. [2014-02-22]. (原始內容存檔於2022-05-07). 
  2. ^ 2.0 2.1 2.2 Karl Berry. The TeX Live Guide-2013 (PDF). [2014-02-22]. (原始內容存檔 (PDF)於2014-02-27). 
  3. ^ Kpathsea项目主页. [2014-02-22]. (原始內容存檔於2022-01-21). 
  4. ^ Web2C Manual. [2014-02-22]. (原始內容存檔於2022-01-20). 

相關條目

編輯