System Administration
Showing results for 
Search instead for 
Do you mean 

Can't see accents through puty

Occasional Visitor

Can't see accents through puty

Hi,

 

I have an HP-UX 11.23 box where I have added to a user .profile the following lines:

 

export LANG=fr_FR.utf8

export LC_ALL=fr_FR.utf8

 

 

when I execute this command :

 

locale

 

 

I get the following output :

 

LANG=fr_FR.utf8

LC_CTYPE="fr_FR.utf8"

LC_COLLATE="fr_FR.utf8"

LC_MONETARY="fr_FR.utf8"

LC_NUMERIC="fr_FR.utf8"

LC_TIME="fr_FR.utf8"

LC_MESSAGES="fr_FR.utf8"

LC_ALL=fr_FR.utf8

 

 

I connect to this server with putty (the remote character set is set to utf8)

 

As soon as I'm connected, if I type the charactère é or è (something with accents) I get awkward values like )C

 

 

I have spend the day on it with no luck, if anyone can help ?

 

Thank you

 

 

 

4 REPLIES
Honored Contributor Honored Contributor

Re: Can't see accents through puty

One of the most challenging aspects of special characters that are not part of the ASCII collection is how to represent the 'other' characters. Although HP-UX offers locales to attempt to standarize the methods, PuTTY implements a fairly narrow range of font extensions but doesn't offer any standard names for the extensions. I would try changing the 'Script' dropdown box found in the Window -> Appearance -> Change option. It looks like "Central European" may be a match.

Occasional Visitor

Re: Can't see accents through puty

Hi,

 

 

No it didn't work.

 

 

What is strange is that in putty under the login prompt when I type a character with accents it works like : login:éééé

 

 

 

but as soon as I'm logged in, when I type é it is replaced by C)

 

 

Thanks

Honored Contributor Honored Contributor

Re: Can't see accents through puty

Your shell and/or stty settings might be stripping off the 8th bit on accented characters, but the login prompt is 8-bit clean and echoes everything back as-is.

 

When UTF-8 encoding is used and the 8th bit is stripped off from non-US-ASCII characters, you get a random-seeming group of two or more US-ASCII characters for each non-US-ASCII character.

 

Things to check:

 

- stty settings: run "stty -a" to check. You'll want "-parenb", "cs8", and "-istrip". Note the minus signs. If your "stty -a" output says "istrip" without the minus sign, run "stty -istrip" to fix it for the current session. You can add this to /etc/profile or your personal login script.

 

- shell: At least on some HP-UX versions, the default shell /usr/bin/sh supports locales, but only if the locale variables are already set up when the shell starts up... and if the locale variables are set in /etc/profile, the shell is already running when the variables are set.

 

To test for this, first make sure that your stty settings and locale variables are correct, then run "exec $SHELL". If this fixes it, note that you cannot just add this into /etc/profile without causing an endless loop.

 

Alternative ways to get around this problem:

  • use another shell: for example, /usr/bin/ksh seems to handle the locale environment variables in a smarter way (i.e. it detects changes to locale environment variables in the current session and makes the appropriate setlocale() calls for itself).
  • if you are logging in with SSH, make sure that PermitUserEnvironment is set in /opt/ssh/etc/sshd_config, and put the locale environment settings to $HOME/.ssh/environment file: the sshd daemon will read the file and set the variables before actually starting your shell, so localized /usr/bin/sh will work.
MK
Highlighted
Acclaimed Contributor Acclaimed Contributor

Re: Can't see accents through putty

>Alternative ways to get around this problem:

 

You could just exec the shell again.