[slime-devel] C-g after C-c ==> debugger

Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up: Error in function NIL: Interrupt from Emacs [Condition of type SIMPLE-ERROR] Restarts: 0: [CONTINUE] Continue from interrupt. 1: [ABORT] Abort handling SLIME request. 2: [ABORT] Return to Top-Level. Backtrace: ... I find myself getting thrown into a debugger this way quite a few times everyday. Could someone make Slime handle C-g better after a C-c? Thanks a lot. Best, -cph

Chisheng Huang <cph@chi-square-works.com> writes:
Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up:
Well, C-c C-g is supposed to do that. You are free to rebind the key. I for one quite like C-c C-g. If it should be the default binding is another question. Opinions? Helmut.

Helmut Eller <e9626484@stud3.tuwien.ac.at> writes:
Chisheng Huang <cph@chi-square-works.com> writes:
Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up:
Well, C-c C-g is supposed to do that. You are free to rebind the key. I for one quite like C-c C-g. If it should be the default binding is another question. Opinions?
I thought C-g is the universal club with which you can abort anything in Emacs. After reading your reply, I took one more look at Slime's doc and found the following 2 entries: C-c C-b slime-interrupt C-c C-g slime-interrupt I knew and used C-c C-b a few times. I did not know C-c C-g does the same thing as C-c C-b. Could someone tell me what Emacs command to use to unbind C-c C-g? I'd like to do it in my .emacs because I want C-g to be consistent with the rest of my Emacs usage. Best -cph

Chisheng Huang <cph@chi-square-works.com> writes:
I knew and used C-c C-b a few times. I did not know C-c C-g does the same thing as C-c C-b. Could someone tell me what Emacs command to use to unbind C-c C-g? I'd like to do it in my .emacs because I want C-g to be consistent with the rest of my Emacs usage.
(define-key slime-mode-map "\C-c\C-g" nil) should do the trick. Zach Beane <xach@xach.com> writes:
I am a little annoyed by it. I typically type "C-c", realize I am not ready to do a command yet, and hit C-g to cancel. I'm accustomed to C-g being a safe way to stop what I'm doing in emacs. Triggering a Lisp interrupt isn't what I have in mind.
OK, that's quite a good argument against C-c C-g. I removed the binding in the CVS version. Helmut.

Helmut Eller <e9626484@stud3.tuwien.ac.at> writes:
Chisheng Huang <cph@chi-square-works.com> writes:
Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up:
Well, C-c C-g is supposed to do that. You are free to rebind the key. I for one quite like C-c C-g. If it should be the default binding is another question. Opinions?
I am a little annoyed by it. I typically type "C-c", realize I am not ready to do a command yet, and hit C-g to cancel. I'm accustomed to C-g being a safe way to stop what I'm doing in emacs. Triggering a Lisp interrupt isn't what I have in mind. In what situations is it useful? Perhaps there's a new mode of usage I could learn... Zach

Helmut Eller <e9626484@stud3.tuwien.ac.at> writes:
Chisheng Huang <cph@chi-square-works.com> writes:
Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up:
Well, C-c C-g is supposed to do that. You are free to rebind the key. I for one quite like C-c C-g. If it should be the default binding is another question. Opinions?
I think we should change it to not be the default binding. I've been tripping over it recently when using SLIME along with other minor-mode that I'm not so familiar with: I press C-c, remember it's the wrong prefix for the command I want, then press C-g by reflex and end up in sldb. C-c C-b is okay for me. -Luke

Luke Gorrie writes:
Helmut Eller <e9626484@stud3.tuwien.ac.at> writes:
Chisheng Huang <cph@chi-square-works.com> writes:
Typing C-g after C-c in a buffer editing a Lisp file will get a *sldb* buffer to show up:
Well, C-c C-g is supposed to do that. You are free to rebind the key. I for one quite like C-c C-g. If it should be the default binding is another question. Opinions?
I think we should change it to not be the default binding. I've been tripping over it recently when using SLIME along with other minor-mode that I'm not so familiar with: I press C-c, remember it's the wrong prefix for the command I want, then press C-g by reflex and end up in sldb.
C-c C-b is okay for me.
Normally, it's C-c C-c, like in M-x shell or M-x eshell: C-c C-c comint-interrupt-subjob C-c C-z comint-stop-subjob C-c C-\ comint-quit-subjob C-c C-b shell-backward-command -- __Pascal Bourguignon__ http://www.informatimago.com/ Nobody can fix the economy. Nobody can be trusted with their finger on the button. Nobody's perfect. VOTE FOR NOBODY.

Pascal J.Bourguignon <pjb@informatimago.com> writes:
C-c C-b is okay for me.
Normally, it's C-c C-c, like in M-x shell or M-x eshell:
C-c C-c comint-interrupt-subjob
It's C-c C-c in the REPL, but here we're talking about the binding in lisp-mode source buffers, where C-c C-c is compile-defun.
participants (5)
-
Chisheng Huang
-
Helmut Eller
-
Luke Gorrie
-
Pascal J.Bourguignon
-
Zach Beane