0
0

Emacs按序加载配置文件

liuw 发表于 2010年10月27日 09:55 | Hits: 2492
Tag: UNIX-like | emacs | init file | load

我希望Emacs可以有按序加载配置文件能力,简单的说,就是希望它能按照文件名的字母表排序来加载配置文件。这样我就可以在文件名前加上几个数字作为加载优先级了。这在Unix的世界里面是很常见的。

我是个懒人,总是希望有别人做好给我用。我换了好几个关键词去搜索,都没有找到别人写好的代码。也许是这个功能太简单不值得放到网上,也许是我的关键词不对,总之我就是没有搜到。

好吧,到了这一步也就不想再偷懒了,自己写点代码来实现这个功能吧。真的只是一点点。


(defun liuw-find-el-in-directory (directory)
  "List the .el files in DIRECTORY."
  ;; This can be made recursive
  (interactive "DDirectory: ")
  (let (el-files-list
        (current-directory-list
         (directory-files-and-attributes directory t)))
    (while current-directory-list
      (if (equal ".el"
                 (substring (car (car current-directory-list)) -3))
          (setq el-files-list
                (cons (car (car current-directory-list)) el-files-list)))
      (setq current-directory-list (cdr current-directory-list)))
    el-files-list))

 (defun liuw-get-sorted-el-list (directory)
   (interactive "DDirectory: ")
   (let ((l (sort (liuw-find-el-in-directory directory) 'string<)))
     l))

 (defun liuw-load-ordered-startup-el (directory)
   (interactive "DDirectory: ")
   (let ((l (liuw-get-sorted-el-list directory)))
     (while l
       (load-file (car l))
       (setq l (cdr l)))))

Elisp早已生疏,所以写这点代码也颇费了点时间。只能感叹自己学艺不精了。

原文链接: http://blog.liuw.name/821

0     0

我要给这篇文章打分:

可以不填写评论, 而只是打分. 如果发表评论, 你可以给的分值是-5到+5, 否则, 你只能评-1, +1两种分数. 你的评论可能需要审核.

评价列表(0)