emacs configuration mutt

¿Cómo iniciar el servidor emacs solo si no está iniciado?



configuration mutt (4)

Me gustaría usar emacsclient para editar correos electrónicos en Mutt.

Agregué esto en .emacs

(server-start)

Y en .muttrc he añadido.

set editor="emacsclient -nw %s"

Parece que funcionan. Cuando inicio un segundo Emacs, se queja de que ya hay un servidor en ejecución, por lo que emite errores. ¿Cómo asegurarse de hacer (server-start) solo si el servidor aún no se ha iniciado?

Gracias


El demonio emacs puede iniciarse automáticamente de una manera muy simple. Solo agrega esto a tu .bashrc / .zshrc / lo que sea

export ALTERNATE_EDITOR=""

Ahora, cuando invoque emacsclient (usando --tty o --create-frame ), el servidor se iniciará (con emacs --daemon ) si aún no se está ejecutando.

También me parece útil este alias de shell:

alias e=''emacsclient --tty''

Tenga en cuenta que desde Emacs 23, esta es la forma preferida de usar Emacs en modo daemon. (start-server) ahora está en su mayoría en desuso.


Este código inicia el servidor solo si no se está ejecutando:

(load "server") (unless (server-running-p) (server-start))


Evita todo el problema a través de

emacs --daemon

en cualquier shell o terminal para que Emacs se ejecute en segundo plano. De esa manera, emacsclient siempre está contento, ya que siempre hay un servidor Emacs para conectarse.

Al ser Emacs, también hay una función que inicia el servidor solo cuando es necesario, pero no puedo recordar su nombre en este momento. Yo uso la opción --daemon felizmente muy feliz yo mismo.


Un poco de una respuesta tardía, pero aquí está la solución que funciona para mí. Cada vez que inicio emacsclient, uso emacsclient -a '''' -c -a '''' le dice a emacsclient que intente conectarse a un servidor existente, y si no existe un servidor, inicie uno y luego conéctese a él.