RE: Ilisp key binding changes (Option #2) - Please Review

"Clementson, Bill" <[email protected]>
Newsgroups gmane.lisp.ilisp.devel
Message-ID <[email protected]>
I've revised the proposed FSF bindings and they should now be usable on
both a windowed Emacs and a terminal Emacs. This represents a complete
revision - please have a look at these bindings and let me know if you 
see any problems with them. The complete list of bindings are at:

http://home.attbi.com/~bc19191/ilisp-keybindings.htm#Summary%20of%20New%20FSF%20Key%20Bindings-Option#2

Some general consistencies that are introduced/enforced are:

1. All key bindings are compliant with the FSF guidelines for major mode
   key bindings. In some cases, there is an overlap with a key binding
   that is defined in either standard Emacs or comint mode; however, in
   these cases, the overlap is consistent with the FSF guideline that
   "it is reasonable for a major mode to rebind a key sequence with a
   standard meaning, if it implements a command that does 'the same job'
   in a way that fits the major mode better".

2. Where possible, mnemonic key bindings have been made to facilitate
   ease of learning and frequently-used commands have been assigned to a
   key binding that is easy to reach.

3. The FSF key bindings will be made the default key bindings for ILISP
   (replacing the "Standard" key bindings).

4. All of the <action>-changes-lisp functions are of the form "C-c 8
   <letter>". Rationale: This binding existed already and there was no
   reason to change it.

5. All of the <help> related functions are set up on on "C-c C-h
   <letter>" key bindings. Rationale: C-h is used by Emacs for "help"
   functions and it makes sense to carry that convention over to ILISP.

6. All of the <eval> related functions are set up on on "C-c C-j
   <letter>" key bindings. Rationale: C-j is an easy control key
   sequence to hit and the "eval" functions are used quite a lot.

7. All of the <compile> related functions are set up on on "C-c C-k
   <letter>" key bindings. Rationale: C-k is mnemonic for "kompile" -
   ok, I can't spell! :)

8. All of the <action>-and-go-lisp functions are of the form "C-c
   C-<character> C-<letter>". The corresponding <action> functions are
   set up on the "C-c C-<character> <letter>" binding. Rationale: This
   is an easy sequence to remember - the "and-go-lisp" function is just
   the exact same sequence as the ordinary function but with the last
   character a control character rather than a regular character.

9. All of the <buffer/edit> related functions are set up on on "C-c
   C-w <letter>" key bindings. Rationale: Buffer and edit commands are
   "w"ork commands.

10. All of the <debug> related functions are set up on on "C-c C-z
    <letter>" key bindings. Rationale: The letter "z" is at the end of
    the alphabet and all of the debugging and error checking/handling
    functions are pushed out into this prefix.

I appreciate your taking the time to review these bindings.

Thank you,
--
Bill Clementson


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.