I was directed here from a GitHub issue here: https://github.com/syntax-tree/mdast-util-to-hast/issues/44.
I propose to support IDNs/Punycode in URLs so links like [example](https://я.рф/я)
could be encoded as https://xn--41a.xn--p1ai/%D1%8F
not as https://%D1%8F.%D1%80%D1%84/%D1%8F
(this percent-encoding breaks the link).
1 Like
Markdig and markdown-it convert the link destination as desired, see Babelmark. I’m not sure this needs to be specified explicitly, but since implementations diverge it may deserve an example at least.
2 Likes
After a thorough experimenting I’ve found out that https://%D1%8F.%D1%80%D1%84/%D1%8F
isn’t a broken link but actually is opened by a browser as https://я.рф/я
. It’s interesting if it changes the requirements to specification.
@Crissov, do you say that it is implied by the spec that IDNs must be punycoded correctly?
1 Like