Version 1.1rc1/Touches mortes/Caractères morts

De Disposition de clavier francophone et ergonomique bépo

Les caractères morts, ou caractères de touche morte, s’inscrivent dans une tradition selon laquelle il s’agit de diacritiques espaçants. En soutien à cette tradition, Unicode a encodé des clones espaçants de diacritiques combinants. Mais la diversité grandissante des touches mortes (p.ex. exposant, divers hameçons, diacritiques multiples) conduit à se dépanner avec des symboles plus ou moins arbitraires, voire avec des diacritiques combinants qui (s’ils font office de caractères morts) détériorent l’expérience utilisateur.

Comportement par OS

Sous Windows, ces caractères constituent la sortie par défaut car celui-ci insère le caractère de touche morte précédant le caractère de la touche vive si la séquence ne figure pas dans la deadlist). Les caractères morts s’insèrent alors tels quels si la séquence n’est pas supportée.

A contrario, sous X.Org, aucun caractère n’est inséré en cas de séquence non supportée. Ce comportement n’est pas modifiable. En revanche le comportement de la séquence clavier bépotouche morte+clavier bépoEspace peut lui l’être.

Réaffectation de symboles

Plusieurs diacritiques espaçants, caractères de touche morte traditionnels, sont ainsi nouvellement requis comme caractères d’autres touches mortes et ainsi changent de sens :

  1. le '^' est nécessaire pour la nouvelle touche morte exposant pour une sortie au format LaTeX des lettres indisponibles. Le dit[1] circonflexe « ^ » est nouvellement requis comme caractère de touche morte exposant, afin que les caractères non supportés comme le « C »[2] s’insèrent directement en notation TeX : « ᴬᴮ^Cᴰᴱ^Fᴳ… » ;
  2. Le tilde « ~ » est souhaitable comme caractère de touche morte espace (qui donne accès aux diverses espaces et caractères de formatage)[3], parce qu’en notation TeX il a la signification d’une espace (insécable), et surtout parce que le tiret bas « _ » est nouvellement requis comme caractère de touche morte indice, afin que les caractères non supportés comme le « b » s’insèrent directement en notation TeX : « ₐ_b_c_dₑ… »[4].

Diacritiques combinants

L’architecture d’Unicode change la donne concernant les diacritiques (isolés ou combinants) produits par les touches mortes. Voir la disposition uscustom[5].

Le diacritique le plus utile est désormais le diacritique combinant.
Par conséquent, c’est le diacritique combinant qui doit sortir par clavier bépotouche morteclavier bépoEspace. D’autant plus quand la disposition est ergonomique…
Cf. Version_1.1/Touches_mortes/Diacritiques

Diacritiques espaçants

Plus clairsemés que les diacritiques combinants, et quasiment inutiles (sauf caractères informatiques, à placer sur touches vives), les diacritiques espaçants s’obtiendront par EIC ou EFI, selon leur existence :

  1. clavier bépotouche morteclavier bépoespace insécable classique ➔ 'diacritique espaçant commun'
  2. clavier bépotouche morteclavier bépoespace fine insécable ➔ 'lettre modificative'

Proposition 1

Un premier pas est l’usage des lettres modificatives, p.ex. 'ˆ' U+02C6 LETTRE MODIFICATIVE ACCENT CIRCONFLEXE.

Avantages

  • permet de libérer le '^'.

Inconvénients

  • ne résoud aucun des autres problèmes (obtention du diacritique combinant, économie de touche clavier bépoê)…

Proposition 2

Le caractère de touche morte est choisi parmi les caractères ciblés.

Avantages

  • meilleure visibilité du diacritique, mis en situation avec une lettre mnémonique ; les lettres diacritées représentatives améliorent la lisibilité des cartes d’agencement et de toute la documentation sans nécessiter le recours à des artifices tels que proposés dans ISO/IEC 9995 – Partie 10 : La représentation des diacritiques isolés, dont la représentation informatique est compliquée, et dont certains restent forcément peu évidents ;
  • principe rigoureux et universel utilisable pour toutes les touches mortes, aussi celles ne disposant pas d’un diacritique espaçant (évite aux développeurs d’avoir à rechercher des caractères de touche morte ressemblant à des diacritiques qui n’existent pas sous forme isolée) ;
  • économie de la touche clavier bépoÊ, de sorte que la touche 105 (LSGT) peut être réaffectée sans priver les utilisateurs du caractère 'ê' sur cette touche. Sur certaines touches mortes, surtout l’accent circonflexe clavier bépoê, la sortie par défaut sous Windows – ou son émulation sous Linux et Mac OS – permettent d’abréger la saisie et d’économiser le même caractère en touche vive, c’est-à-dire sur un clavier français, l’clavier bépoê.

Inconvénients / critiques

  • changement dans l’expérience utilisateur.

Portabilité

  • Windows : OK (tous les caractères du plan multilingue de base peuvent servir de caractères morts, à condition de travailler avec KbdUTool [ou tiers]).
  • X.Org : OK dans la même mesure que les touches mortes spécialisées.
  • macOS : OK.

Options de vote envisagées

  1. Statu quo comme sur le bépo 1.0
  2. lettres modificatives où il en existe, symboles arbitraires pour le reste
  3. lettres diacritées représentatives/évocatrices (liste à fixer)

_________________________

  1. Ce chevron pointant vers le haut est parfois appelé “caret”, bien que ce soit autre chose. Le vrai circonflexe est la lettre modificative circonflexe, dont le glyphe (« ˆ ») était déjà présent dans certains jeux de caractères nationaux à l’époque d’ISO/IEC 646 (ASCII et variantes).
  2. Dans le cas du ‘q’, le message «  ^q_n’existe_pas » s’affiche à la place, parce que c’est la seule minuscule à manquer en exposant.
  3. De préférence à des caractères plus rares comme la caisse ouverte U+2423 « ␣ » ou le symbole de l’espace U+2422 « ␢ » qui en plus, peut prêter à confusion avec le b rayé « ƀ ».
  4. Toutefois, dans LaTeX, les suites de plusieurs caractères en indice ou en exposant sont entourées d’accolades et précédées de « _ » ou « ^ ».
  5. Version multilingue personnelle du clavier des États-Unis pour Mac OS X : J. ‘mach’ Wust : U.S. custom – A Keyboard Layout with a Compose Key for Mac, 2010 (20 août). Consulté le 11 septembre 2015, à l’adresse http://uscustom.sourceforge.net/