vi文本编码及其与中文转换的实现方法

vi文本编码及其与中文转换的实现方法

(2006-07-25 11:13:01)
分类: IT linux

vi文本编码及其转换的实现方法
如有疑问,请联系seablue.

Q:

1)通常在非中文编码方式的文本中输入中文后,vi不能保存文件.错误信息如下:

test.txt" 不能写入 -- 转换失败

请按 ENTER 或其它命令继续

2)而且删除中文字符时,总是半个半个的删除,过长的行还会显示乱码.

 

A:

在用户的home目录下的.vim或.exrc文件中,加入

set encoding=cp936或set encoding=gb2312;则很好地可以解决这些问题,如果没有这个文>件,可以自己建立.
在主目录下
$ echo "set encoding=2byte-cp936" >> .exrc


Q:

如果文本文件的编码是utf-8 Unicode,用vi打开会乱码.

 

A:

在用户的home目录下的.vim或.exrc文件中(如果没有自己建立).加入

1)set encoding=cp936或set encoding=gb2312;

2)set fileencodings=utf-8

则可以正常编辑GB和utf-8文件.

 

Q:

如何用vi实现文本的编码转换?

 

A:

(1)进入空白的vi界面,在命令行修改文件的编码方式,如下

:set encoding=gb2312 fileencodings=utf-8

或set encoding=cp936 fileencodings=utf-8

这时,打开utf-8文本(:e filename),则可以正常编辑.

 

(2)如果想转换成gb2312,或cp936编码方式,则输入下列命令

:set encoding=gb2312 fileencodings=gb2312 fileencoding=gb2312

:set encoding=cp936 fileencodings=cp936 fileencoding=cp936

存档即实现了文本的编码转换.

 

(3)反之亦然.

:set encoding=cp936 fileencodings=utf-8 fileencoding=utf-8

存档即实现了文本的编码转换.
--------------------------------------------------------------------------------

由 nancen 在 06-06-2003 20:19 发表:
.vimrc 中设也可以吧.

由 seablueR 在 06-08-2003 05:49 发表:
 
vi 编辑文件时,echo "中文",存盘退出时"不能写入--转换失败

--------------------------------------------------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值