我想逐步从GNU Emacs切换到Xemacs.有没有我可以使用的技巧让这两个发挥出色?
目前,我看到以下问题:
xemacs改变.emacs这两个人不喜欢彼此.elc文件.
谢谢!
有趣的是,大多数人似乎正朝着另一个方向前进,因为我认为XEmacs处于相当休眠状态(基于xemacs-announce列表的活动).简单的包可以共存,但许多人放弃使他们的包在XEmacs和Emacs中都能工作.
但是,在回答你的问题时,为了让你的.emacs在两者中工作,我会开始编写一些例程来在两者之间进行函数转换.例如,有一点我需要这个让我的.emacs在XEmacs中工作:
(if (not (fboundp 'tags-table-files)) (defun tags-table-files () (tag-table-files tags-file-name)))
其他东西是在Emacs变种上触发的,我将其存储在变量GNU中:
(setq GNU (not (string-match "XEmacs\\|Lucid" (emacs-version)))) (if GNU (do-emacs-thing) (do-xemacs-thing))
我保留了编译的.emacs文件并执行了以下操作:
(setq compiled-dot-emacs-name (format ".emacs-%d%s" emacs-major-version (if GNU "" "X")))
关于已编译的软件包,我可能会将所有.el文件存储在一个目录中(比如emacs-lisp),但是有一个xemacs变体(xemacs-lisp)和.el文件的符号链接.然后,您只需从相应的Emacs变体中对每个目录进行字节编译,并确保将加载路径指向正确的目录.
Emacs wiki有一个关于Emacs与XEmacs的页面,这可能是一个很好的起点,可以找出使它们同居的其他技巧.具体来说,有一个用于自定义两者的页面.