Raven NightSpell
Raven NightSpell

Reputation: 9

AutoHotKey, Repeat key press

All I want is a simple keypress of lowercase "v" 4 times with a 1 second delay between. I have tried so many iterations of this simple-sounding action to no avail and the most infuriating thing is that I can get it to work with a capital "V" – but that also emulates a shift+v key press. I just don't understand.

v::   
Loop, 4  
    {                   
        sleep 10  
        SendInput {V} ; capital V works perfectly fine but includes Shift+v, I don't want a shift  
        sleep 1000        
    }  
return

Whereas ...

v::  
Loop, 4  
    {                   
        sleep 10  
        SendInput {v} ; Lowercase v, Does absolutely nothing...   
        sleep 1000      
    }  
return

What am I missing?

Upvotes: 0

Views: 6993

Answers (2)

Siavash Mortazavi
Siavash Mortazavi

Reputation: 1862

Another solution:

#IfWinActive ahk_class your_app_ahk_class
$v::
    SetKeyDelay, 1000
    Send {v 4}    
Return

I don't know what's the purpose of this, but since the shortcut does not include any control keys, it might be better to limit this to a specific app. The first line in my snippet tries to achieve this.

Upvotes: 1

Relax
Relax

Reputation: 10628

Try

$v::  
Loop, 4  
    {                   
        sleep 10  
        SendInput v 
        sleep 1000      
    }  
return

The $ prefix works by forcing the keyboard hook to be used and prevents the Send command from triggering the hotkey itself.

Alternative #UseHook can be specified somewhere above, so the keyboard hook is implemented for every hotkey after it

Upvotes: 1

Related Questions