>> Value: (nil
>> (#(" " 0 3
>> (fontified t))
>> . 12)
>> (#<marker at 12 in foo.py> . -2)
>> (#<marker at 12 in foo.py> . -2)
>> (#<marker in no buffer> . -3)
>> (#<marker in no buffer> . -2)
>> (t 20985 26927 0 0))
> Oh, right. That would be good as well. At least as good as option 1.
> So I'd go with whichever of option 1 or 2 is simpler.
Attached is the new patch to solve this, implementing option 2 and
incorporating your feedback.