debugger
The community/tags/debugger
directory contains files that enable voice control of a debugger. It provides a set of commands to control program execution, inspect memory, and manage breakpoints, all through voice commands defined in Talon.
The two files in this directory, debugger.talon and debugger.py, work together to provide this functionality.
debugger.talon
defines the voice commands themselves. It uses theuser.debugger
tag, which is enabled by thedebugger.py
file. This file maps spoken phrases to actions, likestep into
which will executeuser.debugger_step_into()
orshow registers
which executesuser.debugger_show_registers()
. It also includes commands for breakpoints, register manipulation, and memory inspection. The file allows for optional arguments to commands, like<number_small>
inclear (break | break point) <number_small>
which callsuser.debugger_clear_breakpoint_id(number_small)
.debugger.py
defines the actions that are called by thedebugger.talon
file and the context and the list of registers. It defines an action class which contains empty methods for each command defined in the talon file. This file also defines the register listself.registers
which is then used in the talon file to determine valid registers. Theregisters
capture rule is used to pass register names to actions.