X nomouse

Marco Bisetto mbiso@tiscalinet.it
Gio 26 Giu 2003 20:32:33 CEST


>> C'e` qualcuno che ha esperienza nell'uso di XFree86 solo con la
>> tastiera?
>
>...
>mouse, avevo fvwm come window manager e con la tastiera si riusciva a
>fare tutto (tipo cambio schermo virtuale con CTRL+frecce, lancia xterm
>con F5 e cosė via), anche con afterstep si riesce a fare, e con
>blackbox, praticamente basta configurare il window manager.
>

Anch'io sono stato un felice utilizzatore di fvwm nella sua prima
versione, per poi passare al piu` sobrio flwm, ora sto provando un
nuovo windowmanager, decisamente meno sovraccarico di inutili
ghirigori, si chiama evilwm, lo si trova su sourceforge e consiglio a
tutti una prova. Il codice e` abbastanza corto da riuscire anche a
capire come funziona, praticamente la configurazione viene fatta
modificando i sorgenti. L'ho compilato ieri sera. Manipolando un poco
il diabolico codice e usando xkbcomp, sono riuscito anche a fargli
sfruttare uno di quei tasti <LWIN> <RWIN> <MENU> che ormai ci sono su
tutte le tastiere, sono fatti apposta per la gestione delle finestre,
ma non li consumiamo mai.

Per quel che riguarda il windowmanager quindi sono soddisfatto, ma mi
piacerebbe poter spostare il puntatore usando i tasti della keypad
numerica, in modo da emulare il mouse. Questa funzione, da quanto ho
capito, non e` compito del window manager, ma di X.

Lanciando 'xkbcomp -a :0 -' si puo` vedere come e` configurata la
mappatura dei caratteri di X. Argomento decisamente complesso vista la
quantita` di strati software che gestiscono la tastiera sotto X. 

Esistono sezioni in cui ci sono definizioni di questo tipo:

    interpret KP_2+AnyOfOrNone(all) {
        repeat= True;
        action= MovePtr(x=+0,y=+1);
    };


    key  <KP2> {
//      type= "KEYPAD",
        symbols[Group1]= [               2,            KP_2 ],
        actions[Group1]= [ NoAction(), MovePtr(x=+0,y=+1) ]
    };

Da qui intuisco che nelle regole standard di XFree86 e` previsto
l'utilizzo della tastierina numerica per spostare il
puntatore. Soltanto che non riesco ancora a capire quali modificatori
attivino questa funzione. Di solito viene interpretato il simbolo
associato al tasto, ma come fargli compiere l'azione? Sono convinto
che MovePtr() voglia dire proprio quello che penso...

E` come sapere di avere un motore Ferrari sotto il cofano e non
riuscire a capire dov'e` la leva del cambio!

m


Maggiori informazioni sulla lista blug