diff options
author | dakkar <dakkar@luxion> | 2008-03-02 15:59:48 +0000 |
---|---|---|
committer | dakkar <dakkar@luxion> | 2008-03-02 15:59:48 +0000 |
commit | bbcf829b030be8f171c415b4357390d1f2345e28 (patch) | |
tree | 248d649e0894a82880cc18c58275c17891bafb2c /SW/kblayout/index/document.it.rest.txt | |
parent | git-svn-id: svn://luxion/repos/thenautilus@332 fcb26f47-9200-0410-b104-b98ab5... (diff) | |
download | thenautilus-bbcf829b030be8f171c415b4357390d1f2345e28.tar.gz thenautilus-bbcf829b030be8f171c415b4357390d1f2345e28.tar.bz2 thenautilus-bbcf829b030be8f171c415b4357390d1f2345e28.zip |
spostamenti vari
git-svn-id: svn://luxion/repos/thenautilus@333 fcb26f47-9200-0410-b104-b98ab5b095f3
Diffstat (limited to 'SW/kblayout/index/document.it.rest.txt')
-rw-r--r-- | SW/kblayout/index/document.it.rest.txt | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/SW/kblayout/index/document.it.rest.txt b/SW/kblayout/index/document.it.rest.txt new file mode 100644 index 0000000..f710e29 --- /dev/null +++ b/SW/kblayout/index/document.it.rest.txt @@ -0,0 +1,59 @@ +Migliorare il layout di tastiera +================================ + +Conoscerete anche voi la storia della tastiera QWERTY, che è stata inventata +per evitare che i dattilografi troppo veloci facessero inceppare i martelletti +delle macchine per scrivere meccaniche. Saprete anche che il layout Dvorak è da +molti considerato più efficace e veloce. + +Quando provai a imparare a usare la tastiera Dvorak, un mio amico mi disse +pressappoco Perché non scrivi un programma che misuri l'uso che fai tu della +tastiera, e ricavi un layout personalizzato?. In un momento di follia, ho +deciso di farlo davvero. + +Il primo programma è freq.pl, che legge i file dati a riga di comando e calcola +una matrice di probabilità (nel file il cui nome è nella variabile $MATRFN, al +momento /tmp/freq.matr). In effetti tratta il testo come un processo di Markov +sui caratteri a memoria 1, e ricava la matrice di transizione. Nota: gli +elementi sono frequenze, non probabilità. L'eventuale normalizzazione è +lasciata come esercizio al lettore. + +Il secondo programma è freqdump.pl, che probabilmente non serve a niente. L'ho +scritto (tre o quattro versioni diverse) per avere un'idea di come fossero le +frequenze. Dateci un'occhiata se volete. + +Il programma più utile (spero) è optkeyb.pl, che parte dalla matrice (al +solito, nome di file hardcoded) e dal layout QWERTY cercando per discesa di +gradiente stocastica un layout migliore. In parole povere, calcola un valore +per il layout (somma sulle coppie di tasti della distanza per la frequenza), +poi prova a scambiare due tasti a caso e vedere se il risultato è migliore. Per +aggirare i minimi locali (e ce ne sono tanti) all'inzio scambia a caso +$PRE_SHUFFLE volte, e se per $STARVATION tentativi non ha trovato un +miglioramento ricomincia, dopo aver appeso il layout localmente ottimo al file +/tmp/layouts. Usa le curses e il corrispondente modulo Perl Curses.pm. + +Per evitare cose brutte (i.e. i numeri a spasso) nell'hash %locked è possibile +impostare i tasti che non si vogliono spostare. + +Per dare un'idea dei risultati, dopo qualche ora di calcoli il miglior layout +era: + +:: + + + ` 1 2 3 4 5 6 7 8 9 0 ; = + - x w h t s a l b y ' j q + z \ [ c i e r u p . , + k v f d n o m g ] / + +.. + + + +Tenete conto che io uso una tastiera IBM U.S., e dove è finita la q c'era il +tasto pipe/backslash (che è più largo degli altri, e quindi avrei dovuto +bloccarlo...) + +Per dare un'idea del miglioramento, il valore calcolato per la QWERTY è +10.190.280, per quella riportata sopra è 6.797.370, che si traduce in una +riduzione del 34% del chilometraggio delle dita durante la battitura. |