【问题标题】:Running emacs in emacs在 emacs 中运行 emacs
【发布时间】:2013-06-13 21:13:13
【问题描述】:

我一直在慢慢学习 elisp 和 emacs 的新命令,并且一直在稳步构建我的 .emacs。必须保持控制台打开以重复打开和关闭 emacs 实例似乎不是测试的最佳选择,但是从 emacs 内运行 emacs -nw 会引发“标准输入不是 tty”错误。有没有办法正确地做到这一点?如果不是,Reload .emacs for all active buffers 仍然是从 .emacs 和其他初始化文件重新应用设置的推荐方法吗?

【问题讨论】:

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

标签: emacs elisp emacs24


【解决方案1】:

正如wvxvw 提到的,您可以在*scratch* 缓冲区中eval 设置设置,或通过其他方法(例如ielm)。这通常会进行适当的更改。有时您需要切换主要模式才能看到更改。

但是,有时从头开始重新启动会更容易/更干净。

考虑到这一点(从头开始),看起来你很乐意在终端模式下运行 Emacs,所以给这只猫皮肤的一种方法是在终端模式下开始你的初始运行,然后退出并重新启动 -加上:

(require 'saveplace)
(setq save-place t)

然后,当您调用 Emacs 并查看您的 .emacs 文件时,您将处于您最后一次更改的位置。只需将您的调用更改为:

emacs -nw ~/.emacs

当然,您也可以使用更重的包,例如 desktop 来跟踪打开的文件/缓冲区。

在终端模式下运行还有一个额外的好处,那就是您不必将手从键盘上移开——如果您以图形方式运行 Emacs,您可能必须这样做(取决于窗口管理器设置)。

当然,如果您的 Emacs 需要很长时间才能加载,那么可能值得查看一些针对 SO 问题 "How can I make Emacs start-up faster?" 的非 emacsclient 解决方案。

【讨论】:

    猜你喜欢
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-16
    • 2013-05-11
    • 1970-01-01
    • 2012-03-25
    • 2014-11-22
    相关资源
    最近更新 更多