Broken monospace in Lister under Vista

The behaviour described in the bug report is either by design, or would be far too complex/time-consuming to be changed

Moderators: white, Hacker, petermad, Stefan2

Post Reply
User avatar
Flint
Power Member
Power Member
Posts: 3487
Joined: 2003-10-27, 09:25 UTC
Location: Antalya, Turkey
Contact:

Broken monospace in Lister under Vista

Post by *Flint »

When I view a binary file in ANSI mode under Vista OS, the monospace font seems to become broken. Look at the screenshot:
http://flint-inc.ru/Temp/ListerVista.png
You can see that the character with the code 01 is almost twice as long as the usual character!

On the Russian forum (where this problem was first reported) the situation is exactly the opposite: some characters are not shown at all as if they were absent. Here are the screenshots:
http://super.wincmd.ru/_tmp/vista64_1.PNG
http://super.wincmd.ru/_tmp/vista64_2.PNG

PS1: Explicit changing the ANSI font from default to Fixedsys does not fix the problem.
PS2: In ASCII mode the text is shown correctly.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
 
Using TC 10.52 / Win10 x64
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Total Commander relies on Windows that fonts which are marked as monospace really have equal character widths. Unfortunately there are some faulty fonts out there which have unequal width characters. You cannot use them with Lister for fixed width display, try using some other font like Courier New.
Author of Total Commander
https://www.ghisler.com
Muudzis
Junior Member
Junior Member
Posts: 2
Joined: 2007-04-06, 09:01 UTC
Location: Riga, Latvia
Contact:

Must be changed!

Post by *Muudzis »

Hello! I think that this behavior must be changed. My idea was that some of the characters with codes 0-0x1F are not painted at all, but I did some more testing and the results are more strange than I expected:

-character with code 0x01 is shown as TWO characters on screen! If I make a selection around that place then the selection jums left right. See in this video dl.paksvv.com/tc.avi and image dl.paksvv.com/tc1.jpg

-characters with codes 0x09, 0x0A, 0x0D, 0x1C, 0x1D, 0x1E, 0x1F are not painted at all - see image dlDOTpaksvvDOTcomSLASHtc2.jpg

I tried also with Courier New font and the same happens. My system locale is Latvian
Last edited by Muudzis on 2007-04-11, 19:44 UTC, edited 1 time in total.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

So what do you suggest? If not even Microsoft is able to design correct fonts, what can we do?
Author of Total Commander
https://www.ghisler.com
Muudzis
Junior Member
Junior Member
Posts: 2
Joined: 2007-04-06, 09:01 UTC
Location: Riga, Latvia
Contact:

Post by *Muudzis »

Microsoft never can do anything correct :)
I suggest to change all characters below 0x20 to 0x20 so they are displayed as space. After all in previous windows it was just paited as black rectangle.
User avatar
petermad
Power Member
Power Member
Posts: 14808
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Post by *petermad »

After all in previous windows it was just paited as black rectangle.
Not if you used a font like Terminal
License #524 (1994)
Danish Total Commander Translator
TC 11.03 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1371a
TC 3.50 on Android 6 & 13
Try: TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Well, space isn't such a good idea, you don't see anything then. A black rectangle would be much better. Good fonts show special characters instead of just a black rectangle for codes 0..31, therefore I fear that people with such good fonts will complain that it no longer works...
Author of Total Commander
https://www.ghisler.com
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

In Vista, there is a new monospace font introduced: Consolas. Try it, maybe that can solve your problem. It does look good, but only if ClearType is turned on.
I switched to Linux, bye and thanks for all the fish!
User avatar
Stance
Power Member
Power Member
Posts: 1079
Joined: 2005-03-29, 06:26 UTC

Post by *Stance »

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats
http://www.microsoft.com/downloads/details.aspx?familyid=941b3470-3ae9-4aee-8f43-c6bb74cd1466&displaylang=en
(27.1 MB) Contains among other things the Consolas Font Pack and a newer version of RICHED20.DLL.

Consolas Font Pack for Microsoft Visual Studio 2005
http://www.microsoft.com/downloads/details.aspx?familyid=22e69ae4-7e40-4807-8a86-b3d36fab68d3&displaylang=en
(4.3 MB) Exe file only. Available for XP & Vista. Can't be opened with [Ctrl+PageDown] :roll:
gigaman
Member
Member
Posts: 131
Joined: 2003-02-14, 11:28 UTC

Post by *gigaman »

Somehow opposite problem can be seen on a system with Asian environment - two bytes are printed as one character, so the text is not "monospaced" at all.
It would seems that the problem is because of MBCS encoding under this environment, but I was able to "fix" this problem by disabling surrogate support in registry... so maybe it's got something to do with surrogates, not sure.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

I have tried the idea of replacing the characters 0..31 by a space if the width is different from the width of the space character. Unfortunately it didn't help with the fonts I tried, e.g. the Japanese "MS Mincho" font with Western layout. The font had other wrong characters like 0x80. So for now I will leave it as it is now. Cursor navigation and selection should work OK with these fonts, though.
Author of Total Commander
https://www.ghisler.com
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

2ghisler(Author)
I suggest to show all characters, that are < $20, as dots.
User avatar
petermad
Power Member
Power Member
Posts: 14808
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Post by *petermad »

I suggest to show all characters, that are < $20, as dots.
Please not! - I prefer to be able to see them as different characters/symbols by using an appropriate font.

Just because $MS does not make Vista's fonts backwards compatible shouldn't constrain me using TC as I am used to in older winows versions - Vista is cetainly not going to be installed on my computer before several years from now!
License #524 (1994)
Danish Total Commander Translator
TC 11.03 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1371a
TC 3.50 on Android 6 & 13
Try: TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
Post Reply