Currently I can type whole paragraphs, and undo will wipe them all.
I understand this comes from Scintilla and your options may be limited, but to me it is very jarring. I'd expect undo to work either by some kind of rough keyword detection algorithm, or just character-by-character.
I think ideally for me it would create an undo stop if I inserted any common linguistic delimiter (colon, space, tab, apostrophe, etc) after any character that was not a linguistic delimiter.
You are correct its in Scintilla which seems to coalesce continuous sequences of typing and deleting. So if you type a whole paragraph without taking breath it will be treated as one "thing".
The problem with "common linguistic delimiter" is its filetype and (human) language dependent.
Scintilla provides a means to get greater control, so since Geany does very little control of undo redo plugins could provide human/programming language specific redo control.
For the record I was testing up to a minute between characters, so if time is a factor it's not enough of one IMO.
Agree, I don't think Scintilla uses time, I think its just continuous sequences of typing and deleting, as soon as its non-contiguous the undo is broken.
"type type type", "oops", "back arrow back arrow type one character" the undo sequence starts again at that character. Since I have _never_ typed a whole paragraph without having to go back and fix stuff I have never noticed how big the undo can be :grin:.
github-comments@lists.geany.org