如何配置emacs以在目录中启动(窗口)

时间:2017-01-20 22:46:57

标签: windows emacs

我在Windows下运行emacs 25.1。它是一个独立的二进制文件,不在cygwin下运行

我有一个适用于Windows和Linux的.emacs文件。但是,在Windows上,命令为:

(cd“c:/ Users / xxx / git”)

不会在该目录中启动emacs。该命令有效,因为如果我评估缓冲区,它会转到该目录。就好像在我的脚本之后执行了其他操作,导致emacs默认为愚蠢的Windows默认设置,无论代码在哪里。

使emacs在我想要的目录中启动的任何解决方法?

2 个答案:

答案 0 :(得分:1)

创建Emacs可执行文件的Windows快捷方式,并使用它来启动Emacs。通过右键单击文件夹runemacs.exe中的文件bin并选择创建快捷方式来创建快捷方式。

然后在快捷方式标签中填写属性

字段目标具有启动Emacs的命令:二进制文件的位置和名称(可执行文件),后跟您想要的任何选项以及您要开始编辑的任何文件或目录。

字段开始包含我希望Emacs启动的目录。

例如:

  • 目标: D:\Emacs-25.1\bin\runemacs.exe --debug-init "d:\usr\some-user-name\some-directory"

  • 开始于: d:\usr\some-user-name\some-directory

然后只需双击快捷方式即可启动Emacs。或者,如果您将其固定到任务栏,则单击它。

您可以根据需要创建任意数量的此类快捷方式,可以创建相同的Emacs可执行文件(例如,使用不同的选项或启动目录),也可以创建不同的可执行文件(例如,不同的Emacs版本)。

答案 1 :(得分:1)

尝试使用emacs-startup-hook,它在处理命令行和init.el之后运行。

(defun jpk/emacs-startup-hook ()
  (cd "/some/path"))
(add-hook 'emacs-startup-hook #'jpk/emacs-startup-hook)

如果这不起作用,某些软件包正在设置CWD,您必须对其进行跟踪。