Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

franz: eli interface keybindings modified.

17 views
Skip to first unread message

Deepak Goel

unread,
May 28, 2001, 10:06:43 PM5/28/01
to

I have put up a modification to Franz's emacs-lisp interface
keybindings at:

http://www.glue.umd.edu/~deego/emacspub/fi-keys/alpha/fi-keys.el

The modification is that it replaces all
C-c <letter> by C-t <letter>.

The former bindings were supposed to be reserved for users, and it was
very frustrating for me that all my self-defined keybindings got
overwritten.


--Deepak, http://www.glue.umd.edu/~deego

Espen Vestre

unread,
May 29, 2001, 2:15:16 AM5/29/01
to
Deepak Goel <dg...@rac3.wam.umd.edu> writes:

> The modification is that it replaces all
> C-c <letter> by C-t <letter>.

I dno't thnik I wnat to relpace C-t ;-)
--
(espen)

Raymond Wiker

unread,
May 29, 2001, 3:54:13 AM5/29/01
to
Espen Vestre <espen@*do-not-spam-me*.vestre.net> writes:

C-z may be a better choice - that's what ilisp uses,
nowadays. I don't think there's much need for the historical binding
for C-z, anymore :-)

--
Raymond Wiker
Raymon...@fast.no

Erik Naggum

unread,
May 29, 2001, 4:32:14 AM5/29/01
to
* Raymond Wiker <Raymon...@fast.no>

> C-z may be a better choice - that's what ilisp uses, nowadays. I don't
> think there's much need for the historical binding for C-z, anymore :-)

FWIW, C-z runs the command iconify-or-deiconify-frame under X11. I use
C-z for job control when I work in xterms all the time. I also muse M-m,
which GNUS usurped for MML-mode stuff. I mention that only to point out
that you should not mess with such keybindings.

I find the use of C-c to be tremendously annoying when Emacs Lisp
functions bound to M-x (for various values of x, not literal x) are
obviously useless in Common Lisp buffers. E.g., use M-n and M-p instead
of C-c C-n and C-c C-p in ELI for the Common Lisp interaction buffers.

Incidentally, only C-c a, where a is a _letter_, are reserved for the
user. C-c C-a, where a is a letter, are reserved for modes. Some users
think that C-c is theirs for the taking, but this is a user error that is
best solved by reading and understanding the documentation.

Modern keyboards can easily be made to support all of Meta, Alt, Hyper,
and Super, so there is absolutely no need to invade the normal keybinding
space if you want to make serious changes.

$:Erik
--
Travel is a meat thing.

Arvid Grøtting

unread,
May 29, 2001, 4:55:02 AM5/29/01
to
Raymond Wiker <Raymon...@fast.no> writes:

> C-z may be a better choice - that's what ilisp uses,
> nowadays. I don't think there's much need for the historical binding
> for C-z, anymore :-)

I'm still left wondering why they didn't use C-c C-a through C­c C-z
in the first place, which is where mode-specific key mappings *should*
be.

It looks like they read the sentence in TFM that says that C-c is used
for mode-specific commands, but somehow managed to overlook the
paragraphs that repeatedly state that combinations C-c followed by a
letter are reserved for user-defined commands (along with F5--F9).

