Login

    
Login

unicad for emacs cvs

1.介绍

Emacs下比较让人苦恼的事情是:对于母语非英语等拉丁语的使用者而言,总是需要在Emacs上用自己的母语的。但是Emacs对中文的支持,至少到现在为止还不是很理想。迄今为止,我是使用emacs cvs版本,就是原来提到的emacs-unicode-2,或者emacs 23(在debian下,emacs cvs被叫做emacs-snapshot有对应的软件包可以通过aptitude或者apt-get的方式安装,简要方法见1.1),中文输入法部分用的是scim。但是emacs对不同字符编码格式的文件识别和处理上总是很麻烦:首先,我需要在.emacs文件中加入对中文的支持(我使用的是utf-8编码,见1.2);其次,每次输入汉字之后,保存时emacs总是要弹出一个提示框,大意是你选择的utf-8编码与现有编码不同,是否继续?按一下Y或者回车吧。麻烦。

所以我找阿找阿找,找到了这个Unicad。简单的说,就是识别字符编码的工作交给它来进行吧。别的就都不用管了。目前正处于试用状态中,简单介绍一下安装和配置方法。

1.1 debian sid下安装emacs-snapshot

编辑/etc/apt/sources.list文件,加上以下源地址:

<code></code></pre>
<pre><code>sudo emacs /etc/apt/sources.list</code></pre>

<pre><code>deb http://emacs.orebokech.com sid main
deb-src http://emacs.orebokech.com sid main</code></pre>

<pre><code>sudo aptitude update
sudo aptitude build-dep emacs</code></pre>

然后,或者通过aptitude\synaptic等方式直接安装emacs-snapshot,或者下载源代码,自己配置安装吧。这部分就不多罗嗦了。

<h2>1.2 emacs的utf-8中文环境配置</h2>
注:下文将要介绍的unicad可以代替此部分工作。
在用户根目录下的.emacs文件中加入:
<pre><code>(setq current-language-environment "UTF-8")
(setq default-input-method "chinese-py")
(setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)</code>

保存,退出,重新起动emacs即可。

2. unicad的安装和配置

下载unicad,解压缩后,将unicad.el保存在你设置的emacs的load path下。目前unicad的最新版本是1.1.4。
还是在.emacs里,加入如下内容:

;load unicad, 一个自动识别编码的el
(add-to-list 'load-path "~/.emacs-lisp/")
	(require 'unicad)
	(unicad-enable)

第一行(add-to-list ‘load-path “~/.emacs-lisp/”)是个optional选项,比如我将~/.emacs-lisp设置为自己所在用户的emacs load path。但如果你已经这么作了,那就可以省略改行。
(require ‘unicad)的作用是让emacs启动时候载入unicad。(unicad-enable)是让emacs启动时自动开启unicad功能。
若想暂时关闭unicad,可以在emacs中输入M-x unicad-disable。再用M-x unicad-enable切换。

恩,恼人的回车确认编码是不是消失了?

Leave a Reply

You must be logged in to post a comment.