Helmut Eller wrote:
- Raymond Toy [2009-08-14 03:27+0200] writes:
One long standing bug is that xemacs' goto-char doesn't like nil. This shows up with C-x C-k and there are no warnings or errors. I get an error about nil not being an integer or marker. It comes from slime-find-note, in the loop that runs (goto-char (funcall next-candidate-fn (point) 'slime-note). I changed that so goto-char isn't called if funcall returns nil. This gets rid of the warning.
goto-char wouldn't work with nil in Emacs either. It could be that our emulation for next-single-char-property-change returns nil but judging from the code that doesn't seem possible. Can you give a recipe to reproduce the bug? C-c C-k without warnings seems to work here.
I'll take a look at next-single-char-property-change. And I'm currently using xemacs 21.5.29.
Here is one example where C-c C-k causes an error. Just put this defun into a file, load it up and C-c C-k.
(defun load-or-compile (path) (unless (load (compile-file-pathname path) :if-does-not-exist nil) (compile-file path :load t)))
[There is some problem with M-n/M-p because XEmacs seems to forget to sync buffer point and window point when temporarily selecting a different window.]
I also noticed that slime-autodoc makes post-command-hook a buffer-local hook. It might be a bug in xemacs but the post-command-hook becomes (slime-post-command-hook t). I think that "t" causes problems. Manually removing it makes it work much better.
I'm sorry, but my analysis was not complete. With slime 2008-12-11, the post-command-hook contains t (but no slime-post-command-hook). This works fine.
with current slime, however, there must be some other problem. What I see is when I do C-x C-f and take too long, I get an error about (natnump t). The backtrace says something about an internal error and XEmacs bug? or something.
However, my default post-command-hook value is '(paren-highlight), so when it's made buffer-local, I lose the paren-highlighting. This used to work fine with slime from 2008-11-23 or so.
Is there something I can do to make paren-highlight still used? I really miss the paren highlighting.
Does slime-autodoc anything sensible in XEmacs? Here in XEmacs 21.4 it only prints messages about Elisp functions.
You're right. I thought it was working, but, in fact, it prints messages about Elisp functions.
The slime typeout window, however, does print the correct thing. It's kind of funny. If I type "(push " in the repl, the minibuffer gives the elisp definition, but the typeout window has the Lisp (cmucl) definition.
I'll have to poke around some more....
Ray