mdk.fr/content/blog/compose-key-vs-dead-key.md

140 lines
5.1 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Title: Compose Key vs Dead Key
L'AFNOR à lancé autour de juin 2017 un appel à commentaires à propos
de [la normalisation du clavier
français](http://www.afnor.org/presse_juin2017/clavier-francais-afnor-ouvre-projet-de-norme-aux-commentaires/),
réunissant 3725 retours.
Parmis ces retours certains mentionnent la compose key :
> […] il est possible de composer une quantitée de symboles bien plus
grande qu'avec une dead key
> […] et éventuellement une touche de composition pour permettre
d'obtenir des caractères exotiques ou non-latins (ex: compose + oc
= © / compose + or = ® / compose + tm = ™
> Un clavier permettant de composer simplement les emojis les plus
courants semble donc répondre à un réel besoin.
> Une alternative que je trouve intéressante serait de proposer une
touche "Composer" (en référence à la touche utilisée sur les
anciens claviers Sun) qui permettrait de composer des ligatures.
> Il sagit dune touche morte qui permet de composer «visuellement»
les caractères non présents sur le clavier. Par exemple :
[COMPOSE]+[O]+[/] = Ø
> La touche morte traditonnellement appelée «composition» (ou
«compose», aussi en français par anglicisme) devrait être appelée
«touche morte neutre», surtout depuis que selon Unicode, des
lettres sont composées à partir de caractères indépendants et de
diacritiques combinants. On a des caractères précomposés qui
peuvent être décomposés. Dans cet espace conceptuel, une touche
morte de composition semble ne plus avoir de place.
Lors de la première réunion de dépuillement des commentaires, l'AFNOR
a rejeté l'idée de la compose key, la trouvant je cite "trop
compliquée".
# Les dead keys
Les [dead keys](https://en.wikipedia.org/wiki/Dead_key) sont des
touches permettant d'attacher un signe à la frappe suivante,
typiquement un caractère.
Il faut donc une touche morte par diacritique.
Ainsi, si la touche `[']` est une touche morte, suivie d'un `[e]`, elle
donne `é`.
# La compose key
La [compose key](https://en.wikipedia.org/wiki/Compose_key) est comme
un commentaire le mentionne une "touche morte neutre", elle permet
comme son nom l'indique de "composer" les touches suivantes, c'est à
dire de les "assembler".
Il n'y a donc qu'une seule touche "compose" sur un clavier.
Ainsi, `[COMPOSE] [e] [']` donne `é`.
# Compatibilité
Il n'existe aucune incompatibilité à proposer des dead keys et une
compose keys sur une même disposition physique: les touches mortes
étant des diacritiques et la compose key une autre touche.
# Avantages et inconvénients
## Avantage de la dead-key
Les touches mortes permettent accès rapide aux saisies courantes: `[']
[e]` suffit pour obtenir un `é`, alors qu'il faut taper `[compose] [']
[e]` avec une compose key.
## Inconvénient de la dead-key
Il est plus lent d'obtenir une diacritique seule, comme l'apostrophe,
pour lequel il faut taper `['] [ ]`, ce qui n'est pas
intuitif. L'intuition ammene aussi certaines personnes à taper
`[']['][backspace]` pour obtenir une apostrophe.
Cet inconvénient n'a pas le même impact pour toutes les dead keys, ni
dans tous les environnements, typiquement les guillemets, souvent
utilisé par paires, peut profiter de la séquence `["] ["]` générant
deux guillets, l'utilisateur peut ainsi se décaler entre les deux
guillemets pour y saisir son texte.
## Avantage de la compose key
La compose key permet de composer des caractères au delà des
diacritiques, sans alterer le comportement des touches diacritiques,
et ce de manière intuitive puisque c'est souvent une simple
superposition visuelle de caractères. Aussi la pluspart des compositions
peuvent se composer dans les deux sens : `[compose] [e] [']` et
`[compose] ['] [e]` sont identiques.
Voici quelques exemples typiques tirés d'un fichier de configuration
de la
[libX11](https://github.com/mirror/libX11/blob/master/nls/en_US.UTF-8/Compose.pre)
:
- `[compose] [o] [c]` donne `©`
- `[compose] [o] [r]` donne `®`
- `[compose] [+] [-]` donne `±`
- `[compose] [?] [?]` donne `¿`
- `[compose] [ ] [ ]` donne un espace insécable
- `[compose] [s] [s]` donne `ß`
- `[compose] [S] [S]` donne `ẞ`
- `[compose] [o] [e]` donne `œ`
- `[compose] [O] [E]` donne `Œ`
- `[compose] [o] [o]` donne `°`
- `[compose] [<] [<]` donne `«`
- `[compose] [>] [>]` donne `»`
- `[compose] [%] [o]` donne `‰`
- `[compose] [=] [e]` donne `€`
- `[compose] [c] [|]` donne `¢`
- `[compose] [L] [-]` donne `£`
- `[compose] [y] [=]` donne `¥`
- `[compose] [.] [.]` donne `…`
- `[compose] [N] [o]` donne `№`
- `[compose] [<] [3]` donne `♥`
- `[compose] [:] [)]` donne `☺`
- `[compose] [:] [(]` donne `☹`
- `[compose] [p] [o] [o]` donne `💩` (U+1F4A9 "PILE OF POO")
Ce fichier contient 4042 compositions au total, dont une partie non
négligable n'est évidemment pas atteignable avec une dead-key, comme
ẞ, qui nécessiterai que le `[s]` soit une touche morte.
Parmis ces exemples, certains sont intéressants à utiliser au
quotidien dans certains métiers, comme №, √, →, ✓, ✗, ±, …, ≠, ≤, ≥,