でもできれば強制終了してくないですよね?
M-x package-install
して
マイナーモードを on/off したり
ごちゃごちゃイジっていると
たまに抜き差しならない状況に陥ります
多分 advice が変な状態になって
ミニバッファで Enter
押せないとか。
でも、できれば kill -9
とか、プロセスの強制終了はしたくないですよね?
auto-save-buffers
とか使っている人は、
あんまり気にしないかもしれないですけど。
とりあえず無難に終了させたい!!
端末から
$ emacsclient -e '(save-buffers-kill-emacs)'
とかやればいいかなと思います。
やってみたけど、途中で バッファ保存するか?
とか聞かれる
回答が全部 yes
と分かっているなら
$ emacsclient -e "(require 'cl)"
$ emacsclient -e '(flet ((yes-or-no-p (x) t)
(y-or-n-p (x) t))
(save-buffers-kill-emacs))'
みたいな感じでいいかなと思います。
インタプリタとかプロセスを殺したい!!
大体一緒ですがkill-buffer の引数の
バッファの名前は適当に変えて
$ emacsclient -e '(flet ((yes-or-no-p (x) t)
(y-or-n-p (x) t))
(kill-buffer "*cider-repl localhost*"))'
みたいな感じでいいかなと思います。
ハイハイ分かったけど、端末から入力とかメンドい!!
ですよねっ
ですよねぇ
分かります
普段 paredit
とか使っていると、
その反動はなおさらだと思います。
そんなときは
$ emacsclient -e '(switch-to-buffer "*scratch*")'
です。
あとは *scratch*
でなんでも出来るかなと思います。
ディレクトリ移動なら
(dired "~/.emacs.d/")
とか書いて、C-x C-e
とかすればいいかなと思います。
文字の入力が出来ない場合は、
emacsclient
でがんばる しかないですけど
まとめ
以上、自分の emacs 操作できなくなったら
メモが見られないので、ココに外部記憶してみました。
もっといい方法があればコメント頂けると幸いです