Como você mapeia uma prensa solo de uma tecla modificadora para sua própria função ou mapeamento no Windows?

6

Hoje em notícias de hacker houve um artigo inteligente sobre costume teclas de atalho .

O autor fala sobre uma técnica para remapear uma tecla modificadora, como CTRL para ESC, se CTRL fosse pressionada sem um modificador. Isso é útil no vim devido à freqüência com que você precisa pressionar ESC.

Outra técnica que ele descreve é mapear os parênteses abertos, ( para a tecla shift esquerda e ) para a tecla shift direita.

Se outra tecla for pressionada quando a mudança for mantida pressionada, a tecla Shift se comportará normalmente.

O autor descreve o software que ele usa no OSX, mas existe uma maneira de fazer isso no Windows?

Já ouvi falar do AutoHotKey, mas parece que ele só dispara macros quando teclas simples são pressionadas, em vez da chave de estado condicional que isso exigiria.

    
por Conrad.Dean 04.10.2012 / 02:03

1 resposta

5

O AutoHotKey pode fazer isso. Você pode definitivamente acompanhar os principais estados, mas há outro truque. Para remapear Ctrl pressionado sozinho para Esc , mas mantenha os outros atalhos baseados em Ctrl , apenas adicione isto no seu script padrão:

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

Isso funcionará bem para você, a menos que você use Ctrl + AppsKey (a tecla que abre o menu contextual), mas isso é altamente improvável. Se sim, apenas altere o AppsKey para qualquer tecla que você nunca use com Ctrl .

O truque é tornar o Ctrl um prefixo, usando-o na frente de & pelo menos uma vez, e então fazer o release da chave produzir o pressionamento de tecla que você quer.

    
por 05.10.2012 / 11:26