远程登陆linux服务器用vim在终端下编辑查看文件常常会遇到各类英文乱码问题。
做如下设置可基本解决vim英文乱码问题
首先查看系统对英文的支持
locale-a|grepzh_CN
输出样例如下
zh_CN.gbk
zh_CN.utf8
vim只能正确辨识列表中的英文编码文件,如需辨识其他编码类型的英文文件,则须要做系统升级
vi~/.bash_profile
文件末尾添加
exportLANG="zh_CN.UTF-8"
exportLC_ALL="zh_CN.UTF-8"
在线视频教程推荐:linux视频教程
vim与编码相关的参数:
1、eencoding,用于配置打开文件和保存文件的编码,但只能有一个值,只适宜少数文件都是同种编码的环境,所以通常不使用
2、fileencodings,从名子上看就晓得是fileencoding的提高版,可以配置多种不同的编码deepin linux,常见的配置为,配置好以后,列表中的文本编码只要合法,都能被vim正确的读取,建议配置:setfileencodings=utf-bom,utf-8,gbk,gb2312,gb18030,cp936,latin1
3、encoding,vim内部编码,vim读取文件以后,但并不以读取文件的编码来处理linux rz 乱码,而是会转换成内部编码的格式,这个编码通常与操作系统相关,linux下utf-8居多,英文windows下则是gdk,建议配置:setencoding=utf-8
4、termencoding,vim输出的编码,输出指输出到操作系统或命令终端等,默认与操作系统的语言编码一致,假如使用linux命令终端,建议终端和linux系统配置相同的编码,之后配置相同的termencoding,否则顾全了vim就顾不上shelllinux之家,不过若果shell不存在英文名文件,则配置终端和termencoding一致即可,对于windows,能手动的辨识gbk和utf-8,不用特殊配置,建议配置:settermencoding=utf-8
5、fileformats,用于分辨操作系统,主要是回车rn的区别linux rz 乱码,建议配置:setfileformats=unix,dos
常见的乱码有以下几种情形:
(1)将windows环境下的文件rz到linux下时文件出现乱码
解决方案:
1、在rz之前使用notepad 将文件格式转化为UTF-8无BOM格式或则ANSI编码格式;
2、setencoding=utf-8;
(2)secureCRT或则xterm2编辑环境中出现乱码,只需在会话选项中调节字符编码为GB2312或则UTF-8
(3)当对日志文件进行vim编辑时出现乱码,大多数情况下是由于日志文件的格式为GB2312。
解决方案:1.setencoding=GB2312;2假如方案1不起作用的话,调整secureCRT或则xterm2的编辑环境为GB2312
(4)wget下载文件名乱码
解决方案:通常情况下加上–restrict-file-names=nocontrol,比如wget--restrict-file-names=nocontrol-m
(5)cat文件正常,vim文件不正常
解决方案:直接写入/etc/vim/vimrc,最后一行加上
setfileencodings=gb2312,utf-8
setfileencoding=gb2312
settermencoding=utf-8
以上是解决 Linux 服务器中 vim 中文乱码问题的方法及相关参数介绍的详细内容。更多信息请关注PHP中文网其他相关文章!