Batch markText() calls under an operation.

Doesn't help much.
Doing all markText() at the end seems to help a bit - from 24–28s to stable 23s.
Wrapping them in an operation speeds them from 100ms to 35ms.