2006-01-15 Stefan Monnier <monnier@iro.umontreal.ca>
+ * textmodes/flyspell.el (flyspell-kill-ispell-hook): New fun.
+ (flyspell-mode-on): Use it.
+
* textmodes/ispell.el (ispell-kill-ispell): Run new hook
ispell-kill-ispell-hook.
(member (or ispell-local-dictionary ispell-dictionary)
flyspell-dictionaries-that-consider-dash-as-word-delimiter)))))
+(defun flyspell-kill-ispell-hook ()
+ (setq flyspell-last-buffer nil)
+ (dolist (buf (buffer-list))
+ (kill-local-variable 'flyspell-word-cache-word)))
+
;;*---------------------------------------------------------------------*/
;;* flyspell-mode-on ... */
;;*---------------------------------------------------------------------*/
(or ispell-local-dictionary ispell-dictionary
(if flyspell-default-dictionary
(ispell-change-dictionary flyspell-default-dictionary)))
+ ;; Make sure we flush our caches when needed.
+ (add-hook 'ispell-kill-ispell-hook 'flyspell-kill-ispell-hook)
;; we have to force ispell to accept the local definition or
;; otherwise it could be too late, the local dictionary may
;; be forgotten!