2012年12月7日 星期五

解決emacs中org table中英混雜時無法對齊的問題

http://modioyo.appspot.com/2011/11/24/emacs-24-font.html

這個概念基本上是對的,解決的關鍵在於指定中文、英文使用不同大小的字體,不過他試出來的數字15可能是打錯了,我覺得是14:


(set-frame-font "Monaco:pixelsize=14");
(dolist (charset '(han kana symbol cjk-misc bopomofo))  (set-fontset-font (frame-parameter nil 'font) charset
   (font-spec :family "WenQuanYi Micro Hei Mono" :size 16)))

但是這個作法會影響到table以外的部分,因此如果能找到只影響table的字型的話就很好了

目前看來,根據emacs的工作流程,它在程式的層次就決定了,對不同encoding的字元要使用什麼字體。在每個buffer當中,可以根據預設的規則對不同的關錄字著色,這時所套用的字體大小只能根據所在的規則(稱為face)中改變,而不能針對不同的encoding再度設定。所以org mode的作者說,解決這個問題要使用固定大小的字體。而不幸的是,中、英文在指定了size後卻發生大小不同的情況(這到底是誰的問題…),因而必需在視窗的層級設置不同encoding使用固定size的字體。所以結論是,解決了表格中的中文字體造成的不能對齊的問題,就無法在不同階層套用不同大小的字體。

http://www.gringod.com/2006/11/01/new-version-of-monaco-font/

monaco字型,聽說比較好看,個人是覺得ok啦

http://wenq.org/enindex.cgi?ZenHei#nightly_build_NB

"文泉驿开源矢量中文字体",個人覺得也是ok啦,不過這解決了emacs中某些字顯示得很粗的問題,算是意外的收獲…

沒有留言:

張貼留言