cyril-L / french-nf-azerty-mac

macOS keyboard layout for the standardized AZERTY (NF Z 71‐300 A)
MIT License
23 stars 3 forks source link

Utilisation de diacritiques combinants manquante #13

Open moyogo opened 1 year ago

moyogo commented 1 year ago

La section 6.3.1 «Signes diacritiques pris en charge» contient le paragraphe suivant :

Certaines combinaisons de diacritique et de lettre n’existent pas sous forme précomposée dans la norme ISO/IEC 10646 bien que l’usage, quoique rare, existe. La norme ISO/IEC 10646 prend en charge ces cas par l’utilisation de diacritiques dits combinants. La prise en charge de ces diacritiques combinants est recommandée.

Il serait utile de pouvoir saisir les diacritiques combinants, par exemple pour j́ <0061, 0301> utilisé dans le digramme ij néerlandais lorsque l’accent tonique est indiqué avec l’accent aigu pour l’emphase, ou pour į̇́ <012F, 0307, 0301] utilisé dans la notation de dictionnaires lituaniens.

cyril-L commented 1 year ago

Bonjour moyogo, je n’utilise presque plus macOS malheureusement.

Sur Linux, en utilisant la disposition « French (AFNOR standardized AZERTY) », les touches mortes sont transformées en diacritiques combinants avec AltGr+Espace.

Par exemple j ` AltGr+Espace donne j́.

J’imagine que la norme ne précise pas comment passer d’une touche morte à un caractère combinant, mais ça me parait assez intuitif. Est-ce que tu avais une autre idée en tête ?

moyogo commented 1 year ago

@cyril-L Merci. Sur macOS. j, AltGr+é (´), AltGr+Espace donne j´.

Même si cela fonctionnait, pour l’utilisateur lambda, il est difficile de savoir quelle lettre accentuée est précomposée ou uniquement composable avec un diacritique combinant selon Unicode. Les combinaisons de touches devraient être cohérentes, la touche morte d’un accent suivi d’une lettre devrait produire cette lettre avec l’accent, de préférences avec la forme normalisée NFC. Par exemple: séquences résultats attendus
AltGr+é (´), i í (00ED)
AltGr+é (´), j j́ (006A, 0301)
AltGr+^ (ˇ), AltGr+w (ʒ) ǯ (01EF)
AltGr+é (´), AltGr+w (ʒ) ʒ́ (0292, 0301)
AltGr+é (´), AltGr+h (Eu), e (ə) ə́ (0259, 0301)
AltGr+é (´), AltGr+g (µ), a (α) ά (03AC)
AltGr+é (´), AltGr+b (), i (ɨ) ɨ́ (0268, 0301)
AltGr+b (), AltGr+é (´), i (ɨ) ɨ́ (0268, 0301)
AltGr+é (´), AltGr+c (ç) ḉ (1E09)
AltGr+é (´), AltGr+v (¸), c ḉ (1E09)
AltGr+v (¸), AltGr+é (´), c ḉ (1E09)
AltGr+^ (ˇ), AltGr+v (¸), c ç̌ (00E7, 030C)
AltGr+v (¸), AltGr+^ (ˇ), c ç̌ (00E7, 030C)
cyril-L commented 1 year ago

Merci pour la liste, n’hésite pas si tu en connais d’autres. Ta solution est plus intuitive, mais le nombre de combinaisons possibles avec plus de deux diacritiques deviendrait peut être problématique.

Je vais essayer de trouver le temps de regarder ça cet été, je pense qu’il devrait être possible de supporter les deux solutions :