ahungry / fast-scroll

Emacs package to ensure scrolling remains fast
GNU Affero General Public License v3.0
87 stars 5 forks source link

fast-scroll should check whether "flyspell" is enabled before taking action #5

Closed luluman closed 4 years ago

luluman commented 4 years ago

Suppose "flyspell" is disabled in some buffer or major mode, fast-scroll will enable "flyspell" if we do some scrolling. fast-scroll should check whether "flyspell" is enabled or not before taking action.

ahungry commented 4 years ago

It doesn't explicitly do anything with flyspell or flymake or flycheck - there is a defvar list of hooks, fast-scroll-end-hook which will run when the 'fast-scroll' is done - do you have flyspell in yours?

When fast-scroll stops, the following occurs:

          (defun fast-scroll-end (buf)
            "Re-enable the things we disabled during the fast scroll for buffer BUF."
            (when (fast-scroll-end-p)
              (with-current-buffer buf
        (setq fast-scroll--fn-called-in-buffer nil)
                (setq mode-line-format fast-scroll-mode-line-original)
        (font-lock-mode 1)
                (run-hooks 'fast-scroll-end-hook)
        (setq fast-scroll-throttling-p nil)
                (setq fast-scroll-count 0))))

So, if your flyspell is set to enable anytime font-lock-mode is turned on, maybe that is happening?

I think the vast majority of the time font-lock-mode would be on, to where it isn't worth handling an edge case of fast-scroll where font-lock-mode is already off (fast-scroll would not be needed on such a buffer, so just don't enable it)

ahungry commented 4 years ago

Since flyspell isn't part of fast-scroll, I'm going to close this - feel free to comment/request a re-open if I'm missing something and it's fast-scroll directly responsible in some way.