Support disabling/enabling a breakpoint.
See original GitHub issueTurning on and off breakpoints is quite a common operation. Could we support a dedicated disable enable breakpoint operation ?
As far as I know, one can only delete a breakpoint today. If the user wants to temporarily not use a breakpoint, she needs to remove it. Later on once she wants to break at the same spot, she needs to find the same line and create a new breakpoint. The id of the breakpoint will also be distinct. This is quite cumbersome.
Instead a much simpler enable/disable breakpoint operation would make the workflow much simpler.
One could have BreakpointEnable <ID> BreakpointDisable <ID> commands and the BreakpointWindow would have a new column showing enabled,disabled state.
In addition, we could support e d key bindings if the vim cursor is on the BreakpointWindow. e would enable the breakpoint under cursor, similarly d would disable.
Something similar also exists in gdb, pdb debuggers.
I unfortunately do not know whether the dbgp protocol or xdebug has the necessary support for this. Can anyone comment on possible implementation ?
Issue Analytics
- State:
- Created 5 years ago
- Comments:5 (1 by maintainers)

Top Related StackOverflow Question
Patching xdebug or dbgp is not in the scope of this project. Whoever wants to do something like this can obviously go upstream and do it.
I think for vdebug we should plan and work with the existing protocol. So it seems that the only solution is to keep some state of “disabled” (but officially deleted) breakpoints in vdebug. Now if you want persistence of ids we need to check how vdebug constructs its ids. If they are provided by dbgp we might have a problem.
Some nice mappings for the breakpoint window are useful on their own and could be implemented also independently.
Generally I understand that the requested feature is useful for vdebug and would say “PRs welcome”.
Perhaps I’m missing something, but doesn’t the protocol already support this? The dbgp documentation for the attributes of a breakpoint has a property for a breakpoint called
state, which can be set toenabledordisabled, so you’d just toggle the breakpoint usingbreakpoint_update.