split error case into bad attr.name or unclosed tag

now catches `<p 1mar-_data="lol">x</p>`, `<p mar:-_data="lol">x</p>` as well as `<p mar-_data="lol"x</p>`.