wucuo
wucuo copied to clipboard
wucuo is not automatically checking the buffer after the update interval
As mentioned in the Readme, I saved the file and expected wucuo to start spell checking after the update interval. But even after waiting a really long time, wucuo is not checking the buffer.
I tried running flypsell-region
and flyspell-buffer
and they seem to be working fine. I tested with both hunspell and aspell dictionaries.
I change the interval to 2 seconds. The check process starts when you saving the buffer.
I notice the same thing. So wucuo only start spell checking after the first save? It seems like spell checking happens after a save but is not updated at any interval after that. I have wucuo-update-interval
at the default 2
what's the output after (setq wucuo-debug t)
?
I can't reproduce the bug.
Upon opening a file:
wucuo-start called.
as excepted but that's it.
After modifying and saving:
wucuo-spell-check-buffer called.
<- But I didn't see an spell checking on the incorrectly spelled word I entered
After modifying and saving again:
wucuo-spell-check-buffer called.
wucuo-spell-check-visible-region called from 5548 to 7026; major-mode=c-mode
Starting new Ispell process hunspell with default dictionary...done
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=ret rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-comment-face), current-font-face=font-lock-comment-face
wucuo-generic-check-word-predicate => word=is rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(is)
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-type-face
wucuo-generic-check-word-predicate => word=actuatorIF rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-variable-name-face), current-font-face=font-lock-variable-name-face
wucuo-generic-check-word-predicate => word=itf rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(itf)
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=getName rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=getName rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=const rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-type-face
wucuo-generic-check-word-predicate => word=actuatorIF rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-function-name-face), current-font-face=font-lock-function-name-face
wucuo-spell-checker-to-string => cmd=hunspell -a -d en_US rlt=@(#) International Ispell Version 3.2.06 (but really Hunspell 1.7.0)
*
*
[2 times]
wucuo-generic-check-word-predicate => word=ActuatorMotor rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=(Actuator Motor)
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=const rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=const rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-type-face
wucuo-generic-check-word-predicate => word=actuatorMotor rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-type-face
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-variable-name-face), current-font-face=font-lock-variable-name-face
wucuo-generic-check-word-predicate => word=cfg rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(cfg)
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-variable-name-face), current-font-face=font-lock-variable-name-face
wucuo-generic-check-word-predicate => word=nicie rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(nicie)
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=nicie rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=feedbacks rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=actuatorMotor rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=feedbacks rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-type-face
wucuo-generic-check-word-predicate => word=impl rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=calloc rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=sizeof rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=impl rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=mutex rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=mutex rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=memcpy rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=feedbackIFs rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=feedbacks rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=sizeof rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=actuatorMotor rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=feedbacks rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=memcpy rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=maxRatings rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=maxRatings rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=sizeof rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=actuatorMotor rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=maxRatings rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=motorDriverIF rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=cfg rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=motorDriverIF rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=strlcpy rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-constant-face
wucuo-generic-check-word-predicate => word=ULA rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-constant-face
wucuo-generic-check-word-predicate => word=ULA rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=isEnabled rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=memcpy rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=itf rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=itf rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=font-lock-keyword-face
wucuo-generic-check-word-predicate => word=sizeof rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=actuatorIF rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=nil, current-font-face=nil
wucuo-generic-check-word-predicate => word=itf rlt=nil wucuo-extra-predicate=(lambda (word) t) subwords=nil
mode-predicate=nil
font-matched=(font-lock-comment-face), current-font-face=font-lock-comment-face
wucuo-generic-check-word-predicate => word=alsdkf rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(alsdkf)
mode-predicate=nil
font-matched=(font-lock-comment-face), current-font-face=font-lock-comment-face
wucuo-generic-check-word-predicate => word=whenj rlt=t wucuo-extra-predicate=(lambda (word) t) subwords=(whenj)
All incorrectly spelled words in visible region are highlighted as expected, but when I got to type new incorrectly spelled words they are not getting highlighted - I have to save the buffer to get additional debug output. I have ensured that flyspell mode is disabled for this buffer.
spell checking is triggered when you save current buffer, see https://github.com/redguardtoo/wucuo#usage
That's the key difference from flyspell-mode
. The purpose of such design is make Emacs light weight.
I know the minor bug that first saving does not trigger the spell check actually. I will fix it soon.
Sounds good - I appreciate your work developing this package!
What is the usage for wucuo-update-interval
then? From your documentation I thought it was the time interval at which the spell checking is called periodically, but I don't see it being called periodically, I only see it called after saving
Saving might happen too frequently. I use some auto save package.
I see - so spell checking only happens on save and wucuo-update-interval
prevents the spell checking from happening too frequently if you use an auto-save package?