在 Windows 上使用 Emacs 有几年了,一直没搞懂 Emacs 的默认启动目录。
每次启动后在 *scrach*
buffer 上按 C-x d 开启 dired 时,默认目录总是 "c:/Windows/System32/"
以前试过Emacs 启动后执行 (cd "~/")
, 但会影响用 Borg 时在终端中 make build
, 后来就不用了。
今天经 TG 的道友 @iab 提醒,原来是因为 Emacs 启动快捷键中没有设置起始目录造成的。
解决方法:
只要在上图的 “起始位置” 设置为自己的 HOME
目录就好了,这样体验就和在 Linux 和 macOS上一致了。
如果不知道 HOME 目录是哪,可以在 CMD 中执行 echo %HOME%
查看。我是将 HOME 设置到了 C:\Users\<Your User Name>
6 个赞
感谢大佬分享。
很想在win用,但是自己不会写配置,直接doom或spacemacs都表现不正常,要么用着用着 too many open files,只能wsl2下使用了,总是有点不便。
哦哦哦,谢谢大佬科普!终于知道快捷方式中这个 起始位置 是什么意思了。相当于 pwd 的输出是吧?Windows真逆天,工作目录就写工作目录不就好了嘛,又搞特殊😅
Windows 上我安装过 Doom,但没怎么用过。安装的话,只要设置好代理,安装都是很方便的。Doom 应该有相应的安装指导。
too many open files 的问题估计是你使用了 lsp-mode。好像 Emacs 上游已经修复这个问题了,你可以用最新的 Emacs 29 或者 Emacs 30 试试。
这里有下载:Index of /gnu/emacs/pretest/windows/emacs-29
我补充另一个在 Windows 上用 Emacs 比较不爽的地方:
把运行中的 Emacs 固定到任务栏上后,每次点击打开 Emacs 都会跳出一个终端窗口,看着就很不爽;解决办法是按住 shift 键的同时鼠标右键任务栏上的 Emacs 图标,把启动改成 runemacs.exe 就不会弹出终端窗口了
当然这可能是我 Windows 用的太少的原因。。。不过这个地方当时的确让我不爽了好一阵
你这是类似的问题,因为固定后,启动的属性变了。点右键,属性,改回用 runemacs.exe
启动就好了。另外,起始目录它也帮你改了,建议也改回去。
比如我的,自动给我改成了下面这个:
你这是没读Emacs的readme啊, 上面说了emacs在windows上应该用runemacs.exe启动
1 个赞
嗯,是的;最开始用的时候固定在任务栏打开老是弹个终端窗口,可烦死我了,都是直接从终端敲 Emacs 启动
后来经人指点才知道任务栏上的图标可以通过按住 shift + 鼠标右键的方式修改属性
1 个赞
可能是我太菜了,我不知道怎么在任务栏上添加可执行程序,只能通过 runemacs.exe 启动后,对着任务栏上的已有图标选择固定到任务栏,一固定后,它的启动方式就变成 emacs.exe 了
直到后来有高人指点我修改启动方式才明白是啥原因
这个技巧可以的,我一直不知道,都是用maye来启动emacs
win11上必须按shift 右键才行
我也不知道任务栏可以用shift+点击来修改属性,感谢分享。
jyl
15
还有 cmd,每次输入cmd进命令行都显示 “c:/Windows/System32/”,以为这个是默认值,每次都要现改目录,原来可以这么改