我使用的是运行PowerShell 2.0版的Windows7。
我使用了以下PowerShell代码(来自这个答案:https://stackoverflow.com/a/65148/360840)来修改我的PowerShell配置文件:
"`nNew-Alias which get-command" | add-content $profile不出所料,它将有问题的行添加到我的配置文件中,但之后,我的Vim会话开始在每行的末尾显示^M个字符。非常奇怪!有关于它的原因和如何修复的线索吗?我在Vim中尝试了set fileformat=dos,但它什么也没起作用。
以下是我的Vim版本信息:

(不确定如何放大图片-这不是它的正常大小。)
发布于 2013-05-21 16:50:18
问题是文件被损坏了。在这种情况下,Vim开始显示^M个字符,以提醒您出现问题。修复方法是手动删除这些字符(%s/^M//g)。
我仍然不清楚,因为这些字符应该是Windows文件格式使用的文件中的字符。但至少问题已经解决了。
编辑:请参见与dash-tom-bang的注释交换,其中提供了说明。
发布于 2013-05-21 04:47:28
在vim-faq 14.13. I am seeing a lot of ^M symbols in my file. I tried setting the 'fileformat' option to 'dos' and then 'unix' and then 'mac'. None of these helped. How can I hide these symbols? 中有一些选项可以解决这个问题
您的文件可能是unix文件格式(所有行都以<CR>结尾),并且您在行后面添加了dos文件格式(行以<CR><NL>结尾,这让Vim感到困惑。
发布于 2013-10-25 01:20:56
所以,我遇到了这个问题,解决方案略有不同。我已经检查了我的文件格式,它是unix,你可以用:set fileformat?检查你的,它会显示我不想要的所有^M字符……有趣的是,在上面的VIM手册中:http://vimhelp.appspot.com/vim_faq.txt.html#faq-14.13指出^M行结束于DOS文件格式,并且“如果文件有一些行以结尾,有些行以a结尾,那么文件格式被设置为‘unix’。”
因此,考虑到这一点,您似乎希望删除所有的^M结尾,并保留结尾,但是使用:%s/\r$//删除结尾立即为我解决了这个问题,文件格式仍然是'unix‘。
这对我来说很管用。作为附注,为了提供一个更适合谷歌的参考,我想指出的是,我在使用LocomotiveCMS时遇到了这个问题。我把我的CSS文件拉回到本地,用的是旅行车。当我拿回它的时候,它全是^M个字符,文件仍然工作得很好,只是很难看。
https://stackoverflow.com/questions/16656811
复制相似问题