trivial-debug-console is a tiny little library to make writing GUI applications in Common Lisp easier on Windows. The free lisp implementations like SBCL and CLISP produce "text-mode" executable images on windows, which means they pop up a console window when run. You could create a launcher to hide the window, but then you couldn't do any debugging in the image.
trivial-debug-console lets you wrap a function such that the console window will be un-hidden whenever the debugger is entered, and re-hidden after the condition has been handled. You get the console window for just as long as you need it, then it gets out of your way.
UsageThere are two ways to use
(debuggify func &rest args)will apply
argswith the debug wrapper.
(with-debug-console &body body)will wrap
bodyin a lambda and pass it to
debuggify, to make wrapping a series of actions easier.
- This only works on windows (I'm still thinking about how to make it work on X-windows systems).
trivial-debug-consolegoes to lengths to not disrupt normal error-handling mechanisms.
*DEBUGGER-HOOK*and the regular error-handling mechanisms should all work normally.
- Matthew Stickney <email@example.com>