texmacs-dev
[Top][All Lists]
Advanced

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

[Texmacs-dev] Re: [TeXmacs] Re: Modifier mapping suddenly broken?


From: Joris van der Hoeven
Subject: [Texmacs-dev] Re: [TeXmacs] Re: Modifier mapping suddenly broken?
Date: Tue, 30 Nov 2004 20:00:00 +0100 (CET)

On Tue, 30 Nov 2004, Lionel Elie Mamane wrote:
> That's precisely the problem, it is the three:
>
> shift       Shift_L (0x32),  Shift_R (0x3e)
> lock        Caps_Lock (0x42)
> control     Control_L (0x25),  Control_R (0x6d)
> mod1        Alt_L (0x40),  Alt_L (0x7d)
> mod2        Num_Lock (0x4d)
> mod3
> mod4        Meta_L (0x73),  Super_L (0x7f),  Hyper_L (0x80),  Meta_L (0x9c)
> mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x7c)
>
> If I remove Super_L and Hyper_L from it, Meta works again in TeXmacs.
>
> shift       Shift_L (0x32),  Shift_R (0x3e)
> lock        Caps_Lock (0x42)
> control     Control_L (0x25),  Control_R (0x6d)
> mod1        Alt_L (0x40),  Alt_L (0x7d)
> mod2        Num_Lock (0x4d)
> mod3
> mod4        Meta_L (0x73),  Meta_L (0x9c)
> mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x7c)
>
> Now it works.

Please try to replace the routine

(define (get-default-hyper-modifier)
  (let ((s (eval-system "xmodmap | grep Hyper_L")))
    (cond ((string-starts? s "mod")
           (string-append "Mod" (substring s 3 4)))
          (else "Mod3"))))

in kbd-config.scm by

(define (get-default-hyper-modifier*)
  (let ((s (eval-system "xmodmap | grep Hyper_L")))
    (cond ((string-starts? s "mod")
           (string-append "Mod" (substring s 3 4)))
          (else "Mod3"))))

(define (get-default-hyper-modifier)
  (with s (get-default-hyper-modifier*)
    (if (= s (get-default-meta-modifier)) "Mod3" s)))

In fact, contrary to what I said before, TeXmacs actually *does* check
the xmodmap at start-up, but in the scheme part not the C++ code.
We have to ensure there that A, M and H correspond to different
modifier keys.





reply via email to

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