由于我的工作环境是日文XP,工作相关的东西基本是日文的,但个人的东西又是中文为主,所以一个能支持多种编码的编辑器是我最需要的。
在vim中,简单三行设置就搞定了:
set encoding=utf-8
lan mes zh_CN.utf-8
set fileencodings=ucs-bom,utf-8,chinese,japanese
界面都是中文的了,再加上插件fencview,可以动态切换文件编码,很是方便。唯一的缺憾是,文件名处理上有问题,不能打开非系统local编码命名的文件(估计此处它使用ansi的api,而非unicode的api)
emaca我尽管使用cvs中的版本-自己编译的,GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600),但还是搞不定。我在日文系统中打开中文内容的文件,一些日文中没有的简体字就缺掉了,其实我都没法输入这些字,不管是用外部的输入法,还是内嵌的输入法。
(set-language-environment "Chinese-gbk")
(set-language-environment "Chinese-gbk")
(set-keyboard-coding-system 'cn-gb-2312)
(set-selection-coding-system 'cn-gb-2312)
(set-buffer-file-coding-system 'cn-gb-2312)
(set-terminal-coding-system 'cn-gb-2312)
(setq default-enable-multibyte-characters t)
(prefer-coding-system 'cn-gb-2312)
(modify-coding-system-alist 'process "*" 'cn-gb-2312)
上面的设置是网上抄的,不过有没有都是一样。
希望有达人赐教!
PS: xemacs21.5-b28倒能正常处理中文文件,不过这个旁系的资料比较少,一些emacs中的设置也无法在其中使用,不敢多深入,省得浪费时间。
[求助]不是PK,emacs和vim的unicode
- ibear
- 帖子: 787
- 注册时间: 2006-10-19 8:43
- 来自: 长江口
[求助]不是PK,emacs和vim的unicode
上次由 ibear 在 2008-03-21 13:10,总共编辑 1 次。
- Strange
- 帖子: 1824
- 注册时间: 2006-05-19 9:54
- 来自: Shanghai
- ibear
- 帖子: 787
- 注册时间: 2006-10-19 8:43
- 来自: 长江口
- qigx
- 帖子: 5
- 注册时间: 2008-01-21 21:32
(set-language-environment "Japanese")
(modify-coding-system-alist 'process "*" 'cp932)
(set-w32-system-coding-system 'cp932)
(set-default-coding-systems 'cp932)
(set-buffer-file-coding-system 'cp932)
(set-keyboard-coding-system 'cp932)
(set-terminal-coding-system 'cp932)
(set-file-name-coding-system 'cp932)
;; (set-clipboard-coding-system 'cp932)
;; (setq coding-system-for-read 'cp932)
(prefer-coding-system 'cp932)
;;IPA
;;(ntemacs-font-create-fontset
;; "ipag" "MS 明朝" "IPAゴシック" "IPAゴシック"
;; "ipag" "MS 明朝" "IPA明朝" "IPA明朝" "Microsoft Sans Serif"
;;'(12 13 14 15 16 17 18))
;;(set-default-font "fontset-ipag16")
(defun ntemacs-font-create-fontset
(fontset ascii-font latin1-font japanese-font chinese-font size-list)
(let (size)
(while size-list
(setq size (car size-list))
(setq size-list (cdr size-list))
(create-fontset-from-ascii-font
(format "-outline-%s-normal-r-normal-normal-%d-*-*-*-*-*-iso8859-1"
ascii-font size)
nil
(format "%s%02d" fontset size))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'chinese-gb2312
(cons chinese-font "gb2312.1980-0"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'latin-iso8859-1
(cons latin1-font "iso8859*"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'japanese-jisx0208
(cons japanese-font "jisx0208-sjis"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'katakana-jisx0201
(cons japanese-font "jisx0201-katakana"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'japanese-jisx0213.2004-1
(cons japanese-font "iso10646-1"))
)))
;;メイリオ
(ntemacs-font-create-fontset
"mr" "Bitstream Vera Sans Mono" "メイリオ" "メイリオ" "Microsoft YaHei"
'(12 13 14 15 16 17 18))
(set-default-font "fontset-mr14")
(setq w32-enable-synthesized-fonts t)
(setq face-font-rescale-alist
(append '(
(".*jisx02.*" . 1.20)
(".*iso10646.*" . 1.20)
(".*gb2312.*" . 1.20)
) face-font-rescale-alist))
(modify-coding-system-alist 'process "*" 'cp932)
(set-w32-system-coding-system 'cp932)
(set-default-coding-systems 'cp932)
(set-buffer-file-coding-system 'cp932)
(set-keyboard-coding-system 'cp932)
(set-terminal-coding-system 'cp932)
(set-file-name-coding-system 'cp932)
;; (set-clipboard-coding-system 'cp932)
;; (setq coding-system-for-read 'cp932)
(prefer-coding-system 'cp932)
;;IPA
;;(ntemacs-font-create-fontset
;; "ipag" "MS 明朝" "IPAゴシック" "IPAゴシック"
;; "ipag" "MS 明朝" "IPA明朝" "IPA明朝" "Microsoft Sans Serif"
;;'(12 13 14 15 16 17 18))
;;(set-default-font "fontset-ipag16")
(defun ntemacs-font-create-fontset
(fontset ascii-font latin1-font japanese-font chinese-font size-list)
(let (size)
(while size-list
(setq size (car size-list))
(setq size-list (cdr size-list))
(create-fontset-from-ascii-font
(format "-outline-%s-normal-r-normal-normal-%d-*-*-*-*-*-iso8859-1"
ascii-font size)
nil
(format "%s%02d" fontset size))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'chinese-gb2312
(cons chinese-font "gb2312.1980-0"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'latin-iso8859-1
(cons latin1-font "iso8859*"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'japanese-jisx0208
(cons japanese-font "jisx0208-sjis"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'katakana-jisx0201
(cons japanese-font "jisx0201-katakana"))
(set-fontset-font (format "fontset-%s%02d" fontset size)
'japanese-jisx0213.2004-1
(cons japanese-font "iso10646-1"))
)))
;;メイリオ
(ntemacs-font-create-fontset
"mr" "Bitstream Vera Sans Mono" "メイリオ" "メイリオ" "Microsoft YaHei"
'(12 13 14 15 16 17 18))
(set-default-font "fontset-mr14")
(setq w32-enable-synthesized-fonts t)
(setq face-font-rescale-alist
(append '(
(".*jisx02.*" . 1.20)
(".*iso10646.*" . 1.20)
(".*gb2312.*" . 1.20)
) face-font-rescale-alist))
- ibear
- 帖子: 787
- 注册时间: 2006-10-19 8:43
- 来自: 长江口
这个是在日文系统下使用中文的设置吗?看起来不像啊!qigx 写了:(set-language-environment "Japanese")
(modify-coding-system-alist 'process "*" 'cp932)
(set-w32-system-coding-system 'cp932)
(set-default-coding-systems 'cp932)
(set-buffer-file-coding-system 'cp932)
(set-keyboard-coding-system 'cp932)
(set-terminal-coding-system 'cp932)
(set-file-name-coding-system 'cp932)
......