2012-08-03 21 views
0

我使用Vim編輯器,當我打開我的文件,我得到一些雜散字符,如下圖所示:^M^Mtypedef枚舉 - 在頭流浪字符的文件

^M^Mtypedef enum 

這是不給任何編譯問題。但是當我看代碼時它看起來很荒謬。

在我提供代碼之前,我想刪除這些雜散字符。請建議一種方法。

附加信息:

當我使用源洞察力打開文件,特殊字符不顯示,但該變量的顏色被顯示錯誤,例如對於enum類型變量,通常源洞察顯示爲藍色,但由於這些散列字符(顯示爲空格),顏色顯示爲綠色。如果我刪除多餘的空間(實際上是^ M),則顏色顯示正確。

+0

這與C無關,但與您使用的environement。請相應地標記您的問題。 – 2012-08-03 07:00:09

回答

0

DOS2UNIX的大多數的建議,對我來說沒有工作。最後我做了一件簡單的事情。複製了whle代碼,粘貼在文本文件中。從那裏複製一次,然後在我的源代碼中重新替換它。這沒有工作..!

1

請使用follwoing命令。

dos2unix * 

這將刪除這些特殊字符。

+0

我試過了。不工作 – 2012-08-03 05:35:24

2

得到VIM與替代命令他們擺脫他們:

:%s/^V^M//g 

^V^M意味着:鍵入Control + V - 按住Ctrl鍵並輸入v,然後控制+ M。

+0

它說E486:找不到模式:^ V^M – 2012-08-03 06:36:32

+0

另外我試圖通過^ M搜索,它沒有顯示它們 – 2012-08-03 06:37:30

0

用\ n替換\ r。試試sed。^M實際上是\ r

1

^M是DOS Line Break字符,如果從Windows下載文件,它會在Linux中顯示。

嘗試以下:

:%s/(ctrl+v)(ctrl+m)//g