cp866u patch for ukrainian 'i' in console applications (NT4/w2k/XP)
by savaX@inserv.kiev.ua (remove X)
Sorry, full text is in Russian only
There is well-known Windows problem with Ukrainian letters 'I' and 'i'.
They are displayed as question mark ('?') in console applications. But the most
annoying thing is that these files cannot be copied with console File Managers, like Far.
Proposed patch
fixes it. cp866u.rar
Note, when OEM table was initially designed Ukrainian letters were forgotten.
They were added later to table 866. Thus we got two different versions of CP866.
Ukrainian characters were added to cp1251 and Unicode tables, but there is a problem
with the following chars when running console applications:
cp1251
Unicode
0xB2
0x0406
0xB3
0x0456
These are Ukrainian letters (I) and (i). cp866 for Windowd 9x/NT/2000/XP doen't have
translation. So, these characters are converted to '?' or '_' for console applications.
We also get problem when
1. copying files from NTFS to FAT or vice versa;
2. when running archivers from command line;
3. Using NC-like commander (e.g. FAR).
4. using databases with OEM charset
(e.g. 1C use DBASE with cp866).
The problem can be solved by changing translation table
cp866
Unicode old
Unicode new
0xF6
0x040E
0x0406
0xF7
0x045E
0x0456
Installation notes
from alterX@alter.org.ua (remove X):
Unpack cp866u.rar and run setup.bat, reboot you computer.
It is important to run patch on the same partition where WINNT (for NT4/w2k) or WINDOWS (for XP).
is located.
This requirement comes because extmove.exe utility, that is called by setup.bat,
build special list of files to be copied in Registry. Then during boot system copies files itself.
That time only Windows system partition is guarranted to be available.
Note, just after setup.bat execution language switch bar may disappear from tray.
In this case after reboot you sould go to Control Panel->Keyboard->Input Locales
and add required languages.
Recomendation for Far users: apply patch for koi8-u and cp1251 tables.
See here for details.
And just for funs:
mixed Russian+Ukrainian keyboard layout. It contains all letters and signs.
Note: the same problem exists under Wine - Windows emulator for Linux.