Puncte:0

Explicați mecanismul intern al „Opțiunilor de dispunere a tastaturii” din punctul de vedere al remapării codului de scanare, codului de cheie sau keysym

drapel jp

Aș dori să explicați mecanismul intern al „Opțiunilor de aranjare a tastaturii” din punctul de vedere al remapării cod de scanare, cod cheie, sau keysym. Vorbesc despre panoul de control GUI „Keyboard Layout Options”. Sunt deosebit de interesat de Ubuntu MATE 20.04.

Pe Ubuntu MATE 20.04, „Opțiunile de dispunere a tastaturii” se află în „Centrul de control”, așa cum se arată mai jos. În „Opțiuni de aspect al tastaturii”, mă interesează în special „Ctrl este mapat la Win și tastele obișnuite Ctrl” și „Swap Left Win with Left Ctrl”.

Centru de control > Hardware >

  Tastatură > fila Aspect > Opțiuni... >

    Opțiuni de dispunere a tastaturii

        Comportamentul tastei Alt/Win

          (o) Ctrl este mapat la Win și la tastele Ctrl obișnuite

        Poziția Ctrl

          [v] Schimbați Win Stânga cu Stânga Ctrl

Pe Linux, există trei niveluri pentru a identifica cheile -- scancode, keycode și keysym. Codul de scanare este cel mai scăzut nivel și este ceea ce tastatura trimite computerului. Codul cheie este de nivel mediu. Keysym este cel mai înalt nivel.

Codurile de scanare sunt mai strâns legate de pozițiile de pe tastatură decât de literele imprimate pe taste. De exemplu, tasta pe care este imprimat Y pe tastatura SUA are Z imprimat pe tastatura europeană. Cu toate acestea, codul de scanare este întotdeauna același, indiferent dacă cheia are Y tipărit pe ea pe tastatura din SUA sau Z imprimat pe ea pe tastatura europeană.

În mod obișnuit, pe Linux, există două niveluri de mapări pe Linux: maparea de la scancode la keycode și maparea de la keycode la keysym. Astfel, în mod obișnuit pe Linux, remaparea cheilor înseamnă fie modificarea mapării scancode-la-keycode, fie modificarea mapării keycode-to-keysym.

Pe MS Windows, însă, lucrurile sunt diferite de Linux. Dacă îmi amintesc bine, Windows nu are keysym. Cu toate acestea, scancode este și cel mai scăzut nivel pe Windows. Pe Windows, remaparea cheilor nu înseamnă modificarea mapării scancode-la-keycode, ci înseamnă crearea unei mapări suplimentare de la scancode la scancode.

Aș dori să știu dacă „Opțiunile de dispunere a tastaturii” pe Ubuntu MATE 20.04 sunt implementate ca:

  • modificarea mapării cod de scanare la cod de cheie

  • modificarea mapării keycode-to-keysym

  • crearea de cartografiere suplimentară de la scancode la scancode

  • sau orice altceva (explicați)

După cum am menționat mai sus, mă interesează în special „Ctrl este mapat la Win și tastele obișnuite Ctrl” și „Swap Left Win with Left Ctrl”.

Gunnar Hjalmarsson avatar
drapel uz
MATE folosește XKB pentru a controla maparea tastelor. Opțiunile specifice pe care le menționate sunt ambele menționate la `man xkeyboard-config`. Pentru a-l vedea la un nivel mai profund, poate doriți să studiați fișierele furnizate de pachetul `xkb-data`.
vanadium avatar
drapel cn
Probabil de la evdev scancode la keysym

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.