Couple more developments: Now check that we are writing to a slime stream (or an pretty-printer stream that directs to a slime stream) before presenting. This should ensure that you don't land up with the in-band messages in places you didn't intend to, at the expense of possibly missing presentations if you direct your io to slime via some wrapping stream. (but you can specialize slime-stream-p for that stream, if you are motivated)
First readable object : pathnames are now presented. E.g. load file (when *load-verbose* t) log message has sensitive pathname. Check out the menu (right click).
Turn that off by setting *enable-presenting-readable-objects* nil
You still have to explicitly load present.lisp. Please do. Unless there are objections I'll probably make this the default in a few days.
Couple of more notes in the ChangeLog
To do:
- Make it work for non-dedicated-stream - When you copy the text of just a portion of a presentation with meta-w, remove the text properties. - Properly factor for swank.lisp, swank-backend, and lisp specific portions. - boxed text for multiple lines is ugly (lispms boxed the outside of all the text - emacs boxes each line). So see if there is a way to get nicer behavior, or consider changing default mouseover style. - Maybe replace x-popup-menu with menu-keymaps (volunteers welcome) - Assuming presenting readable objects doesn't cause problems, decide what other objects should so be printed - next candidate: structures. - Try to implement nested presentations. Strategy: slime-repl-old-output becomes a list of ids of object point is part of. Copy presentation and mouseover highlighting need extra work to properly gather all the parts.
-Alan
On May 22, 2005, at 2:58 AM, Alan Ruttenberg wrote:
There is now support for menus on the presentations. Assuming you have present.lisp loaded, mouse-3 will bring it up. Documentation on how to define menus is in present.lisp.
Note that this uses x-popup-menu. Don't know if that works in xemacs.
-Alan
I've added xemacs support. slime-repl-enable-presentations now defaults to t always. Please let me know if you have troubles. xemacs doesn't have :box style, so :bold is used instead for the mouseover face.
- When you copy the text of just a portion of a presentation with
meta-w, remove the text properties.
Done. Don't know if I should have just defined a replacement for meta-w. Instead I did it with the pre/post command hook.
-Alan
Alan Ruttenberg alanr-l@mumble.net writes:
I've added xemacs support.
in 21.4p15 there is no `text-property-default-nonsticky' variable and I get an error during startup. What version are you testing with?
Alan Ruttenberg wrote:
[...]
Done. Don't know if I should have just defined a replacement for meta-w. Instead I did it with the pre/post command hook.
In CVS Emacs at least, this should probably be done via the `yank-excluded-properties' variable.
Can one make it conditional? You want to remove the properties only when you are copying less than the whole presentation. -Alan
On May 24, 2005, at 10:26 AM, Lawrence Mitchell wrote:
Alan Ruttenberg wrote:
[...]
Done. Don't know if I should have just defined a replacement for meta-w. Instead I did it with the pre/post command hook.
In CVS Emacs at least, this should probably be done via the `yank-excluded-properties' variable.
-- Lawrence Mitchell wence@gmx.li
slime-devel site list slime-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/slime-devel
Alan Ruttenberg alanr-l@mumble.net writes:
There is now support for menus on the presentations. Assuming you have present.lisp loaded, mouse-3 will bring it up. Documentation on how to define menus is in present.lisp.
This is fucking great :-)
Note that this uses x-popup-menu. Don't know if that works in xemacs.
Works in my XEmacs.
P.S. Richard P. Gabriel will be at the Lisp workshop in Scotland in July. While we have him in our clutches maybe we should dish out some punishment for his part in the XEmacs debacle. Wedgie?