Patch pentru Putty să suporte ș și ț ca input de la tastatură.

13.11.2011:

Directoare în arhivă:
0.61 - Patch pentru această variantă și executabil compilat cu VS2008 (nu o să meargă pe Win98)
0.61-mingw - Compilat cu mingw, merge și pe Win98 (dar nu suportă ș și ț pentru că în Windows 98 ToUnicodeEx e doar un stub)
svn - Patch pentru această variantă (r9326 | simon | 2011-10-14 10:03:29 +0300 (V, 14 oct. 2011) | 2 lines )
      și executabil compilat cu VS2008 (nu o să meargă pe Win98)

Din testele mele merge OK pentru composite keys (dead keys, English International Keyboard),
Romanian keyboard (Standard sau Programmers) sau pentru opțiunea "Caps Lock acts as Cyrillic switch".
Download: patch_unicode_putty.7z


Mail sent to author (no answer yet): 


I'm having an issue with Romanian keyboard entering ș and ț (S-comma and T-comma, on Windows XP and 7) in a UTF-8 Linux ssh terminal.

ș and ț are standardized in ISO 8859-16, which is not available for Windows XP, so programs that do not support Unicode can't get this char as input. When I type this two chars in Putty i get "?" chars.
http://en.wikipedia.org/wiki/S-comma
http://kitblog.com/2008/10/romanian_diacritic_marks.html

The next best things are ş and ţ, that is s un t with cedilla. But this implies changing the keyboard layout and entering incorrect characters or copying the chars into a buffer and pasting them into the window.

ă, î, â are ok because they are supported in ISO 8859-2, which is in Windows XP.

In windows\window.c, in the function TranslateKey it is called ToAsciiEx. If the function ToUnicodeEx would be called instead, then it would be possible to have support for this two characters (and others maybe).
I've done this and seems ok