On Fri, Jul 22, 2022 at 4:38 PM Eli Zaretskii wrote: > How else would you know where such re-scanning is needed? An Emacs > command could change buffer text in several places and in different > ways, and you must ensure all the characters of a line have the > correct properties. > Depends on the application. Each application just sets properties where and when it sees fit. It can keep track of where it set them using markers, for example. Also many commands such as movement don't change text. Aaanyway, I think I'm happy with the current implementation that _doesn't_ use line numbers at all. I think this discussion has been productive (to some degree). If I ever need this again (or someone else, like Dmitry), I'll be sure to ping here again. For now, my itch has been scratched with a less complicated back-scratcher. And what a scratch! I attach an animated gif, which incidentally shows the how the rmsbolt.el package I was describing earlier works. Changing the subject completely, I wonder if there's any interest in adding rmsbolt.el to GNU Elpa or even to core. It's not just for C/C++, it works for a bunch of languages. https://gitlab.com/jgkamat/rmsbolt Apologies if it's old news and everyone's been using this, but it's the best package I've seen appear in some time. João Távora