[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to translate M-kp-multiply to M-* before key is mapped to functi
From: |
paul |
Subject: |
Re: How to translate M-kp-multiply to M-* before key is mapped to function? |
Date: |
4 Jul 2004 14:51:25 -0700 |
My problem is, is that kp-multiply is bound to * somewhere down the
line,
but C-kp-multiply, M-kp-multiply and C-M-kp-multiply are not.
I would like C-kp-multiply to act like C-*, M-multiply to act like
M-*,
and C-M-kp-multiply to act like C-M-* (without having to rely on
information
to what functions C-*, M-* and C-M-* are bound).
How to tell keyboard-translate to do just this?
I tried any sequence of char, strings, ints etc. to get
keyboard-translate to do what I want, but the closest I get are errors
which show that my literals are wrong or are interpreted as 'C-k'
(with 'p-multiply' as the trail of the literal) etc.
Kevin Rodgers <ihs_4664@yahoo.com> wrote in message
news:<40E58E31.60508@yahoo.com>...
> paul wrote:
> > I've nearly pulled out my hair for the following problem;
> > I want to translate M-kp-multiply to M-* *BEFORE* the key
> > gets bound to its default function (in my case pop-tag-mark).
>
> You must be running emacs without a window system (or under a window
> system, but with the -nw command line option). In an xterm on my
> platform (i386-pc-solaris2.7, X toolkit), `C-h k M-kp-multiply' shows
>
> | ESC * runs the command pop-tag-mark
>
> and then `C-h l' shows
>
> | C-h k ESC * C-h l
>
> The odd thing is that function-key-map contains this entry
>
> (kp-multiply . [42])
>
> but no escape sequence that maps to [kp-multiply] in the way that `ESC [
> 1 1 ~' is bound to [f1] or `ESC O p' is bound to [kp-1].
>
> > I do *not* want to use global-set-key but am looking for
> > a general way to remap non-ascii input events.
>
> What non-ASCII input event do you think your terminal is sending to
> Emacs?
>
> > Using (define-key function-key-map ...) or (define-key key-translation-map
> ...)
> > is too late; I can remap the key, but the function pop-tag-mark is not
> > called.
>
> Since setting function-key-map and key-translation-map do not change the
> results reported by `C-h k' and `C-h l', I don't think they have
> anything to do with it: I think it means that the xterm is actually
> sending `*' to Emacs, not an escape sequence.
>
> > Trying an approach with keyboard-translate drives me nuts because
> > it does not seem to support non-ascii events.
>
> What do you want to do? It seems like you want to bind M-kp-multiply to
> a different command, but for some reason you don't want to use
> global-set-key like this:
>
> (global-set-key "\M-*" 'whatever)
>
> --
> Kevin Rodgers
> paul wrote:
> > I've nearly pulled out my hair for the following problem;
> > I want to translate M-kp-multiply to M-* *BEFORE* the key
> > gets bound to its default function (in my case pop-tag-mark).
>
> You must be running emacs without a window system (or under a window
> system, but with the -nw command line option). In an xterm on my
> platform (i386-pc-solaris2.7, X toolkit), `C-h k M-kp-multiply' shows
>
> | ESC * runs the command pop-tag-mark
>
> and then `C-h l' shows
>
> | C-h k ESC * C-h l
>
> The odd thing is that function-key-map contains this entry
>
> (kp-multiply . [42])
>
> but no escape sequence that maps to [kp-multiply] in the way that `ESC [
> 1 1 ~' is bound to [f1] or `ESC O p' is bound to [kp-1].
>
> > I do *not* want to use global-set-key but am looking for
> > a general way to remap non-ascii input events.
>
> What non-ASCII input event do you think your terminal is sending to
> Emacs?
>
> > Using (define-key function-key-map ...) or (define-key key-translation-map
> ...)
> > is too late; I can remap the key, but the function pop-tag-mark is not
> > called.
>
> Since setting function-key-map and key-translation-map do not change the
> results reported by `C-h k' and `C-h l', I don't think they have
> anything to do with it: I think it means that the xterm is actually
> sending `*' to Emacs, not an escape sequence.
>
> > Trying an approach with keyboard-translate drives me nuts because
> > it does not seem to support non-ascii events.
>
> What do you want to do? It seems like you want to bind M-kp-multiply to
> a different command, but for some reason you don't want to use
> global-set-key like this:
>
> (global-set-key "\M-*" 'whatever)