Nella lista delle funzioni di autoIt non ho trovato nessuna funzione di interfacciamento diretto con la tastiera, tantomento una funzione di scambio dei codici dei tasti...
Nella lista delle funzioni di autoIt non ho trovato nessuna funzione di interfacciamento diretto con la tastiera, tantomento una funzione di scambio dei codici dei tasti...
ho fatto delle prove al volo con script, file au3, indicati alla fine di questa discussione
Keyboard remapping - AutoIt Forums
sembra funzionare naturalmente questo lo devi adattare con i tasti della tua tastiera
perchè esempio è per la Colemak keyboard layout: ergonomic, fast and easy to learn QWERTY/Dvorak alternative
queste sono le funzione per dialogare con la tastiera Send() HotKeySet()
ciao
Grazie Mandrake...
Riguardo a queste due funzioni avevo letto la descrizione sommaria che non le descrive effettivamente per quello che sono... effettuerò delle prove...
Ciao Mandrake.
Come dicevo mi sono impegnato a testare il linguaggio che mi hai suggerito.
Dai test eseguiti, ovviamente a partire da 0 perché io il linguaggio non lo conosco, ho avuto solo impressioni negative:
- Il manuale è decisamente insufficiente in quannto non spiega la sintassi del linguaggio ma solo la sintassi delle singole funzioni e non c'è una versione stampabile; ho provato a scaricare una versione in italiano dal sito del programma ma tale download risulta bloccato;
- la funzione Send (ho testato solo la funzione Send e HotkeySet) sembra avere moltissimi problemi decisamente complessi: se si definiscono 2 funzioni utente contenenti solo 1 linea con Send(...), i valori specificati in Send(...) da trasmettere in una funzione vengono misteriosamente confusi con quelli da trasmettere specificati nell'altra funzione, pur avendo testata la corretta esecuzione delle 2 funzioni utente; dopo avere effettuato un test modificando i valori da trasmettere facendoli corrispondere a 2 differenti stringhe di lunghezza 5 caratteri ed avere testato la corretta esecuzione (??), riportando le stringhe da trasmettere ai valori originali di lunghezza 1 carattere viene testata la corretta esecuzione (????) per tutti i test seguenti; non sono stati rilevati problemi di conflitto di nomi delle funzioni utente o simili; mantenendo a questo punto le 2 funzioni utente con Send (...) ed aggiungendone altre 2 (con il copia-incolla), ovviamente modificando i nomi delle nuove funzioni utente, il programma non funziona più, non è in grado di trasmettere nulla al momento giusto ed addirittura genera una notevolissima confusione sul CapsLock (???).
Ho cercato di leggere bene le istruzioni ma non ho trovato nulla che possa riguardare questi problemi.
Ti allego il programma (devi eliminare l'estensione .txt) se ci vuoi gentilmente da un'occhiata, magari per dirmi che ho traslascito qualche cosa di elementare e necessario; mi sembra comunque che questo linguaggio abbia dei bachi decisamente significativi, almeno quando funziona in windows 7 x64.
Grazie per la tua gentilezza.
Ciao CrazyUser
Nella cartelle Examples/Helpfile ho modificato il file HotKeySet.au3
; Press Esc to terminate script, Pause/Break to "pause"
Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "Terminate")
HotKeySet("z", "ShowMessageQMin") ;z minuscolo
;;;; Body of program would go here ;;;;
While 1
Sleep(100)
WEnd
;;;;;;;;
Func TogglePause()
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('Script is "Paused"',0,0)
WEnd
ToolTip("")
EndFunc
Func Terminate()
Exit 0
EndFunc
Func ShowMessageQMin()
;MsgBox(4096,"","This is a message.")
Send("q")
EndFunc
sembra funzionare
Ma non fai prima a scaricarti i file C2Q.au3 e vkConstants.au3 che trovi quì
http://www.autoitscript.com/forum/to...ard-remapping/
nel file C2Q.au3 devi modificare le lettere che trovi nel codice
a questo punto
Dim $lower_src_keys[$key_count] =
Dim $upper_src_keys[$key_count] =
Dim $lower_dest_keys[$key_count] =
Dim $upper_dest_keys[$key_count] =
ciao
Ultima modifica di MANDRAKE; 23-09-2011 alle 11.26.52
Con un solo send avevo testato il funyionamento ok.
I problemi si verificavano con più di una funzione utente contenente send, ognuna delle quali assegnata ad un tasto tramite HotkeySet (...).
Hai un'idea del perché ho riscontrato tutti i problemi che ti ho detto? Ti assicuro che ho testato il funzionamento con cura, non sono un programmatore superesperto, ma ho una certa esperienza, ho programmato in vari linguaggi tra cui C, Winbatch, batch di Windows...
Sposto la discussione in "Programmazione", mi sembra la sezione più adatta.
IMPORTANTE: LEGGERE PRIMA DI POSTARE - - -L'importanza dei titoli nelle discussioni
La durezza di alcuni è preferibile alla delicatezza di altri
Non l'ho provata perché probabilmente funziona visto che ha solo una UDF contenente Send (...) che avevo già testato che in un caso molto simile funziona... il problema si genera quando ci sono due o più UDF contenenti Send (...) ognuna delle quali assegnate ad un tasto alfabetico tramite HotkeySet (...).
ah scusa... ti riferivi al codice del link? allora quello non l'ho ancora provato, stavo leggendolo e cercando di capire come funziona.
hai un'idea del perché ho incontrato tutti i problemi stranissimi di cui sopra?
Ciao CrazyUser da quello che ho capito tu devi rimmappare la tastiera
quindi dalla tastiera che hai al momento a una qwerty giusto ?
Se è così io ho provato i 2 script dei link.
Questi modificano il comportamento di una tastiera colemak in => Querty
ti allego i due file
ciao
Dai primi test effettuati risulta che il programma che dici tu funziona perfettamente; dovrò testarlo approfonditamente.
Ti allego un programmino di test estremamente semplice che ho provato a fare io: perché non funziona? (devi sempre eliminate .txt).
L'allegato precedente non so perché non corrispondeva al programma di test da me realizzato.
Scusate che tipo di tastiera è la colemark?
Interessante, proprio il layout che cercavo... Dato che ci sono potrei modificare il layout completo... Che tu sappia il layoutergonomico per una tastiera italiana è lo stesso?
Poi... Al fine di cominciare a capire il linguaggio, ne sai qualcosa sul perché il programmino di test che ho fatto non funziona? Sai se esiste un manuale di programmazione per quel linguaggio?
Segnalibri