Unicode

Unicode and Putty (Windows)

To ensure PuTTY accepts UTF-8 characters do the following.

  1. Click on the PuTTY icon in the top left corner of the window
  2. select "Change settings"
  3. select the session you wish to check from the "Saved Sessions" field
  4. selet "Window / Translation"
  5. set "Received data assumed to be in which character set:" to UTF-8
  6. click [Apply]

PuTTY's default font, Courier New, supports characters from many different languages. Here is some sample text .

Putty Screen Shot Using Courier New Font

In the screen shot above we see that Korean characters are not available in Courier New. To change the font to one that has Korean characters we can do the following.

  1. Click on the PuTTY icon in the top left corner of the window
  2. select "Change settings"
  3. select the session you wish to check from the "Saved Sessions" field
  4. selet "Window / Appearance"
  5. click on the [Change] button in the "Font settings" region
  6. select a new font, e.g. BatangChe for Korean characters
  7. click [Apply]

Putty Screen Shot Using BatangChe Font

Note how the Arabic and Hebrew characters disappeared after switching to BatangChe. Ideally we would like to use a single monospace font that contains glyphs for all Unicode characters in the Basic Multilingual Plane (a pan-Unicode monospace font). Unfortunately no such font currently exists (as of 2009-11). Some free or shareware monospace fonts that include a large number of glyphs do exist however.

  • FreeMono - part of the GNU FreeFont family
  • Everson Mono (shareware)
  • Wen Quan Yi Zen Hei Mono - this font includes a large number of Chinese, Japanese, Korean, and Vietnamese glyphs; unfortunately Zen Hei Mono co-exists in the same .ttf file as its proportional cousin, Zen Hei, which appears to make Zen Hei Mono unavailable to programs like PuTTY

See Unicode Typefaces for more information.

Sample Text

The following text contains Unicode characters from a number of different languages. It can be cut and pasted into a PuTTY session (perhaps running vi) to test the range of characters supported by PuTTY's currently selected font.

Arabic     : العربية
Chinese    : 中文
English    : English
French     : Français
German     : Deutsch
Greek      : Ελληνικά
Hebrew     : עברית
Japanese   : 日本語
Korean     : 한국어
Portuguese : Português
Russian    : Русский
Spanish    : Español
Thai       : ไทย

The text was created from SQL*Plus using the following SELECT command.

select 
  'Arabic     : '|| unistr( '\0627\0644\0639\0631\0628\064A\0629' )      || '
  Chinese    : ' || unistr( '\4E2D\6587' )                               || '
  English    : ' || unistr( 'English' )                                  || '
  French     : ' || unistr( 'Fran\00E7ais' )                             || '
  German     : ' || unistr( 'Deutsch' )                                  || '
  Greek      : ' || unistr( '\0395\03BB\03BB\03B7\03BD\03B9\03BA\03AC' ) || '
  Hebrew     : ' || unistr( '\05E2\05D1\05E8\05D9\05EA' )                || '
  Japanese   : ' || unistr( '\65E5\672C\8A9E' )                          || '
  Korean     : ' || unistr( '\D55C\AD6D\C5B4' )                          || '
  Portuguese : ' || unistr( 'Portugu\00EAs' )                            || '
  Russian    : ' || unistr( '\0420\0443\0441\0441\043A\0438\0439' )      || '
  Spanish    : ' || unistr( 'Espa\00F1ol' )                              || '
  Thai       : ' || unistr( '\0E44\0E17\0E22' )
  as unicode_test_string
from dual ;
Cutting and Pasting Unicode Characters

Even though font limitations prevent us from seeing all Unicode characters in a PuTTY window we can still cut the characters from a PuTTY window and paste them into Unicode aware GUI clients like Notepad or Excel 2007. Unlike PuTTY, which uses a single character set to display all characters, applications like Notepad use glyphs from multiple character sets to display characters (this is known as font substitution). Thus any characters that appeared missing, garbled, or were represented by boxes in PuTTY can appear properly in Notepad even when both applications are set to use the same default font.




Linking to SQL Snippets ™

To link to this page in Oracle Technology Network Forums or OraFAQ Forums cut and paste this code.

  • [url=http://www.sqlsnippets.com/en/topic-13428.html]SQL Snippets: Unicode - Unicode and Putty (Windows)[/url]

To link to this page in HTML documents or Blogger comments cut and paste this code.

  • <a href="http://www.sqlsnippets.com/en/topic-13428.html">SQL Snippets: Unicode - Unicode and Putty (Windows)</a>

To link to this page in other web sites use the following values.

  • Link Text : SQL Snippets: Unicode - Unicode and Putty (Windows)
  • URL (href): http://www.sqlsnippets.com/en/topic-13428.html