Używam 'windzianej' klawiatury. I Xemacsa.
No i bardzo chciałbym, by zarówno lewy Alt jak lewy 'Windows' działały
jak Alt w programach Gnome/KDE i jako Meta w XEmacsie. Standardowo
jeden jest Altem a drugi Metą (co powoduje, że naciśnięcie Alt-X w
Xemacsie generuje błąđ 'nieznany klawisz A-x' a z kolei Meta-coś w
'normalnym' programie jest ignorowane).
Doczytałem istotną ciekawostkę która czyni powyższe możliwym: otóż
jeśli w keymapie nie ma *żadnego* klawisza Meta, xemacs traktuje Alty
jako Metę.
Do pełni szczęścia brakuje mi więc tylko drobiazgu: przerobienia
klawiatury tak, by lewy Alt i lewa Meta generowały Alt_L a prawy
Windows generował Alt_R (prawy Alt generuje Multi).
Niestety, w xkb/symbols/alt xkb/symbols/altwin czy xkb/symbols/compose
odpowiedniego ustawienia nie znalazłem (są tam opcje typu alt:swapmeta
pozwalające zamienić miejscami ale to nie o to mi chodzi). Stosunkowo
najbliższy tego o co mi chodzi byłby alt:altismeta przy którym to
ustawieniu wszystko działa jak chcę ale ... xemacs generuje przy
starcie ostrzeżenia o klawiszu generującym dwa modyfikatory.
W przypływie straceńczej odwagi, małpując elementy dystrybucji
(nijakiej dokumentacji tego nie udało mi się nigdzie znaleźć)
spłodziłem plik /etc/X11/xkb/symbols/moj_alt o treści
partial modifier_keys
xkb_symbols mykeys {
key LALT { [ Alt_L, Alt_L ] };
key LWIN { [ Alt_L, Alt_L ] };
key RWIN { [ Alt_R, Alt_R ] };
key MENU { [ Alt_R, Alt_R ] };
key RALT { [ Multi_key, Multi_key ] };
};
i spróbowałem napisać w XFree86Config-4 tak:
Section InputDevice
Identifier Generic Keyboard
Driver keyboard
Option CoreKeyboard
Option XkbRules xfree86
Option XkbModel pc105
Option XkbLayout pl
Option XkbOptionsmoj_alt:mykeys
EndSection
Niestety, nie przyniosło to żadnego efektu (wygląda jakby mój wpis
został zignorowany). Wzbudziło to we mnie podejrzenia, że xfree nie
znajduje mojego pliku, w przypływie desperacji dopisałem na końcu
/etc/X11/xkb/symbols.dir
--p- -m-- moj_alt(mykeys)
(tu już dokumentnie nie wiem o co chodzi, zmałpowałem z innych alt(...))
ale też nie pomogło.
Ktoś ma jakiś pomysł (czy to na rozwiązanie całego problemu, czy też
na ukierunkowanie walk z xfree)?
( Marcin Kasperski | A reusable framework that is developed by itself will )
( http://www.mk.w.pl |probably not be very reusable. (Martin))
()
( Z kartą bezpieczniej? http://www.mk.w.pl/artykuly/karty_niebezpieczenstwa )