如何在vim中打开的文件中将^ M换行符转换为“正常”换行符?

半腔热情 提交于 2020-02-27 02:59:35

vim显示在每行结尾^ M

我怎么做用'正常'换行符替换它?


#1楼

如果文件是在Windows上创建的,请使用dos2unix实用程序,如果文件是在mac上创建的,请使用mac2unix实用程序。 :)


#2楼

我在MacVim中看到的用BBEdit创建的文件显示了一堆^M行返回而不是常规返回。 以下字符串替换解决了问题 - 希望这有助于:

:%s/\r/\r/g

这很有趣,因为我用相同的字符替换换行符,但我想Vim只需要获得一个新的\\ r来正确显示。 我有兴趣知道为什么这有效的基本机制。


#3楼

我花了一个下午与\\ n ctrl-v 012挣扎(两者都为我提供了null)。 并通过这个线程努力,直到我达到metagrapher的。

\\r对我来说很好!

/),/s/),/)\r/g

变成这样的东西:

blacklist-extra:i386(0.4.1,0.4.1 + nmu1),libmount1:i386(2.20.1-5.1,2.20.1 -5.2),libblkid1:i386(2.20.1-5.1,2.20.1-5.2) ,libapt-pkg4.12:i386(0.9.7.4,0.9.7.5),nmap:i386(6.00-0.1,6.00-0.2),libsane-common:i386(1.0.22-7.3,

进入这样的事情:

26 libwv-1.2-4:i386(1.2.9-3,自动)
27 openjdk-6-jre-headless:i386(6b24-1.11.4-3,自动)
28 jed:i386(0.99.19-2.1)

魔法。 我非常感激


#4楼

或者,您可以使用此命令修复换行符,而不是使用vim

fromdos <filename.txt>

希望能帮助到你!


#5楼

保存击键 ,可以通过将其放在映射中来避免键入Ctrl + V Ctrl + M. 只需打开一个包含^ M字符的文件,将其拉出来,然后将其粘贴到.vimrc中的这样一行:

nnoremap <Leader>d :%s/^M//g<CR>
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!