Emacs,更改$ PWD变量

时间:2013-06-15 12:43:33

标签: bash emacs pwd

我总是在Guake里面的无窗口模式(emacs -nw)中使用emacs,我已设置guake在我当时所在的同一目录中打开一个新标签。

我的目的是:

  • 如果我使用emacs中的某个文件,并打开一个新标签页,我希望路径(PWD variable)与文件相同。
  • 当我关闭emacs时,PWD变量将以其原始值恢复。

如何设置我的.emacs文件以实现该目标?

2 个答案:

答案 0 :(得分:1)

借助wvxvw的回答:

(defvar pwd-orig (getenv "PWD"))

(add-hook 'find-file-hook (lambda () (setenv "PWD" default-directory)))

(add-hook 'kill-emacs-hook (lambda () (setenv "PWD" pwd-orig)))

答案 1 :(得分:0)

M-X cd 您可以在.emacs中使用它,如下所示:

(defvar initial-directory (getenv "PWD"))
(cd "~/some-directory/")
(add-hook 'kill-emacs-hook (lambda () (cd initial-directory)))

抱歉,我没有测试上面的内容,但看起来它会起作用。 (不确定'kill-emacs-hook需要多少参数。