[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: Typing unicode
From:       Thiago Macieira <thiago () kde ! org>
Date:       2006-03-02 18:40:07
Message-ID: 200603021940.07801.thiago () kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Lubos Lunak wrote:
>> We handle that for characters with no keycode like ẃ. According to my
>> Compose map, it is:
>> <dead_acute> <w> : "ẃ" U1e83
>
>  We accept that as "dead_acute" and "w", the application composes that
> to ẃ.

Oops, sorry, you're right. 

That's handled by the application itself, not by the X server.

However, grepping through my /etc/X11/xkb/symbols files has shown a couple 
of interesting possibilities:

tj:    key      <AD03> {        [      Cyrillic_u,      Cyrillic_U,     
0x010004ef,      0x010004ee     ]

IIUC, this means the Unicode characters U+04EF (ӯ) and U+04EE (Ӯ) should 
be sent to the application when pressing the key AD03 (E on the QWERTY 
keyboard) when in AltGr state.

And:
srp:                 [ U1C9,                U1C8,         any,   
U1C7 ]   }; // q

This means Unicode U+01C9 when you press the AD01 (Q) key.

By trying the "tj" layout, I get this on xev:
without AltGr:
KeyPress event, serial 31, synthetic NO, window 0x5200001,
    root 0x64, subw 0x0, time 531875495, (-306,867), root:(483,894),
    state 0x0, keycode 26 (keysym 0x6d5, Cyrillic_u), same_screen YES,
    XLookupString gives 2 bytes: (d1 83) "у"
    XmbLookupString gives 2 bytes: (d1 83) "у"
    XFilterEvent returns: False

With AltGr:
KeyPress event, serial 31, synthetic NO, window 0x5200001,
    root 0x64, subw 0x0, time 531877167, (-306,867), root:(483,894),
    state 0x80, keycode 26 (keysym 0x10004ef, Cyrillic_u_macron), 
same_screen YES,
    XLookupString gives 2 bytes: (d3 af) "ӯ"
    XmbLookupString gives 2 bytes: (d3 af) "ӯ"
    XFilterEvent returns: False

(The UTF-8 sequence D3 AF is a match for U+04EF).

And the srp layout:
KeyPress event, serial 31, synthetic NO, window 0x3600001,
    root 0x64, subw 0x0, time 532117620, (160,-27), root:(949,0),
    state 0x0, keycode 24 (keysym 0x10001c9, U01C9), same_screen YES,
    XLookupString gives 2 bytes: (c7 89) "lj"
    XmbLookupString gives 2 bytes: (c7 89) "lj"
    XFilterEvent returns: False

For those wondering about other locales, this is what xev gives when run 
with LC_ALL=C:
KeyPress event, serial 31, synthetic NO, window 0x3600001,
    root 0x64, subw 0x0, time 532240231, (-255,1003), root:(534,1030),
    state 0x0, keycode 24 (keysym 0x10001c9, U01C9), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

And kwrite when run with LC_ALL=C produces a nice lj-ligature.

-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

2. Tó cennan his weorc gearu, ymbe se circolwyrde, wearð se cægbord and se 
leohtspeccabord, and þa mýs cómon lator. On þone dæg, he hine reste.

[Attachment #5 (application/pgp-signature)]

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic