
毫無疑問,微軟Word是最常用的文檔處理軟件。這款“所見即所得”的文本處理器可滿足許多作者的所有需求。對于許多AJE的客戶來說, 微軟Word中的跟蹤修訂功能尤為實用。然而,使用微軟Word可能很難對某些文本進行格式調(diào)整和排版。
因此,許多科研人員更喜歡使用LaTeX。它可以提供專業(yè)的版面設(shè)計,提升排版質(zhì)量,還擁有設(shè)置腳注、引文、表格和圖片等便捷功能。盡管使用LaTeX編輯文檔有諸多優(yōu)點,但GNU Emacs、Vim和TeXworks等LaTeX編輯器很難顯示出文本的修訂情況。換言之,相較于LaTeX編輯器,微軟Word更易實現(xiàn)跟蹤修訂的功能。
基于Perl語言的latexdiff工具,為TeX文件跟蹤修訂提供了解決方案。
latexdiff工具推出于2013年初,可用于顯示多個作者所編輯的長文本的改動。這個工具編譯“compare”(比較)文件,即可像編譯典型的LaTeX文件一樣,生成PDF文件,以不同顏色標示插入和刪除的內(nèi)容(如分別使用藍色和紅色字體),從而顯示原文檔和修訂文檔之間的差異。
本文AJE美國期刊專家旨在幫助您學(xué)習(xí)安裝和使用latexdiff。
開始之前,請做好如下準備:
- 確保已經(jīng)安裝TeX系統(tǒng),如用于MS Windows 的MiKTeX 21.6或用于Mac OS X的MacTeX-2021,以上均為開源軟件。
- MS Windows系統(tǒng)必須預(yù)先安裝Perl(5.8或更高版本)(Mac OS X系統(tǒng)自帶Perl)。
- 下載適用MS Windows系統(tǒng)的latexdiff源代碼。對于Mac OS X,代碼可從TeX Live Utility的任一CTAN庫中下載。
- 解壓latexdiff文件并將其復(fù)制到Perl > bin文件夾中(默認安裝路徑C:\ 盤)。
如您使用MS Windows系統(tǒng)
- 打開MiKTeX Package Manager,找到latexdiff軟件包,右鍵單擊,選擇“Install package”(安裝軟件包)。
- 彈窗顯示將安裝1個軟件包,刪除0個軟件包。點擊“OK”( 確定)。
- 安裝完成后,進入Tasks → Refresh file name database(任務(wù)→更新文件名數(shù)據(jù)庫)
如您使用Mac OS X系統(tǒng):
- 打開TeX Live Utility
- 搜索latexdiff
- 按住Ctrl鍵,單擊latexdiff,選擇“Install package”(安裝軟件包)
在繼續(xù)操作之前,我們強烈建議您為每個LaTeX文件(如每篇論文或每部書稿)單獨創(chuàng)建文件夾,因為編譯器在編譯過程中會生成采用通用名的輔助文件,可能覆蓋此前生成的同名文件。
生成PDF比較文件有兩種方法:第一,編譯單個文件(即TeX文件包含序言和論文正文);第二,編譯多個文件(即書稿或論文的每個章節(jié)均為單獨的TeX文件,分章節(jié)撰寫的學(xué)位論文和書稿均屬于此類)。下面分別給出兩種方法的操作指南。
編譯單個文件
這種方法相對簡單。
1.首先,確保原文檔和修訂文檔在同一文件夾中。

原文檔("article.tex")、修訂文檔("article - edited.tex")以及一些輔助文件位于同一文件夾中。
2.在你的操作系統(tǒng)中打開命令終端(Windows中稱為 “命令提示符”或“終端”,Mac中稱為“終端”),將路徑切換至包含待編譯論文的文件夾。更改路徑的命令可能因操作系統(tǒng)而異。常用命令為"cd",例如,"cd C:\Documents "將路徑切換至C:\盤的Documents文件夾。

命令終端窗口界面。用戶輸入選定文本,將路徑切換至C:/盤 "latex"文件夾。
3.按照以下格式,調(diào)用latexdiff:
- latexdiff original_file.tex edited_file.tex > compare.tex
這個命令將比較"original_file.tex "和 "edited_file.tex "文件,生成可顯示修訂文檔改動之處的新文件。該文件將被命名為 "compare.tex"。請注意, compare.tex文件中有大量不便于閱讀和修改的代碼。因此,如果需要修改,我們強烈建議您在edited_file.tex(即修訂文檔)中進行修改,然后運行l(wèi)atexdiff來生成compare.tex,而不是直接修改compare.tex。

圖示文件夾與上圖相同,但增加了latexdiff由 "article.tex "和 "article - edited.tex "創(chuàng)建的新文件 "compare.tex"。

compare.tex文件示意圖,其中包含一些latexdiff命令,如"\DIFdelbegin "和"\DIFdelend"表示刪除的文本。
4.使用你喜歡的LaTeX編譯器,例如pdfLaTeX,根據(jù)compare.tex文件生成PDF文件。如果你希望正確顯示引用的文獻,可以像平常一樣調(diào)用bibtex或biber。

編譯compare.tex生成的PDF文件。紅色刪除線文本表示刪除的內(nèi)容,藍色下劃線文本表示增加的內(nèi)容。
編譯多個文件
這種情況略顯復(fù)雜,需要用到TeX主文件(如main.tex),其中包含序言、 \begin{document} 和 \end{document} 命令,以及插入其他TeX文件(如書稿或文章的章節(jié))的 \input{ } 命令。
1.首先,將所有的原文檔放在一個子文件夾中,如original/;將所有修訂文檔(文件名與相應(yīng)的原文檔相同)放在另一個子文件夾中,如edited/。注意,某些情況下,前述TeX主文件可能未經(jīng)修改(例如,如果所有可編輯文本都包含在組成文件中)。無論主文件是否修改過,original/和edited/子文件夾都應(yīng)包含主文件。

包含LaTeX文件的“original”和“edited”文件夾。

“edited”文件夾中的文件。主文件“book.tex”未經(jīng)修改,但部分其他文件曾修改過。
2.按照前述格式輸入命令,將路徑切換至上一級文件夾(包含original/和edited/的文件夾)。
3.按照以下格式調(diào)用latexdiff:
- latexdiff --flatten original/main.tex edited/main.tex > compare.tex
該命令基于original/和edited/文件夾中的所有文件,生成名為 "compare.tex "的比較文件。
4.compare.tex文件位于上一級文件夾,文件中包含所有文件對應(yīng)的latexdiff代碼。使用LaTeX編譯器操作這個文件,可生成所需的PDF。

包含latexdiff生成的“compare.tex”文件的上級目錄。

基于“compare.tex”生成的PDF文件示意圖,圖中顯示了chapter.tex中的一處改動。
AJE希望該指南能幫助您生成PDF格式的比較文件,與同事分享交流。
