¿Cómo se asigna una pulsación individual de una tecla modificadora a su propia función o asignación en Windows?

6

Hoy, en las noticias de piratas informáticos, había un artículo inteligente sobre teclas de acceso directo personalizadas .

El autor habla de una técnica para reasignar una tecla modificadora como CTRL a ESC si se presionó CTRL sin un modificador. Esto es útil en vim debido a la frecuencia con la que necesita presionar ESC.

Otra técnica que describe es mapear el paréntesis abierto, (a la tecla Mayús izquierda y )a la tecla Mayús derecha.

Si se presiona otra tecla cuando se mantiene presionada la tecla shift, la tecla shift se comporta normalmente.

El autor describe el software que usa en OSX, pero ¿hay alguna manera de hacerlo en Windows?

He oído hablar de AutoHotKey, pero parece que solo dispara macros cuando se presionan teclas simples, en lugar del interruptor de estado condicional que esto requeriría.

Conrad.Dean
fuente
AFAIK AHK debería permitirle verificar si se presiona una tecla sin ningún modificador, y luego realizar diferentes acciones en función de los resultados de la verificación.
Karan

Respuestas:

6

AutoHotKey puede hacer eso. Definitivamente puede realizar un seguimiento de los estados clave, pero hay otro truco. Para reasignar Ctrlsolo Escy mantener los Ctrlaccesos directos basados ​​en otros , simplemente agregue esto en su script predeterminado:

Ctrl & AppsKey::Return
Ctrl::Send {Esc}

Esto funcionará bien para usted a menos que use Ctrl + AppsKey (la tecla que abre el menú contextual), pero esto es muy poco probable. Si es así, simplemente cambie AppsKey a cualquier tecla que nunca use Ctrl.

El truco consiste en hacer Ctrlun prefijo usándolo delante de &al menos una vez, y luego hacer que la liberación de la tecla produzca la pulsación de tecla que desee.

m4573r
fuente
Gran truco! Me ahorró mucho tiempo, ¡muchas gracias!
Plynx