I need to set the font on the XP command prompt on a few machines so that it would correctly display Hebrew file names. The default font displays a lot of gibberish, so I'm pretty sure changing it will do the trick. Can anyone point me in the right direction?
-
-1 your question doesn't have much value because you didn't even comment about what font (if any) you found worked. – barlop Jun 20 '15 at 19:52
5 Answers
There are two steps to doing this. Firstly you need to set a font that supports hebrew charectors as an availible font for the command prompt. To do so, open regedit and browse to this registry key:
HKLM\Software\Microsoft\WindowsNT\CurrentVersion\Console\TrueTypeFont
In here you should see an entry of:
0 Lucida Console
You need to create a new string value, called 00, with a value of the name of the font you want to use. If you already have a 00 entry in their, use 000 and so on.
Once done, restart the machine. You should now be able to click on the upper left corner and your font list should now include the font you wish to use.
- 38,158
- 6
- 77
- 113
-
well ok though it helps to know what Font would work. Sadly the questioner didn't bother to comment on what. Of these http://i.imgur.com/VnL83PC.png the only that work are dejavu and lucida(a default) and droid and consolas(maybe a default). Miriam has hebrew characters and I think is monospaced, but isn't supported by cmd based on my test. – barlop Jun 20 '15 at 19:53
The following article describes how to add fonts to the command prompt dialog, though I haven't tested it. The article also links to a Microsoft Knowledge base article on the requirements for command window fonts. http://smallvoid.com/article/winnt-cmd-add-font.html
- 1,038
- 3
- 10
- 19
Apart from installing a font with Hebrew glyphs, I think you may also need to change the codepage, like by invoking chcp 65001
(65001 being CP_UTF8).
Note that when running chcp 65001
within a batch file, all subsequent lines in that batch file are somehow silently ignored. One can use the following instead:
chcp 65001 && your_command_here ...
(And like you may already understand: for Unicode support, one should not use "raster fonts".)
EDIT: in Super User's How to change the Windows console font?, user Leonardo provided a link to Why are console windows limited to Lucida Console and raster fonts? This article explains:
The console rendering model assumes each character fits neatly inside its fixed-sized cell. When a new character is written to a cell, the old cell is overprinted with the new character, but if the old character has overhang or underhang, those extra pixels are left behind since they "spilled over" the required cell and infected neighbor cells. Similarly, if a neighboring character "spilled over", those "spillover pixels" would get erased.
In other words: only a few fonts will actually render nicely in console windows.
In the command-prompt you can click on the upper-left corner icon to choose Properties. In those screens is a Font choice but on my system it is limited to 2 fonts.
- 9,064
- 1
- 34
- 41