Centos 下vi中文乱码问题,centosvi中文乱码修改了一下配置文件,


由于在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打开会成乱码。修改了一下配置文件,使vi支持gb编码就好了。


$vi ~/.vimrc


let &termencoding=&encoding


set fileencodings=utf-8,gbk


$:wq


再次打开vi,显示就正常了。


参考文章:


====================================================


在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。


在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:


$vi ~/.vimrc


设置完后


$:x 或者 $wq


进行保存退出即可。


下面给出一个例子,其中列出了经常用到的设置,详细的设置信息请参照参考资料:


“双引号开始的行为注释行,下同


“去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限


set nocompatible


“显示行号


set nummber


“检测文件的类型


filetype on


“记录历史的行数


set history=1000


“背景使用黑色


set background=dark


“语法高亮度显示


syntax on


“下面两行在进行编写代码时,在格式对起上很有用;


“第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;


“第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编


“写上很有用


set autoindent


set smartindent


“第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格


set tabstop=4


set shiftwidth=4


“设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号


set showmatch


“去除vim的GUI版本中的toolbar


set guioptions-=T


“当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声


set vb t_vb=


“在编辑过程中,在右下角显示光标位置的状态行


set ruler


“默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示


set nohls


“查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一


“个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依


“次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词


“时,别忘记回车


set incsearch


“修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀


if has(“vms”)


set nobackup


else


set backup


endif


如果去除注释后,一个完整的.vimrc配置信息如下所示:


set nocompatible


set nummber


filetype on


set history=1000


set background=dark


syntax on


set autoindent


set smartindent


set tabstop=4


set shiftwidth=4


set showmatch


set guioptions-=T


set vb t_vb=


set ruler


set nohls


set incsearch


if has(“vms”)


set nobackup


else


set backup


endif


如果设置完后,发现功能没有起作用,检查一下系统下是否安装了vim-enhanced包,查询命令为:


$rpm –q vim-enhanced


UTF8文字模式下vi亂碼的問題


現在很多主機都採 UTF8 編碼環境


這時我們連到主機內,看一個 文字碼為Big5的檔案時


會出現亂碼,您用vi操作時,可能會不知所措。


然後您可能會開始思考是不是要改語系


當然改了語系就會正常,但同時也失去了UTF8的一些優點


但也不能改完後重新開機,編好了檔案再改回UTF8再重新開機一次


這樣就太累了!


談解決問題前,先認識一點,


Linux 是可以允許使用者使用不同的語系的,而不用理會系統用什麼語系


也就是說,每個不用帳號的使用者都可以擁有自己的語系。


所以我們只要編修一個檔案就可以解決這個問題


編修個人家目錄下的隱藏檔


vi .bashrc


加入這行


export LANG=en_US


這樣登出再登入就可以了


不過通常有須要時我才會去改,用完後會再改回來!


免得那天改UFT8編碼的檔案改成亂碼!


相关内容

    暂无相关文章