关于vim转换dos,unix格式中遇到的问题

Vim、Emacs配置和使用
回复
lk_517
帖子: 200
注册时间: 2006-07-23 15:02
送出感谢: 0
接收感谢: 0
联系:

关于vim转换dos,unix格式中遇到的问题

#1

帖子 lk_517 » 2006-11-25 16:01

我前两天在一个ftp下下了一些源代码文件,结果无论是在windows下用gvim打开,还是在linux下用gvim打开,都能看到^M换行符,有疑问如下:

1 一般只是dos和unix格式的文件在遇到另一种系统时会出现这种情况,而为什么现在在两个系统上都会看到^M?文件的本身格式是unix格式

然后,为了能让文件正常,我首先在linux环境下,用vim的%s/^M//g想替换整个文件的^M符号,又出现了问题:

2 为了防止CTRL+V被映射,我先看了一遍.vimrc中的键盘映射,又把source mswin.vim屏蔽了,但是在vim还是不能正常打出^M。请问除了mswin以外,vim还有什么地方默认映射了CTRL+V的?

接下来实在没有办法,我就干脆用tr命令将所有的^M删除。这次成功了,但是用vim打开转换后的文件,就有一些地方的空格是高亮的,大多数是在行尾,用%s/\s\+//g搞定,当然这个没啥影响,是我在vimrc中打开了高亮检测的功能的.也就没有管它了.

3 顺便再提一个问题:除了用这些命令以外,又没有一个方便的,支持批量操作的文件格式转换工具?当然是linux下用的。
lk_517
帖子: 200
注册时间: 2006-07-23 15:02
送出感谢: 0
接收感谢: 0
联系:

#2

帖子 lk_517 » 2006-11-28 9:45

真低第一个问题:可能本身就带^M

第二个问题:是c+m被映射了

第三个问题:据说有dos2unix,不过我没有试过


顺便说一句,这里人气真低
kliz
帖子: 36
注册时间: 2006-10-22 13:39
送出感谢: 0
接收感谢: 0

#3

帖子 kliz » 2006-11-28 18:29

sudo apt-get install tofrodos
lk_517
帖子: 200
注册时间: 2006-07-23 15:02
送出感谢: 0
接收感谢: 0
联系:

#4

帖子 lk_517 » 2006-11-29 11:31

谢谢楼上的
头像
linpinger
帖子: 54
注册时间: 2006-06-15 22:44
送出感谢: 0
接收感谢: 0
联系:

#5

帖子 linpinger » 2006-12-04 21:57

删除^M的方法:
:%s/\r//g

批量文件转化:
可以使用vim的编辑多个文件的功能
例如:
:args *.txt
:argdo %s/\r//g
:argdo w
:q!
回复

回到 “Vim和Emacs”