When you put the cursor inside an FTL tag, like <#if ...>, the background color of related tags, like <#else> and </#if>, is changed. The problem is that if now you start typing into a such background-colored tag, the offsets of the colored sections after it will become outdated, and so they start to drift left from under the tag. This is because the up to date offsets only become available after the reconciling thread has finished, but the background coloring logic is called directly in the keydown handler. I'm not familiar with plugin development, but I suspect this is architecturally wrong. Perhaps the reconciler should send some kind of event when it's done, and if the editor content is still in the state for which the reconciling was ran, only then should the old background coloring be removed and the new one is added.