Re: Re: Ilisp FSF key binding changes
Hannu Koivisto <[email protected]>
| Newsgroups | gmane.lisp.ilisp.devel |
|---|---|
| Message-ID | <[email protected]> |
"Clementson, Bill" <[email protected]> writes: > Let me know if these bindings look better than the previous ones. If I > don't hear any complaints, I'll upload these mods to cvs in the next day These are starting to look usable but I must add a few comments below. This is actually the first time I'm really taking a good look at these. Great work in any case. > Compile bindings (C-c C-k): > C-c C-k C-f compile-file-lisp > C-c C-k C-@ compile-changes-lisp Why C-@ instead of C-c? C-@ involves pressing two modifiers on my keyboard :\ Not that I use compile-changes-lisp... > C-c C-k C-d compile-defun-lisp > C-c C-k C-b ilisp-compile-buffer > C-c C-k C-r compile-region-lisp > > Eval bindings (C-c C-j): An excellent choice. > C-c C-j C-@ eval-changes-lisp See the comment for C-c C-k C-@. > C-c C-j C-l eval-last-sexp-lisp > C-c C-j C-n eval-next-sexp-lisp > C-c C-j C-d eval-defun-lisp > C-c C-j C-r eval-region-lisp > > Query bindings (C-c C-q): I would have expected to find these under C-c C-h since C-h is the help prefix (under which are also things like describe and apropos) in Emacs. A lot faster and easier to hands to type as well (the same issue as with C-e/C-j), IMO. I'd like to suggest changing this. YMMV. (I'm aware of what Coding Conventions say about this, so no need to tell me that.) > C-c C-q C-c cltl2-lookup > C-c C-q C-h hyperspec-lookup > C-c C-q C-o documentation-lisp > C-c C-q C-a arglist-lisp Admittedly it is logical for C-a to be bound to arglist-lisp, but there is also apropos, which in Emacs is bound to C-h a. Perhaps one could consider C-c C-h a assuming the C-q -> C-h change. On the other hand, maybe ilisp-arglist-message-lisp and eldoc kind of things are gradually making a binding for arglist-lisp less used, which might suggest that even C-a could be used for something else than arglist-lisp. Then again, perhaps not everyone likes to use eldoc sort of stuff... > C-c C-q TAB inspect-lisp > C-c C-q C-d describe-lisp > > Buffer/Edit bindings (C-c C-g): [Later discussion reveals that these have been moved to C-c C-f.] These are probably the most difficult bindings, so I won't comment them now but think of them a bit longer. > C-c C-g C-l load-file-lisp > C-c C-g TAB select-ilisp > C-c C-g C-c call-defun-lisp > C-c C-g C-a switch-to-lisp > C-c C-g C-g clear-changes-lisp > C-c C-g C-@ list-changes-lisp > C-c C-g SPC mark-change-lisp > C-c C-g C-d default-directory-lisp > C-c C-g C-p set-package-lisp > C-c C-g C-n next-caller-lisp > C-c C-g C-e edit-callers-lisp > C-c C-g C-r replace-lisp > C-c C-g C-s search-lisp > C-c C-g C-u find-unbalanced-lisp > C-c C-g C-\ comment-region-lisp > C-c C-g C-] close-all-lisp > > Debug bindings (C-c C-b): > C-c C-b C-g slow-lisp > C-c C-b C-f fast-lisp > C-c C-b C-x ild-trap-on-exit > C-c C-b C-r ild-retry > C-c C-b RET ild-return > C-c C-b C-l ild-local > C-c C-b C-d ild-locals > C-c C-b C-b ild-backtrace > C-c C-b C-w ild-bottom > C-c C-b C-v ild-top > C-c C-b C-p ild-previous > C-c C-b C-n ild-next > C-c C-b C-s ild-step > C-c C-b C-c ild-continue > C-c C-b C-a ild-abort > C-c C-b C-y status-lisp > C-c C-b C-z reset-ilisp > C-c C-b C-t trace-defun-lisp > C-c C-b C-k macroexpand-lisp > C-c C-b C-^ raw-keys-ilisp I'd almost call these Backtrace bindings and have C-c C-<something> for other debug bindings, when there is need. Or maybe just say that there are debug bindings under C-c C-b and C-c C-<something>, because there is overlap anyway. It's just that most of these involve fiddling with the backtrace and they pretty much eat the bindings from any reasonable debugger. My first choice might have been to bind macroexpand-1-lisp to C-c C-b C-k, but I can't really say which one I use more. > Modified versions of above bindings: [Later discussion reveals that M-<foo> -> <foo> change has been made here and I agree with that.] > C-c C-k ESC d compile-defun-and-go-lisp > C-c C-k ESC r compile-region-and-go-lisp > C-c C-j ESC l eval-last-sexp-and-go-lisp > C-c C-j ESC n eval-next-sexp-and-go-lisp > C-c C-j ESC d eval-defun-and-go-lisp > C-c C-j ESC r eval-region-and-go-lisp > C-c C-g ESC p set-buffer-package-lisp > C-c C-g ESC ] close-and-send-lisp > C-c C-b ESC a abort-commands-lisp > C-c C-b ESC k macroexpand-1-lisp > > > Global Bindings Starting With C-c: > ================================== > C-c C-g C-v ilisp-scroll-output > C-c C-g C-b ilisp-bury-output > C-c C-b C-u trace-defun-lisp-break > C-c C-g ESC a select-lisp -- Hannu ------------------------------------------------------- This SF.net email is sponsored by: ObjectStore. If flattening out C++ or Java code to make your application fit in a relational database is painful, don't do it! Check out ObjectStore. Now part of Progress Software. http://www.objectstore.net/sourceforge