Sobreposição de anotações embutidas com Quill

No meu aplicativo, os usuários podem criar comentários de margem em qualquer lugar do corpo do documento, e os intervalos de âncora de comentários podem se sobrepor arbitrariamente, assim:

This [abc]is a set of [xyz]overlapping[/xyz] comments[/abc]

Estou definindo meu comentário-âncora como este:

let Inline = Quill.import('blots/inline');

class CommentAnchorBlot extends Inline  {
  static create(commentId) {
    let node = super.create();
    node.setAttribute("class", "comment-anchor comment-anchor-" + commentId);
    return node;
  }

  static formats(node) {
    var classNames = node.getAttribute('class').split(/\s+/);
    for (var i = 0, len = classNames.length; i < len; i++) {
      var className = classNames[i];
      if (className.indexOf("comment-anchor-") === 0) {
        return className.replace("comment-anchor-", "");
      }
    }
    return null;
  }
}
CommentAnchorBlot.blotName = 'comment';
CommentAnchorBlot.className = 'comment-anchor';
CommentAnchorBlot.tagName = 'span';
Quill.register(CommentAnchorBlot);

Mas quando eu testo em uma instância do Quill em execução, ele gera pergaminho como este:

{
  "ops" : [
    { "insert" : "This " },
    { "insert" : "is a set of ", "attributes" : { "comment" : "abc" } },
    { "insert" : "overlapping ", "attributes" : { "comment" : "xyz" } },
    { "insert" : " comments", "attributes" : { "comment" : "abc" } }
  ]
}

O que é problemático, porque a palavra "sobreposição" deve realmente ter "abc" e "xyz" como seus IDs de ancoragem de comentário.

Como você recomendaria alterar a definição CommentAnchorBlot, para acomodar esse requisito? Não vi nenhum outro exemplo na documentação do Quill que funcione dessa maneira.

questionAnswers(1)

yourAnswerToTheQuestion