src/language-markdown/preprocess.js/restoreUnescapedCharacter
function restoreUnescapedCharacter(ast, options) {
  return mapAst(ast, (node) => {
    return node.type !== "text"
      ? node
      : {
          ...node,
          value:
            node.value !== "*" &&
            node.value !== "_" &&
            node.value !== "$" && // handle these cases in printer
            isSingleCharRegex.test(node.value) &&
            node.position.end.offset - node.position.start.offset !==
              node.value.length
              ? options.originalText.slice(
                  node.position.start.offset,
                  node.position.end.offset
                )
              : node.value,
        };
  });
}