--
(let (hh mm ss)
(do () (nil) (multiple-value-setq (ss mm hh) (get-decoded-time))
(format t "~C~@R ~@R ~@R "
#\return hh mm ss) (sleep 1)))

Tim Bradshaw

unread,
May 29, 2001, 5:29:31 AM5/29/01
to
Raymond Wiker <Raymon...@fast.no> writes:


> C-z may be a better choice - that's what ilisp uses,
> nowadays. I don't think there's much need for the historical binding
> for C-z, anymore :-)

Please, no. *loads* of packages use C-c as a prefix for
mode-dependent things - look at gnus for instance (just because I'm
typign this in gnus). I've spent too many unhappy hours trying to
de-fuck-up ilisp's completely bogus use of C-z to want anything else
using it. C-z is useful if you like to iconify your emacs or if you
ever type to a terminal (I am, now).

(I'm happy to say that recent ilisps make replacing C-z pretty
painless).

--tim

Kent M Pitman

unread,
May 29, 2001, 7:46:36 AM5/29/01
to
[ replying to comp.lang.lisp only
http://world.std.com/~pitman/pfaq/cross-posting.html ]

Raymond Wiker <Raymon...@fast.no> writes:

If you're looking for an innocuous character to put a dispatching vector
onto, rather than replace heavily used chars like C-t or C-z,
I recommend c-\.

I don't use eli, nor even a modern emacs, but I note that it's at least
undefined in lisp-mode in a vanilla emacs 19.34 ..

Raymond Toy

unread,
May 29, 2001, 10:52:35 AM5/29/01
to
>>>>> "Kent" == Kent M Pitman <pit...@world.std.com> writes:


Kent> If you're looking for an innocuous character to put a dispatching vector
Kent> onto, rather than replace heavily used chars like C-t or C-z,
Kent> I recommend c-\.

Unfortunately, if you're using XEmacs with MULE (multilingual language
environment?) enabled, c-\ is bound to toggle-input-method so you can
switch between different input methods. I think Emacs also has such a
feature now, but I don't use Emacs....

Ray

Espen Vestre

unread,
May 29, 2001, 10:59:24 AM5/29/01
to
Kent M Pitman <pit...@world.std.com> writes:

> If you're looking for an innocuous character to put a dispatching vector
> onto, rather than replace heavily used chars like C-t or C-z,
> I recommend c-\.

oh no, on my norwegian macintosh keyboard that would be shift-alt-ctrl-7
;-)
--
(espen)

Deepak Goel

unread,
May 29, 2001, 11:44:34 AM5/29/01
to

> > The modification is that it replaces all
> > C-c <letter> by C-t <letter>.
>
> I dno't thnik I wnat to relpace C-t ;-)

point taken :).

(i myself do not use C-t, since i just find it faster, for instance,
to have a spell-checker automatically check my outgoing news.. but
then, that maybe because i have not "gotten into using C-t").

Maybe it would be better to replace all C-c <letter> by C-c C-x
<letter> ? (and C-c C-x by C-c C-x C-x ? )
C-c C-x is also easier and "closer" to the original keybindings, since
c and x are right next to each other (for non-dvoraks atleast :).

Also, note that i think they "globally" set keys, and their settings
are not just mode-specific, IIRC. For instance, my C-c l *globally*
gets changed to: switch-to-inferior-lisp buffer.

--Deepak, http://www.glue.umd.edu/~deego
He that chooses a editing over EMACS, it will not be accepted from him
and in the world to come he will be one of the lost.

Henrik Enberg

unread,
May 29, 2001, 1:34:57 PM5/29/01
to
Deepak Goel <dg...@rac3.wam.umd.edu>:

>
> (i myself do not use C-t, since i just find it faster, for instance,
> to have a spell-checker automatically check my outgoing news.. but
> then, that maybe because i have not "gotten into using C-t").
>
> Maybe it would be better to replace all C-c <letter> by C-c C-x
> <letter> ? (and C-c C-x by C-c C-x C-x ? )
> C-c C-x is also easier and "closer" to the original keybindings, since
> c and x are right next to each other (for non-dvoraks atleast :).
>
> Also, note that i think they "globally" set keys, and their settings
> are not just mode-specific, IIRC. For instance, my C-c l *globally*
> gets changed to: switch-to-inferior-lisp buffer.

The JDE uses C-c C-v as prefix key, I find that pretty good (I've started
using it in c-mode and such too. Nice job by the way, the keybindings was a
major point in my decision not to use ilisp.

Henrik
--
Soylent Green is People!

Espen Vestre

unread,
May 29, 2001, 3:47:18 PM5/29/01
to
Deepak Goel <dg...@rac3.wam.umd.edu> writes:

> (i myself do not use C-t, since i just find it faster, for instance,
> to have a spell-checker automatically check my outgoing news.. but
> then, that maybe because i have not "gotten into using C-t").

C-t is _very_ well established.

(In fact, it's even one of the emacsisms that has made it into
standard Mac OS X Cocoa programs!)

--
(espen)

Gareth McCaughan

unread,
May 29, 2001, 7:34:09 PM5/29/01
to
Espen Vestre wrote:

[someone else:]


> > The modification is that it replaces all
> > C-c <letter> by C-t <letter>.
>
> I dno't thnik I wnat to relpace C-t ;-)

I think you need to. :-)

