ergoemacs / ergoemacs-mode

ergoemacs-mode
ergoemacs.github.io/
GNU General Public License v3.0
293 stars 35 forks source link

flyspell-mode misbehaves with trunk emacs #375

Closed m00natic closed 3 years ago

m00natic commented 8 years ago

This has been present for a while, but only now did I detect the culprint. Using emacs 25.0.50 (0e38e94 from git) and ergoemacs-mode-20151008.757 from Melpa. To reproduce after ergoemacs-clean:

1) M-s ; move to scratch 2) M-x flyspell-mode 3) start typing

Now every odd key press instead of inserting text leads to message:

Key t doesn't do anything.

Same procedure works fine with the stable emacs-24.5. (also flyspell seems ok with emacs-25 -Q i.e. no ergoemacs enabled)

mattfidler commented 8 years ago

Thanks.

I'm currently having issues with windows and hunspell. I'm getting an error like:

Error enabling Flyspell mode:
(ispell-phaf: No matching entry for en_US.
)

So I cannot reproduce the error. I think this is specific to emacs 24.5; I didn't have this error in 24.3.

mattfidler commented 8 years ago

I have to figure out how to get ispell working on 24.5 or the trunk to test this issue. It seems a bit obnoxious.

mattfidler commented 8 years ago

I finally got flyspell running. However, I cannot reproduce your error.

Have you tried resetting the key cache?

This is done by Alt+a ergoeamcs-mode-clear-cache

Or by looking in ~/.emacs.d/var/pcache/ and deleting everything that has ergoemacs-mode in the name.

Ispell works just fine for me using hunspell, latest trunk, and windows.

mattfidler commented 8 years ago

I run with just ergoemacs-mode installed (no other packages) and rw-hunspell installed

My setup is:

(require 'rw-language-and-country-codes)
(require 'rw-ispell)
(require 'rw-hunspell)
;; The following is set via custom
(setq ispell-program-name "hunspell")
(setq ;; rw-hunspell-default-dictionary ""
 rw-hunspell-make-dictionary-menu t
 rw-hunspell-use-rw-ispell t)
(rw-hunspell-setup)
;; For Emacs 24.4+, need to add to `ispell-hunspell-dict-paths-alist'.
(let (file lst)
  (dolist (elt rw-hunspell-dictionary-alist)
    (when (ignore-errors (file-exists-p (setq file (concat (nth 1 (nth 5 elt)) ".aff"))))
      (unless (member (setq lst (list (nth 0 elt) file)) ispell-hunspell-dict-paths-alist)
     (push lst ispell-hunspell-dict-paths-alist)))))
(ispell-find-hunspell-dictionaries)
(setq ispell-hunspell-dictionary-alist rw-hunspell-dictionary-alist)
m00natic commented 8 years ago

wops, should have mentioned that I use aspell on (Fedora) GNU/Linux system. Cleared caches both ways but still observe the same. I've never managed to get hunspell working (at least nowhere near as well as aspell which needs no setup). Thanks for your digging on this, that may help me wrestle out hunspell.

mattfidler commented 8 years ago

It could either be a Linux difference or aspell difference. I would like to say the code for hunspell support is the same for aspell support, but they are not. When trying to track down the way to make hunspell work with the newer emacs, I looked thought he source.

When I get an opportunity I will try aspell. I'm unsure if I will be able to reproduce the error.

If you use the github version of ergoemacs-mode, you could always bisect the bad revision too (since I cannot reproduce the error as of yet).

loudandskittish commented 8 years ago

I am experiencing this issues on Windows 10 with Emacs 25 and using Hunspell as the spell check. It seems to happen if Flyspell-Mode is activated after Ergoemacs-Mode.

mattfidler commented 8 years ago

Are you using 64 bit emacs?

loudandskittish commented 8 years ago

Yes