Introduction
This is a port and my bash
debugger bashdb and
zsh
debugger zshdb.
The command syntax generally follows that of the GNU debugger gdb
.
However this debugger depends on a number of bug fixes and of debugging
support features that are neither part of the POSIX 1003.1 standard
and only in ksh93v- releases. In particular, there are fixes to a
number of the .sh
variables like .sh.level
and .sh.file
, and
fixes to for handling IO redirection.
Setup
See the wiki for how to install this code.
What's here, what's not and why not
What's missing falls into two categories:
- Stuff that might be ported in a straightforward way from
bashdb
orzshdb
- Stuff that needs additional
ksh
support
Writing documentation is important, but an extensive guide will have to wait. For now one can consult the reference guide that comes with bashdb: http://bashdb.sf.net/bashdb.html There is some minimal help to get a list of commands and some help for each.
What's not here yet in detail
This can be done with or without support from ksh, albeit faster with help from ksh.
- Setting
$0
- lots of other stuff including...
- display expressions, signal handling,
- debugger commands:
- debug - recursive debugging
- file - sets file name for the current source
- handle - specify debugger signal handling
- history - rerun a debugger command from its history
- signal - send a signal to the process
- tty - set output device for debugger output
- watch - Set or clear a watch expression.
None of this is rocket science. Should be pretty straight-forward to add.
I use a project's ratings to help be determine the priority I should give to it. You'll see that this project's rating is far behind zshdb's
What may need more work and support from ksh
stopping points that are valid for a breakpoint
command