Usamah M. Ali wrote:
Opera is the only current browser that support IRIs the right way by default. While Safari (for Windows) seems to support it right too and by default, it has rather a funny show-stopper bug in rendering Arabic scripts that deemed it certainly useless to Arabic users.
The function you've suggested looking at is really nothing more than PHP's urlencode() with 2 regular expressions matching for including ':' and '/' as characters. I think there's a need to write a converter function that converts a URL string in percent-escape format to a UTF-8 one. I'll see what I can do and respond back later on.
Yeah, it's called don't-escape-those-other-bytes or unescape-the-ones-you-want.
Although I'm quite impressed with the level of emphasis on internationalization in MediaWiki, I'm a bit disappointed that IRIs, which is now supported by almost all modern browsers, cannot be used in MW.
We use URI-encoded IRIs exclusively. This is compatible with all known browsers and HTTP. Which is... good? :)
-- brion vibber (brion @ wikimedia.org)