2010-10-07 54 views
2

我使用非常方便的ediff-trees.elhttp://www.emacswiki.org/emacs/ediff-trees.el比較由我的一個項目合作伙伴提供的一堆Python代碼的兩個版本。刪除ediff-tree會話中所有文件的尾部空白

不幸的是,這些傢伙在代碼中使用尾隨空白(多餘的標籤在這裏和那裏...),這是造成大量的誤報差異,這使得識別的變化和修補他們一個接一個行不通。

有誰知道做的emacs從線自動去除所有尾隨空白,因爲它訪問的每個文件在這兩個目錄,我的M-Xediff樹的執行過程中比較的一種巧妙的方法。

如果在emacs中不能自動實現這個功能,那麼遍歷目錄結構並從所有Python源文件(* .py)中刪除尾隨空白的shell腳本就足夠了。然後我可以在執行diff之前在兩個目錄上運行它。

顯然這些選項有助於緩解空白問題。

(setq ediff-diff-options "-w") 
(setq-default ediff-ignore-similar-regions t) 

但是,測試後,他們似乎沒有解決問題。

此外,以下是我的.emacs配置中啓用:

;; Strip trailing whitespace 
(require 'ws-trim) 
(global-ws-trim-mode t) 
(set-default 'ws-trim-level 2) 

但是,這並不影響文件訪問ediff樹遍歷目錄內。

回答

1

[A]殼 腳本遍歷目錄 結構,並移除所有的Python源尾隨 空白 文件(*的.py)就足夠了。

這應做到:

find . -name '*.py' -print0 | xargs -0 sed -i -e 's/\s\s*$//' 
+0

非法-r選項,BSD – 2012-11-19 21:17:30

+0

更新。謝謝。 – 2012-11-19 22:07:25

+0

刪除everyline的最後一個字符 – Nerian 2013-05-10 13:14:22

相關問題