Macos 将emacs的默认目录更改为';可可emacs';
如中所述,将(setq default directory“~/Desktop/mag”)放入.emacs应该会更改默认目录 当我在mac上使用emacs时,它不起作用。C-xc-f仍然显示~/不~/桌面/mag (cd“Users/smcho/Desktop/mag”)也给了我这个错误-错误:通过CDPATH环境变量找不到这样的目录Macos 将emacs的默认目录更改为';可可emacs';,macos,emacs,Macos,Emacs,如中所述,将(setq default directory“~/Desktop/mag”)放入.emacs应该会更改默认目录 当我在mac上使用emacs时,它不起作用。C-xc-f仍然显示~/不~/桌面/mag (cd“Users/smcho/Desktop/mag”)也给了我这个错误-错误:通过CDPATH环境变量找不到这样的目录 他们怎么了?对你的问题直截了当的回答是: (setq-default default-directory "~/Desktop/mag") 阅读变量(C-h v
他们怎么了?对你的问题直截了当的回答是:
(setq-default default-directory "~/Desktop/mag")
阅读变量(C-h v默认目录RET)的文档,您将看到:
自动成为本地缓冲区
以任何方式设置时。这
变量作为本地文件是安全的
变量,如果其值满足
谓词'stringp'
也就是说,打开文件会自动将默认目录设置为文件的路径
因此,如果您总是希望find file
从该目录开始,可以使用以下方法:
(global-set-key (kbd "C-x C-f") 'my-find-file)
(defun my-find-file ()
"force a starting path"
(interactive)
(let ((default-directory "~/scratch/"))
(call-interactively 'find-file)))
这个问题可能是重复的。虽然很难判断。提示C-x C-f('find-file')中显示的目录来自默认目录的值,该值是缓冲区局部变量。首次启动Emacs时,显示的初始缓冲区是GNU Emacs缓冲区。该缓冲区的默认目录是从变量命令行默认目录设置的
那么,试试这个:
(setq command-line-default-directory "~/Desktop/mag")
除了上面关于默认目录
的注释外,我还必须防止emacs启动屏幕启动,以便后续命令(如dired
)在启动时从调用时实际显示其缓冲区。emacs
:
(setq inhibit-splash-screen t)
我在.emacs中添加了代码,但是C-C-f显示了~/not~/Desktop/mag。@prosseek您总是希望C-C-f
从~/Desktop/mag
开始吗?这有点不同,我想我已经回答了。我会更新我的答案。对不起,我很困惑。C-x C-f是我打算用来打开“~/Desktop/mag”的关键,但我找到了一种使用C-C-f打开它的方法也没关系。@proseek-我想知道它是否是C-x C-f
,我会更新我的答案。你是否可能需要在(cd)/Users/smcho/Desktop/mag)路径的前面加一个“
?(指尖没有mac电脑可供检查)。虽然我不认为这会有你真正想要的效果,但那是行不通的。但崔家有。事实上,我认为有一个比他提议的更简单的版本。@吉姆·布兰迪:你的解释很完美。我想知道为什么(cd)
不起作用。谢谢