Domanda

Voglio che la mia chiave AltGr si comporti esattamente come la sinistra Alt .
Di solito, faccio questo tipo di cose con Autohotkey , ma sono aperto a diverse soluzioni.

Ho provato questo:

LControl & RAlt::Alt

E Autohotkey ha visualizzato l'errore su Alt che non viene riconosciuto come azione.
Quindi ho provato il seguente codice:

LControl & RAlt::
  Send {Alt down}
  KeyWait LCtrl
  KeyWait Ralt
  Send {Alt up}
return

che tipo di lavori: sono in grado di utilizzare la chiave AltGr per accedere ai tasti di scelta rapida, ma si comporta comunque diversamente:
Quando premo e rilascio Alt a sinistra, viene attivata la prima voce di menu nel programma corrente.
Premere e rilasciare AltGr con questo script non fa nulla.

Qualche idea? È possibile anche con Autohotkey? (rimappare a destra Ctrl e Maiusc sui loro fratelli di sinistra era un gioco da ragazzi)


Nota: ho provato a cambiare Alt in LAlt nel codice e non ha fatto alcuna differenza.

È stato utile?

Soluzione

Grazie a tutti per le risposte. Non sono stato in grado di risolverlo usando AutoHotkey - la risposta di PhilLho era vicina, ma avevo davvero bisogno dello stesso comportamento della chiave Alt .

Tuttavia, la cosa del registro in realtà ha funzionato come avevo bisogno.

Salva questo come file AltGR_to_LeftAlt.reg ed eseguilo:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,38,00,38,e0,00,00,00,00

In alternativa, esiste uno strumento GUI che lo fa per te: si chiama SharpKeys e funziona a meraviglia :
SharpKeys in action

Oh, e non dimenticare di riavviare o disconnettersi - non funzionerà fino ad allora!

Altri suggerimenti

Come sottolineato da PhiLho, Windows fornisce un modo per rimappare qualsiasi chiave, tramite la chiave di registro HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout . Una panoramica di base è disponibile all'indirizzo Scan Code Mapper per Windows . Una descrizione migliore è probabilmente Risposte a Scancode Mapping o Modifica dei valori chiave .

Sto usando questo approccio per mettere il Tasto Windows sul Blocco maiuscole , perché la mia tastiera non ha un Tasto Windows e non ho bisogno del Caps Lock .

Ho ottenuto un comportamento decente combinando due tasti di scelta rapida:

LControl & RAlt::Send {Alt}
RAlt::Alt

Il primo è per il tasto standalone (evita di tenerlo premuto ...), il secondo da usare come combinazione ( Alt + F , ecc. .).
Non è perfetto, non puoi fare una combinazione come Ctrl + Alt + T , ma forse è abbastanza per le tue esigenze.

Nota che puoi fare una rimappatura permanente usando il registro. Vedi questo post del forum per un esempio. Non sono sicuro che si applichi a chiavi composte come questa, ma ho pensato di doverlo menzionare ...

Questo ha funzionato per me:

LControl & *RAlt::Send {LAlt Down}
LControl & *RAlt Up::Send {LAlt Up}

E questo per mapparlo sul tasto Windows:

LControl & *RAlt::Send {LWin Down}
LControl & *RAlt Up::Send {LWin Up}

La modifica del registro mediante SharpKeys (vedi sopra) è però più affidabile (se si dispone dell'accesso come amministratore).

In AHK, puoi farlo:

LControl & RAlt::!

o

<^>!::!

Se si desidera mappare questa chiave a livello globale e senza la necessità di riavviare il sistema per ogni modifica (ma una volta), potrebbe essere necessario scrivere un driver del filtro della tastiera per questo scopo. Guarda qui .

Versione dell'editor del registro di Windows 5.00

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout] " Scancode Map " = hex: 00,00,00,00,00,00,00,00,02,00,00,00,38,00,38, e0,00,00,00,00

  1. Salva il codice sopra nel file reg
  2. Uniscilo nel registro
  3. riavvia il PC
  4. ora controlla
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top