首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Emacs Lisp:如何将文件夹及其所有第一级子文件夹添加到加载路径中

Emacs Lisp:如何将文件夹及其所有第一级子文件夹添加到加载路径中
EN

Stack Overflow用户
提问于 2008-10-21 10:08:22
回答 6查看 8.7K关注 0票数 15

如果我有这样的文件夹结构设置:

代码语言:javascript
复制
~/Projects
    emacs
        package1
            package1-helpers
        package2
            package2-helpers
            package2-more-helpers
        package3
            package3-helpers

如何添加这些文件夹:

  • ~/项目/emacs
  • ~/项目/电子邮件/包件1
  • ~/项目/电子邮件/包件2
  • ~/项目/电子邮件/包件3

从我的...to文件中提取load-path

我基本上需要这个代码的一个简短的自动化版本:

代码语言:javascript
复制
(add-to-list 'load-path "~/Projects/emacs")
(add-to-list 'load-path "~/Projects/emacs/package1")
(add-to-list 'load-path "~/Projects/emacs/package2")
(add-to-list 'load-path "~/Projects/emacs/package3")
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2008-10-21 10:53:45

代码语言:javascript
复制
(let ((base "~/Projects/emacs"))
  (add-to-list 'load-path base)
  (dolist (f (directory-files base))
    (let ((name (concat base "/" f)))
      (when (and (file-directory-p name) 
                 (not (equal f ".."))
                 (not (equal f ".")))
        (add-to-list 'load-path name)))))
票数 17
EN

Stack Overflow用户

发布于 2009-03-31 17:58:32

下面是我在我的.emacs中使用的东西:

代码语言:javascript
复制
(let* ((my-lisp-dir "~/.elisp/")
       (default-directory my-lisp-dir)
       (orig-load-path load-path))
  (setq load-path (cons my-lisp-dir nil))
  (normal-top-level-add-subdirs-to-load-path)
  (nconc load-path orig-load-path))

如果您查看正常的顶层添加子目录到加载路径的描述,那么选择要排除哪些目录是比较明智的。

票数 10
EN

Stack Overflow用户

发布于 2008-10-21 14:37:42

我建议你使用subdirs.el

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/221365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档