事实上,我在与Elisp打交道时并不流利。无论如何:我使用相同的Emacs配置文件,但是像往常一样,当我在家里或办公室里有一些小的差异时,我不知道是否可以使用像这样的代码来定义我的工作目录这个:
(setq my-dir (if (string= system-name "hp-pavilion23")
(progn (message "/home/manuel/entwicklung/lisp/"))
(progn (message "/home/mmontoya/projects/chipotle/"))))
(setq default-directory my-dir)
答案 0 :(得分:4)
我不知道是否可以定义我的工作目标...
是的,你可以。您只需要以简单的方式进行操作,因为 Lisp 旨在简单。
(if (string= system-name "hp-pavilion23")
(setq my-dir "/home/manuel/entwicklung/lisp/")
(setq my-dir "/home/mmontoya/projects/chipotle/"))
(setq default-directory my-dir)
然而,为什么甚至打扰额外的my-dir
?只需将default-directory
设置在您想要的位置即可。
;; Somewhere in your ~/.emacs
(if (string= system-name "hp-pavilion23")
;; Set default-directory here.
(setq default-directory "/home/manuel/entwicklung/lisp/")
(setq default-directory "/home/mmontoya/projects/chipotle/"))
请注意,default-directory
是Emacs自动提供的变量。因此,请确保更改不会损害任何其他行为。