在emacs中运行emacs

3
我一直在慢慢学习elisp和emacs的新命令,并不断地建立我的.emacs文件。必须打开一个控制台来重复打开和关闭emacs实例似乎不是最优解,但是在emacs中运行emacs -nw会抛出“标准输入不是tty”的错误。有没有正确的方法可以做到这一点?如果没有,是否仍然推荐使用重新加载所有活动缓冲区的.emacs文件 来重新应用.emacs文件及其他初始化文件的设置?

所有来自链接问答的警告都适用,这意味着您如何修改和重新应用给定设置必然取决于该设置的性质。但是,如果您确实需要恢复文件缓冲区,则链接的答案仍然是一种简单的方法。 - phils
1个回答

2
wvxvw所提到的,您可以通过在*scratch*缓冲区中使用eval或其他方法(例如ielm)来进行设置。这通常会使相应的更改生效。有时候需要切换主模式才能看到更改。
但是,有时候重新开始可能更容易/更清晰。
考虑到这一点(从头开始),看起来您习惯于在终端模式下运行Emacs,因此解决此问题的一种方法是在终端模式下启动初始运行,然后退出并重新启动 - 加上:
(require 'saveplace)
(setq save-place t)

然后,当您调用Emacs并查看您的.emacs文件时,您将会在上次进行更改的地方。只需将您的调用更改为类似以下内容:
emacs -nw ~/.emacs

当然,您也可以使用更重的包,例如桌面来跟踪打开的文件/缓冲区。
在终端模式下运行的另一个好处是不必从键盘移动手 - 这可能是您以图形方式运行Emacs时必须做的(取决于窗口管理器设置)。
当然,如果您的Emacs加载时间很长,那么值得检查一下SO问题“如何使Emacs启动更快?”中的一些非emacsclient解决方案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接