Search code examples
secure-crt

SecureCRT could not display some character


For some reason SecureCRT displays wrong character/coding when I ssh into Linux server.

For example, following is from man route

Gateway
              The gateway address or ’*’ if none set.

Use a different terminal software (ZOC terminal)

Gateway
              The gateway address or ’*’ if none set.

ZOC terminal chraacter set is ANSI/Windows/Latin I and I tried that for SecureCRT but did not make any difference.

any idea ?


Solution

  • This is a problem with UTF-8 characters and the Linux "locale".

    For a modern Linux the command locale charmap should normally give you UTF-8 other values may work but won't give you all the characters eg: ☎ ☐ ☑ ☒

    Both of these appear to have the terminal set to ISO-8859-1 the difference is that ZOC has sent a 'LANG=en_GB' environment variable to the host; SecureCRT has not.

    Your best solution is to set your terminal emulator to interpret the UTF-8 character set then if possible have the emulator send the variable LANG=fr_FR.UTF-8 (or similar) to Linux.

    If you can't find how to set the locale in your favourite emulator you can set it after you've logged in

    $ export LANG=de_AT.UTF-8
    

    Obviously you need to choose the correct LANG setting for your location and preferences.