I think it would be easy since we already have `listener` and `defaultValue`, maybe I should write an example.
More generally, what inspired you to make this, what did you feel is missing from prosemirror-markdown? What does this do differently or better?