[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ubuntu如何在vi中显示中文



http://www.linuxfire.com.cn/firewiki/SnailRocket/Terminal

On 9/28/06, Vern Sun <s5unty@gmail.com> wrote:
Jason
按你说的做了,vi/vim就可以正常显示中文了。可是不管是more还是less还是cat还是tail似乎还有问题,

终端我用的是gnome-terminal,可以确认终端字符编码是"当前区域(UTF-8)",并且,我将一个文本文件,使用别的编辑器另存了三种不同的编码格式,分别是UTF-8,UTF-8
signature(<--这种方式我没见过),GB2312。然后再用more, less, cat,
tail显示其内容,结果还是乱码。

另外,按Jason修改了vi/vim的设置后,仍然可以正常的显示刚才保存的UTF-8和UTF-8
signature两种格式。可是打开GB2312时,显示的又是乱码了。

感谢所有帮助我的人,谢谢!

在06-9-28,Jason < catinsnow@gmail.com> 写道:
>
>
>
> 试试拷贝以下内容到 ~/.vimrc 或 ~/.gvimrc 中。
>
> " multi-encoding setting
> if has("multi_byte")
> "set bomb
> set
fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1
> " CJK environment detection and corresponding setting
> if v:lang =~ "^zh_CN"
> " Use cp936 to support GBK, euc-cn == gb2312
> set encoding=cp936
> set termencoding=cp936
> set fileencoding=cp936
> elseif v:lang =~ "^zh_TW"
> " cp950, big5 or euc-tw
> " Are they equal to each other?
> set encoding=big5
> set termencoding=big5
> set fileencoding=big5
> elseif v:lang =~ "^ko"
> " Copied from someone's dotfile, untested
> set encoding=euc-kr
> set termencoding=euc-kr
> set fileencoding=euc-kr
> elseif v:lang =~ "^ja_JP"
> " Copied from someone's dotfile, untested
> set encoding=euc-jp
> set termencoding=euc-jp
> set fileencoding=euc-jp
> endif
> " Detect UTF-8 locale, and replace CJK setting if needed
> if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
> set encoding=utf-8
> set termencoding=utf-8
> set fileencoding=utf-8
> endif
> else
> echoerr "Sorry, this version of (g)vim was not compiled with multi_byte"
> endif
>
>



--
01010110 01100101 01110010 01101110

Reply to: