可以把文件发给我吗? wucuo-spell-check-buffer-max
设置了最大buffer size。
好的,我传到gist上了:
原来有这个设定,我看了一下,xdisp.c是1136133,比默认值少一点点。我建议把这个值调低一点,比如一半甚至1/4。
查了一下,flyspell速度很快。wucuo-flyspell-start-mode
如果是"fast"的话,性能可以的。建议你(setq wucuo-debug t)
再看一下。
wucuo-flyspell-start-mode
是fast
。可能我没说清楚,编辑时没问题,只有保存的时候卡。我把wucuo-spell-check-buffer-max
调低了。
我是保存的时候一点也不卡,编辑的时候卡。卡的原因我测试了一下,和我使用evil-mode有关联。和wucuo没有关系。可以把wucuo-debug
设置为t,看一下输出,是否确实只检查了可见区域。如果只检查可见区域的话,性能不受buffer大小影响。我显示器1920x1200的分辨率,可见区域48行的高度。实际检查的区域应该翻倍,也就96行而已。
似乎和font-lock有关:
- command-execute 3605 90%
- call-interactively 3605 90%
- funcall-interactively 3605 90%
- save-buffer 2875 71%
- basic-save-buffer 2875 71%
- run-hooks 2871 71%
- wucuo-spell-check-buffer 2803 70%
- flyspell-region 2803 70%
- flyspell-large-region 2772 69%
- flyspell-check-region-doublons 2659 66%
- flyspell-word 2659 66%
- wucuo-generic-check-word-predicate 2658 66%
- font-lock-ensure 2654 66%
- jit-lock-fontify-now 2654 66%
- jit-lock--run-functions 2653 66%
- run-hook-wrapped 2653 66%
+ #<compiled 0x1ff037bba2bd> 2653 66%
+ message 3 0%
+ flyspell-accept-buffer-local-defs 1 0%
+ flyspell-external-point-words 103 2%
+ flyspell-accept-buffer-local-defs 9 0%
+ apply 1 0%
+ ispell-set-spellchecker-params 31 0%
+ eglot--signal-textDocument/didSave 66 1%
+ diff-hl-update 1 0%
luna-smart-format-buffer 1 0%
+ basic-save-buffer-1 2 0%
+ verify-visited-file-modtime 1 0%
+ vc-after-save 1 0%
+ counsel-M-x 730 18%
+ ... 386 9%
+ #<compiled 0x1ff037a71465> 5 0%
+ redisplay_internal (C function) 3 0%
jit-lock-function
里就是font-lock函数。无责任猜测:cc-mode我记得用了parser,可能导致重新着色整个buffer很慢之类的?
这是wucuo的log:
好东西,能鼠标中键修改~~~
谢谢,这个我得检查一下,font-lock-ensure
是后来从哪里抄来的,我也没有理解其意义。性能方面处处是陷阱啊
问题已在0.2.4
修正, 这是font-lock-ensure
的定义,(defun font-lock-ensure (&optional beg end)
,默认要检查整个buffer。我也没仔细看代码,就抄过来了。
请问有没有 hunspell 的中文字典啊?好想要w
中文有啥拼写啊orz
还是会有的吧 拼写 写成 写拼 什么的(
wucuo只是hunspell的前端,对于语言没有任何假定。问题是hunspell。我搜索了一下, 看到 爱奇艺发布FASPell:最强简繁中文拼写检查工具-爱奇艺,FASPell,简体,繁体,中文,拼写检查 ——快科技(驱动之家旗下媒体)--科技改变未来 不过hunspell是否实现了我不知道。
支持一下 前两天刚玩过wucuo
谢谢,大概还是没有
果然,中文分词还是难啊