To ensure PuTTY accepts UTF-8 characters do the following.
- Click on the PuTTY icon in the top left corner of the window
- select "Change settings"
- select the session you wish to check from the "Saved Sessions" field
- selet "Window / Translation"
- set "Received data assumed to be in which character set:" to
UTF-8
- click [Apply]
PuTTY's default font, Courier New, supports characters from many different languages. Here is some sample text .
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.
- Click on the PuTTY icon in the top left corner of the window
- select "Change settings"
- select the session you wish to check from the "Saved Sessions" field
- selet "Window / Appearance"
- click on the [Change] button in the "Font settings" region
- select a new font, e.g.
BatangChe
for Korean characters - click [Apply]
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.