help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs 21.4: can't bind umlaut keys


From: Peter Daum
Subject: emacs 21.4: can't bind umlaut keys
Date: Sat, 07 Jul 2007 11:55:14 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.5) Gecko/20060720 SeaMonkey/1.0.3 Mnenhy/0.7.4.0

Hi,

I am using a German keyboard, but usually write languages like "Perl"
at least as often as "German" and with the standard German keyboard
layout chars like "[]{}" are difficult to reach.

 Therefore, I had already long time ago written some ELisp code to
switch the binding of the umlaut keys between different sets of
keykbindings according to my current needs. Unfortunately, it is a
little tricky to refer to those keys in emacs lisp (and the exact
modalities changed a little since emacs 19).

Now after migrating my systems from Suse (9.3) to Debian (Etch), or,
as far as emacs is concerned, from version 21.3 to 21.4 my key bindings
don't work anymore and I can't figure out, what changed.

Here a minimal code snippet to illustrate the problem:

(defun latin1-to-emacs (char-code)
  (make-char 'latin-iso8859-1 (- char-code 128)))
(setq c_ae (latin1-to-emacs 228))
(local-set-key (make-vector 1 c_ae) "ae")

This should bind the key labeled "ä" to instead insert "ae". technically,
it still works on emacs 21.4 in Etch ((current-local-map) indicates the
change) but the key still produces "ä".
Some side notes:
- Emacs is running in unibyte mode
- The X server or the console driver (the problem is not X-related,
  on the console it's the same) produce the expected key event:
    state 0x0, keycode 48 (keysym 0xe4, adiaeresis), same_screen YES,
    XLookupString gives 1 bytes: (e4) "ä"
    XmbLookupString gives 1 bytes: (e4) "ä"

Anybody has any idea, what is going wrong?
Help would be greatly appreciated!

Regards,
                            Peter Daum





reply via email to

[Prev in Thread] Current Thread [Next in Thread]