IDN with Gemini?

colecmac at protonmail.com colecmac at protonmail.com
Mon Dec 7 13:56:25 GMT 2020


Not sure exactly where to jump in, so I'm gonna share my thoughts here.
I thinking having IRIs would be nice, and I feel bad that currently
non-english authors are second-classed in this manner. But from the
beginning Gemini has been about being simple -- not for authors, but
for programmers. It was intended to be able to implemented in a weekend,
in a few hundred lines, ideally without even needing libraries outside
your language's stdlib.

Supporting IRIs is *not* simple. For example, in Python it requires a
third-party library[1], and in Go I wasn't even able to find one. This
means that in many programming languages, no one would be able to even
begin writing a Gemini client before writing a library that parses and
conforms to the complex specification that is IRIs.

Secondly, this would be a large breaking change for Gemini. Even if IRIs
were supported in all programming languages, I don't think making breaking
changes to Gemini is feasible at this point. Things are too set, and
attempting to do this would break the ecosystem.

Lower down in the thread, Stephane Bortzmeyer mentions:

> From the point of view of users, I believe it will be hard to explain
> that Unicode characters are allowed in the domain name but not in the
> path, or vice-versa.

This is true and unfortunate. My proposal[2] is only about domain names,
and so this would have to be explained to users. But as I've outlined
above, using IRIs would be virtually impossible, and so I think supporting
IDNs in link lines is the best we can give non-english authors.


1: https://stackoverflow.com/a/12565315/7361270
2: https://github.com/makeworld-the-better-one/go-gemini/issues/10


Thanks,
makeworld


More information about the Gemini mailing list