2010-01-19 99 views
1

當我打開某些代碼時,我在emacs中收到了奇怪的字符。它就像^ M。我認爲這與字符編碼有關,或者可能不是。有什麼能幫助我在這裏。謝謝。Emacs中奇怪的字符

+0

這對SuperUser來說可能會更好。查看http://meta.stackexchange.com/questions/36017/what-site-should-host-questions-about-emacs-keybinding進行模糊的相關討論。由於似乎沒有達成共識,我現在沒有投票決定採取行動。 – dmckee 2010-01-19 20:41:29

回答

7

這是一個回車(CR)字符(因爲該文件可能具有窗口行結尾:CRLF)。

你可以在Emacs中擺脫那些行結尾的

M-x replace-string RET C-q C-M RET RET 
4

編輯:我以前的信息是不完全正確

如果你想設置窗口上節省,C-x <return> f dos <return>將設置文件保存編碼在DOS編碼中,Windows用戶可以正確讀取它。同樣,您可以執行C-x <返回> f unix <返回>導致文件在保存時更改爲unix格式。

C-x <return> r dos yes將切換到當前緩衝區中的dos模式(固定行結束並保留文件的格式),並且可能是您想要的。

0

當你打開一個文件,並看到編碼是不正確的(即有^ M字符無處不在,或unicode垃圾例如),我發現它是最簡單的M-x revert-buffer-with-coding-system RET dos RET(替換dos用utf-16或任何你需要的) 。

這樣您就可以在其首選編碼系統中打開該文件。如果您需要更改編碼系統,則可以執行set-buffer-file-coding-systemC-x RET f)將其切換爲unix。