Antonio Menezes Leitao aml@gia.ist.utl.pt writes:
Hi,
I made a quick hack that allows the Slime listener to use Lisp objects that were returned from the Common Lisp environment. We already can do this using *, **, and *** variables but, to me, is not enough. I have an hard time remembering the number of stars that I should write and, moreover, I prefer to 'point' to a value that is presented in the listener and I use it in the construction of next expression, just like in Symbolics Lisp machines. For those who never saw the Symbolics environment, let me give you a description of what I can do with this patch to Slime:
ok, i just commited this with the following changes:
1) we don't attempt to add a slime-repl-result-face property if there's no result in slime-repl-insert-prompt.
2) renamed *current-id* to the (imho) more emacs-ish slime-current-output-id and added a defvar so repl shortucts don't break.
3) inserting a previous output now moves point past the inserted text (previously the pint was being left in the middle of the text).
4) inserted output is still undeleteable :( i tried messing with the intagible and modification-hooks properties but don't have enough emacs-foo to figure this out.
5) attempting (via M-p or similar) to access an output which has been cleared (via C-c C-t or similar) signals a error with a message explaining what's happened.