Jürgen Spitzmüller schrieb:
Michael Gerz wrote:
for (; cur; cur.forwardChar())
- if (cur.inTexted() && match(cur.paragraph(), cur.pos()))
+ if (cur.inTexted() &&
+ (find_del || !cur.paragraph().isDeleted(cur.pos())) &&
+ match(cur.paragraph(), cur.pos()))
return true;
return false;
}
AFAICS, you only check the deletion status of the first character. However,
ALL matching characters shouldn't be marked as deleted.
I don't understand. I just assure that a character is skipped on find if it is
marked deleted. Since the loop moves ahead, this test applies to all
characters of a word. And nothing will be "marked" anyway.
Or do I miss something?
Maybe I was talking nonsense. I just looked at the patch (without the
surrounding code). It looked like you check for the first character and
then match(...) tries to match the complete string.
If this isn't true, please ingore my comment and ask for another OK. (I
have to leave in a few seconds.)
Michael