On 23-09-2003, at 19h 37'49", Golem3u wrote to rlug about "[rlug] no more xmodmap, now
it's xkb"
> Negasind alta solutie la problema cu xmodmap si ctrl+alt+Fx decat chvt, si
> descoperind pe deasupra ca nu mai pot folosi nici ctrl+alt++ si ctrl+alt+-
> pentru schimbatul rezolutiei in X, m-am scarbit, mi-am luat inima in dinti
> si m-am documentat cu privire la xkb.
> In mod clar un sistem mult mai performant (elastic) de mapare a tastaturii
> decat xmodmap, din pacate dificultatea configurarii as zice ca a crescut
> in proportie geometrica cu cresterea de utilitate fata de xmodmap.
>
> In fine, dupa ceva sapaturi m-am prins cam ce linie de comanda ar trebui
> folosita pentru a mapa tastatura cu setxkbmap (eu am folosit: setxkbmap
> -rules xfree86 -model pc104 -layout ro -option
> "lv3:lv3_winswitch,altwin:meta_alt" ) si cum trebuie configurat XF86Config
> (eu am folosit:
> Option "XkbRules" "xfree86"
> Option "XkbModel" "pc104"
> Option "XkbLayout" "ro"
> # Option "XkbVariant" ""
> Option "XkbOptions" "lv3:win_switch,altwin:meta_alt" )
>
> Optiunea "lv3:win_switch" ii spune lui xkb sa mapeze diacriticele pe
> tastele de windoze (ambele)+literele corespunzatoare (a,s,t,i,q).
> Teoretic, optiunea "altwin:meta_alt" nici nu e necesara pentru a mapa
> diacriticele pe tastele de windoze, insa daca nu cer lui xkb sa puna o
> alta functie pe alt-uri, mapeaza diacriticele pe AltGr (care e varianta de
> mapare default), desi eu ii spun sa le puna pe tastele de windoze.
>
> Trecand peste aceasta problema, descopar ca desi reusesc sa pun
> diacriticele pe tastele de windoze in loc de AltGr, treaba nu functioneaza
> decat cu tasta de windoze din stanga, in timp ce cea din dreapta se
> comporta ca si cum n-ar fi apasata. Ma benoclez indelung si fara rezultat
> prin cele 8 (opt) fisiere de config ale lui xkb pana renunt la a mai
> incerca sa mapez pe ambele taste direct din optiuni.
>
> Si imi vine ideea sa conving xkb ca, de fapt, tastele RWIN (tasta windoze
> din dreapta) si LWIN (cea din stanga) sunt una si aceeasi chestie, cu
> scopul de a-l face sa reactioneze la fel indiferent pe care o apas (aflu
> de pe net ca teoretic se poate, desi nu e recomandat).
> Fara sa reusesc sa gasesc pe vreundeva cum se face chestia asta, si
> recurgand la the good old way of trial and error, am incercat sa fac
> treaba manual, uitandu-ma cum asociaza semnalele de la tastatura codurilor
> tastelor (chestia asta se face atat in xkb/geometry/pc cat si in
> xkb/keycodes/xfree86, desi nu mi-e clar exact prin ce difera utilitatea
> celor doua fisiere; in geometry/pc se retine si asezarea fizica a tastelor
> , un feature care nu-mi dau seama la ce foloseste). Cea mai mare reusita
> prin aceasta metoda a fost sa inversez LWIN cu RWIN, situatie in care nu
> puteam folosi diacriticele decat cu tasta windoze din dreapta - hurrray:(.
> Exista si posibilitatea de a face alias-uri la codurile tastelor (ceva de
> genul: alias <BKSP> = <BACKSPACE> ). Inutil sa mentionez ca nici varianta
> "alias <RWIN> = <LWIN>" nu a avut vreun succes.
xkb sucs, xmodmap is the best!
>
> Intrebarile mele:
> ^^^^^^^^^^^^^^^^^
>
> 1. stie (sau descopera) cineva daca exista o configuratie naturala (din
> XF86Config sau setxkbmap) a xkb cu ajutorul careia se pot mapa
> diacriticele pe AMBELE taste de windoze?
>
> 2. stie (sau se prinde) cineva ce trebuie facut pentru ca xkb sa vada LWIN
> si RWIN ca aceeasi tasta (sau sa se comporte ca si cum)?
>
Alege din astea:
key <LWIN> { [ Mode_switch ] };
key <RWIN> { [ Mode_switch ] };
modifier_map Mod3 { Mode_switch };
modifier_map Mod1 { Meta_L, Meta_R };
modifier_map Mod4 { Alt_L, Alt_R };
Astea le ai deja in fisierul ro, daca e cel facut de Mi�u Moldovan.
(La mine este: /etc/X11/xkb/symbols/ro.)
Daca nu-ti merge cu fisierul asta ori nu ai pc104, ori ai ceva care iti
redefineste Meta_R in altceva. Vezi ca la pc104 ai intre Alt_R si Ctrl_R
doua taste: Meta_R si Menu.
Mugurel
-- Attached file included as plaintext by Ecartis --
// symbols definition for a very simple Romanian Keyboard layout.
//
// We basically override some modifier_keys so that using the Right Alt
// and the corresponing letter we are able to generate the romanian characters
//
// Created by Cristian Gafton, <[EMAIL PROTECTED]> (C) 2000
// Modified by Mi�u Moldovan, <[EMAIL PROTECTED]> (C) 2001
//
// $XFree86: xc/programs/xkbcomp/symbols/ro,v 3.1.6.1 2001/05/23 18:32:19 dawes Exp $
partial hidden alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "Romanian";
key <AD01> { [], [ acircumflex, Acircumflex ] };
key <AC01> { [], [ abreve, Abreve ] };
key <AC02> { [], [ scedilla, Scedilla ] };
key <AD05> { [], [ tcedilla, Tcedilla ] };
key <AD08> { [], [ icircumflex, Icircumflex ] };
};
default
xkb_symbols "pc101" {
key <RALT> { [ Mode_switch, Multi_key ] };
include "ro(basic)"
modifier_map Mod3 { Mode_switch };
};
xkb_symbols "pc104" {
key <RALT> { [ Mode_switch ] };
key <RWIN> { [ Multi_key ] };
include "ro(basic)"
modifier_map Mod3 { Mode_switch };
};
xkb_symbols "alt_is_meta" {
key <LALT> { [ Meta_L ] };
key <LWIN> { [ Alt_L ] };
include "ro(pc104)"
// modifier mappings
modifier_map Mod1 { Meta_L, Meta_R };
modifier_map Mod4 { Alt_L, Alt_R };
};
---
Detalii despre listele noastre de mail: http://www.lug.ro/