What keys can be sent using Macro Snippets?

The following table lists the keys that can be inserted in Snippets of type Macro (each key name must be enclosed in braces). See: How do I create a macro Snippet to send special keys to applications or insert pauses when pasting?

These keys are defined by the scripting language AutoHotkey (AHK). See more info about AHK at the end of the page.

These special keys are always enclosed between curly brackets, for example {Backspace}. For this reason, as explained in AutoHotkey documentation, if whenever you need to enter opening or closing curly brackets in your snippet, you will have to enclose them that way: {{} and {}}.

Key Modifiers

The modifiers !+^# affect only the very next key. To send the corresponding modifier key on its own, enclose the key name in braces. To just press (hold down) or release the key, follow the key name with the word “down” or “up” as shown below.

Symbol Key Press Release Examples
! {Alt} {Alt down} {Alt up} !a presses Alt+A
+ {Shift} {Shift down} {Shift up} +abC sends the text “AbC”
!+a presses Alt+Shift+A
^ {Ctrl} {Ctrl down} {Ctrl up} ^{Home} presses Control+Home
# {LWin}
{RWin}
{LWin down}
{RWin down}
{LWin up}
{RWin up}
#e holds down the Windows key and then presses the E key
Symbol Meaning
{ } Braces are used to enclose key names and other options, and to send special characters literally. For example, {Tab} is the Tab key and {!} is a literal exclamation mark.

Note: As capital letters are produced by sending the Shift key, A produces a different effect in some programs than a. For example, !A presses Alt+Shift+A and !a presses Alt+A. If in doubt, use lowercase.

Special Keys

 Key  
{F1} – {F24} Function keys. For example: {F12} is the F12 key.
{!} !
{#} #
{+} +
{^} ^
{{} {
{}} }
{Enter} Enter key on the main keyboard
{Escape} or {Esc} Escape
{Space} Space (this is only needed for spaces that appear either at the beginning or the end of the string to be sent — ones in the middle can be literal spaces)
{Tab} Tab
{Backspace} or {BS} Backspace
{Delete} or {Del} Delete
{Insert} or {Ins} Insert
{Up} (up arrow) key on main keyboard
{Down} (down arrow) key on main keyboard
{Left} (left arrow) key on main keyboard
{Right} (right arrow) key on main keyboard
{Home} Home key on main keyboard
{End} End key on main keyboard
{PgUp} PageUp key on main keyboard
{PgDn} PageDown key on main keyboard
   
{CapsLock} CapsLock
{ScrollLock} ScrollLock
{NumLock} NumLock
   
{Control} or {Ctrl} Control
{LControl} or {LCtrl} Left Control key
{RControl} or {RCtrl} Right Control key
{Control down} or {Ctrl down} Holds the Control key down until {Ctrl up} is sent. To hold down the left or right key instead, use {RCtrl down} and {RCtrl up}.
   
{Alt} Alt
{LAlt} Left Alt key
{RAlt} Right Alt key (or AltGr, depending on keyboard layout)
{Alt down} Holds the Alt key down until {Alt up} is sent. To hold down the left or right key instead, use {RAlt down} and {RAlt up}.
   
{Shift} Shift
{LShift} Left Shift key
{RShift} Right Shift key
{Shift down} Holds the Shift key down until {Shift up} is sent. To hold down the left or right key instead, use {RShift down} and {RShift up}.
   
{LWin} Left Win key
{RWin} Right Win key
{LWin down} Holds the left Win key down until {LWin up} is sent
{RWin down} Holds the right Win key down until {RWin up} is sent
   
{AppsKey} Menu key (invokes the right-click or context menu)
{Sleep} Sleep key.
{ASC nnnnn} Sends an Alt+nnnnn keypad combination, which can be used to generate special characters that don’t exist on the keyboard. To generate ASCII characters, specify a number between 1 and 255. To generate ANSI characters (standard in most languages), specify a number between 128 and 255, but precede it with a leading zero, e.g. {Asc 0133}.

Unicode characters may be generated by specifying a number between 256 and 65535 (without a leading zero). However, this is not supported by all applications. For alternatives, see the virtual key and scan code below.

{vkXX}
{scYYY}
{vkXXscYYY}
Sends a keystroke that has virtual key XX and scan code YYY. For example: Send {vkFFsc159}. If the sc or vk portion is omitted, the most appropriate value is sent in its place.

 

   
{Numpad0} – {Numpad9} Numpad digit keys (as seen when NumLock is ON). For example: {Numpad5} is 5.
{NumpadDot} . (numpad period) (as seen when NumLock is ON).
{NumpadEnter} Enter key on keypad
{NumpadMult} * (numpad multiplication)
{NumpadDiv} / (numpad division)
{NumpadAdd} + (numpad addition)
{NumpadSub} - (numpad subtraction)
   
{NumpadDel} Delete key on keypad (this key and the following Numpad keys are used when NumLock is OFF)
{NumpadIns} Insert key on keypad
{NumpadClear} Clear key on keypad (usually the ‘5’ key when NumLock is OFF).
{NumpadUp} (up arrow) key on keypad
{NumpadDown} (down arrow) key on keypad
{NumpadLeft} (left arrow) on keypad
{NumpadRight} (right arrow) key on keypad
{NumpadHome} Home key on keypad
{NumpadEnd} End key on keypad
{NumpadPgUp} PageUp key on keypad
{NumpadPgDn} PageDown key on keypad
   
{Browser_Back} Select the browser “back” button
{Browser_Forward} Select the browser “forward” button
{Browser_Refresh} Select the browser “refresh” button
{Browser_Stop} Select the browser “stop” button
{Browser_Search} Select the browser “search” button
{Browser_Favorites} Select the browser “favorites” button
{Browser_Home} Launch the browser and go to the home page
{Volume_Mute} Mute/unmute the master volume.
{Volume_Down} Reduce the master volume.
{Volume_Up} Increase the master volume.
{Media_Next} Select next track in media player
{Media_Prev} Select previous track in media player
{Media_Stop} Stop media player
{Media_Play_Pause} Play/pause media player
{Launch_Mail} Launch the email application
{Launch_Media} Launch media player
{Launch_App1} Launch user app1
{Launch_App2} Launch user app2
   
{PrintScreen} Print Screen
{CtrlBreak} Ctrl+break
{Pause} Pause

About AutoHotkey

These keys are defined by the scripting language AutoHotkey (AHK) used to develop Quick Access Popup. In QAP Macro Snippets, these keys are sent using the AHK command Send in Input mode. If the command SetKeyDelay is used in a macro snippet, the mode is changed to Event to allow the delay.

See also: How do I create a macro Snippet to send special keys to applications or insert pauses when pasting?