Re: [XFree86] Keyboard configuration for Alt chars

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

 



On Friday 05 September 2003 12:56, Ph Legay wrote:
> Frank Murphy wrote:
> > On Tuesday 02 September 2003 2:52, Ph Legay wrote:
> >>b) Is there a tutorial to build a keyboard mapping ?
> >
> > No. Do you want to build an Xkb key symbol file, or an .Xmodmap file?
>
> The one I anderstand and that works?

Well, they both can work. It depends on which one you want to learn about. But 
with the doc webpages down, xmodmap is probably easier.

> >>c) In my symbol file, there is "key => ( 5 braceleft braketleft". Why
> >>can not obtain the braceleft char ? I kown (I see by typping) that the
> >>first column is for normal char, the second column is for the shift
> >>char. What for are the third and the fourth column ? In other word,
> >>whare is the modifier order ?
> >
> > What file do you see this line? For Xkb, I would expect to see:
> >
> > key <AE05> { [ 5, parenleft, braceleft, bracketleft ] };
>
> It is in the /etc/X11/xkb/symbols/macinstosh/macintosh
>
> xkb_symbols "extended" {
>
>      name[Group1]= "FR-1";
>
>      // Alphanumeric section
>         ....
>      // PATCH !!
> //    key <AE05> {	[   parenleft,    5   		],
> //              	        [   braceleft,    bracketleft 	]	};
>      key <AE05> {	[   a,    5   		],
>                	        [   braceleft,    bracketleft 	]	};

OK, so you need to use Mode_shift with this "old style" keymap.

> > In this case, '5' is a simple press, '(' is Shift+5,  '{' is
> > ISO_Level3_Shift+5, and '[' is Shift+ISO_Level3_Shift+5.
>
> Where is ISO_Level3_Shift defined ? Or is the key sequence ?

It's defined in symbols/level3, but you don't want that right now.

> > However, in Xfree86 4.2 (and similar to xmodmap) the following happens:
> >
> > key <AE05> { [ 5, parenleft ], [ braceleft, bracketleft ] };
> >
> > In this case, 5' is a simple press, '(' is Shift+5,  '{' is
> > Mode_level+5, and '[' is Shift+Mode_level+5.
> >
> > Confused? It's confusing. What has probably happened is that your AltGr
> > key (which often gets the third char) is configured to Mode_shift, but
> > XFree86 4.3 expects ISO_Level3_Shift to be used.
>
> Perhaps, how to check this ? how to try our suggestion ?

With xev, which you've done below.

...
> I get some trace with xev (See last line)
>
> ...
> Push on the "5,5" key 14 with alt => nothing
> ---------------------------------------------
> KeyPress event, serial 28, synthetic NO, window 0xe00001,
>      root 0x40, subw 0xe00002, time 1484788, (30,26), root:(844,51),
>      state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
>      XLookupString gives 0 bytes:  ""
...
> KeyRelease event, serial 28, synthetic NO, window 0xe00001,
>      root 0x40, subw 0xe00002, time 1485323, (30,26), root:(844,51),
>      state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
>      XLookupString gives 0 bytes:  ""
>
> My conclusion is that X keyboard see the modifier, but do nothing. Why ?
> Any test or pointers ?

Well, the modifier that it sees is Alt_L. You want it to see Mode_shift. You 
can cause this to happen by putting this into your .Xmodmap file:

keysym Alt_L = Mode_switch

Then run `xmodmap .Xmodmap` and the left alt key should generate Mode_switch 
and you can get your characters.

Frank

_______________________________________________
XFree86 mailing list
XFree86@xxxxxxxxxxx
http://XFree86.Org/mailman/listinfo/xfree86

[Index of Archives]     [X Forum]     [Xorg]     [XFree86 Newbie]     [IETF Announce]     [Security]     [Font Config]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux Kernel]

  Powered by Linux