Jouer avec xmodmap
je rencontrais une clé modificateur je ne l' avais pas entendu parler de: Mode_switch
. Cela semble avoir quelque chose à voir avec l'insertion de caractères spéciaux.
Je l'ai assigné à une clé mais cela semble n'avoir aucun effet. Pourquoi est-ce? Est-ce différent de ISO_Level3_Shift
(Alt Gr) ?
Réponses:
Mode_switch
est le nom à l'ancienne (pré-XKB) de la touche qui est appelée AltGrsur de nombreuses dispositions de clavier. Cela est similaire au fait Shiftque lorsque vous appuyez sur une touche qui correspond à un caractère, vous obtenez un caractère différent si Shiftou AltGrest également enfoncé. Contrairement àShift
,Mod_switch
n'est pas un modificateur au sens X11 car il s'applique normalement aux caractères, pas aux touches de fonction, donc les applications n'ont qu'à effectuer une recherche de caractères pour obtenir l'effet souhaité.ISO_Level3_Shift
est la version XKB de cette clé. De manière générale, XKB est beaucoup plus compliqué et peut faire des trucs extra sophistiqués. Le mécanisme de XKB est plus général car il permet aux dispositions de clavier de varier dans quelles touches sont influencées par quels modificateurs, il généralise les modificateurs collants ( CapsLock-style) et à pression simultanée ( Shift-style) et ainsi de suite.la source
ISO_Level3_Shift
Heureux de savoir que cela peut agir de manière «collante», je cherchais cette fonctionnalité depuis longtemps: unix.stackexchange.com/questions/39014/…AltGr
et sontMode_switch
les mêmes clés? Sinon, dans ce lien , ils sonnent comme s'ils étaient les mêmes choses. Pourriez-vous clarifier un peu cela?Mode_switch
etISO_Level3_Shift
faites la même chose de manière légèrement différente. Je ne prétends pas comprendre les différences; la plupart du temps, cela n'a pas d'importance, mais je me souviens que le mélange de xmodmap avec des noms XKB empêchait parfois les modificateurs de fonctionner correctement.us(cz_sk_de)
fonctionnalités ou avec des mappages xmodmap personnalisés pour certaines clés (virgule par exemple) selon que les fonctionnalitésAltGr
sontMode_switch
ouISO_Level3_Shift
ne peuvent pas obtenir les deux fonctionnalités en même temps.CapsLock
rémanentes ne sont pas de style. Les clés collantes sont appelées «loquet» et les clés de verrouillage sont appelées serrures. Les touches rémanentes sont relâchées après avoir appuyé sur le non-modificateur suivant tandis que les touches de verrouillage sont actives jusqu'à ce qu'elles soient à nouveau enfoncées.Cette réponse n'est pas destinée à contredire la réponse de @Gilles, mais vise à décrire un autre aspect de la gestion des entrées xkb qui, selon moi, est "sous-éclairé" dans sa réponse.
Vous pouvez utiliser à la fois
ISO_Level3_Shift
(Alt-Gr) etMode_switch
en même temps avec des résultats différents . Il nécessite une certaine configuration, mais vous pouvez les avoir tous les deux et les utiliser pour produire 6 touches différentes par touche de clavier physique!Vous pouvez par exemple configurer Tabpour être
Mode_switch
tenu avec xcape ⌂ et xmodmap , puis par exemple la touche étiquetée "H" sur le clavier pourrait produire les caractères / touches suivants:h
H
← (Cursor)
← (Symbol)
┘
┐ with H
with ShiftH
with AltGrH
with AltGrShiftH
with TabH
with TabShiftH
Donc, pour revenir à votre question:
IL3S
etMode_switch
peut être configuré pour signifier différentes choses, vous pouvez donc avoir des touches de curseur et ~ 200 caractères utiles des langues (accentuées), du dessin de boîte et du jeu de caractères techniques sur les 35 touches de les 3 lignes de lettres.Pour accomplir ce qui précède:
exemple pour H:
la source
fn: A → B
.ISO_Level5_Shift
. Cela produit 8 niveaux, le 7ème étantlvl3+lvl5+H
& c.Mode_shift
dans Xkb est une touche Maj pour les groupes ou les mises en page. Si vous avez une disposition avec plusieurs groupes, vous pouvez maintenir cette touche enfoncée pour accéder au groupe suivant. Si vous disposez de plusieurs dispositions, vous pouvez maintenir cette touche enfoncée pour basculer entre les dispositions († 1).Il en
Mode_shift
va de même pour les groupes Shift(ouShift_L
etShift_R
, pour utiliser les noms de clés) pour les niveaux.Cela pourrait devenir plus clair si nous considérons qu'il
Mode_shift
a un alias appeléISO_Group_Shift
(† 2). Il existe également des touches appeléesISO_Group_Latch
etISO_Group_Lock
qui correspondent àISO_Level2_Latch
(décalage du verrou) etShift_Lock
, respectivement († 3).Il existe également un certain nombre d'alias pour différents scripts:
kana_switch
Arabic_switch
Greek_switch
Hebrew_switch
Hangul_switch
† 1: Ceci est basé sur ma compréhension des «groupes» et des «dispositions» de Xkb. Il semble qu'ils soient traités de la même manière en sélectionnant entre eux avec des clés comme celle-ci.
† 2: Je base cela sur le fichier
keysymdef.h
dans ce référentiel Git à la révision ab8666661fc6 («Ajouter XF86XK_AudioPreset», 2017-05-10). Sur les installations, vous trouverez probablement ce fichier sur/usr/include/X11/keysymdef.h
.† 3: Il existe également une clé
ISO_Lock
, une sorte de clé de verrouillage à usage général.La signification de la
AltGr
cléGilles a mentionné dans sa réponse le lien avec la AltGrclé:
Cela m'amène à soupçonner que «AltGr» pourrait signifier «groupe alternatif / alternatif», car il
Mode_switch
est utilisé pour déplacer les groupes. Cependant, cela s'est avéré faux. Selon la page Wikipedia sur la AltGrclé , «AltGr» semble provenir des claviers IBM, et dans leurs manuels, il est dit que c'est une abréviation pour «graphisme alternatif». Cela a du sens, car il semble probable que l'utilisation du clavier pour dessiner des «graphiques» (caractères de dessin de boîte utilisés dans les interfaces utilisateur de texte) est arrivée bien avant qu'il n'y ait un bon support pour basculer rapidement entre plusieurs scripts.la source