Emacs24.4開始有了一個新的命令:delete-duplicate-lines
M-x delete-duplicate-lines會刪除選中region中的重複行. 舉個例子,假設選中的region爲:
test dup dup one 12345678910 two one three one test five
則,在執行M-x delete-duplicate-lines後,region的內容變爲:
test dup 123456 one two three five
默認情況下若存在多個重複行,則從上到下第一次出現的行會保留下來. 若想保留的是最後一次出現的行,則使用C-u M-x delete-duplicate-lines. 這樣的話,region會變爲:
dup two 123456 three one test five
注意到:與UNIX的uniq命令不同的是,在判斷重複行時,並不要求重複行是相互毗鄰的,若要實現類似uniq的效果,可以使用C-u C-u M-x delete-duplicate-lines.
若要保留重複的空白行,則需要使用C-u C-u C-u M-x delete-duplicate-lines