This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 8f7b94496c279d3f07c37f7bbc9d8a335683f893
tree ee1801751afd470719342506de9f86139fd80126
parent 93a61598a8fc71da27e96fcd6d2960d5a07a8c27 parent 827a95a17d7c1c95d7a6dcb64bae6fd394550c10
tree ee1801751afd470719342506de9f86139fd80126
parent 93a61598a8fc71da27e96fcd6d2960d5a07a8c27 parent 827a95a17d7c1c95d7a6dcb64bae6fd394550c10
zshdb /
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Nov 17 00:14:37 -0800 2008 | |
| |
AUTHORS | ||
| |
ChangeLog | ||
| |
Makefile.am | ||
| |
NEWS | ||
| |
README | ||
| |
THANKS | Mon Sep 29 19:27:07 -0700 2008 | |
| |
acinclude.m4 | Thu Aug 14 08:31:42 -0700 2008 | |
| |
autogen.sh | Sat Aug 09 07:44:12 -0700 2008 | |
| |
command/ | ||
| |
configure.ac | ||
| |
dbg-main.sh | ||
| |
dbg-opts.sh | ||
| |
dbg-pre.sh | ||
| |
dbg-trace.sh.in | Fri Sep 26 11:25:48 -0700 2008 | |
| |
doc/ | Mon Jun 22 09:22:30 -0700 2009 | |
| |
emacs/ | ||
| |
getopts_long.sh | Mon Sep 29 19:27:07 -0700 2008 | |
| |
lib/ | ||
| |
test/ | ||
| |
testing.sh | ||
| |
zshdb.in |
README
0. INTRODUCTION This is a port and cleanup of my bash debugger bashdb (http://bashdb.sf.net). The command syntax generally follows that of the GNU debugger gdb. However this debugger depends on a number bug fixes and of debugging support features that are neither part of the POSIX 1003.1 standard and are not in current "stable" zsh releases. In particular, the "functrace" function should always report filenames and absolute line numbers. Also both "functrace" and "funcstack" should include source'd files in their arrays. 1. SETUP To get the code, install git and run in a zsh shell: git-clone git://github.com/rocky/zshdb.git cd zshdb ./autogen.sh # Add configure options. See ./configure --help If you've got a suitable zsh installed, then make && make test To try on a real program such as perhaps /etc/zsh/zshrc: ./zshdb /etc/zsh/zshrc # substitute .../zshrc with your favorite zsh script If you are happy and "make test" above worked, install via: sudo make install and uninstall with sudo make uninstall # ;-) See INSTALL for generic configure installation instructions. 2. WHAT'S HERE, WHAT'S NOT and WHY NOT What's missing falls into a two categories: * Stuff that can be ported in a straightforward way from bashdb * Stuff that needs additional zsh support Of the things which can be ported in a straight-forward way, however some of them I want to revise and simplify. In some cases, the fact that zsh has associative arrays simplifies code. On other cases, the code I wrote needs refactoring and better modularization. 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. 3. WHAT'S NOT HERE YET IN DETAIL 3.a) Showing frame arguments This can done with or without support from zsh, albeit faster with help from zsh. Changing scope when changing frames however has to be done with zsh support. 3.b) Setting $0 3.c) lots of other stuff including... display expressions, signal handling, debugger commands: debug condition file handle history pwd signal tty watch None of this is rocket science. Should be pretty straight-forward to add. 4. WHAT MAY NEED MORE WORK AND SUPPORT FROM ZSH 4.a) stopping points that can be used for breakpoint








