2012-07-08 36 views
1

我期待我的自动化发展,我想Emacs的就当我载入名为“project.clj”有条件在文件加载在Emacs中执行命令24

具体我的任何文件自动执行一些命令d喜欢它检查打开的缓冲区,如果没有称为“swank”的缓冲区执行clojure-jack-in命令,就好像它来自“project.clj”缓冲区,

然后I' d喜欢它运行shell和speedbar,但我想象一旦我弄清楚如何做到上述,那些将很容易。

我是一个完整的elisp noob,但我对lisp一般很熟悉。

回答

4

你可以做这样的事情:

(defun my-project-hook (filename) 
    (when (string= (file-name-nondirectory filename) "project.clj") 
    (do-stuff))) 

(add-hook 'after-load-functions 'my-project-hook) 
+0

这样的作品,这是我用什么: '(defun定义的Clojure开() (在(string =(文件名,文件名非目录)“ project.clj“) (if(not(member”* swank *“(mapcar(function buffer-name)(buffer-list)))) (clojure-jack-in))))' – keratacon 2012-07-09 14:13:52

+0

有点简单内部将是'(除非(获得缓冲区* * swank *“)(clojure-jack-in))'。顺便说一句,如果这个答案正在工作,请接受它:) – scottfrazer 2012-07-09 15:49:50

相关问题