In XML hint, this code:
      // MdG: for shorthand attributes (now only 'cc' and 'as', replace shorthand)
      if (atName[1] == "cc" || atName[1] == "as" ) { token.start = token.start - 2; replaceToken = true; };
      for (var i = 0; i < atValues.length; ++i) if (!prefix || atValues[i].indexOf(prefix) == 0)
          // Fix MdG: only provide quotes for strings, if object, supply what's needed in object.text
          //      result.push(quote + atValues[i] + quote);
          if (typeof (atValues[i]) == "string") { result.push(quote + atValues[i] + quote); } else { result.push(atValues[i]);};
      } else { // An attribute name
        if (token.type == "attribute") {
          prefix = token.string;
          replaceToken = true;
        }

replaces:

        for (var i = 0; i < atValues.length; ++i) if (!prefix || atValues[i].lastIndexOf(prefix, 0) == 0)
          result.push(quote + atValues[i] + quote);
      } else { // An attribute name
        if (token.type == "attribute") {
          prefix = token.string;
          replaceToken = true;
        }

This adds cc and as autocompletion.

In show-hint.css:
.CodeMirror-hint {
...
  max-width: 30em;
...
} 