[Commands] { ... } (Block={ ... } (Block|Block.htm|A pair of braces denotes a block. Blocks are typically used with functions, Else, Loop, While-loop, and IF-commands.| { ... } / Object={ ... } / Object|../Objects.htm#Usage_Associative_Arrays|Creates a scriptable associative array.| Abs=Abs|Math.htm|Returns the absolute value of Number.| AutoTrim=AutoTrim|AutoTrim.htm|Determines whether traditional assignments like Var1 = %Var2% omit spaces and tabs from the beginning and end of Var2.| Asc=Asc|Asc.htm|Returns the numeric value of the first byte or UTF-16 code unit in the specified string.| ASin=ASin|Math.htm|Returns the arcsine (the number whose sine is Number) in radians.||id="ASin".*? ACos=ACos|Math.htm|Returns the arccosine (the number whose cosine is Number) in radians.||id="ACos".*? ATan=ATan|Math.htm|Returns the arctangent (the number whose tangent is Number) in radians.||id="ATan".*? BlockInput=BlockInput|BlockInput.htm|Disables or enables the user's ability to interact with the computer via keyboard and mouse.| Break=Break|Break.htm|Exits (terminates) a loop. Valid inside any kind of loop.| Catch=Catch|Catch.htm|Specifies the code to execute if an exception is raised during execution of a try statement.| Ceil=Ceil|Math.htm|Returns Number rounded up to the nearest integer (without any .00 suffix).||id="Ceil".*? Chr=Chr|Chr.htm|Returns the string (usually a single character) corresponding to the character code indicated by the specified number.| Click=Click|Click.htm|Clicks a mouse button at the specified coordinates. It can also hold down a mouse button, turn the mouse wheel, or move the mouse.| ClipWait=ClipWait|ClipWait.htm|Waits until the clipboard contains data.| ComObjActive=ComObjActive|ComObjActive.htm|Retrieves a registered COM object.| ComObjArray=ComObjArray|ComObjArray.htm|Creates a SAFEARRAY for use with COM.| ComObjConnect=ComObjConnect|ComObjConnect.htm|Connects a COM object's event sources to functions with a given prefix.| ComObjCreate=ComObjCreate|ComObjCreate.htm|Creates a COM object.| ComObjEnwrap() / ComObjUnwrap=ComObjEnwrap() / ComObjUnwrap|ComObjActive.htm|Wraps/unwraps a COM object.| ComObjError=ComObjError|ComObjError.htm|Enables or disables notification of COM errors.| ComObjFlags=ComObjFlags|ComObjFlags.htm|Retrieves or changes flags which control a COM wrapper object's behaviour.| ComObjGet=ComObjGet|ComObjGet.htm|Returns a reference to an object provided by a COM component.| ComObjMissing=ComObjMissing|ComObjActive.htm|Creates a "missing parameter" object to pass to a COM method.| ComObjParameter=ComObjParameter|ComObjActive.htm|Wraps a value and type to pass as a parameter to a COM method.| ComObjQuery=ComObjQuery|ComObjQuery.htm|Queries a COM object for an interface or service.| ComObjType=ComObjType|ComObjType.htm|Retrieves type information from a COM object.| ComObjValue=ComObjValue|ComObjValue.htm|Retrieves the value or pointer stored in a COM wrapper object.| Continue=Continue|Continue.htm|Skips the rest of the current loop iteration and begins a new one. Valid inside any kind of loop.| Control=Control|Control.htm|Makes a variety of changes to a control.| ControlClick=ControlClick|ControlClick.htm|Sends a mouse button or mouse wheel event to a control.| ControlFocus=ControlFocus|ControlFocus.htm|Sets input focus to a given control on a window.| ControlGet=ControlGet|ControlGet.htm|Retrieves various types of information about a control.|Control.htm ControlGetFocus=ControlGetFocus|ControlGetFocus.htm|Retrieves which control of the target window has input focus, if any.| ControlGetPos=ControlGetPos|ControlGetPos.htm|Retrieves the position and size of a control.| ControlGetText=ControlGetText|ControlGetText.htm|Retrieves text from a control.| ControlMove=ControlMove|ControlMove.htm|Moves or resizes a control.| ControlSend=ControlSend / ControlSendRaw|ControlSend.htm|Sends simulated keystrokes to a window or control.| ControlSendRaw=ControlSend / ControlSendRaw|ControlSend.htm|Sends simulated keystrokes to a window or control.| ControlSetText=ControlSetText|ControlSetText.htm|Changes the text of a control.| CoordMode=CoordMode|CoordMode.htm|Sets coordinate mode for various commands to be relative to either the active window or the screen.| Cos=Cos|Math.htm|Returns the trigonometric cosine of Number.||id="Cos".*? Critical=Critical|Critical.htm|Prevents the current thread from being interrupted by other threads, or enables it to be interrupted.| DetectHiddenText=DetectHiddenText|DetectHiddenText.htm|Determines whether invisible text in a window is "seen" for the purpose of finding the window. This affects commands such as IfWinExist and WinActivate.| DetectHiddenWindows=DetectHiddenWindows|DetectHiddenWindows.htm|Determines whether invisible windows are "seen" by the script.| DllCall=DllCall|DllCall.htm|Calls a function inside a DLL, such as a standard Windows API function.| Drive=Drive|Drive.htm|Ejects/retracts the tray in a CD or DVD drive, or sets a drive's volume label.| DriveGet=DriveGet|DriveGet.htm|Retrieves various types of information about the computer's drive(s).| DriveSpaceFree=DriveSpaceFree|DriveSpaceFree.htm|Retrieves the free disk space of a drive, in Megabytes.|DriveGet.htm|id="SpaceFree".*? Edit=Edit|Edit.htm|Opens the current script for editing in the associated editor.| Else=Else|Else.htm|Specifies the command(s) to perform if an IF-statement evaluates to FALSE. When more than one command is present, enclose them in a block (braces).| EnvAdd=EnvAdd|EnvAdd.htm|Sets a variable to the sum of itself plus the given value (can also add or subtract time from a date-time value). Synonymous with: Var += Value.|DateAdd.htm EnvDiv=EnvDiv|EnvDiv.htm|Sets a variable to itself divided by the given value. Synonymous with: Var /= Value.| EnvGet=EnvGet|EnvGet.htm|Retrieves an environment variable.| EnvMult=EnvMult|EnvMult.htm|Sets a variable to itself times the given value. Synonymous with: Var *= Value.| EnvSet=EnvSet|EnvSet.htm|Writes a value to a variable contained in the environment.| EnvSub=EnvSub|EnvSub.htm|Sets a variable to itself minus the given value (can also compare date-time values). Synonymous with: Var -= Value.|DateDiff.htm EnvUpdate=EnvUpdate|EnvUpdate.htm|Notifies the OS and all running applications that environment variable(s) have changed.|EnvGet.htm Exception=Exception|Throw.htm|Creates an object which can be used to throw a custom exception.| Exit=Exit|Exit.htm|Exits the current thread or (if the script is not persistent and contains no hotkeys) the entire script.| ExitApp=ExitApp|ExitApp.htm|Terminates the script unconditionally.| Exp=Exp|Math.htm|Returns e (which is approximately 2.71828182845905) raised to the Nth power.||id="Exp".*? FileAppend=FileAppend|FileAppend.htm|Writes text to the end of a file (first creating the file, if necessary).| FileCopy=FileCopy|FileCopy.htm|Copies one or more files.| FileCopyDir=FileCopyDir|FileCopyDir.htm|Copies a folder along with all its sub-folders and files (similar to xcopy).|DirCopy.htm FileCreateDir=FileCreateDir|FileCreateDir.htm|Creates a folder.|DirCreate.htm FileCreateShortcut=FileCreateShortcut|FileCreateShortcut.htm|Creates a shortcut (.lnk) file.| FileDelete=FileDelete|FileDelete.htm|Deletes one or more files.| FileEncoding=FileEncoding|FileEncoding.htm|Sets the default encoding for FileRead, FileReadLine, Loop Read, FileAppend, and FileOpen.
See also: Text Encodings| FileExist=FileExist|FileExist.htm|Checks for the existence of a file or folder and returns its attributes.| FileInstall=FileInstall|FileInstall.htm|Includes the specified file inside the compiled version of the script.| FileGetAttrib=FileGetAttrib|FileGetAttrib.htm|Reports whether a file or folder is read-only, hidden, etc.|FileExist.htm FileGetShortcut=FileGetShortcut|FileGetShortcut.htm|Retrieves information about a shortcut (.lnk) file, such as its target file.| FileGetSize=FileGetSize|FileGetSize.htm|Retrieves the size of a file.| FileGetTime=FileGetTime|FileGetTime.htm|Retrieves the datetime stamp of a file or folder.| FileGetVersion=FileGetVersion|FileGetVersion.htm|Retrieves the version of a file.| FileMove=FileMove|FileMove.htm|Moves or renames one or more files.| FileMoveDir=FileMoveDir|FileMoveDir.htm|Moves a folder along with all its sub-folders and files. It can also rename a folder.|DirMove.htm FileOpen=FileOpen|FileOpen.htm|Provides object-oriented file I/O.| FileRead=FileRead|FileRead.htm|Reads a file's contents into a variable.|objects/File.htm|id="Read".*? FileReadLine=FileReadLine|FileReadLine.htm|Reads the specified line from a file and stores the text in a variable.|objects/File.htm|id="ReadLine".*? FileRecycle=FileRecycle|FileRecycle.htm|Sends a file or directory to the recycle bin, if possible.| FileRecycleEmpty=FileRecycleEmpty|FileRecycleEmpty.htm|Empties the recycle bin.| FileRemoveDir=FileRemoveDir|FileRemoveDir.htm|Deletes a folder.|DirDelete.htm FileSelectFile=FileSelectFile|FileSelectFile.htm|Displays a standard dialog that allows the user to open or save file(s).|FileSelect.htm FileSelectFolder=FileSelectFolder|FileSelectFolder.htm|

Displays a standard dialog that allows the user to select a folder.

|DirSelect.htm FileSetAttrib=FileSetAttrib|FileSetAttrib.htm|Changes the attributes of one or more files or folders. Wildcards are supported.| FileSetTime=FileSetTime|FileSetTime.htm|Changes the datetime stamp of one or more files or folders. Wildcards are supported.| Finally=Finally|Finally.htm|Ensures that a block of code is always executed after a Try statement finishes.| Floor=Floor|Math.htm|Returns Number rounded down to the nearest integer (without any .00 suffix).||id="Floor".*? For=For|For.htm|Repeats a series of commands once for each key-value pair in an object.| Format=Format|Format.htm|Formats a variable number of input values according to a format string.| FormatTime=FormatTime|FormatTime.htm|Transforms a YYYYMMDDHH24MISS timestamp into the specified date/time format.| Func=Func|Func.htm|Retrieves a reference to a function.| GetKeyName=GetKeyName|GetKey.htm|Retrieves the name or text of a key.| GetKeyVK=GetKeyVK|GetKey.htm|Retrieves the virtual key code of a key.| GetKeySC=GetKeySC|GetKey.htm|Retrieves the scan code of a key.| GetKeyState=GetKeyState|GetKeyState.htm|Checks if a keyboard key or mouse/joystick button is down or up. Also retrieves joystick status.| Gosub=Gosub|Gosub.htm|Jumps to the specified label and continues execution until Return is encountered.| Goto=Goto|Goto.htm|Jumps to the specified label and continues execution.| GroupActivate=GroupActivate|GroupActivate.htm|Activates the next window in a window group that was defined with GroupAdd.| GroupAdd=GroupAdd|GroupAdd.htm|Adds a window specification to a window group, creating the group if necessary.| GroupClose=GroupClose|GroupClose.htm|Closes the active window if it was just activated by GroupActivate or GroupDeactivate. It then activates the next window in the series. It can also close all windows in a group.| GroupDeactivate=GroupDeactivate|GroupDeactivate.htm|Similar to GroupActivate except activates the next window not in the group.| Gui=Gui|Gui.htm|Creates and manages windows and controls. Such windows can be used as data entry forms or custom user interfaces.|objects/Gui.htm GuiControl=GuiControl|GuiControl.htm|Makes a variety of changes to a control in a GUI window.|objects/GuiControl.htm GuiControls=GuiControl|GuiControl.htm|Makes a variety of changes to a control in a GUI window.|GuiControls.htm GuiControlGet=GuiControlGet|GuiControlGet.htm|Retrieves various types of information about a control in a GUI window.|objects/GuiControl.htm Hotkey=Hotkey|Hotkey.htm|Creates, modifies, enables, or disables a hotkey while the script is running.| IfEqual=IfEqual|IfEqual.htm|Specifies the command(s) to perform if the comparison of a variable to a value evalutes to TRUE. When more than one command is present, enclose them in a block (braces).|IfExpression.htm If=If (expression)|IfExpression.htm|Specifies the command(s) to perform if an expression evaluates to TRUE.| If (expression)=if (expression)|IfExpression.htm|Specifies the command(s) to perform if an expression evaluates to TRUE.| If var [not] between=If var [not] between|IfBetween.htm|Checks whether a variable's contents are numerically or alphabetically between two values (inclusive).| IfBetween=If var [not] between|IfBetween.htm|Checks whether a variable's contents are numerically or alphabetically between two values (inclusive).|IfExpression.htm IfIn=If var [not] in/contains MatchList|IfIn.htm|Checks whether a variable's contents match one of the items in a list.|InStr.htm IfContains=If var [not] in/contains MatchList|IfIn.htm|Checks whether a variable's contents match one of the items in a list.|InStr.htm IfType=If var is [not] type|IfIs.htm|Checks whether a variable's contents are numeric, uppercase, etc.|is.htm IfEqual=IfEqual / IfNotEqual|IfEqual.htm|Compares a variable to a value for equality. Synonymous with: if Var = Value.|IfExpression.htm IfNotEqual=IfEqual / IfNotEqual|IfEqual.htm|Compares a variable to a value for equality. Synonymous with: if Var = Value and if Var <> Value.|IfExpression.htm IfExist=IfExist|IfExist.htm|Checks for the existence of a file or folder.|FileExist.htm IfGreater=IfGreater / IfGreaterOrEqual|IfEqual.htm|Compares a variable to a value. Synonymous with: if Var > Value and if Var >= Value.|IfExpression.htm IfGreaterOrEqual=IfGreater / IfGreaterOrEqual|IfEqual.htm|Compares a variable to a value. Synonymous with: if Var > Value and if Var >= Value.|IfExpression.htm IfInString=IfInString / InStr|IfInString.htm|Checks if a variable contains the specified string.|InStr.htm InStr=IfInString / InStr|IfInString.htm|Checks if a variable contains the specified string.|InStr.htm IfLess=IfLess / IfLessOrEqual|IfEqual.htm|Compares a variable to a value. Synonymous with: if Var < Value and if Var <= Value.|IfExpression.htm IfLessOrEqual=IfLess / IfLessOrEqual|IfEqual.htm|Compares a variable to a value. Synonymous with: if Var < Value and if Var <= Value.|IfExpression.htm IfMsgBox=IfMsgBox|IfMsgBox.htm|Checks which button was pushed by the user during the most recent MsgBox command.|MsgBox.htm|

Remarks

.*? IfWinActive=IfWinActive / IfWinNotActive|WinActive.htm|Checks if the specified window exists and is currently active (foremost).|| IfWinNotActive=IfWinActive / IfWinNotActive|WinActive.htm|Checks if the specified window exists and is currently active (foremost).|| IfWinExist=IfWinExist / IfWinNotExist|WinExist.htm|Checks if the specified window exists.| IfWinNotExist=IfWinExist / IfWinNotExist|WinExist.htm|Checks if the specified window exists.| ImageSearch=ImageSearch|ImageSearch.htm|Searches a region of the screen for an image.| IniDelete=IniDelete|IniDelete.htm|Deletes a value from a standard format .ini file.| IniRead=IniRead|IniRead.htm|Reads a value from a standard format .ini file.| IniWrite=IniWrite|IniWrite.htm|Writes a value to a standard format .ini file.| Input=Input|Input.htm|Waits for the user to type a string.| InputBox=InputBox|InputBox.htm|Displays an input box to ask the user to enter a string.| InStr=InStr|InStr.htm|Searches for a given occurrence of a string, from the left or the right.| IsByRef=IsByRef|IsByRef.htm|Returns a non-zero number if a ByRef parameter of a function was supplied with the specified variable.| IsFunc=IsFunc|IsFunc.htm|Returns a non-zero number if the specified function exists in the script.| IsLabel=IsLabel|IsLabel.htm|Returns a non-zero number if the specified label exists in the script.| IsObject=IsObject|IsObject.htm|Returns a non-zero number if the specified value is an object.| KeyHistory=KeyHistory|KeyHistory.htm|Displays script info and a history of the most recent keystrokes and mouse clicks.| KeyWait=KeyWait|KeyWait.htm|Waits for a key or mouse/joystick button to be released or pressed down.| ListHotkeys=ListHotkeys|ListHotkeys.htm|Displays the hotkeys in use by the current script, whether their subroutines are currently running, and whether or not they use the keyboard or mouse hook.| ListLines=ListLines|ListLines.htm|Displays the script lines most recently executed.| ListVars=ListVars|ListVars.htm|Displays the script's variables: their names and current contents.| LoadPicture=LoadPicture|LoadPicture.htm|Loads a picture from file and returns a bitmap or icon handle.| Log=Log|Math.htm|Returns the logarithm (base 10) of Number.||id="Log".*? Ln=Ln|Math.htm|Returns the natural logarithm (base e) of Number.||id="Ln".*? Loop=Loop (normal|Loop.htm|Perform a series of commands repeatedly: either the specified number of times or until break is encountered.| Loop (files & folders)=Loop files & folders|LoopFile.htm|Retrieves the specified files or folders, one at a time.|LoopFiles.htm Loop Files=Loop files & folders|LoopFile.htm|Retrieves the specified files or folders, one at a time.|LoopFiles.htm Loop Folders=Loop files & folders|LoopFile.htm|Retrieves the specified files or folders, one at a time.|LoopFiles.htm Loop Parse=Loop (parse a string)|LoopParse.htm|Retrieves substrings (fields) from a string, one at a time.| Parse=Loop (parse a string)|LoopParse.htm|Retrieves substrings (fields) from a string, one at a time.| Loop file read=Loop (read file contents)|LoopReadFile.htm|Retrieves the lines in a text file, one at a time (performs better than FileReadLine).|LoopRead.htm Loop Read File=Loop (read file contents)|LoopReadFile.htm|Retrieves the lines in a text file, one at a time (performs better than FileReadLine).|LoopRead.htm Loop registry=Loop (registry|LoopReg.htm|Retrieves the contents of the specified registry subkey, one item at a time.| Loop Reg=Loop (registry|LoopReg.htm|Retrieves the contents of the specified registry subkey, one item at a time.| Max=Max|Math.htm|Returns the highest value of one or more numbers.||id="Max".*? Menu=Menu|Menu.htm|Creates, deletes, modifies and displays menus and menu items. Changes the tray icon and its tooltip. Controls whether the main window of a compiled script can be opened.|objects/Menu.htm MenuGetHandle=MenuGetHandle|MenuGetHandle.htm|Retrieves the Win32 menu handle of a menu.|objects/Menu.htm MenuGetName=MenuGetName|MenuGetName.htm|Retrieves the name of a menu given a handle to its underlying Win32 menu.|objects/Menu.htm Min=Min|Math.htm|Returns the lowest value of one or more numbers.||id="Min".*? Mod=Mod|Math.htm|Modulo. Returns the remainder when Dividend is divided by Divisor.||id="Mod".*? MouseClick=MouseClick|MouseClick.htm|Clicks or holds down a mouse button, or turns the mouse wheel. NOTE: The Click command is generally more flexible and easier to use.| MouseClickDrag=MouseClickDrag|MouseClickDrag.htm|Clicks and holds the specified mouse button, moves the mouse to the destination coordinates, then releases the button.| MouseGetPos=MouseGetPos|MouseGetPos.htm|Retrieves the current position of the mouse cursor, and optionally which window and control it is hovering over.| MouseMove=MouseMove|MouseMove.htm|Moves the mouse cursor.| MsgBox=MsgBox|MsgBox.htm|Displays the specified text in a small window containing one or more buttons (such as Yes and No).| NumGet=NumGet|NumGet.htm|Returns the binary number stored at the specified address+offset.| NumPut=NumPut|NumPut.htm|Stores a number in binary format at the specified address+offset.| ObjAddRef() / ObjRelease=ObjAddRef() / ObjRelease|ObjAddRef.htm|Increments or decrements an object's reference count.| ObjBindMethod=ObjBindMethod|ObjBindMethod.htm|Creates a BoundFunc object which calls a method of a given object.| ObjClone=ObjClone|objects/Object.htm|Returns a shallow copy of the object.|objects/Object.htm#Clone| ObjRawSet|../objects/Object.htm|Stores or overwrites a key-value pair in an object, bypassing the object's meta-functions.| OnClipboardChange=OnClipboardChange|OnClipboardChange.htm#function|Registers a function or function object to run whenever the clipboard's content changes.| OnExit=OnExit|OnExit.htm|Specifies a subroutine to run automatically when the script exits.| OnMessage=OnMessage|OnMessage.htm|Specifies a function to call automatically when the script receives the specified message.| Ord=Ord|Ord.htm|Returns the ordinal value (numeric character code) of the first character in the specified string.| OutputDebug=OutputDebug|OutputDebug.htm|Sends a string to the debugger (if any) for display.| Pause=Pause|Pause.htm|Pauses the script's current thread.| PixelGetColor=PixelGetColor|PixelGetColor.htm|Retrieves the color of the pixel at the specified x,y coordinates.| PixelSearch=PixelSearch|PixelSearch.htm|Searches a region of the screen for a pixel of the specified color.| PostMessage=PostMessage|PostMessage.htm|Places a message in the message queue of a window or control.| Process=Process|Process.htm|Performs one of the following operations on a process: checks if it exists; changes its priority; closes it; waits for it to close.| Progress=Progress|Progress.htm|Creates or updates a window containing a progress bar.| Random=Random|Random.htm|Generates a pseudo-random number.| RegExMatch=RegExMatch|RegExMatch.htm|Determines whether a string contains a pattern (regular expression).| RegExReplace=RegExReplace|RegExReplace.htm|Replaces occurrences of a pattern (regular expression) inside a string.| RegDelete=RegDelete|RegDelete.htm|Deletes a subkey or value from the registry.| RegRead=RegRead|RegRead.htm|Reads a value from the registry.| RegWrite=RegWrite|RegWrite.htm|Writes a value to the registry.| RegisterCallback=RegisterCallback|RegisterCallback.htm|Creates a machine-code address that when called, redirects the call to a function in the script.| Reload=Reload|Reload.htm|Replaces the currently running instance of the script with a new one.| Return=Return|Return.htm|Returns from a subroutine to which execution had previously jumped via function-call, Gosub, Hotkey activation, GroupActivate, or other means.| Round=Round|Math.htm|If N is omitted or 0, Number is rounded to the nearest integer. If N is positive number, Number is rounded to N decimal places. If N is negative, Number is rounded by N digits to the left of the decimal point.||id="Round".*? Run=Run|Run.htm|Runs an external program.| RunAs=RunAs|RunAs.htm|Specifies a set of user credentials to use for all subsequent uses of Run and RunWait.| RunWait=RunWait|Run.htm|Runs an external program and waits until it finishes.| Send=Send|Send.htm|Sends simulated keystrokes and mouse clicks to the active window.| SendRaw=Send|Send.htm|Sends simulated keystrokes and mouse clicks to the active window.| SendInput=Send|Send.htm|Sends simulated keystrokes and mouse clicks to the active window.| SendPlay=Send|Send.htm|Sends simulated keystrokes and mouse clicks to the active window.| SendLevel=SendLevel|SendLevel.htm|Controls which artificial keyboard and mouse events are ignored by hotkeys and hotstrings.| SendMessage=SendMessage|PostMessage.htm|Sends a message to a window or control and waits for acknowledgement.| SendMode=SendMode|SendMode.htm|Makes Send synonymous with SendInput or SendPlay rather than the default (SendEvent). Also makes Click and MouseMove/Click/Drag use the specified method.| SetBatchLines=SetBatchLines|SetBatchLines.htm|Determines how fast a script will run (affects CPU utilization).| SetCapsLockState=SetCapsLockState|SetNumScrollCapsLockState.htm|Sets the state of the CapsLock key. Can also force the key to stay on or off.| SetControlDelay=SetControlDelay|SetControlDelay.htm|Sets the delay that will occur after each control-modifying command.| SetDefaultMouseSpeed=SetDefaultMouseSpeed|SetDefaultMouseSpeed.htm|Sets the mouse speed that will be used if unspecified in Click and MouseMove/Click/Drag.| SetEnv (Var = Value=SetEnv (Var = Value|SetEnv.htm|Assigns the specified value to a variable.| SetFormat=SetFormat|SetFormat.htm|Sets the format of integers and floating point numbers generated by math operations.| SetKeyDelay=SetKeyDelay|SetKeyDelay.htm|Sets the delay that will occur after each keystroke sent by Send or ControlSend.| SetMouseDelay=SetMouseDelay|SetMouseDelay.htm|Sets the delay that will occur after each mouse movement or click.| SetNumLockState=SetNumLockState|SetNumScrollCapsLockState.htm|Sets the state of the NumLock key. Can also force the key to stay on or off.| SetScrollLockState=SetScrollLockState|SetNumScrollCapsLockState.htm|Sets the state of the ScrollLock key. Can also force the key to stay on or off.| SetRegView=SetRegView|SetRegView.htm|Allows registry commands in a 32-bit script to access the 64-bit registry view and vice versa.| SetStoreCapsLockMode=SetStoreCapsLockMode|SetStoreCapslockMode.htm|Whether to restore the state of CapsLock after a Send.| SetTimer=SetTimer|SetTimer.htm|Causes a subroutine to be launched automatically and repeatedly at a specified time interval.| SetTitleMatchMode=SetTitleMatchMode|SetTitleMatchMode.htm|Sets the matching behavior of the WinTitle parameter in commands such as WinWait.| SetWinDelay=SetWinDelay|SetWinDelay.htm|Sets the delay that will occur after each windowing command, such as WinActivate.| SetWorkingDir=SetWorkingDir|SetWorkingDir.htm|Changes the script's current working directory.| Shutdown=Shutdown|Shutdown.htm|Shuts down, restarts, or logs off the system.| Sin=Sin|Math.htm|Returns the trigonometric sine of Number.||id="Sin".*? Sleep=Sleep|Sleep.htm|Waits the specified amount of time before continuing.| Sort=Sort|Sort.htm|Arranges a variable's contents in alphabetical, numerical, or random order (optionally removing duplicates).| SoundBeep=SoundBeep|SoundBeep.htm|Emits a tone from the PC speaker.| SoundGet=SoundGet|SoundGet.htm|Retrieves various settings from a sound device (master mute, master volume, etc.)| SoundGetWaveVolume=SoundGetWaveVolume|SoundGetWaveVolume.htm|Retrieves the wave output volume from a sound device.| SoundPlay=SoundPlay|SoundPlay.htm|Plays a sound, video, or other supported file type.| SoundSet=SoundSet|SoundSet.htm|Changes various settings of a sound device (master mute, master volume, etc.)| SoundSetWaveVolume=SoundSetWaveVolume|SoundSetWaveVolume.htm|Changes the wave output volume for a sound device.| SplashImage=SplashImage|Progress.htm|Creates or updates a window containing a JPG, GIF, or BMP image.| SplashTextOn=SplashTextOn|SplashTextOn.htm|Creates a customizable text popup window.| SplashTextOff=SplashTextOff|SplashTextOn.htm|Closes the above window.| SplitPath=SplitPath|SplitPath.htm|Separates a file name or URL into its name, directory, extension, and drive.| Sqrt=Sqrt|Math.htm|Returns the square root of Number.||id="Sqrt".*? StatusBarGetText=StatusBarGetText|StatusBarGetText.htm|Retrieves the text from a standard status bar control.| StatusBarWait=StatusBarWait|StatusBarWait.htm|Waits until a window's status bar contains the specified string.| StrPut() / StrGet=StrPut() / StrGet|StrPutGet.htm|Copies a string to or from a memory address, optional converting it between code pages.| StringCaseSense=StringCaseSense|StringCaseSense.htm|Determines whether string comparisons are case sensitive (default is "not case sensitive").| StringGetPos / InStr=StringGetPos / InStr|StringGetPos.htm|Retrieves the position of the specified substring within a string.| StringLeft=StringLeft|StringLeft.htm|Retrieves a number of characters from the left-hand side of a string.| StringLen=StringLen / StrLen|StringLen.htm|Retrieves the count of how many characters are in a string.| StrLen=StringLen / StrLen|StringLen.htm|Retrieves the count of how many characters are in a string.| StringLower=StringLower|StringLower.htm|Converts a string to lowercase.| StringMid=StringMid / SubStr|StringMid.htm|Retrieves one or more characters from the specified position in a string.|SubStr.htm SubStr=SubStr|SubStr.htm|Retrieves one or more characters from the specified position in a string.| StringReplace=StringReplace / StrReplace()|StringReplace.htm|Retrieves a number of characters from the right-hand side of a string.| StrReplace=StringReplace / StrReplace()|StringReplace.htm|Retrieves a number of characters from the right-hand side of a string.|StrReplace.htm StringSplit=StringSplit / StrSplit|StringSplit.htm|Separates a string into an array of substrings using the specified delimiters.|StrSplit.htm StrSplit=StringSplit / StrSplit|StringSplit.htm|Separates a string into an array of substrings using the specified delimiters.|StrSplit.htm StringTrimLeft=StringTrimLeft|StringTrimLeft.htm|Removes a number of characters from the left-hand side of a string.| StringTrimRight=StringTrimRight|StringTrimLeft.htm|Removes a number of characters from the right-hand side of a string.| StringUpper=StringUpper|StringLower.htm|Converts a string to uppercase.| Suspend=Suspend|Suspend.htm|Disables or enables all or selected hotkeys and hotstrings.| SysGet=SysGet|SysGet.htm|Retrieves screen resolution, multi-monitor info, dimensions of system objects, and other system properties.| Tan=Tan|Math.htm|Returns the trigonometric tangent of Number.||id="Tan".*? Thread=Thread|Thread.htm|Sets the priority or interruptibility of threads. It can also temporarily disable all timers.| Throw=Throw|Throw.htm|Signals the occurrence of an error. This signal can be caught by a try-catch statement.| ToolTip=ToolTip|ToolTip.htm|Creates an always-on-top window anywhere on the screen.| Transform=Transform|Transform.htm|Performs miscellaneous math functions, bitwise operations, and tasks such as ASCII/Unicode conversion.| TrayTip=TrayTip|TrayTip.htm|Creates a balloon message window or toast notification near the tray icon.| Trim=Trim|Trim.htm|Trims certain characters from the beginning and/or end of a string.| Try=Try|Try.htm|Guards one or more statements (commands or expressions) against runtime errors and exceptions thrown by the throw command.| Until=Until|Until.htm|Applies a condition to the continuation of a Loop or For-loop.| UrlDownloadToFile=UrlDownloadToFile|URLDownloadToFile.htm|Downloads a file from the Internet.| Var = value=Var = value|SetEnv.htm|Assigns the specified value to a variable.| Var := expression=Var := expression|SetExpression.htm|Evaluates an expression and stores the result in a variable.| VarSetCapacity=VarSetCapacity|VarSetCapacity.htm|Enlarges a variable's holding capacity or frees its memory. Normally, this is necessary only for unusual circumstances such as DllCall.| While-loop=While-loop|While.htm|Performs a series of commands repeatedly until the specified expression evaluates to false.| WinActivate=WinActivate|WinActivate.htm|Activates the specified window (makes it foremost).| WinActivateBottom=WinActivateBottom|WinActivateBottom.htm|Same as WinActivate except that it activates the bottommost (least recently active) matching window rather than the topmost.| WinActive=WinActive|WinActive.htm|Returns the Unique ID (HWND) of the active window if it matches the specified criteria.| WinClose=WinClose|WinClose.htm|Closes the specified window.| WinExist=WinExist|WinExist.htm|Returns the Unique ID (HWND) of the first matching window.| WinGetActiveStats=WinGetActiveStats|WinGetActiveStats.htm|Combines the functions of WinGetActiveTitle and WinGetPos into one command.| WinGetActiveTitle=WinGetActiveTitle|WinGetActiveTitle.htm|Retrieves the title of the active window.| WinGetClass=WinGetClass|WinGetClass.htm|Retrieves the specified window's class name.| WinGet=WinGet|WinGet.htm|Retrieves the specified window's unique ID, process ID, process name, or a list of its controls. It can also retrieve a list of all windows matching the specified criteria.| WinGetPos=WinGetPos|WinGetPos.htm|Retrieves the position and size of the specified window.| WinGetText=WinGetText|WinGetText.htm|Retrieves the text from the specified window.| WinGetTitle=WinGetTitle|WinGetTitle.htm|Retrieves the title of the specified window.| WinHide=WinHide|WinHide.htm|Hides the specified window.| WinKill=WinKill|WinKill.htm|Forces the specified window to close.| WinMaximize=WinMaximize|WinMaximize.htm|Enlarges the specified window to its maximum size.| WinMenuSelectItem=WinMenuSelectItem|WinMenuSelectItem.htm|Invokes a menu item from the menu bar of the specified window.| WinMinimize=WinMinimize|WinMinimize.htm|Collapses the specified window into a button on the task bar.| WinMinimizeAll=WinMinimizeAll|WinMinimizeAll.htm|Minimizes all windows.| WinMinimizeAllUndo=WinMinimizeAllUndo|WinMinimizeAll.htm|Reverses the effect of a previous WinMinimizeAll.| WinMove=WinMove|WinMove.htm|Changes the position and/or size of the specified window.| WinRestore=WinRestore|WinRestore.htm|Unminimizes or unmaximizes the specified window if it is minimized or maximized.| WinSet=WinSet|WinSet.htm|Makes a variety of changes to the specified window, such as "always on top" and transparency.| WinSetTitle=WinSetTitle|WinSetTitle.htm|Changes the title of the specified window.| WinShow=WinShow|WinShow.htm|Unhides the specified window.| WinWait=WinWait|WinWait.htm|Waits until the specified window exists.| WinWaitActive=WinWaitActive|WinWaitActive.htm|Waits until the specified window is active.| WinWaitClose=WinWaitClose|WinWaitClose.htm|Waits until the specified window does not exist.| WinWaitNotActive=WinWaitNotActive|WinWaitActive.htm|Waits until the specified window is not active.| #ClipboardTimeout=#ClipboardTimeout|_ClipboardTimeout.htm|Changes how long the script keeps trying to access the clipboard when the first attempt fails.| #CommentFlag=#CommentFlag|_CommentFlag.htm|Changes the script's comment symbol from semicolon to some other string.| #ErrorStdOut=#ErrorStdOut|_ErrorStdOut.htm|Sends any syntax error that prevents a script from launching to stdout rather than displaying a dialog.| #EscapeChar=#EscapeChar|_EscapeChar.htm|Changes the script's escape character (for example: backslash vs. accent).| #HotkeyInterval=#HotkeyInterval|_HotkeyInterval.htm|Along with #MaxHotkeysPerInterval, specifies the rate of hotkey activations beyond which a warning dialog will be displayed.| #HotkeyModifierTimeout=#HotkeyModifierTimeout|_HotkeyModifierTimeout.htm|Affects the behavior of hotkey modifiers: CTRL, ALT, WIN, and SHIFT.| #Hotstring=#Hotstring|_Hotstring.htm|Changes hotstring options or ending characters.| #If=#If|_If.htm|Similar to #IfWinActive, but for arbitrary expressions.| #IfTimeout=#IfTimeout|_IfTimeout.htm|Sets the maximum time that may be spent evaluating a single #If expression.| #IfWinActive / #IfWinExist=#IfWinActive / #IfWinExist|_IfWinActive.htm|Creates context-sensitive hotkeys and hotstrings. Such hotkeys perform a different action (or none at all) depending on the type of window that is active or exists.| #Include=#Include|_Include.htm|Causes the script to behave as though the specified file's contents are present at this exact position.| #InputLevel=#InputLevel|_InputLevel.htm|Controls which artificial keyboard and mouse events are ignored by hotkeys and hotstrings.| #InstallKeybdHook=#InstallKeybdHook|_InstallKeybdHook.htm|Forces the unconditional installation of the keyboard hook.| #InstallMouseHook=#InstallMouseHook|_InstallMouseHook.htm|Forces the unconditional installation of the mouse hook.| #KeyHistory=#KeyHistory|_KeyHistory.htm|Sets the maximum number of keyboard and mouse events displayed by the KeyHistory window. You can set it to 0 to disable key history.| #LTrim=#LTrim|../Scripts.htm#LTrim|Enables or disables trimming of indentation in continuation sections.| #MaxHotkeysPerInterval=#MaxHotkeysPerInterval|_MaxHotkeysPerInterval.htm|Along with #HotkeyInterval, specifies the rate of hotkey activations beyond which a warning dialog will be displayed.| #MaxMem=#MaxMem|_MaxMem.htm|Sets the maximum capacity of each variable to the specified number of megabytes.| #MaxThreads=#MaxThreads|_MaxThreads.htm|Sets the maximum number of simultaneous threads.| #MaxThreadsBuffer=#MaxThreadsBuffer|_MaxThreadsBuffer.htm|Causes some or all hotkeys to buffer rather than ignore keypresses when their #MaxThreadsPerHotkey limit has been reached.| #MaxThreadsPerHotkey=#MaxThreadsPerHotkey|_MaxThreadsPerHotkey.htm|Sets the maximum number of simultaneous threads per hotkey or hotstring.| #MenuMaskKey=#MenuMaskKey|_MenuMaskKey.htm|Changes which key is used to mask Win or Alt keyup events.| #NoEnv=#NoEnv|_NoEnv.htm|Avoids checking empty variables to see if they are environment variables (recommended for all new scripts).| #NoTrayIcon=#NoTrayIcon|_NoTrayIcon.htm|Disables the showing of a tray icon.| #Persistent=#Persistent|_Persistent.htm|Keeps a script permanently running (that is, until the user closes it or ExitApp is encountered).| #SingleInstance=#SingleInstance|_SingleInstance.htm|Determines whether a script is allowed to run again when it is already running.| #UseHook=#UseHook|_UseHook.htm|Forces the use of the hook to implement all or some keyboard hotkeys.| #Warn=#Warn|_Warn.htm|Enables or disables warnings for selected conditions that may be indicative of developer errors.| #WinActivateForce=#WinActivateForce|_WinActivateForce.htm|Skips the gentle method of activating a window and goes straight to the forceful method.| [Variables] A_Space=A_Space|Space|This variable contains a single space character. See AutoTrim for details.| A_Tab=A_Tab|Tab|This variable contains a single tab character. See AutoTrim for details.| A_WorkingDir=A_WorkingDir|WorkingDir|The script's current working directory, which is where files will be accessed by default. The final backslash is not included unless it is the root directory. Two examples: C:\ and C:\My Documents. Use SetWorkingDir to change the working directory.| A_ScriptDir=A_ScriptDir|ScriptDir|The full path of the directory where the current script is located. The final backslash is omitted (even for root directories).| A_ScriptName=A_ScriptName|ScriptName|The file name of the current script, without its path, e.g. MyScript.ahk.| A_ScriptFullPath=A_ScriptFullPath|ScriptFullPath|The combination of the above two variables to give the complete file specification of the script, e.g. C:\My Documents\My Script.ahk| A_ScriptHwnd
[v1.1.01+]=A_ScriptHwnd
[v1.1.01+]|ScriptHwnd|The unique ID (HWND/handle) of the script's hidden main window.| A_LineNumber=A_LineNumber|LineNumber|

The number of the currently executing line within the script (or one of its #Include files). This line number will match the one shown by ListLines; it can be useful for error reporting such as this example: MsgBox Could not write to log file (line number %A_LineNumber%).

A_LineFile=A_LineFile|LineFile|The full path and name of the file to which A_LineNumber belongs, which will be the same as A_ScriptFullPath unless the line belongs to one of a non-compiled script's #Include files.| A_ThisFunc
A_ThisLabel
A_AhkVersion=A_AhkVersion|AhkVersion|In versions prior to 1.0.22, this variable is blank. Otherwise, it contains the version of AutoHotkey that is running the script, such as 1.0.22. In the case of a compiled script, the version that was originally used to compile it is reported. The formatting of the version number allows a script to check whether A_AhkVersion is greater than some minimum version number with > or >= as in this example: if A_AhkVersion >= 1.0.25.07.| A_AhkPath=A_AhkPath|AhkPath|

For non-compiled scripts: The full path and name of the EXE file that is actually running the current script. For example: C:\Program Files\AutoHotkey\AutoHotkey.exe

A_IsUnicode=A_IsUnicode|IsUnicode|Contains 1 if strings are Unicode (16-bit) and an empty string (which is considered false) if strings are ANSI (8-bit). The format of strings depends on the version of AutoHotkey.exe which is used to run the script, or if it is compiled, which bin file was used to compile it.| A_IsCompiled=A_IsCompiled|IsCompiled|Contains 1 if the script is running as a compiled EXE and an empty string (which is considered false) if it is not.| A_ExitReason=A_ExitReason|ExitReason|The most recent reason the script was asked to terminate. This variable is blank unless the script has an OnExit subroutine and that subroutine is currently running or has been called at least once by an exit attempt. See OnExit for details.| A_YYYY=A_YYYY|YYYY|Current 4-digit year (e.g. 2004). Synonymous with A_Year.| A_MM=A_MM|MM|Current 2-digit month (01-12). Synonymous with A_Mon.| A_DD=A_DD|DD|Current 2-digit day of the month (01-31). Synonymous with A_MDay.| A_MMMM=A_MMMM|MMMM|Current month's full name in the current user's language, e.g. July| A_MMM=A_MMM|MMM|Current month's abbreviation in the current user's language, e.g. Jul| A_DDDD=A_DDDD|DDDD|Current day of the week's full name in the current user's language, e.g. Sunday| A_DDD=A_DDD|DDD|Current day of the week's abbreviation in the current user's language, e.g. Sun| A_WDay=A_WDay|WDay|Current 1-digit day of the week (1-7). 1 is Sunday in all locales.| A_YDay=A_YDay|YDay|Current day of the year (1-366). The value is not zero-padded, e.g. 9 is retrieved, not 009. To retrieve a zero-padded value, use the following: FormatTime, OutputVar,, YDay0.| A_YWeek=A_YWeek|YWeek|Current year and week number (e.g. 200453) according to ISO 8601. To separate the year from the week, use StringLeft, Year, A_YWeek, 4 and StringRight, Week, A_YWeek, 2. Precise definition of A_YWeek: If the week containing January 1st has four or more days in the new year, it is considered week 1. Otherwise, it is the last week of the previous year, and the next week is week 1.| A_Hour=A_Hour|Hour|Current 2-digit hour (00-23) in 24-hour time (for example, 17 is 5pm). To retrieve 12-hour time as well as an AM/PM indicator, follow this example: FormatTime, OutputVar, , h:mm:ss tt| A_Min=A_Min|Min|Current 2-digit minute (00-59).| A_Sec=A_Sec|Sec|Current 2-digit second (00-59).| A_MSec=A_MSec|MSec|Current 3-digit millisecond (000-999). To remove the leading zeros, follow this example: Milliseconds := A_MSec + 0.| A_Now=A_Now|Now|| A_NowUTC=A_NowUTC|NowUTC|The current Coordinated Universal Time (UTC) in YYYYMMDDHH24MISS format. UTC is essentially the same as Greenwich Mean Time (GMT).| A_TickCount=A_TickCount|TickCount|

The number of milliseconds since the computer was rebooted. By storing A_TickCount in a variable, elapsed time can later be measured by subtracting that variable from the latest A_TickCount value.| A_IsSuspended=A_IsSuspended|IsSuspended|Contains 1 if the script is suspended and 0 otherwise.| A_IsPaused=A_IsPaused|IsPaused|Contains 1 if the thread immediately underneath the current thread is paused. Otherwise it contains 0.| A_IsCritical=A_IsCritical|IsCritical|Contains 0 if Critical is off for the current thread. Otherwise it contains an integer greater than zero, namely the message-check frequency being used by Critical. Since Critical 0 turns off critical, the current state of Critical can be saved and restored via Old_IsCritical := A_IsCritical followed later by Critical %Old_IsCritical%.| A_BatchLines=A_BatchLines|BatchLines|(synonymous with A_NumBatchLines) The current value as set by SetBatchLines. Examples: 200 or 10ms (depending on format).| A_ListLines
[v1.1.28+]=A_ListLines
[v1.1.28+]|ListLines|Contains 1 if ListLines is enabled. Otherwise it contains 0.| A_TitleMatchMode=A_TitleMatchMode|TitleMatchMode|The current mode set by SetTitleMatchMode: 1, 2, 3, or RegEx.| A_TitleMatchModeSpeed=A_TitleMatchModeSpeed|TitleMatchModeSpeed|The current match speed (fast or slow) set by SetTitleMatchMode.| A_DetectHiddenWindows=A_DetectHiddenWindows|DetectHiddenWindows|The current mode (On or Off) set by DetectHiddenWindows.| A_AutoTrim=A_AutoTrim|DetectHiddenText"> A_DetectHiddenText=A_DetectHiddenText|The current mode (On or Off) set by DetectHiddenText. A_StringCaseSense=A_StringCaseSense|StringCaseSense|The current mode (On, Off, or Locale) set by StringCaseSense.| A_FileEncoding=A_FileEncoding|FileEncoding|[AHK_L 46+]: Contains the default encoding for various commands; see FileEncoding.| A_FormatInteger=A_FormatInteger|FormatInteger|The current integer format (H or D) set by SetFormat. [AHK_L 42+]: This may also contain lower-case h.| A_FormatFloat=A_FormatFloat|FormatFloat|The current floating point number format set by SetFormat.| A_SendMode=A_SendMode|SendMode|[v1.1.23+]: The current mode (Event, Input, Play or InputThenPlay) set by SendMode.| A_SendLevel=A_SendLevel|SendLevel|[v1.1.23+]: The current SendLevel setting (an integer between 0 and 100, inclusive).| A_StoreCapsLockMode=A_StoreCapsLockMode|StoreCapslockMode|[v1.1.23+]: The current mode (On or Off) set by SetStoreCapsLockMode.| A_KeyDelay
A_KeyDuration=A_KeyDelay
A_KeyDuration|KeyDelay|The current delay or duration set by SetKeyDelay (always decimal, not hex). A_KeyDuration requires [v1.1.23+].| A_KeyDelayPlay
A_KeyDurationPlay=A_KeyDelayPlay
A_KeyDurationPlay|KeyDelayPlay|The current delay or duration set by SetKeyDelay for the SendPlay mode (always decimal, not hex). Requires [v1.1.23+].| A_WinDelay=A_WinDelay|WinDelay|The current delay set by SetWinDelay (always decimal, not hex).| A_ControlDelay=A_ControlDelay|ControlDelay|The current delay set by SetControlDelay (always decimal, not hex).| A_MouseDelay
A_MouseDelayPlay=A_MouseDelay
A_MouseDelayPlay|MouseDelay|The current delay set by SetMouseDelay (always decimal, not hex). A_MouseDelay is for the traditional SendEvent mode, whereas A_MouseDelayPlay is for SendPlay. A_MouseDelayPlay requires [v1.1.23+].| A_DefaultMouseSpeed=A_DefaultMouseSpeed|DefaultMouseSpeed|The current speed set by SetDefaultMouseSpeed (always decimal, not hex).| A_CoordModeToolTip
A_CoordModePixel
A_CoordModeMouse
A_CoordModeCaret
A_CoordModeMenu=A_CoordModeToolTip
A_CoordModePixel
A_CoordModeMouse
A_CoordModeCaret
A_CoordModeMenu|CoordMode|[v1.1.23+]: The current mode (Window, Client or Screen) set by CoordMode.| A_RegView=A_RegView|RegView|[v1.1.08+]: The current registry view as set by SetRegView.| A_IconHidden=A_IconHidden|IconHidden|Contains 1 if the tray icon is currently hidden or 0 otherwise. The icon can be hidden via #NoTrayIcon or the Menu command.| A_IconTip=A_IconTip|IconTip|Blank unless a custom tooltip for the tray icon has been specified via Menu, Tray, Tip -- in which case it's the text of the tip.| A_IconFile=A_IconFile|IconFile|Blank unless a custom tray icon has been specified via Menu, tray, icon -- in which case it's the full path and name of the icon's file.| A_IconNumber=A_IconNumber|IconNumber|Blank if A_IconFile is blank. Otherwise, it's the number of the icon in A_IconFile (typically 1).| A_TimeIdle=A_TimeIdle|TimeIdle|The number of milliseconds that have elapsed since the system last received keyboard, mouse, or other input. This is useful for determining whether the user is away. Physical input from the user as well as artificial input generated by any program or script (such as the Send or MouseMove commands) will reset this value back to zero. Since this value tends to increase by increments of 10, do not check whether it is equal to another value. Instead, check whether it is greater or less than another value. For example: IfGreater, A_TimeIdle, 600000, MsgBox, The last keyboard or mouse activity was at least 10 minutes ago.| A_TimeIdlePhysical=A_TimeIdlePhysical|TimeIdlePhysical|Similar to above but ignores artificial keystrokes and/or mouse clicks whenever the corresponding hook (keyboard or mouse) is installed; that is, it responds only to physical events. (This prevents simulated keystrokes and mouse clicks from falsely indicating that a user is present.) If neither hook is installed, this variable is equivalent to A_TimeIdle. If only one hook is installed, only its type of physical input affects A_TimeIdlePhysical (the other/non-installed hook's input, both physical and artificial, has no effect).| A_TimeIdleKeyboard
[v1.1.28+]=A_TimeIdleKeyboard
[v1.1.28+]|TimeIdleKeyboard|If the keyboard hook is installed, this is the number of milliseconds that have elapsed since the system last received physical keyboard input. Otherwise, this variable is equivalent to A_TimeIdle.| A_TimeIdleMouse
[v1.1.28+]=A_TimeIdleMouse
[v1.1.28+]|TimeIdleMouse|If the mouse hook is installed, this is the number of milliseconds that have elapsed since the system last received physical mouse input. Otherwise, this variable is equivalent to A_TimeIdle.|