Utilisateur:Fauve/Polyglyphe
Poséidon est un langage formel permettant de décrire une suite de touche tapée de quelque manière que ce soit en rendant compte des combinaisons de touches, à ce titre, il présente une alternative à la traditionnelle forme « clavier bépoCtrl+clavier bépoAlt+clavier bépoL » en dépassant ces limites. Poséidon ce veut donc simple à comprendre à la lecture.
J'ai créé ce langage de toute pièce car jusque là il n'y avait aucun langage qui permettait manière précise, simple, sans équivoque, universelle de décrire quelles touches il faut taper et dans quel ordre, ou sinon la très rudimentaire forme "Ctrl+ALt+X", qui avait beaucoup de limites.
Principe de base
Dans le langage Poséidon, la séquence « Ctrl+Alt+L », par exemple, devient, « ⎈⌥L ». En fait, Poséidon substitue au diverses mentions "Ctrl", "Alt", "Alt Gr" des pictogrammes qui représentes les touches, l'intérêt du pictogramme par rapport à la mention en toute lettre est que la mention peut prêter à confusion avec les touches des lettres qui la composent, par exemple, clavier bépoCtrl, sans la mise en forme qu'il y a dans cette page web, peut prêter à confusion avec clavier bépoC+clavier bépot+clavier bépor+clavier bépol. D'autre part le pictogramme peut aussi labelliser la touche et est universel, se comprends quelque soit la langue de formation de l'utilisateur. Donc le langage Poséidon accorde un symbole par touche.
Voici quelque exemple de correspondances entre pictogrammes et touches, à savoir que ces symboles ont, pour la plus part étés standardisés par Unicode pour les touches qui leur sont associées :
clavier bépo⎈ = clavier bépoCtrl
clavier bépo⌥ = clavier bépoAlt
clavier bépo⌘ = clavier bépoCompose (à été standardisé pour la touche clavier bépoCommande)
clavier bépo⎙ = clavier bépoImprim écran syst
clavier bépo⌫ = clavier bépoBackspace
clavier bépo⌦ = clavier bépoSupprimer
clavier bépo⎋ = clavier bépoÉchap
clavier bépo⍽ = clavier bépoEspace
clavier bépo⇪ = clavier bépoVerrouillage majuscule
clavier bépo⇧ = clavier bépoMaj
clavier bépo⏎ = clavier bépoEntrée (à été standardisé pour la touche clavier bépoRetour à la ligne)
clavier bépo⌨ = clavier bépoLa touche de séquençage
clavier bépo⎉ = clavier bépoPause Attn
clavier bépo⎊ = clavier bépoArrêt défilement
clavier bépo⇭ = clavier bépoVerrouillage numérique
clavier bépo⇫ = clavier bépoDeuxièmement niveau (peut aussi bien être Fn que Hyper par exemple)
clavier bépo⇮ = clavier bépoTroisième niveau
clavier bépo⇯ = clavier bépoVerrouillage du troisième niveau
Et d'autres encore que vous retrouverez sur la plage 2000 d'Unicode.
Dés lors clavier bépoCtrl+clavier bépoAlt+clavier bépoL s'écrira simplement « ⎈⌥L », ce qui veut dire littéralement « On appuie sur contrôle, puis on la lâche, on appuie sur Alt puis la on lâche, et enfin sur L que l'on lâche ».
Si, en revanche on veut décrire une "formation de touches", c'est à dire que l'on veut signifier qu'une touche est maintenue pressée quand on appuie sur une autre on mettra la touche maintenue enfoncée "en fonction", ainsi, pour dire « On appuie sur Ctrl que l'on maintien appuyé, puis l'on appuis sur Alt que l'on lâche, puis sur L que l'on lâche, avant de lâché Ctrl » On écrira « ⎈(⌥L) ». La touche contrôle à été mise en fonction et les touches alt et L on été mise dans la fonction de la touche contrôle. Évidement, on peut mètre une formation à l'intérieur d'une autre formation, par exemple, pour dire « On maintient Contrôle appuyé, puis on maintient Alt appuyé puis on appuie sur L et le lâchons, puis on lâche ALt et Ctrl » on aurait plutôt écrit « ⎈(⌥(L)) ». On peut aussi dire « On appuis sur Ctrl que l'on maintien enfoncée, puis sur alt que l'on maintient enfoncée, puis on lâche Ctrl, avant d'appuyer sur L et de la lâchée puis de lâcher Alt » de la manière « ⎈(⌥)(L) ». Ici la deuxième paire de parenthèse contient les touches que l'on appuis alors que ⌥ est maintenu enfoncé.
Avec se système, on peut donc séquencer toute possibilité de frape comme par exemple la séquence suivante :
j'écris⍽dans⍽vim⍽sur⍽le⍽TTY1⍽puis⍽je⍽passe⍽au⍽mode⍽visuel⎋iet⍽repasse⍽au⍽mode⍽d'insertion⍽avant⍽de⍽me⍽rendre⍽à⍽un⍽autre⍽TTY⎈(⌥(F4))fove49⏎monMotDePasseJeNelecriraisPasIci;)⏎vi↹⏎i⌘cccp⎋:wq
Ce qui veux dire littéralement que :
l'utilisateur a écrit "j'écris dans vim sur le TTY1 puis je passe au mode visuel" puis il a appuyé sur la touche {{t|echap}} (⎋), puis sur la touche I et il a écrit "et repasse au mode d'insertion avant de me rendre à un autre TTY", puis a fait un petit {{t|Ctrl}}+{{t|Alt}}+{{t|FA}} ou plutôt « ⎈(⌥(F4)) », là il a écrit "fove49" puis il a taper "Entrée", puis il a taper "monMotDePasseJeNelecriraisPasIci;)" suivit d'{{t|Entrée}}, puis il a écrit "vi", suivit de {{t|tabulation}} et {{t|Entrée}}, puis il a taper la lettre "i", suivit de la touche {{t|compose}} "⌘" suivie des lettres CCCP, puis echap, puis deux point puis les lettres wq
Chronométrage
La notation Poséidon permet aussi de signifier le temps pendant lequel on maintient une touche appuyée, ainsi, ce dernier est exprimé en seconde entre crochés, immédiatement après le pictogramme d'une touche. Par exemple « ⎈[1](⌥[1]L[2]) ». Il est aussi possible de spécifier combien de temps on a attendu entre l'appuis sur une touche et l'appuis sur la touche suivante en spécifiant, entre chevrons, ce temps la en seconde. Par exemple : « ⎈<0.5>(⌥<0.9>L) »
Détail des possibilité
Dans cette section il s'agira moins de décrire une séquence réelle telle que peut la relevé un séquenceur Poséidon que la manière de décrire, avec le langage Poséidon, les différentes possibilité que l'on a, Par exemple si l'on veut préciser qu'il faille appuyer sur la touche P et B successivement mais que l'ordre n'a pas d'importance on utilisera le symbole "&" : « {P&B} » cela veut dire que « Il faut appuyer sur l'une des touches P et B puis sur l'autre, sans préférence pour l'ordre », et cela peut ce généraliser à plus de deux lettres « {P&B&M&f} ». Si l'on veut dire qu'il faille appuyer sur la touche P et B successivement, que l'ordre n'a pas d'importance mais que la première touche doit resté enfoncée on utilisera des parenthèses à l'intérieur des accolade : « {(P&B)} ». Enfin si l'on veut spécifier que seule une et une seule des touche P et B doit étre enfoncée mais sans préférence pour l'une ou pour l'autre on utilisera le symbole "|" à l'intérieure des accolades : « {P[B} ».
Moyens d'écrire une séquence Poséidon
Jusque là me direz-vous que c'est bien beau ce système mais tous les caractères Unicode auquel il fait appel ne sont pas forcement toujours accessibles, c'est la qu'interviennent deux solutions que sont soit un programme spécifique au séquençage, soit une touche/raccourci clavier qui écrivent une séquence :
Programme de séquençage
Son principe est simple, une fois le programme ouvert, il permet d'actionner un mode de séquençage durant lequel on taperait au clavier la séquence même que l'on voudrait obtenir, on apuirait donc simplement sur les touche même que l'on voudrait voir apparaitre dans la séquence finale et, au sortir de ce mode, le programme de séquençage fournirait la séquence correspondante a notre frape. Évidement, pendant que ce mode est activé, l'appuis sur quelque touche que ce soit n'exécute pas l'action normale de cette touche, par exemple l'appuis sur la touche clavier bépopower, n'étend pas l'ordinateur.
Touche de séquençage
Cela pourrait être aussi bien une touche ou un raccourcis clavier qui, une fois actionné(e) fait entré l'utilisateur dans le mode de séquençage, tout comme avec le programme de séquençage. Dans ce mode ce n'est plus les actions des touches qui s'effectuent quand on appuie sur celles-ci mais c'est la séquence de frape qui s'affiche à l'écran. Pour sortir de ce mode de séquençage, il suffit de ré-appuyer sur la touche de séquençage.
Si on revanche on veut que ce soit la touche de séquençage même qui soit séquencée il faudra appuyer dessus deux fois successives. Cette touche est notée en Poséidon « ⌨ ».
Possibilité offertes par Poséidon
L'intérêt évidement est que ce langage soit standardisé, auquel cas, beaucoup de chose serait permises par exemple, on pourrait utiliser ces séquences comme des macros, un logiciel spécifique "Poséidon" pourrait par exemple, au cas ou on lui fournirait une séquence, exécuter cette séquence etc.