我在计算机启动时使用emacs --daemon启动emacs,然后使用emacsclient -c -n
打开一个新的图形框架。
根据https://www.gnu.org/software/emacs/manual/html_node/emacs/emacsclient-Options.html:
如果在提供'-c'选项时省略了filename参数,则新帧默认显示 scratch 缓冲区。如果initial-buffer-choice是一个字符串,则新帧将显示该文件或目录。
我的〜/ .emacs中有(setq initial-buffer-choice "~/")
。但是,当我打开一个新框架时,它仍会启动*scratch*
,而不是~
。我有一个~
缓冲区,但它不是最初显示的。
我是否需要做些其他事情来防止* scratch *缓冲区(我从未使用过)被创建?
即使使用 只有(setq initial-buffer-choice "~/")
的最小〜/ .emacs,在使用emacsclient -c -n
开始新框架时,它仍会以* scratch *打开。
答案 0 :(得分:4)
此行为似乎仅限于24之前的版本。在emacs 23中,emacsclient -c
(或emacsclient -t
)始终打开* scratch *,即使设置了initial-buffer-choice
也是如此。这已在emacs 24中修复,因此解决方案是升级。