Displaying unicode filenames correctly

When I delete prefs.oxc from /dopusdata/ConfigFiles, the issue goes away.

[Locating the config files by hand]

O.k. so now I just deleted this part from prefs.oxc:

<fonts>
	<files>Palatino Linotype/-27,400,0,0,0,0,18,200,10</files>
	<tree>Verdana/-24,400,0,0,0,0,34,200,9</tree>
	<status>Palatino Linotype/-24,400,0,0,0,0,18,200,9</status>
	<header>Palatino Linotype/-24,400,0,0,0,1,0,200,9</header>
	<thumbnails>Georgia/-24,400,0,0,0,0,18,200,9</thumbnails>
	<foldertabs>Vezus Serif Regular/-21,400,0,0,0,1,0,200,8</foldertabs>
	<fdb>Palatino Linotype/-24,400,0,0,0,1,0,200,9</fdb>
	<log>Courier New/-24,400,0,0,0,1,0,200,9</log>
	<groups>Palatino Linotype/-29,400,0,0,0,1,0,200,11</groups>
	<panelnc>Palatino Linotype/-24,400,0,0,0,1,0,200,9</panelnc>
	<jobsbar>Segoe UI/-24,400,0,0,0,1,0,200,9</jobsbar>
	<metapane>Palatino Linotype/-24,400,0,0,0,1,0,200,9</metapane>
	<renamemacro>Lucida Console/-21,400,0,0,0,1,0,200,8</renamemacro>
	<infotips>Segoe UI/-24,400,0,0,0,1,0,200,9</infotips>
	<code>Consolas/-24,400,0,0,0,1,0,200,9</code>

Issue is still gone!

So compare that to your config on the other machine. If they're different then you know where the issue is. If they're the same then you know it's a font that must be different.

1 Like

Ok, the only difference was in this line:

Palatino Linotype/-27,400,0,0,0,0,18,200,10

That's when I deleted the line on the PC, and then set the font back to Palatino Linotype. Now the line is as follows:

Palatino Linotype/-27,400,0,0,0,0,0,200,10

And the issue is still gone!

I wonder what these numbers mean, especially the 18 which apparently caused the issue.

It's the lfPitchAndFamily member of LOGFONTW (wingdi.h) - Win32 apps | Microsoft Learn -- 18 means FF_ROMAN|VARIABLE_PITCH, while 0 means nothing is specified at all.

Why that was different or causes Windows to render the font differently, I don't know.

FF_ROMAN could exclude non-roman characters, perhaps.

Recent versions of Opus and Windows on my machine set it to 0, but maybe old versions did something different and one of the configs dates back to then.

1 Like

2.1.1.24 PitchFont Enumeration

DEFAULT_PITCH: The default pitch, which is implementation-dependent.

FIXED_PITCH: A fixed pitch, which means that all the characters in the font occupy the same width when output in a string.

VARIABLE_PITCH: A variable pitch, which means that the characters in the font occupy widths that are proportional to the actual widths of the glyphs when output in a string. For example, the "i" and space characters usually have much smaller widths than a "W" or "O" character.

:man_shrugging:t3::tipping_hand_man:t3:

For some reason, the issue has reappeared on the same PC.

I have just tried two dozen fonts and none of them display the special characters mentioned above. The only font that displays the special characters is Segoe UI :tipping_hand_man:t3:

These are the entries under "Fonts" in the prefs.oxc file:

<fonts>
	<files>Segoe UI/-24,400,0,0,0,1,0,200,9</files>
	<tree>Segoe UI/-24,400,0,0,0,1,0,200,9</tree>
	<status>Segoe UI/-24,400,0,0,0,1,0,200,9</status>
	<header>Segoe UI/-24,400,0,0,0,1,0,200,9</header>
	<thumbnails>Segoe UI/-24,400,0,0,0,1,0,200,9</thumbnails>
	<foldertabs>Segoe UI/-24,400,0,0,0,1,0,200,9</foldertabs>
	<fdb>Segoe UI/-24,600,0,0,0,1,0,200,9</fdb>
	<log>Courier New/-24,400,0,0,0,1,0,200,9</log>
	<groups>Segoe UI/-29,400,0,0,0,1,0,200,11</groups>
	<panelnc>Segoe UI/-24,400,0,0,0,1,0,200,9</panelnc>
	<jobsbar>Segoe UI/-24,400,0,0,0,1,0,200,9</jobsbar>
	<metapane>Segoe UI/-24,400,0,0,0,1,0,200,9</metapane>
	<renamemacro>Consolas/-24,400,0,0,0,1,0,200,9</renamemacro>
	<infotips>Segoe UI/-24,400,0,0,0,1,0,200,9</infotips>
	<code>Consolas/-24,400,0,0,0,1,0,200,9</code>
</fonts>

Then the other fonts don't have the characters (and/or font-linking is broken on the machine, maybe; I'm not really sure how it works these days, as Windows handles it rather than us doing anything).

It's not something Opus itself is involved with. It'll come down to the fonts every time.