无法将文件导入.emacs

时间:2009-04-26 22:08:36

标签: emacs

如何将code(一个Emacs lisp库)的新块导入.emacs文件?

我不想把所有内容都放在一个巨大的.emacs文件中。

3 个答案:

答案 0 :(得分:14)

将文件google.el放在目录中,比如~/lisp,然后放在.emacs中:

(add-to-list 'load-path "~/lisp")
(require 'google)

如果要添加目录及其子目录,可以查看answers in this SO question

而且,随着您添加越来越多的'require行,您会发现启动时速度变慢。在这一点上,你想了解如何make Emacs start up faster我当然最喜欢my answer

答案 1 :(得分:1)

如果您需要一次加载多个文件,

elisp-load-dir可以提供帮助。 我用它来加载每个主题的设置文件,这反过来只在实际需要时自动加载重要的东西:

.emacs
.emacs.d/
  lisp/
    elisp-load-dir.el
    ... other .el files that provide a feature
  rc/
    ... many small .el file that set variables, defaults, etc for me

所以我的.emacs非常小,只是将~/.emacs.d/lisp添加到加载路径,以便我可以在那里安装第三方扩展。然后它需要elisp-load-dir并使用它来加载我在~/.emacs.d/rc中的任何配置文件:

(add-to-list 'load-path "~/.emacs.d/lisp")
(require 'elisp-load-dir)
(elisp-load-dir "~/.emacs.d/rc")
;; then comes all the custom-set-faces stuff that emacs puts there

rc/*.el文件基本上是您放在.emacs中的文件,除非它是模块化的。例如,我经常使用的每个模式都有一个,一个用于启动,禁用启动画面,工具栏等...

答案 2 :(得分:1)

您还可以在.emacs文件中添加一个简单的加载语句:

(load "/path/to/library.el")

坦率地说,我喜欢Trey的解决方案:它将所有.el文件保存在一个位置。

编辑:根据Trey的陈述删除'require'语句。