Subject: Re: bug#43866: 26.3; italian postfix additions

From: Robert Pluim <[email-masked]>
Date: Wed, 21 Oct 2020 10:11:55 +0200

>>>>> On Tue, 20 Oct 2020 22:05:31 +0300, Juri Linkov <[email-masked]> said:

    >> The implementation seems to rely on a file in the /usr/include tree
    >> that might not be there.  This is a significant disadvantage, IMO.  It
    >> means that, unlike all other similar facilities in Emacs, this one is
    >> not self-contained.
    >> 
    >> Is it possible to lift this limitation?

    Juri> Yes, this is easy to do.  But I have one problem:
    Juri> /usr/share/X11/locale/en_US.UTF-8/Compose contains 83 lines
    Juri> where a key sequence maps to 2 characters, not to 1 character, e.g.

    Juri>   <Multi_key> <acute> <Cyrillic_u> : "у́" # CYRILLIC SMALL LETTER U WITH COMBINING ACUTE ACCENT

    Juri> where "у́" is 2 characters: CYRILLIC SMALL LETTER U and COMBINING ACUTE ACCENT.

    Juri> iso-transl.el maps a key sequence to a single character only using

    Juri>   (define-key map (apply 'vector '(?' ?у)) (vector ?у))

    Juri> I don't know how to map a key sequence to 2 characters.
    Juri> When trying to map to 2 characters ?у and ?́ :

    Juri>   (define-key map (apply 'vector '(?' ?у)) (vector ?у ?́ ))

    Juri> typing 'y inserts only the last character ?́ , not both ?у and ?́ .

Canʼt you pass a string containing ?y and ?́ as the last argument to
define-key? (although you might want to use the ?\N{NAME} or ?\uXXXX
syntax to stop Emacs combining that U+0301 with the question mark)

Robert
--