Twine 1: Bugfix update of my Combined Replace Macros

I've recently updated my <<Replace>> Macro Set to version 1.1.5. Normally I don't make auxiliary posts explaining changes to my macros, but I think this deserves one due to the number of nuanced fixes that this attends to.

<<endinsertion>> fixed
This particular end tag had a nasty and embarrassing bug - the text "n>>" was left behind after it, unless you instead substituted <<endinsert>> for it (which was also a bug, as it shouldn't work like that). That's fixed, and <<insertion>> spans may be used with their proper end tags again.

<<revise>>: "end" option fixed
Consider this code:

<<revision "B">>The balcony is vacant.<<becomes>>The balcony is occupied by a party of ghosts.<<endrevision>>
Maybe you should <<revise B "look closely" end>>.

The "end" in the <<revise>> macro is supposed to make it so that the text "look around" remains after you click to the end of the revision... but until now, it's been broken. Now that's fixed. While making some Twine games of my own, I discovered (or rediscovered) that this particular idiom is actually a valuable usage case, so I deeply regret that it's been unavailable for so long.

<<hoverreplace>> <<gains>> behaviour fixed

<<gains>> hasn't quite worked with <<hoverreplace>> since its inception. Consider this code:

<<hoverreplace>>First bit<<gains>> and next bit<<endhoverreplace>>
If you moused over the first bit (causing the next bit to appear), but did not ever touch the next bit, it wouldn't disappear when you moused off it. This is now fixed.

<<hoverreplace>> rapid mouse behaviour fixed
For awhile, <<hoverreplace>> has been more than a little flaky when rapidly moving the mouse on and off the element. I've tried a few fixes in the past to alleviate this, but this one looks to be much better, and testing shows it to be robust.

A note about <<hoverreplace>>
One thing that is still not yet fixed is the problem caused when the initial state is larger than the end state. Consider this code:

<<hoverreplace>>[img[large image]]<<gains>>Small text<<endhoverreplace>>

This code is still buggy because as soon as you mouseover the large image, it disappears, leaving the small text behind, and thus your pointer is no longer "over" the hoverreplace structure. I may still be able to fix this in the future, but generally, in this particular situation you should resort to <<mousereplace>>.

Questions
Q: Why did it take you 9 months to write the fixes for these bugs?
A: At the time, my attention had been single-mindedly focused on both my day job, preparing Twine 1.4.2, and developing Twine 2. I apologise sincerely for this unsightly delay in basic maintenance, and will try to be less badly negligent in the future.

pensive-mosquitoes