parseUrlGroup(e) {
    this.gullet.lexer.setCatcode("%", 13), this.gullet.lexer.setCatcode("~", 12);
    var t = this.parseStringGroup("url", e);
    if (this.gullet.lexer.setCatcode("%", 14), this.gullet.lexer.setCatcode("~", 13), t == null)
      return null;
    var r = t.text.replace(/\\([#$%&~_^{}])/g, "$1");
    return {
      type: "url",
      mode: this.mode,
      url: r
    };
  }
Form ligature-like combinations of characters for text mode.
This includes inputs like "--", "---", "``" and "''".
The result will simply replace multiple textord nodes with a single
character in each value by a single textord node having multiple
characters in its value.  The representation is still ASCII source.
The group will be modified in place.