2010年8月24日 星期二

在Snow leopard server中的iTerm支援中文顯示和輸入

今天不小心發現Snow Leopard Server(SLS)中的iTerm並不直接支援中文的顯示和輸入,這個基本的設定原本在Snow leopard是內建好的,所以突然看到iTerm中有亂碼,還真讓人不習慣丫。
不過其實這也不是什麼了不起的大發現,因為SLS本來就沒有支援中文,所以會有亂碼跑出來,也不是一件奇怪的事。不過,內建的Terminal就可以直接顯示中文和正常輸入中文了,看來一定是某些地方的設定出了問題,相信不過就像是在Linux上一樣常見的中文設定問題。

那要如何讓原本的中文正常的顯示在iTerm中呢?其實很早以前,Mac支援度還沒有很好的時候,就有人寫過教學了。
如果懶得看我碎碎唸,可以直接跳到底下的連接:

http://blog.roodo.com/thegiive/archives/1624814.htmlhttp://blog.xuite.net/jackie.xie/bluelove/10933287http://www.samtseng.liho.tw/~samtz/blog/?p=613

當然照慣例,我還是會寫一下我自己如何設定讓iTerm和vim支援中文的心得啦~~

Step1 修改.bashrc設定

.bashrc是開啟一個新terminal時,初始化環境變數的檔案,透過修改.bashrc,我們可以變更一些預設的環境變數。而要讓iTerm顯示中文,其實只要輸入 ls -Gv 就會正常看到中文的檔案,不過每次都要加這些參數有點不太人性化,所以,建議修改.bashrc,加入alias設定,以簡化指令的輸入。請在家目錄底下,開啟或新建立.bashrc,並在這個檔案中加入:

alias ls='ls -Gv'


加完之後,再開啟一個新的視窗,就會看到亂碼不見了,ls可以正常顯示中文了。

Step2 新建.inputrc檔

同樣在家目錄底下,新建立.inputrc,並在這個檔案中加入:

set convert-meta off
set meta-flag on
set output-meta on


這個檔案主要是讓iterm能正常輸入中文。

Step3 讓VIM支援中文輸入

在SLS中,就連常用的vim也沒有直接支援中文的輸入,所以我們一樣要在家目錄中新建一個.vimrc檔案,並加入以下設定:

set enc=utf8


做完以上三個設定後,在iterm上就可以正常顯示和輸入中文啦。

2 則留言:

saiba 提到...

其實,直接加一行
export LC_ALL=en_US.UTF-8
就好了,我是加在.profile 據說加在這裡比較好,原因未知

hdj 提到...

加了 LC_ALL能在iterm裡面輸入中文嗎?
我是有試過加入
export LC_CTYPE="UTF-8"
不過還是只能顯示中文,而不能輸入中文。

Related Posts Plugin for WordPress, Blogger...