DSpellCheck icon indicating copy to clipboard operation
DSpellCheck copied to clipboard

Implement firefox-like system for spelling rechecking as an alternative to current timer-based one

Open georgthegreat opened this issue 12 years ago • 5 comments

This is the default behavior of LibreOffice, OO and, I think, MSO. All suites ignore the word, if the cursor is placed at the end of it.

georgthegreat avatar Jun 21 '13 04:06 georgthegreat

Well the real issue here is what there is always different system to avoid this stuff is being used and they always have some drawbacks. Maybe it has some sense to add an option for choosing between different systems though. I use timeout after last user input but it has an obvious drawback of the fact that you have to wait for the word to be treated as right the same amount of time as for it to be treated as wrong (this system was used in MSVC spellchecker).

I checked LibreOffice and their system has an obvious flow, if you write a word in the middle of text, it will be rechecked only on the next input somewhere else, no matter how you move the caret.

For Chrome system is a little nicer, while you've done some input inside a word (or removal) the word would be treated as rightly spelled, if you move caret out of it, it will be rechecked. Though they have some bugs, looks like I should report about them) for example if you write something at the end of the line after that you can insert any symbols to any words and they won't be rechecked until you write space or some stuff like that. Also if you're staying after the first symbol of word after your editing operation it also will be rechecked for some reason.

So these alternative systems could be added(as alternative) but after cleaning the bugs and unwanted behavior in them)

Predelnik avatar Jun 21 '13 05:06 Predelnik

I think that all these systems can be combined (seems that they don't intersect their functions).

georgthegreat avatar Jun 21 '13 06:06 georgthegreat

No, I believe they intersect pretty much for example if I use caret position I want words to be checked instantly after caret position change, there's no place for timer in it. Timer system is the only one where the word at the end of the text would be checked. Chrome and openoffice systems are kinda similar but chrome one is a little bit extended by events triggered by caret position, though user may want or may not want such extension to exist probably. Well they can be combined somehow but it'll probably make things awkward.

Honestly the system I'm using now is my favourite but I don't mind looking into other ones, maybe it's not very urgent issue though)

Predelnik avatar Jun 21 '13 06:06 Predelnik

Related, but not the same: if you start typing phrase, stop in the middle of the word, wait till it's marked incorrect, and then continue typing, the word will not be marked correct till the next recheck, which may occur after quite long delay (if you a typing fast enough).

georgthegreat avatar Jun 21 '13 07:06 georgthegreat

Yeah that's the disadvantage I was talking about in the beginning. I'll probably try to do firefox like system (it looks like chrome but without bugs :) ) and add it as an alternative (could be changed to default in the future)

Predelnik avatar Jun 21 '13 07:06 Predelnik