Emacs, изменение переменной $PWD
Я всегда работаю с emacs в режиме без окон (emacs -nw) внутри Guake, и я установил guake, чтобы открыть новую вкладку в том же каталоге, в котором я сейчас нахожусь.
Моя цель:
- Если я работаю с определенным файлом в emacs и открываю новую вкладку, мне нужен путь (
PWD variable
) то же самое из файла. - Когда я закрываю emacs, переменная PWD восстанавливается с ее первоначальным значением.
Как я могу установить мой .emacs
файл для достижения этого?
2 ответа
Решение
С помощью ответа 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)))
Mxcd
You can use it in .emacs
как это:
(defvar initial-directory (getenv "PWD"))
(cd "~/some-directory/")
(add-hook 'kill-emacs-hook (lambda () (cd initial-directory)))
Sorry, I didn't test the above, but it looks like it would work. (Not sure about how many arguments the 'kill-emacs-hook
принимает.