ТОТАЛНИ ДЕФЕКТИ

Философия на безкрайността, чудесата и политическата мода

ПОРЪЧАЙ ТУК

🎄 Коледно промо: 5 лв.

или търси в книжарниците!

Hyper key, away!

Обновена на: 24 март 2022 г.

Не знам за вас, аз не се кефя на своя CapsLock. Уви, толкова му се дразня, че си го мапвам към нещо друго entirely, в частност уиндоуската ми машина ползва Caps като Ctrl+Shift модифайър.

Това обаче хич не е яко в Линукс среда, тъй че ми трябваше да мапна към нещо съвсем различно, после да си играя с шорткъти (цял нов modifier).

Преди време съм разказвал за прекрасната Space-cadet Keyboard, която просто е огромна. Та тя има няколко модифайъра – Ctrl, Shift, Alt, Super, Meta & Hyper. Линукс, случайно, е наясно с хипер- и мета-клавишите, което значи, че можем да имаме нови, нови модифайъри.

Гадно ишу, с което се сблъсках, беше, че въпреки че можеш да мапнеш през xkb caps към hyper с простия параметър caps:hyper (също както caps:none), Убунту (най-малко) не е наясно, че Hyper & Super са два различни Мод-клавиши. ТОЕСТ, докато вече имаш хипер-ключ, той играе точно както супер-ключа (вмъквам, супер-ключа ти е Windows-а).

Наистина няма документация, където да пише защо това се случва, но аз (както с Alt-Shift проблема, за който говорих преди няколко месеца) намерих решение, което е елегантно и кара носа ми да тече.

Във файлът:

/usr/share/X11/xkb/symbols/pc

първо редактираш Caps (потърси за CAPS) да бъде мапнат към Hyper_L (или Hyper_R), после, като търсиш за Hyper, отиваш на ключа key <HYPR> и проооосто сменяш

modifier_map Mod4

на

modifier_map Mod5

Сегаааа, това значи, че докато Super ще работи на ниво Mod4, Hyper ще е на Mod5 и няма да си пречат взаимно като един и същ модифайър. За да завършиш промяната, просто изтрий xkb-кеша със:

sudo rm -rf /var/lib/xkb/*

и рестартирай Х със:

sudo service lightdm restart