* Will Yardley <mutt-us...@veggiechinese.net> [2012-12-02 11:00:56 -0800]:

> On Sun, Dec 02, 2012 at 09:41:02AM -0600, fREW Schmidt wrote:
> > (http://dev.mutt.org/trac/wiki/MuttFaq/Charset) and setting
> > 
> >    export LC_CTYPE=en_US.ISO-8859-1
> > 
> > did fix the problem, but it also causes perl to scream and shout about
> > an unsupported locale.
> [...]
> > Here is the output of `locale -a`:
> 
> So, looks like your system only has UTF8 locales installed. Havey ou
> tried setting $LC_CTYPE to en_US.utf8? The ACS characters work fine for
> me in UTF8 locales.
> 
> You may also want to experiment with terminal settings and fonts. What
> terminal emulator and what value of $TERM are you using?
> 
> w

There are a number of things to check and set to get this working. It
can be a bit of a PITA sometimes.

Perl only complains if the LC_* you've set isn't on the system. For
example: on my system (BSD type) in /usr/share/locales/en_US.UTF-8/
there is only LC_CTYPE - so I set that. Had I set LC_MESSAGES, ... ,
then perl would display those annoying errors (which can be turned off
by the way) as the option is not available on my system.

If you're using startx to start your X session, it's recommended
to add the locale setting to ~/.xinitrc so it's in the environment
already before opening any terminals, etc. I guess it wouldn't hurt to
put it in ~/.xsession either, if you're using a display manager to start
your X session. As you're using Ubuntu, I guess you are. 

I also had to make sure I installed a proper unicode-aware terminal
emulator, and I use urxvt for that. Further, I have installed certain
fonts and use these in my ~/.Xdefaults file; these fonts support unicode
characters. 

So, the things to make sure you have set up are:

        set the locale to a locale that is available on your system
        set it in your shell configuration file and X startup file
        use a terminal emulator that is unicode aware
        with linux, you should be able to set LANG=whatever;
        otherwise, check what LC_* are available.
        check your shell's documentation with regards to locales

Another thing to check is /etc/login.conf. You can set these environment
options in there, followed by a run of cap_mkdb /etc/login.conf if you
change anything in there. (I'm not sure if Linux uses this, I don't use
Linux systems at all so I don't know.)

These are things I've needed to do, some of these steps may not be
necessary on Linux but hopefully it will help you or at least give you
an idea of what to look for. 

Jamie. 

Reply via email to