(Scripts)~fix eselect
Big issue with emacsclient when launching alternate editor with eval instructions: it considers the --eval Lisp code a file name, which it opens as a buffer. Instead, use -a "" which launches Emacs with daemon on if no daemon is running. Also, instead of using a SystemD service for Emacs, let's just manage it via emacsclient. Less dependence on it then.
This commit is contained in:
@@ -2,18 +2,19 @@
|
|||||||
|
|
||||||
case "$(printf "new\nstop\nrestart\neshell\nmail" | dmenu -p "eserver: ")" in
|
case "$(printf "new\nstop\nrestart\neshell\nmail" | dmenu -p "eserver: ")" in
|
||||||
"restart")
|
"restart")
|
||||||
systemctl --user restart emacs;
|
emacsclient --eval "(save-buffers-kill-emacs)";
|
||||||
|
emacs --bg-daemon;
|
||||||
notify-send "eselect: Restarted Emacs server";;
|
notify-send "eselect: Restarted Emacs server";;
|
||||||
"stop")
|
"stop")
|
||||||
systemctl --user stop emacs;
|
emacsclient --eval "(save-buffers-kill-emacs)";
|
||||||
notify-send "eselect: Halted Emacs server";;
|
notify-send "eselect: Halted Emacs server";;
|
||||||
"new")
|
"new")
|
||||||
notify-send "eselect: Launching Emacs";
|
notify-send "eselect: Launching Emacs";
|
||||||
emacsclient -c -a "emacs";;
|
emacsclient -c -a "";;
|
||||||
"eshell")
|
"eshell")
|
||||||
notify-send "eselect: Launching Eshell";
|
notify-send "eselect: Launching Eshell";
|
||||||
emacsclient -c -a "emacs" --eval '(progn (eshell) (delete-other-windows))';;
|
emacsclient -c -a "" --eval "(progn (eshell) (delete-other-windows))";;
|
||||||
"mail")
|
"mail")
|
||||||
notify-send "eselect: Launching notmuch";
|
notify-send "eselect: Launching notmuch";
|
||||||
emacsclient -c -a "emacs" --eval '(progn (notmuch) (delete-other-windows))';;
|
emacsclient -c -a "" --eval "(progn (notmuch) (delete-other-windows))";;
|
||||||
esac
|
esac
|
||||||
|
|||||||
Reference in New Issue
Block a user