2014-04-02

[筆記] 利用latexdiff 對tex檔進行文件比對


一個情境如下:當修改好的tex文件,拿給老師批改後,你想要知道老師到底改了哪些地方,有很多的文件比對軟體可以達到,但多數是針對編譯過後的pdf檔進行文章比對,輸出的檔案在閱讀上似乎沒有很便利。後來我發現texdiff這程式更好用!
在Mac OS系統,當你安裝好MacTex之後,texdiff就已經安裝好了。程式被放置在 /usr/texbin這個目錄底下。使用方法是開啟終端機,進入到你文件的目錄位置。假設修改前文件是file_orignal.tex 修改後的文件是file_modified.tex。

終端機裡執行下列指令:
/usr/texbin/latexdiff file_orignal.tex file_modified.tex > diff.tex
 這時候你會發現目錄裏頭出現了 diff.tex這個檔案,對diff.tex這檔案編譯所產生的pdf就可以看到這樣的效果。

紅字是原本文章的內容,藍色字體是修改後的內容,黑色字體是沒有修改的部分。這樣是不是很清楚呢?

為了解決每次都要開啟終端機輸入指令,我們可以利用 Automator 來幫我們做事。


首先,開啟“automator” : 按control+space開啟spotlight,輸入automator,enter。

選擇應用程式

從左邊的動作挑選適合的動作加入:
  1. 加入“要求 Finder 項目”。並勾選“允許復選”,這個動作可以讓你同時開啟多個檔案。
  2. 加入“Get UNIX Paths of Files”。目的是取得步驟1. 中檔案的路徑。其中,不勾選“Add quotes (") before and after each UNIX path”。下載 Get UNIX Paths of Files ,下載好,直接把檔案拖曳至Automator程式裏頭即可新增“Get UNIX Paths of Files”它放在“其他”。
  3. 加入“執行Shell 工序指令”。其中Shell部分選取"/bin/csh",傳遞輸入選擇"作為引數使用"。在下面空白處輸入 
#! /bin/csh -f 
/usr/texbin/latexdiff  $1 $2 > filepath/diff.tex


註:$1, $2 是對應到兩個tex檔案,filepath是你diff.tex要放的位置。例如; ~/diff.tex就會放在使用者的那個目錄底下。


-- 寫作工具相關文章:
[筆記] Matlab 產生符合IEEE文章的圖表格式 
[Mac] 寫作 Latex 解決嵌入pdf ps eps 圖檔問題。 
[筆記][Mac] Texshop 一些實用技巧: 快速找到文件與原始tex檔中相對應內容。 
[筆記] 在keynote裡,輸入數學方程式。





Related Posts Plugin for WordPress, Blogger...

沒有留言:

張貼留言