(yes, I *know*...)

--
Gareth McCaughan Gareth.M...@pobox.com
.sig under construc

Josef Eschgfaeller

unread,
May 29, 2001, 7:59:37 PM5/29/01
to
Using C-tC-t frees C-t.

je


Deepak Goel

unread,
May 29, 2001, 11:51:23 PM5/29/01
to
btw, if anybody cares :)
i changed the version i put up on the website so that all C-c <letter>
are now replaced by C-c C-x <letter>..

>
> http://www.glue.umd.edu/~deego/emacspub/fi-keys/alpha/fi-keys.el


On a related note:

getting this modified fi-keys.el is very easy if you have root-access,
because you can modify the file where it is.

But if you are like me who doesn't have root-access, I tried the
'standard trick'---copied over fi-keys to my ~/emacs and made sure
that ~/emacs is present "earlier" in my load-path, but alas that
didn't work---franz's fi::load (present in fi-site-init.el) somehow
went and found the old fi-keys.el. I started going down the endless
road of modifying all fi::load's whenever it was relevant but realized
this is futile.

So, the next best solution is to copy the entire package into your
home-directory, and replace the fi-keys.el by the new one.. but again,
if you are like me, your home-dir does not have so much space...

So i did this: I pseudo-copied the entire package to my
home-directory, and *then* modified the fi-keys.el.. by
pseudo-copying i mean: every file in the home-dir is actu. a link to
the old one.. (except for the fi-keys.el).

i wrote an elisp script that did this pseudo-copying.. if anybody
needs this, or if anybody knows a nicer way, please let me know..

--Deepak, http://www.glue.umd.edu/~deego

Raymond Wiker

unread,
May 30, 2001, 3:45:51 AM5/30/01
to
Deepak Goel <dg...@rac1.wam.umd.edu> writes:

> getting this modified fi-keys.el is very easy if you have root-access,
> because you can modify the file where it is.
>
> But if you are like me who doesn't have root-access, I tried the
> 'standard trick'---copied over fi-keys to my ~/emacs and made sure
> that ~/emacs is present "earlier" in my load-path, but alas that
> didn't work---franz's fi::load (present in fi-site-init.el) somehow
> went and found the old fi-keys.el. I started going down the endless
> road of modifying all fi::load's whenever it was relevant but realized
> this is futile.
>
> So, the next best solution is to copy the entire package into your
> home-directory, and replace the fi-keys.el by the new one.. but again,
> if you are like me, your home-dir does not have so much space...
>
> So i did this: I pseudo-copied the entire package to my
> home-directory, and *then* modified the fi-keys.el.. by
> pseudo-copying i mean: every file in the home-dir is actu. a link to
> the old one.. (except for the fi-keys.el).
>
> i wrote an elisp script that did this pseudo-copying.. if anybody
> needs this, or if anybody knows a nicer way, please let me know..

Check the documentation for eval-after-load, after-load-alist
and (possibly) after-load-hooks. The first two work in recent versions
of XEmacs; it's possible after-load-hooks works where eval-after-load
and after-load-alist don't.

--
Raymond Wiker
Raymon...@fast.no

Stefan Monnier <foo@acm.com>

unread,
May 30, 2001, 10:46:48 AM5/30/01
to
>>>>> "Deepak" == Deepak Goel <dg...@rac1.wam.umd.edu> writes:
> But if you are like me who doesn't have root-access, I tried the
> 'standard trick'---copied over fi-keys to my ~/emacs and made sure
> that ~/emacs is present "earlier" in my load-path, but alas that
> didn't work---franz's fi::load (present in fi-site-init.el) somehow
> went and found the old fi-keys.el. I started going down the endless
> road of modifying all fi::load's whenever it was relevant but realized
> this is futile.

Yes, this FI package is pretty horrendous when you look at its insides.
But this is no excuse for posting all those discussions
on gnu.emacs.sources...


Stefan

0 new messages