【问题标题】:How to keep a persistent emacs-server instance running?如何保持持久的 emacs-server 实例运行?
【发布时间】:2010-12-16 07:35:57
【问题描述】:

我使用 emacs-server 以便我可以将 emacsclient 设置为默认文本编辑器,并让它打开新文件作为缓冲区而不是新的 emacs 实例。

但是,这只在 emacs 服务器运行时才有效,那么我怎样才能让它在启动时运行并保持在后台呢?

另一个问题是,如果我启动 emacs,然后退出并重新启动它,它会告诉我:

文件错误:无法绑定服务器套接字,地址已在使用中

【问题讨论】:

    标签: emacs ubuntu


    【解决方案1】:

    假设你使用的是 Emacs 23,把

    emacs --daemon
    

    在您的 ~/.xsession(或您放置启动命令的任何位置)中。

    【讨论】:

    • 为此欢呼。我将 emacs --daemon 添加到启动应用程序应用程序中,它似乎在我启动 emacs 时工作,它给了我文件错误:无法绑定服务器套接字,地址已在使用中。虽然我该如何解决这个错误?我从 cli 尝试了 emacsclient,我得到了 - emacsclient: connect: Connection denied emacsclient: No socket or alternate editor。请使用:--socket-name --server-file(或环境变量 EMACS_SERVER_FILE)--alternate-editor(或环境变量 ALTERNATE_EDITOR)
    • 您的~/.emacs 中还有(server-start) 吗?尝试删除它。
    【解决方案2】:

    This 页面应该告诉你所有你需要知道的。 igor 提出的建议的替代方法是在路径的某处创建一个新脚本,其中包含:

    #!/bin/bash
    export GDK_NATIVE_WINDOWS=1
    exec emacsclient --alternate-editor="" -c "$@"
    

    假设您使用的是 GTK。

    alternate-editor="" 是一个简写,告诉 emacs 如果没有找到新的服务器就启动一个新的服务器。这全部来自 EmacsWiki 页面。还有一些针对已发布的连接被拒绝错误的修复。在尝试了解有关 emacs 的信息时,您应该始终从那里开始。

    【讨论】:

      猜你喜欢
      • 2016-03-09
      • 1970-01-01
      • 1970-01-01
      • 2016-01-11
      • 2013-09-17
      • 1970-01-01
      • 2020-02-01
      • 1970-01-01
      • 2012-02-18
      相关资源
      最近更新 更多