Debugging Features

Additional debugging features are supported via DBGp, a common debugger protocol for languages and debugger UI communication.

Debugger Engine

The debugger engine is enabled if AutoHotkey_L is built with CONFIG_DEBUGGER defined. This is done by default for the Debug and Release build configurations, but not SC (compiled scripts).

Use the /Debug switch when running the script to connect to a debugger client, enabling interactive debugging.

AutoHotkey.exe /Debug[=SERVER:PORT] ...

SERVER and PORT may be omitted. For example, the following are equivalent:

AutoHotkey /Debug "myscript.ahk"
AutoHotkey /Debug=localhost:9000 "myscript.ahk"

Debugger Clients

XDebugClient

XDebugClient is a simple open-source front-end DBGp client based on the .NET Framework 2.0. XDebugClient was originally designed for PHP with Xdebug, but a custom build compatible with AutoHotkey_L is available below.

Changes:

Download: Binary; Source Code (also see SharpDevelop, Dockpanel Suite and Advanced Treeview.)

Usage:

Features:

Issues:

Notepad++ DBGp Plugin

A DBGp client is available as a plugin for Notepad++. It is designed for PHP, but also works well with AutoHotkey_L.

Download: See Notepad++ at SourceForge.

Usage:

Features:

Issues:

Script-based Clients

A script-based DBGp library and two basic clients are available for development purposes:

Command-line Client

A command-line client is available from xdebug.org, however this is not suitable for most users as it requires a decent understanding of DBGp (the protocol).

Others

A number of other DBGp clients are available, but have not been tested with AutoHotkey_L. For a list, see Xdebug: Documentation.