Steven E. Harris wrote:
The hs-special-modes-alist requires a different set of values than what you proposed. Here's a corrected version.
XEmacs and Emacs have incompatible formats for hs-special-mode-alist, hence my version being wrong for you.
Here's a corrected patch --- Maintainers? :)
[...]
Starting up a fresh XEmacs instance with this definition allowed slime to start up properly on the first and every subsequent try.
Index: ChangeLog =================================================================== RCS file: /project/slime/cvsroot/slime/ChangeLog,v retrieving revision 1.355 diff -u -r1.355 ChangeLog --- ChangeLog 27 Apr 2004 22:49:45 -0000 1.355 +++ ChangeLog 27 Apr 2004 23:03:20 -0000 @@ -1,3 +1,10 @@ +2004-04-28 Lawrence Mitchell wence@gmx.li + + * slime.el (slime-events-buffer): Remove test for XEmacsness. + Bind `hs-special-modes-alist' correctly to set + `hs-block-start-regexp' for both Emacs and XEmacs. + (slime-same-line-p): Fix indentation. + 2004-04-28 Helmut Eller e9626484@stud3.tuwien.ac.at
* slime.el (slime-net-connect): Bind inhibit-quit to nil, so that
Index: slime.el =================================================================== RCS file: /project/slime/cvsroot/slime/slime.el,v retrieving revision 1.281 diff -u -r1.281 slime.el --- slime.el 27 Apr 2004 22:35:24 -0000 1.281 +++ slime.el 27 Apr 2004 23:02:16 -0000 @@ -1666,16 +1666,22 @@
(defun slime-events-buffer () (or (get-buffer "*slime-events*") - (let ((buffer (get-buffer-create "*slime-events*"))) - ;; Using hideshow mode in XEmacs has caused obscure problems - ;; for some users. -luke (24/Apr/2004) - (unless (featurep 'xemacs) - (with-current-buffer buffer - (set (make-local-variable 'hs-block-start-regexp) "^(") - (set (make-local-variable 'comment-start) ";") - (set (make-local-variable 'comment-end) "") - (unless (featurep 'xemacs) - (hs-minor-mode)))) + (let ((buffer (get-buffer-create "*slime-events*")) + ;; `hs-grok-mode-type' overrides the setting of + ;; `hs-block-start-regexp' using this variable. Bind it + ;; accordingly -- Lawrence 2004/04/27 + (hs-special-modes-alist (if (featurep 'xemacs) + '((fundamental-mode "^(" nil)) + '((fundamental-mode "^(" nil + ";" nil nil))))) + (with-current-buffer buffer + ;; Will most likely get overridden by + ;; `hs-special-modes-alist', but better safe than sorry + ;; -- Lawrence 2004/04/27 + (set (make-local-variable 'hs-block-start-regexp) "^(") + (set (make-local-variable 'comment-start) ";") + (set (make-local-variable 'comment-end) "") + (hs-minor-mode)) buffer)))
@@ -2989,8 +2995,8 @@
(defun slime-same-line-p (pos1 pos2) "Return t if buffer positions POS1 and POS2 are on the same line." - (save-excursion (goto-char (min pos1 pos2)) - (<= (max pos1 pos2) (line-end-position)))) + (save-excursion (goto-char (min pos1 pos2)) + (<= (max pos1 pos2) (line-end-position))))
(defun slime-severity-face (severity) "Return the name of the font-lock face representing SEVERITY."