Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| tutoriel:comprendre_la_configuration_du_clavier [Le 14/01/2020, 12:39] – Mise en forme sefran | tutoriel:comprendre_la_configuration_du_clavier [Le 11/09/2022, 12:24] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 9: | Ligne 9: | ||
| Ces symboles de touche (( // | Ces symboles de touche (( // | ||
| - | * soit des **caractères directement affichables**, | + | * soit des **caractères directement affichables**, |
| * soit des **codes d’événement ou de fonction** que chacune des applications doit interpréter à sa manière. | * soit des **codes d’événement ou de fonction** que chacune des applications doit interpréter à sa manière. | ||
| Ligne 37: | Ligne 37: | ||
| Lorsque l'on appuie **↓** sur la même touche «**A**» (AZERTY), soit B (BÉPO), soit Q (QWERTY), le scancode généré est alors : **0x10**. | Lorsque l'on appuie **↓** sur la même touche «**A**» (AZERTY), soit B (BÉPO), soit Q (QWERTY), le scancode généré est alors : **0x10**. | ||
| - | Lorsque l'on relâche la touche **↑** le scancode généré est alors : **0x90**. | + | Lorsque l'on relâche la touche **↑** le scancode généré est alors : **0x90**. |
| La séquence de scancode «**0x10 0x90**» correspond alors au caractère A pour l' | La séquence de scancode «**0x10 0x90**» correspond alors au caractère A pour l' | ||
| Ligne 116: | Ligne 116: | ||
| < | < | ||
| {{ : | {{ : | ||
| - | Où vous pouvez trouver [[https:// | + | Où vous pouvez trouver [[https:// |
| ==== Configuration initiale ==== | ==== Configuration initiale ==== | ||
| Ligne 283: | Ligne 283: | ||
| CtrlD = 128 | CtrlD = 128 | ||
| VerMaj = 256</ | VerMaj = 256</ | ||
| - | Pour gérer les touches " | + | Pour gérer les touches " |
| < | < | ||
| - | <note warning> | + | <note warning> |
| Exemple : | Exemple : | ||
| < | < | ||
| * 0-4 : Touche seule, Maj, AltGr, Maj+AltGr et Ctrl | * 0-4 : Touche seule, Maj, AltGr, Maj+AltGr et Ctrl | ||
| - | * 8 : Alt, | + | * 8 : Alt, |
| * 12 : Alt+Ctrl. | * 12 : Alt+Ctrl. | ||
| Ce qui nous donne pour la représentation d'une touche : | Ce qui nous donne pour la représentation d'une touche : | ||
| Ligne 397: | Ligne 397: | ||
| === Modularisation du fichier d' | === Modularisation du fichier d' | ||
| - | Maintenant on se propose de réaliser ce clavier de façon modulaire pour pouvoir réutiliser ces modules pour construire d' | + | Maintenant on se propose de réaliser ce clavier de façon modulaire pour pouvoir réutiliser ces modules pour construire d' |
| Nous devons donc créer des fichiers avec une extension **.inc**. Pour les utiliser il suffira de les appeler avec la commande **include**. | Nous devons donc créer des fichiers avec une extension **.inc**. Pour les utiliser il suffira de les appeler avec la commande **include**. | ||
| - | Voici la structure que l'on se propose de mettre en place | + | Voici la structure que l'on se propose de mettre en place |
| == Les touches systèmes == | == Les touches systèmes == | ||
| {{ : | {{ : | ||
| Ligne 416: | Ligne 416: | ||
| == Les touches bépo == | == Les touches bépo == | ||
| {{ : | {{ : | ||
| - | bepo.inc ou bepo.map avec | + | bepo.inc ou bepo.map avec |
| < | < | ||
| Ligne 425: | Ligne 425: | ||
| ... | ... | ||
| - | </ | + | </ |
| == Les touches Fn spéciales == | == Les touches Fn spéciales == | ||
| {{ : | {{ : | ||
| Ligne 434: | Ligne 434: | ||
| include " | include " | ||
| ... | ... | ||
| - | </ | + | </ |
| ===== Configuration de l' | ===== Configuration de l' | ||
| ==== Voir la configuration du clavier ==== | ==== Voir la configuration du clavier ==== | ||
| - | < | + | < |
| < | < | ||
| Ligne 465: | Ligne 465: | ||
| ==== Identifier les touches ==== | ==== Identifier les touches ==== | ||
| - | < | + | < |
| + | Affiche une fenêtre de capture des événements claviers dans l’environnement graphique | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Et lorsque la fenêtre est active et que l’on tape avec un clavier bépo «bépoè^». Dans le terminal où est exécuté la ligne de commande s’affiche le résultat : | ||
| + | < | ||
| + | 24 b | ||
| + | 25 eacute | ||
| + | 26 p | ||
| + | 27 o | ||
| + | 28 egrave | ||
| + | 29 dead_circumflex | ||
| + | </ | ||
| ==== Principes de la gestion du clavier ==== | ==== Principes de la gestion du clavier ==== | ||
| Ligne 495: | Ligne 508: | ||
| Ces tables, découpées en sections, se combinent selon des règles d' | Ces tables, découpées en sections, se combinent selon des règles d' | ||
| - | Pour le cas précis de la redéfinition d'une table de correspondance pour un clavier donné, une table linéaire ((C' | + | Pour le cas précis de la redéfinition d'une table de correspondance pour un clavier donné, une table linéaire ((C' |
| Par ailleurs, parmi les différentes tables évoquées ci-dessus, celles sélectionnées par l' | Par ailleurs, parmi les différentes tables évoquées ci-dessus, celles sélectionnées par l' | ||
| Ligne 534: | Ligne 547: | ||
| <note important> | <note important> | ||
| - | Vous observerez donc par cet exemple, et c'est vrai pour d' autres touches, qu'un même code de touche peut être associé à plusieurs (ici quatre) symboles de touche et que ces symboles de touche sont obtenus en accompagnant l' | + | Vous observerez donc par cet exemple, et c'est vrai pour d' autres touches, qu'un même code de touche peut être associé à plusieurs (ici quatre) symboles de touche et que ces symboles de touche sont obtenus en accompagnant l' |
| Les touches ⇧ et Alt Gr, qui ne produisent pas d' | Les touches ⇧ et Alt Gr, qui ne produisent pas d' | ||
| Ligne 561: | Ligne 574: | ||
| keycode | keycode | ||
| </ | </ | ||
| - | Ce qui en clair correspond à : | + | Ce qui en clair correspond à : |
| ^keycode 24 | a | A | q | Q | æ | Æ | q | Q | ä | Ä | q | Q | « | » | | ^keycode 24 | a | A | q | Q | æ | Æ | q | Q | ä | Ä | q | Q | « | » | | ||
| Ligne 594: | Ligne 607: | ||
| Ainsi, par exemple, pour que la touche //Alt gr// provoque la sélection du symbole de touche de niveau 3, il faut que soient écrites dans les tables de symboles les lignes suivantes : | Ainsi, par exemple, pour que la touche //Alt gr// provoque la sélection du symbole de touche de niveau 3, il faut que soient écrites dans les tables de symboles les lignes suivantes : | ||
| - | < | + | < |
| }; | }; | ||
| modifier_map Mod5 {ISO_Level3_Shift }; | modifier_map Mod5 {ISO_Level3_Shift }; | ||
| Ligne 644: | Ligne 657: | ||
| Le type de touche précise la manière dont sont pris en compte les modificateurs pour sélectionner le symbole de touche parmi tous ceux qui, classés par niveaux, font partie de sa définition.\\ | Le type de touche précise la manière dont sont pris en compte les modificateurs pour sélectionner le symbole de touche parmi tous ceux qui, classés par niveaux, font partie de sa définition.\\ | ||
| - | Les différents types de touches sont définis dans les fichiers placés dans le dossier **/ | + | Les différents types de touches sont définis dans les fichiers placés dans le dossier **/ |
| < | < | ||
| * modifiers = <liste de modificateurs> | * modifiers = <liste de modificateurs> | ||
| - | * map[< | + | * map[< |
| * level_name[< | * level_name[< | ||
| - | * preserve[...] = ... : Reportez vous aux documentations citées en référence (( Voir en bas de page)) pour des éclaircissements sur cette instruction dont la compréhension est difficile aux non programmeurs, | + | * preserve[...] = ... : Reportez vous aux documentations citées en référence (( Voir en bas de page)) pour des éclaircissements sur cette instruction dont la compréhension est difficile aux non programmeurs, |
| Voici un exemple de définition de type : | Voici un exemple de définition de type : | ||
| < | < | ||
| Ligne 693: | Ligne 706: | ||
| < | < | ||
| où // | où // | ||
| - | Pour une présentation exhaustive reportez-vous aux documents cités en référence en fin de page. | + | Pour une présentation exhaustive reportez-vous aux documents cités en référence en fin de page. |
| [[: | [[: | ||
| Ligne 713: | Ligne 726: | ||
| type[Group1]=" | type[Group1]=" | ||
| </ | </ | ||
| - | < | + | < |
| Vous noterez par ailleurs que les fichiers de symboles ne comprennent en général qu'un seul groupe et que les différents groupes de la carte du clavier sont formés à partir de chacun de ces fichiers lors de la sélection des agencements dans l' | Vous noterez par ailleurs que les fichiers de symboles ne comprennent en général qu'un seul groupe et que les différents groupes de la carte du clavier sont formés à partir de chacun de ces fichiers lors de la sélection des agencements dans l' | ||
| | | ||
| Il existe également des lignes qui attribuent les symboles de touche aux différents niveaux des différents groupes | Il existe également des lignes qui attribuent les symboles de touche aux différents niveaux des différents groupes | ||
| < | < | ||
| - | par exemple : | + | par exemple : |
| < | < | ||
| symbols[Group1] = [ ISO_Level3_Shift, | symbols[Group1] = [ ISO_Level3_Shift, | ||
| Ligne 750: | Ligne 763: | ||
| |**xkb_types**| Fichiers décrivant les types de touche, en particulier leur nombre de niveaux et la relation entre ces niveaux et les modificateurs. Les fichiers de ce type sont placés dans le dossier ** / | |**xkb_types**| Fichiers décrivant les types de touche, en particulier leur nombre de niveaux et la relation entre ces niveaux et les modificateurs. Les fichiers de ce type sont placés dans le dossier ** / | ||
| |**xkb_symbols**|Fichiers décrivant, entre autres, le type et les symboles de touche de cette touche. Les fichiers de ce type sont placés dans le dossier **/ | |**xkb_symbols**|Fichiers décrivant, entre autres, le type et les symboles de touche de cette touche. Les fichiers de ce type sont placés dans le dossier **/ | ||
| - | |**xkb_compat**|Fichiers décrivant le comportement des modificateurs. Ceci renvoie à des notions complexes qui ne sont pas strictement nécessaires pour la compréhension de ce tutoriel. Pour une présentation exhaustive reportez-vous aux documents cités en référence en fin de page. Les fichiers de ce type sont placés dans le dossier **/ | + | |**xkb_compat**|Fichiers décrivant le comportement des modificateurs. Ceci renvoie à des notions complexes qui ne sont pas strictement nécessaires pour la compréhension de ce tutoriel. Pour une présentation exhaustive reportez-vous aux documents cités en référence en fin de page.Les fichiers de ce type sont placés dans le dossier **/ |
| |**xkb_geometry**|Fichiers décrivant le placement physique des touches sur le clavier. Les fichiers de ce type sont placés dans le dossier **/ | |**xkb_geometry**|Fichiers décrivant le placement physique des touches sur le clavier. Les fichiers de ce type sont placés dans le dossier **/ | ||
| Ligne 788: | Ligne 801: | ||
| signifie que les déclarations du fichier fr doivent être incluse en appliquant le mode //replace// et non pas le mode par défaut // | signifie que les déclarations du fichier fr doivent être incluse en appliquant le mode //replace// et non pas le mode par défaut // | ||
| * Pour finir, un appel interne à un mode de fusion, l' | * Pour finir, un appel interne à un mode de fusion, l' | ||
| - | < | + | < |
| | | ||
| vmods = NumLock, | vmods = NumLock, | ||
| Ligne 794: | Ligne 807: | ||
| actions[Group1] = [ SetMods(modifiers=NumLock) ] | actions[Group1] = [ SetMods(modifiers=NumLock) ] | ||
| }; | }; | ||
| - | </ | + | </ |
| signifie que cette nouvelle définition de la touche < | signifie que cette nouvelle définition de la touche < | ||
| Ligne 803: | Ligne 816: | ||
| ===== Références bibliographiques ===== | ===== Références bibliographiques ===== | ||
| - | Les bases théoriques de cette page sont accessibles sur le site de [[http:// | + | Les bases théoriques de cette page sont accessibles sur le site de [[http:// |
