您的位置:首页 > 其它

vi/vim显示中文字符并且去掉^M的方法

2014-07-06 17:22 393 查看

vi/vim显示中文字符并且去掉^M的方法

解决方案:使用Uedit32打开->另存为->选着换行符UNIX换行符-LF,格式为UTF-8->保存成功

vim上经常会碰到中文显示不正常的现象,也就是传说中的乱码。搜索了一下,在

http://www.chinalinuxpub.com/bbs/showthread.php?t=45475

找到了一个解决办法。但是gbk编码的正常了,utf8的又不对了。于是稍微改了一点。

用户目录下创建.vimrc文件

加入

set fileencodings=utf-8,gb2312,gbk,gb18030

set termencoding=utf-8

set fileformats=unix

set encoding=prc

fileencodings中utf-8要在前面。

这样就能正常显示中文了。配合pietty,可以完全正常显示、编辑中文了。

几种去除^M的方法

1、 cat filename1 | tr -d "\r" > newfile

2、 sed -e "s/^V^M//" filename > outputfilename

3、vi: 用vi打开文件

1. 按ESC键

2. 输入 :%s/^M//g

确定 ^M是使用 "CTRL-V CTRL-M" 而不是字面上的 ^M。这个正则式将替换所有回车符前的 ^M为空($是为了保证^M出现在行尾)

4、一些linux版本有 dos2unix 程序,可以用来祛除^M

5、用vim

输入 :set notextmode

可惜,经过上面的处理以后,^M是不存在了,但是换行不成功。所有的东西都在一行上面,看着很费劲。这说明处理的时候文件缺少"\n",可以在替换的时候添加上即可:

cat filename | tr "\r" "\n" > newfile
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: