20080920

emacs非root用户安装和配置

单位机器上的Fedora上没有root权限,
所以安装和配置emacs只能在$HOME下进行,
以下几点就是为了解决

1.编译
安装时由于没有root口令,configuration 要加 --prefix=$HOME/bin/emacs 参数。
事后证明,编译新版本没啥用,因为我遇到的问题都不是版本造成的。调好之
后,用Fedora原有的emacs也没问题。

2.muse-org需要htmlize,从[http:
//fly.srk.fer.hr/~hniksic/emacs/htmlize.el
<http://fly.srk.fer.hr/%7Ehniksic/emacs/htmlize.el>] 下载。
2.1 似乎放在了lisp目录下。
2.2 make了一遍,不知是否起了作用。要修改Makefile.defs文件指定安装路径。

3.fast start
M-x start-server
不过意义不大,因为机器太快了。

4.编译所有的.el文件
不过意义不大,因为机器太快了。

5.在操作系统和emacs间复制文本
M-x clipboard-kill-ring-save 是复制
M-x clipboard-kill-region 是剪切
M-x clipboard-yank 是粘贴
找到以上资料后,发现直接M-w居然也能用!可以跟操作系统里的应用程序有关。

6.最大化
maxframe.el中提到emacs对多显示器支持尚不完善,因此需要指定 宽 高。

7.subdirs.el和自动载入site-lisp目录
7.1 在 $HOME/.emacs-site-lisp/ 中添加文件 subdire.el,功能是递归遍历
子目录;
7.2 在 .emacs 中载入 此 subdire.el
7.3 原理:emacs会自动载入 /usr/local/emacs/<VERSION>/site-lisp 下的
subdirs.el,
但是并不会载入 $HOME/.emacs-site-lisp/subdirs.el。

---
[http://202.38.99.17/~huxw/emacs/daily-emacs/daily-emacs-Z-H-5.html#node_chap_3]
提到
[
所有扔到site-lisp目录里面的elisp文件夹,
在emacs起动的时候都会自动被加入load-path列表,这是site-lisp/subdirs.el的
功劳。我们的package/subdirs.el也要有这个功能。

(defun my-add-subdirs-to-load-path (dir)
(let ((default-directory (concat dir "/")))
(setq load-path (cons dir load-path))
(normal-top-level-add-subdirs-to-load-path)))

(my-add-subdirs-to-load-path "~/emacs/packages")

然后在.emacs文件中显式载入这个文件。

(load "~/emacs/packages/subdirs")
}
----

No comments: