Is there any description why the first bracket is not escaped if it follows a ? or ! ?
?
!
<!not_a_tag <?not_a_tag <![img](not_image_because_first_bracket?)
All above code example is invisible because first bracket is not escaped. However, if it is ascii character after bracket, it is escaped, like <invalid_tag. Or they are not at the beginning of line.
<invalid_tag
<?php <!DOCTYPE
those are start of directives,
But they don’t have right bracket >?
>
http://talk.commonmark.org/t/why-allow-incomplete-html-block-tags/1006
They can be multiline and so on.
That’s not markdown task to guarantee correct html output. So, no needs to overcomplicate things.