Klávesa "\&|*", pravý CTRL

apurkrt

Klávesa "\&|*", pravý CTRL
« kdy: 28. 06. 2020, 17:18:38 »
Zdravím. Koupil jsem notebook. Celkově docela spokojenost, ovšem jedna věc mi přece jenom nevyhovuje: notebook nemá pravý ctrl, který se hodí např. k jednoručnímu přepínání mezi taby (rightctrl+pageup/pagedn) a má i další použití. Místo něj je mezi "altgr" a levou kurzorovou šipkou klávesa označená jako "\&|*". Tu nepoužívám (přepínám se případně do us rozložení), proto jsem jí po chvíli hledání přemapoval na pravý CTRL následující změnou v /usr/share/X11/xkb/keycodes/evdev
Kód: [Vybrat]
#        <LSGT> = 94;
#       <RCTL> = 105;
        <RCTL> = 94;

(X/xkb ji znají jako LSGT - zřejmě od "less-greater", protože v X i v consoli se po jejím stisknutí objeví "<", resp. se shiftem ">")

Což funguje dobře, pokud se zrovna nepřipojí externí klávesnice, na které pak pravý control kvůli výše uvedené změně nefunguje. Rozchodit pravý ctrl na obou klávesnicích najednou se mi nepodařilo.

Neřešil jste někdo stejnou věc? Na webu se dají sehnat US verze klávesnice pro daný notebook, ovšem jednak kvůli ceně, jednak kvůli nutnosti notebook rozebrat se mi varianta "fyzická výměna" příliš nelíbí. Zřejmě ale mají obě klávesnice jiný mikrokontrolér, který zřejmě nejde přeprogramovat.

Nevíte též někdo odkud se vlastně klávesa "\&|*" vzala? Je v nějaké normě? Když zrovna nezabírá místo pravého ctrl, tak jsem ji ještě viděl vedle levého shiftu, který pak bývá (z mého pohledu zbytečně) kratší.
« Poslední změna: 28. 06. 2020, 17:21:33 od Adam Purkrt »


k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Klávesa "\&|*", pravý CTRL
« Odpověď #1 kdy: 28. 06. 2020, 17:56:31 »
nevim jestli vzdy ""\&|*" ale ta napravo od leveho zkraceneho shiftu je ISO: https://deskthority.net/wiki/ANSI_vs_ISO
(na Thinkpadech <=T/X/W?20 ji tam mam)

apurkrt

Re:Klávesa "\&|*", pravý CTRL
« Odpověď #2 kdy: 28. 06. 2020, 18:06:10 »
Díky za odkaz.

_Jenda

  • *****
  • 1 550
    • Zobrazit profil
    • https://jenda.hrach.eu/
    • E-mail
Re:Klávesa "\&|*", pravý CTRL
« Odpověď #3 kdy: 28. 06. 2020, 21:45:34 »
Já to neupravuji v souborech, ale za běhu pomocí xmodmap. A mám skript, který spouštím klávesovou zkratkou při připojení k externím věcem, a ten klávesnici nastaví tak či onak. Šlo by to i automaticky, nějak se dá udělat, aby se spustil skript při připojení USB zařízení.

Jediný problém by byl, pokud bys chtěl používat interní i externí současně.

apurkrt

Re:Klávesa "\&|*", pravý CTRL
« Odpověď #4 kdy: 29. 06. 2020, 07:07:35 »
Díky. xmodmap už jsem nějakou dobu nepoužíval, zřejmě by měl tu výhodu, že by šel použít i za běhu X, bez nutnosti jejich restartu.

Nicméně nejradši bych nějaké řešení úplně na systému/X nezávislé, nejlépe na úrovni přehrání firmware klávesnice - což ovšem předpokládám nejde.

Původ všeho je v ISO normě, jak zmínil k3dAR výše. Snahou zřejmě bylo mít přístupné speciální znaky i na národní (neamerické) klávesnici bez přepínání rozložení. Výsledkem je klávesa navíc (v ISO oproti ANSI), která z mého pohledu je spíše pátým kolem u vozu...


Re:Klávesa "\&|*", pravý CTRL
« Odpověď #5 kdy: 29. 06. 2020, 09:06:12 »
Klávesa samotná je OK.
Ale pokud ji máš místo pravého CTRL není to podle mě v pořádku, tam nemá co dělat.

apurkrt

Re:Klávesa "\&|*", pravý CTRL
« Odpověď #6 kdy: 29. 06. 2020, 09:57:10 »
Hledal jsem ještě a našel jsem na jednom fóru, že někomu po výměně motherboardu v notebooku naopak klávesa označená "<>|" fungovat přestala a začala se chovat jako pravý control - pro dotyčného nechtěný, pro mě kýžený stav.

Tedy možná (?) se scankódy generují až v motherboardu (kabel od klávesnice přenáší jen nějakou nízkoúrovňovou informaci o zmáčknuté klávese) a změnou BIOSu by mohlo jít dosáhnout změny. Jen nevím, kde sehnat US verzi BIOSu pro svůj notebook (pokud vůbec jsou rozdíly mezi US/EU biosem). Včera jsem se kvůli tomu obracel na US support, kde mě slečna/paní okamžitě odpálkovala "we are not authorized to provide support for your region, I request you to contact your local support" (což je ovšem pochopitelné).

TakyPatrik

Re:Klávesa "\&|*", pravý CTRL
« Odpověď #7 kdy: 29. 06. 2020, 14:33:45 »
V Thinkpadech se dá nastavit prohození Fn a L-Ctrl a podobný věci přímo v BIOSu. Možná to bude u tebe podobně? To by mohlo i vysvětlovat proč to někomu po výměne MB začalo (ne)fungovat.

US BIOS nemusí v non-US HW fungovat, neb se může jednat o mírně odlišnou HW konfiguraci. Třeba rádia bývají v US jiný.

HW klávesnice se může lišit buď podle výrobce klávesnice samotné, nebo i podle rozložení (malý vs velký enter v závislosti na lokalizaci).

btw,
Na Windowsu s českou klávesnicí píšu tyhle znaky přes AltGr. R-Ctrl jsem snad nikdy k ničemu nepoužil.
Btw2, na ThinkPadu T480 mám mezi AltGr a R-Ctrl strčenou klávesu PrtSc. Další zbytečná klávesa na blbým místě. Naštěstí ani nic nedělá...

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Klávesa "\&|*", pravý CTRL
« Odpověď #8 kdy: 29. 06. 2020, 22:04:52 »
[...] na úrovni přehrání firmware klávesnice - což ovšem předpokládám nejde.
treba u Thinkpadu to "lze", pro (nebo v?) klavesnici je EC jehoz FW je nezavislej na "FW" BIOSu/UEFI, prehraval sem takto upravenej (ne mnou) EC FW pro pouziti T420s klavesnice v T430s. Bez toho by napr. lampicka se zapinala pres Fn+Space (jako s T430s klavesnici) po prehrani EC FW ji zapinam Fn+PgUp (jako v T420s), podobne ruzne dalsi Fn+Neco by bez prehrani se brali po vzoru T430s klavesnice ktera ma diky absenci 7rady a PrnScr misto menu atd, jinak... podrobnosti viz: https://github.com/hamishcoleman/thinkpad-ec