GNOME Bugzilla – Bug 344862
Umlauts in channel names don't work
Last modified: 2006-09-25 14:25:15 UTC
Please describe the problem: I'm in a channel on QuakeNet that uses a couple of 'ü' Umlauts in the name. I can join and listen to conversations, but when I type something it says <Tomcat__> test --- #plwerlüpwelü :No such channel (Channel name has been changed because it's a private channel ;)) Steps to reproduce: 1. Join IRC server 2. /join #plwerlüpwelü 3. Type something Actual results: I get "no such channel" error message Expected results: It should send the message to the channel Does this happen every time? Yes Other information:
See also https://launchpad.net/products/xchat-gnome/+bug/49709
Which encoding are you using on this server?
Encoding is UTF-8.
hmm, #plwerlüpwelü works for me on gimpnet
for me too
Works on euIRC as well; But I still can't really agree that it's a bug on the IRCd side - this channel name worked for me for months in regular xchat.
I think it's just got to be a question of finding the right encoding for the server. However, it's odd that you can join it if the encoding was the problem.
As for encoding, I got another thing that might be important... I use a script that joins the channels in QuakeNet, because it has to set the hostmask cloak first (which isn't possible with xchat autojoin). When I imported the qnet.py from regular xchat to xchat-gnome, the file itself was UTF-8. When I first ran the script, I joined the channel #plwerlã£â¼pwelã£â¼ instead of #plwerlüpwelü - and still got "no such channel". This is the same thing that happens when I join manually. So, I changed the encoding of qnet.py to ISO-8859-15... this way, the channel name stays correct, but doesn't work either. Maybe that sheds some light onto the issue.
Well, the python thing is separate. I just synced up all the core stuff to xchat cvs. Can you try again with svn?
I tried it, but I'm not able to compile it... I got gnome-common from CVS, compiled and make install'd it, installed libsexy-dev, then got xchat-gnome from SVN. Now autogen says Checking for forbidden M4 macros... ***Error***: some autoconf macros required to build xchat-gnome were not found in your aclocal path, or some forbidden macros were found. Perhaps you need to adjust your ACLOCAL_FLAGS? I don't really know how to adjust these, I'm not often compiling gnome stuff manually... If it's easy to fix I can try again, but if not I guess I'll have to wait till a binary release hits Ubuntu or some other LiveCD.
Try apt-get build-dep xchat-gnome to install build dependencies
Thanks Guillaume. I could compile it that way. Now, I've done some more research into the bug, and as Guillaume suspected much earlier, it's a network character encoding issue which is not even a "real xchat bug". I also found out that it's absolutely the same in regular xchat. The problem is that I usually use UTF8 for encoding. So when I join channel #ü, the IRCd gets two bytes for the umlaut character. The server however doesn't seem to run on UTF8, so instead of joining [ISO]#ü, I'm joining [UTF]#ü, which is [ISO]#ã¼. Which does work, but is not really the channel I tried to join. When I switch the encoding of QuakeNet to ISO, it works perfectly. Of course then I can't write text in UTF8. :) It's not a real xchat bug though because the only network I regularly use behaving like that is QuakeNet. Joining the same channel on euIRC works perfectly, so it supports UTF8 channel names. FreeNode disallows access to channels with special characters. The original bug - the "no such channel" message - appears in conjunction my autojoin-script. If the python script is an ISO file, the channel name is [ISO]#ü, so I can join it. When I write a message, it gets sent with [UTF]#ü as the channel name, and because I'm not inside that channel, I get that error message. Switching the python script to UTF produces the above result (I'm in [ISO]#ã¼). I hope that wasn't too long to read and understand. ;) I'm not sure how to proceed. euIRC channels work perfectly, be it with an ISO or a UTF client (although I have to say [ISO]#ü and [UTF]#ü are of course not the same), while QuakeNets IRCd seems to work on ISO only, ignoring the client charset. So I guess we should close the bug... or is there any idea for a good workaround? In the meantime I'm setting back to ISO-8859-15.
I can't think of an easy workaround. The only way I can really think of is to use separate encodings for channels and the server, which isn't something that the xchat core exposes. At any rate, this should be brought up with the xchat developers using their bug tracker on sourceforge.net, since it's really a core issue.
Bug in xchat Bugtracker: https://sourceforge.net/tracker/?func=detail&atid=100239&aid=1564943&group_id=239