Korn Shell (93v- 2014-12-24 or greater) Debugger
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
admin-tools
command
data
doc
init
lib
test
.gitignore
.travis.yml
AUTHORS
COPYING
INSTALL
Makefile.am
NEWS
README.md
THANKS
acinclude.m4
autogen.sh
configure.ac
dbg-main.sh
dbg-trace.sh.in
getopt-test.sh
getopts_long.sh
kshdb.in
testing.sh

README.md

Travis Build Status

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 or zshdb
  • 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