Eli Zaretskii <[EMAIL PROTECTED]> writes: > I don't know why older Aspell's are no good for us. Magnus, can you > please comment on that?
The main cause is that aspell >= 0.60 consistently supports UTF-8, which simplifies the automatic dictionary detection. Supporting aspell 0.50 would involve either looking for "charset" declarations in in ispell-aspell-find-dictionary, or disabling the dictionary finding and relying on the value of ispell-dictionary-alist. The latter would be something like this patch:
--- orig/lisp/textmodes/ispell.el +++ mod/lisp/textmodes/ispell.el @@ -719,6 +719,12 @@ (defvar ispell-really-aspell nil) ; Non-nil if aspell extensions should be used +(defvar ispell-aspell-supports-utf8 nil + "Non-nil means to try to automatically find aspell dictionaries. +This is set to t in ispell-check-version for aspell >= 0.60. + +Earlier aspell versions do not consistently support UTF-8. Handling +this would require some extra guessing in `ispell-aspell-find-dictionary'.") @@ -815,8 +821,9 @@ (let (case-fold-search) (setq ispell-really-aspell (and (search-forward-regexp "(but really Aspell \\(.*\\))" nil t) - (if (version< (match-string 1) "0.60") - (error "aspell version 0.60 or greater is required") + (progn + (setq ispell-aspell-supports-utf8 + (not (version< (match-string 1) "0.60"))) t))))) (kill-buffer (current-buffer))) result)) @@ -972,7 +979,8 @@ (condition-case () (progn (ispell-check-version) t) (error nil)) - ispell-really-aspell) + ispell-really-aspell + ispell-aspell-supports-utf8) (ispell-find-aspell-dictionaries)) (let ((dicts (append ispell-local-dictionary-alist ispell-dictionary-alist)) (dict-list (cons "default" nil))
Other than that, minor details and risk of bit rot. E.g. 0.50 accepts "-l" as an alias of "list", while 0.60 does not (this was fixed in flyspell a couple of months ago). Magnus
_______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel