Costumo me deparar com uma configuração incompleta ou inválida do emacs, que interrompe o comportamento normal de kill-emacs
tal forma que para com um erro.
Nesse caso, eu gostaria de matar o emacs com força, sem recorrer à busca do PID e à emissão de um a kill
partir do shell. Posso fazer isso no Emacs Lisp puro?
emacs-internals
PythonNut
fonte
fonte
kill-emacs
não funcionar, outras abordagens do elisp também podem ser prejudicadas, pois provavelmente acabam chamando dekill-emacs
um jeito ou de outro. Que erro você recebe? Pode ser mais fácil corrigir o erro.kill -9
o pid atual do Emacs, por exemplo. Você teria que estar muito confuso para quebrar isso.kill-emacs-hook
paranil
antes de chamarkill-emacs
. Você também pode obter o pid do Emacsemacs-pid
e fazê-lo cometer suicídio ligandocall-process
com "kill -9
".Respostas:
Você pode tentar a definição
kill-emacs-hook
paranil
antes de chamarkill-emacs
:Como alternativa, você pode obter o PID do Emacs
emacs-pid
e fazê-lo cometer suicídio ligandocall-process
com "kill -9
":fonte
-9
inkill -9
) tornará órfão todos os processos que o emacs gerou, assim como aconteceria se o emacs fosse um simples shell script.Às vezes, acabo com vários processos inacessíveis do emacs. Meu emacsclient normalmente inicia automaticamente um emacs e chama
server-start
- Acho que há algum bug na minha configuração em algum lugar que resulta em isso acontecer mais de uma vez.Eu mato o emacsen extra com
killall emacs
uma concha. Até agora,-9
não foi necessário. (Funciona quando há apenas um emacs em execução também, e eu não preciso caçar pid!)fonte
-9
é necessário um. Claro, isso significa que o emacs não será capaz de cometer suicídio, mas estou adicionando apenas por precaução.ein:jupyter-notebook
impedir os outros métodos. Eu acho que estava pendurado em algum lugar, mas eu já havia encerrado todos os processos Python e matado todos os buffers.