Hello,
I'm trying to use refill-mode in xemacs21 (xemacs-21.4.14-mule, from
the debian package). I've tried a bunch of different versions from
the mode's CVS (you can get a representative version at
http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/emacs/emacs/lisp/textm...).
All of them work fine with FSF Emacs (which I don't use, ubt do
have lying around); none of them will load properly with Xemacs. The
*backtrace* buffer resulting from running M-x eval-current-buffer from
inside the refill.el buffer is:
---------------------------------------------------------------------------
Signaling: (wrong-number-of-arguments #<compiled-function (mode doc &optional
init-value lighter keymap) "...(85)" [keymap-doc mode-doc keymap-name mode-name
keymap mode symbol-name format "Non-nil if %s mode is enabled." "-map"
"Keymap for %s mode." progn defvar make-variable-buffer-local quote intern cond
and keymapp listp easy-mmode-define-keymap t error "Invalid keymap %S"
macroexpand easy-mmode-define-toggle add-minor-mode init-value doc lighter] 12
("/usr/share/xemacs21/xemacs-packages/lisp/xemacs-base/easy-mmode.elc" .
2037)> 8)
#<compiled-function (mode doc &optional init-value lighter keymap)
"...(85)" [keymap-doc mode-doc keymap-name mode-name keymap mode symbol-name
format "Non-nil if %s mode is enabled." "-map" "Keymap for %s
mode." progn defvar make-variable-buffer-local quote intern cond and keymapp listp
easy-mmode-define-keymap t error "Invalid keymap %S" macroexpand
easy-mmode-define-toggle add-minor-mode init-value doc lighter] 12
("/usr/share/xemacs21/xemacs-packages/lisp/xemacs-base/easy-mmode.elc" .
2037)>(refill-mode "Toggle Refill minor mode.\nWith prefix arg, turn Refill mode
on iff arg is positive.\n\nWhen Refill mode is on, the current paragraph will be formatted
when\nchanges are made within it. Self-inserting characters only cause\nrefilling if they
would cause auto-filling." nil " Refill" (quote (("" .
backward-delete-char-untabify))) (when refill-ignorable-overlay (delete-overlay
refill-ignorable-overlay) (kill-local-variable (quote refill-ignorable-overlay))) (when
(local-variable-p (quote refill-late-fill-paragraph-function)) (setq
fill-paragraph-function refill-late-fill-paragraph-function) (kill-local-variable (quote
refill-late-fill-paragraph-function))) (if refill-mode (progn (add-hook ... ... nil t)
(add-hook ... ... nil t) (add-hook ... ... nil t) (set ... fill-paragraph-function) (set
... ...) (set ... ...) (setq refill-ignorable-overlay ...) (overlay-put
refill-ignorable-overlay ... ...) (overlay-put refill-ignorable-overlay ... ...)
(auto-fill-mode 0)) (remove-hook (quote after-change-functions) (quote
refill-after-change-function) t) (remove-hook (quote post-command-hook) (quote
refill-post-command-function) t) (kill-local-variable (quote
backward-delete-char-untabify-method))))
(define-minor-mode refill-mode "Toggle Refill minor mode.\nWith prefix arg, turn
Refill mode on iff arg is positive.\n\nWhen Refill mode is on, the current paragraph will
be formatted when\nchanges are made within it. Self-inserting characters only
cause\nrefilling if they would cause auto-filling." nil " Refill" (quote
(...)) (when refill-ignorable-overlay (delete-overlay refill-ignorable-overlay)
(kill-local-variable ...)) (when (local-variable-p ...) (setq fill-paragraph-function
refill-late-fill-paragraph-function) (kill-local-variable ...)) (if refill-mode (progn ...
... ... ... ... ... ... ... ... ...) (remove-hook ... ... t) (remove-hook ... ... t)
(kill-local-variable ...)))
eval-buffer(#<buffer "refill.el"> nil)
#<compiled-function (&optional printflag) "...(5)" [printflag
eval-buffer] 3 826100 nil>()
call-interactively(eval-current-buffer)
command-execute(eval-current-buffer t)
execute-extended-command(nil)
call-interactively(execute-extended-command)
-----------------------------------------------------
Alas, I'm too incompetent to understand this. Can you guys make sense
of it? Does this reflect a bug in Xemacs, or a design decision of some
kind that refill-mode doesn't take into account? I see from the
archives that there have been issues around refill.el in the past, but
the net suggests that the problems ought to have been fixed. Am I
missing something?
thanks,
matt