From: Eli Zaretskii Date: Sat, 11 Mar 2006 15:36:15 +0000 (+0000) Subject: (ispell-find-aspell-dictionaries): Add aliases before merging elements from the X-Git-Tag: emacs-pretest-22.0.90~3684 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=918555b804bef8d1a8121b9b7688affa35719540;p=emacs.git (ispell-find-aspell-dictionaries): Add aliases before merging elements from the standard ispell-dictionary-alist. (ispell-aspell-add-aliases): Add aliases to the passed dictionary alist, and return the new alist. --- diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el index cf82dbdd3db..1991a73e8e2 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el @@ -899,14 +899,15 @@ and added as a submenu of the \"Edit\" menu.") (found (delq nil (mapcar #'ispell-aspell-find-dictionary dictionaries)))) + ;; Ensure aspell's alias dictionary will override standard + ;; definitions. + (setq found (ispell-aspell-add-aliases found)) ;; Merge into FOUND any elements from the standard ispell-dictionary-alist ;; which have no element in FOUND at all. (dolist (dict ispell-dictionary-alist) (unless (assoc (car dict) found) (setq found (nconc found (list dict))))) (setq ispell-dictionary-alist found) - - (ispell-aspell-add-aliases) ;; Add a default entry (let* ((english-dict (assoc "en" ispell-dictionary-alist)) (default-dict @@ -973,8 +974,9 @@ Assumes that value contains no whitespace." (file-error nil)))) -(defun ispell-aspell-add-aliases () - "Find aspell's dictionary aliases and add them to `ispell-dictionary-alist'." +(defun ispell-aspell-add-aliases (alist) + "Find aspell's dictionary aliases and add them to dictionary ALIST. +Return the new dictionary alist." (let ((aliases (file-expand-wildcards (concat (or ispell-aspell-dict-dir (setq ispell-aspell-dict-dir @@ -987,11 +989,12 @@ Assumes that value contains no whitespace." (when (search-forward-regexp "^add \\([^.]+\\)\\.multi" nil t) (let* ((aliasname (file-name-sans-extension (file-name-nondirectory alias-file))) - (already-exists-p (assoc aliasname ispell-dictionary-alist)) + (already-exists-p (assoc aliasname alist)) (realname (match-string 1)) - (realdict (assoc realname ispell-dictionary-alist))) + (realdict (assoc realname alist))) (when (and realdict (not already-exists-p)) - (push (cons aliasname (cdr realdict)) ispell-dictionary-alist)))))))) + (push (cons aliasname (cdr realdict)) alist)))))) + alist)) (defun ispell-valid-dictionary-list () "Returns a list of valid dictionaries.