Monday, December 17, 2007

iTerm UTF-8

I've been using iTerm as a replacement for OS X's Terminal.app and have been quite impressed with its many cool features (for instance, a throbber when a tab is generating output). I had one problem though. I couldn't view UTF-8 characters correctly. When I tried, I got something like this:

  viel Glück mit der Website

After several days of intermittent poking around, I discovered a fix. Visit "View > Show Session Info." On the "Session" tab, change the "Encoding" to from "Western (ASCII)" to "Unicode (UTF-8)". Now I see this:

  viel Glück mit der Website

I briefly tried Terminator because it showed Unicode for me out of the box. I switched back because I didn't like the way tabs were handled. Now that Unicode works, iTerm is practically perfect.

5 comments:

Luce said...

What about capitals? I find that if you try to touch a file called Ü and then do an ls, Terminal correctly displays it, while iTerm only gives you a U.

I would love to be able to use iTerm, but to me it seems that it does not handle the above case. I will keep investigating/trying

mndrix said...

Luce - I see the same problem as you with UTF8 filenames. Unfortunately, I haven't found a fix for that problem. If you do find something, I'd love to know.

Luce said...

After doing a little bit more investigating I found this bug report for iterm:

http://sourceforge.net/tracker/index.php?func=detail&aid=1826692&group_id=67789&atid=518973

Not sure if it is directly related though. I may find time to build iTerm from source with the patch suggested at some stage. I will let you know if I do. Cheers

Adam Beguelin said...

Nice. Thanks for the tip. Now the output of my pstree commands look much better!

harijay said...

Thanks a tonne..I tried for a while to fix my python code output , after messing around with LC_TYPE environment variables etc..I finally figured it was probably my good ole trustworthy iterm that was not handling the stdout correctly.
Once I set the encoding as you have indicated here..everything worked great