Luke Gorrie wrote:
Simple question: when the sldb window pops up -- and I type e -- or other evaluation related functions, the interactions occur in the minibuffer -- which doesn't work well for me for forms/results that extend over multiple lines. What's the accepted wisdom wrt. what one could do here?
I can think of a few related points, I don't know if any is what you're after -
You can use `C-u :' and (now) `C-u e' to have the evaluation result printed into the REPL buffer instead of displayed in a message.
You can use `M-x slime-ensure-typeout-frame' to create a new small frame for displaying the messages with instead of the echo area. (When you close the frame it'll go back to using the echo area.)
You can actually use the REPL even while debugging an error from an REPL evaluation. This useful but seedy feature is because the REPL is really based on RPCs rather than streams.
BTW -- following up on this. I may not have my mental model quite right yet -- if I type several 'n' or 'p' in SLDB -- and then type in the REPL loop -- should I expect to (or not) get eval-in-frame semantics right -- i.e. the scope is as indicated by the cursor in the sldb buffer? (I'm a bit mystified wrt. what scope my evaluations are taking place in this case).
A couple of other newbie questions: 1. I notice that c-c c-m (macroexpand) does not seem to work correctly wrt. packages.. for example in cmu lisp -- it inserts common-lisp-user: rather than the package the form appears in. Is there an equivalent of reparse-attribute-list?
2. When I type 'r' within sldb I get the foll.. how do I get to restart a frame.. w/ the same arguments as originally invoked..?
No matching method for the generic function #<STANDARD-GENERIC-FUNCTION SWANK-BACKEND:RESTART-FRAME (0) {5717D391}>, when called with arguments (0). [Condition of type PCL::NO-APPLICABLE-METHOD-ERROR]
Restarts: 0: [CONTINUE] Retry call to :FUNCTION. 1: [ABORT] Return to sldb level 1. 2: [ABORT] Abort handling SLIME request. 3: [DESTROY] Destroy the process