Étant donné qu'emacsclient peut gérer correctement le long temps de chargement des paquets, je veux vraiment garder au moins un processus emacs, et la plupart du temps un seul processus emacs , ouvert en tant que processus d'arrière-plan et mieux masquer l'interface graphique.
En ce moment, j'ai défini la fonction suivante dans .bashrc:
emc ()
{
if [[ $# -eq 0 ]]; then
emacs --eval "(suspend-frame)" &
return
fi
args=($*);
setsid emacsclient -c -e "(find-file \"${args[*]}\")"
}
Et aussi avoir la ligne suivante dans .bashrc:
emc
Donc, chaque fois que j'ouvre un shell, je vais finir par avoir un nouveau processus emacs.
Le problème est que j'aurai de nombreux processus emacs inutiles supplémentaires après avoir ouvert de nombreux shells. Cependant, je veux seulement maintenir un seul processus emacs tout le temps depuis le démarrage pour mieux masquer l'interface graphique .
emacs --eval "(suspend-frame)"
plutôt queemacs --daemon
( emacswiki.org/emacs/EmacsAsDaemon ). Y a-t-il une raison pour laquelle vous choisissez de ne pas invoquer emacs en tant que démon? Vous pouvez utiliser quelque chose commepgrep -U `whoami` emacs || emacs --daemon &
pour vous assurer qu'il fonctionne.