emacs怎麼打中文呢?

Mac OS X 平台上程式設計的相關問題討論

版主: bryanchangdigdog謝孟叡

回覆文章
內容
發表人
頭像
yenlung
常吃冰
文章: 496
註冊時間: 09/24/2001 1:01 am
來自: 貓空地區
聯繫:

emacs怎麼打中文呢?

#1 文章 yenlung »

現在BBEdit實在有點貴。就想選個Unix上流行的文字編輯器來學學好了。Vi試了幾次,實在不適應。emacs略好一些,可是,不知道怎麼樣才能打中文呢?在Terminal或其他終端程式像是iTerm等等。
頭像
bryanchang
討論區管理員
文章: 7057
註冊時間: 04/19/2001 1:01 am
來自: The '60s
聯繫:

#2 文章 bryanchang »

你可以用免費的 BBEdit Lite。

一般版本的 emacs 跟 vi 都跟非羅馬語系的語言不相容,因為軟體本身常用到 control key,而像是 Big-5 碼裡到處都是 control character。
圖檔
頭像
謝孟叡
討論區管理員
文章: 960
註冊時間: 05/01/2001 1:01 am
來自: 邪教組織 #osxchat
聯繫:

#3 文章 謝孟叡 »

bryanchang 寫:你可以用免費的 BBEdit Lite。
一般版本的 emacs 跟 vi 都跟非羅馬語系的語言不相容,因為軟體本身常用到 control key,而像是 Big-5 碼裡到處都是 control character。
放棄 Big-5 吧, UTF-8 才是可行的路.... 不過即使是這樣在 vi and emacs 上也還是屬於特技呢.
void
sched_init(void){
printf("standard timeslicing quantum is %d us\n", std_quantum_us);
}
頭像
digdog
討論區管理員
文章: 1297
註冊時間: 05/02/2001 1:01 am
聯繫:

#4 文章 digdog »

Correct me if I was wrong.

emacs 20+ supports MULE, you can make your own ~/.emacs to support Big5 or even UTF-8.
頭像
yenlung
常吃冰
文章: 496
註冊時間: 09/24/2001 1:01 am
來自: 貓空地區
聯繫:

#5 文章 yenlung »

理論上來說,似乎emacs應該已經支援中文了沒錯。可是我emacs的程度還差不多是白痴的階段。所以不知道怎麼做。

Pico, Vim倒是直接可以打中文的。

BBEdit Lite是我目前在OS X上,唯一知道還可以用Big5處理中文的editor軟體。當然,我想應該是不只一個啦。

我覺得在Unicode和Big5的交接期,有些東西還真的挺麻煩的。至少對我這種程度的人來說是這樣。
頭像
yenlung
常吃冰
文章: 496
註冊時間: 09/24/2001 1:01 am
來自: 貓空地區
聯繫:

#6 文章 yenlung »

Mac OS X在終端機下用的emacs還是不知怎麼打中文。不過,那個Carbon版的emacs倒是挺容易可以打中文的。只要編輯或是加入一個~/.emacs檔,加入

(set-language-environment 'Chinese-BIG5)
(set-keyboard-coding-system 'chinese-big5)

就可以了。第一行是讓emacs可以處理中文,第二行是讓emacs接受OS X內建的中文輸入法。我還真是沒想到,在Emacs 21 for Mac OS X的網站的FAQ中就有教這個了:

http://members.shaw.ca/akochoi-emacs/

也許終端機下的也可以這麼做。明天再試試。
頭像
yenlung
常吃冰
文章: 496
註冊時間: 09/24/2001 1:01 am
來自: 貓空地區
聯繫:

#7 文章 yenlung »

我又發現,不管什麼emacs,照理說都會先去讀.emacs或是.emacs.el當起始設定檔……嗯,但是Mac OS X終端機下的emacs還是看不到中文(好像有出現「中文」,但是是亂碼)。

我這三角貓程度的,大概是不知怎麼解決了。
頭像
yenlung
常吃冰
文章: 496
註冊時間: 09/24/2001 1:01 am
來自: 貓空地區
聯繫:

#8 文章 yenlung »

如果說,要emacs和其他用Big5碼的軟體溝通,可以在.emacs加入下面指令。這樣就可以剪貼Big5碼的文字。可以和IE,BBEdit Lite 6.1等Big5碼的程式互通中文。Safari等等用Unicode就不行了。

emacs要用Unicode也許也不太難,可能是用類似改法就行。不過我沒試過,並不確定。

; translate clipboard
(set-selection-coding-system 'big5-mac)

(setq interprogram-cut-function
'(lambda (str push)
(mac-cut-function
(encode-coding-string str selection-coding-system t) push)))

(setq interprogram-paste-function
'(lambda ()
(decode-coding-string
(mac-paste-function) selection-coding-system t)))
回覆文章