Some select fonts are not displayed when I set them under Default Style
-
I can use a good many fonts from my Windows font list and they work fine but picking maybe on of a dozen fonts causes Notepad++ to revert to some kind of “fallback” font instead when I okay the dialog. The selected font is still shown on re-openening the dialog but it’s definitely not the one used in the edit tab. This is most obvious for monospaced fonts as the fallback is a proportional font (looks like it could be Arial). Most monospaced fonts work just fine, however.
Also, the same fonts that fail in Notepad++ work fine elsewhere - they are displayed correclty in the Windows font system control dialog and in Word, for example.
Any ideas on how to fix this issue would be much appreciated.
-
Since you kept your description quite vague and lacking in details, no one would be able to replicate your problem; without replicating your problem, it will be hard to fix the issue for you or even give you hints as to how to debug.
Or said another way: every monospace font I pick just works, with no fallback. So “it works for me.”
And in a text editor, whose reason for existence is editing plain text files (ie, no font information embedded in the file), most of which benefit from being edited in a monospace font. So if you say “most monospaced fonts work just fine”, then just pick one of those “most” and be done with it.
Addendum: I am not meaning to be dismissive. I just don’t know why anyone would be frequently changing their fonts in Notepad++ or another text editor between dozens of fonts. It’s completely unfathomable to me. And there are plenty of monospaced fonts out there that have a good selection of Unicode glyphs; one just has to pick such a font that has the glyphs one is usually editing, and use that one font. I guess if someone were editing many files, each with a mutually-exclusive system of writing, and there just weren’t any monospaced fonts that had all the glyphs across the wide range, I might understand. But in such a situation, if one were asking for help, one should mention specific fonts, and mention why you cannot just pick one that “works just fine” instead of picking one of the problematic fonts. Also, as always with Unicode font issues, one should check to see whether toggling the Settings > Preferences > MISC > Use DirectWrite will improve things or not – the “right” setting for that toggle is highly dependent on the fonts and glyphs that one uses.
-
@peterjones Thanks for your reply! My post was meant merely as a general “ping” to see if anyone else had had a similar problem before as at first I did not think it was going to be an issue anyone could reproduce voluntarily.
However, I think I’ve no figured it out. There seems to be a bug in the current version (adding debug info below) causing any fonts that have non-letter characters in the font name not to be rendered, even though they are listed and can be chosen in the respective dialog. Specifically, none of the native Windows fonts beginning with “@” work for me, nor does MonoLisa-Regular, for example, presumably because of it containing a hyphen. Not sure if the issue is affected by non-US regional settings in Windows, mine is set to German.
As for why I keep changing fonts around, how would I find out which one(s) suit(s) me best if I never tried other ones? There is some disagreement whether monospaced fonts are even strictly necessary / to be recommended for coding. Plus one has to decide whether one wants certain glyphs or not, as you say, so it’s certainly a process of trial and error…
Notepad++ v8.3.3 (64-bit)
Build time : Mar 13 2022 - 17:20:02
Path : c:\Users\PK\Documents\Notepad++\notepad++.exe
Command Line : c:\Users\PK\Documents\AHK\Master.ahk
Admin mode : OFF
Local Conf mode : ON
Cloud Config : OFF
OS Name : Windows 10 Pro (64-bit)
OS Version : 2009
OS Build : 19043.1645
Current ANSI codepage : 1252
Plugins : BookmarksDook.dll ExtSettings.dll LanguageHelp.dll mimeTools.dll nppAutoDetectIndent.dll NppExec.dll PythonScript.dll SelectQuotedText.dll SurroundSelection.dll -
If anyone could verify that fonts with names containing either “@” or “-” (and possibly other special characters) in their name cannot currently be handled by Notepad++, I’d go and post a bug report. Just trying to ascertain it isn’t a problem pertaining only to my own setup. Thanks!
-
I tried “@Arial Unicode MS” and it appeared to give the same visual behavior as “Arial Unicode MS”.
On all the @-fonts I looked at, there was a non-@ with otherwise identical name.
A quick websearch found me “What does the ‘@’ mean when prefixed to Windows font face name?” which says that the @-versions are fonts enabled for vertical text. I don’t know of any situations where Notepad++ does vertical text (I know it does RTL vs normal LTR, but I can’t remember it doing vertical), so there’s apparently no reason to pick @-fonts in Notepad++. Use the non-@ version.
For hyphens, MinLiU-ExtB has a hyphen in the name, and text in that font looks the same in Notepad++ and MS Notepad. So I don’t think Notepad++ has a problem with hyphenated font names.
I don’t have MonoLisa-Regular available to me, so I cannot test that font. My region is US English.
-
Many thanks for investigating the issue. I’m sorry, it appears I’ve been jumping to conclusions with regard to the special characters in the font name - it’s apparently more complex than that.
Here are some more examples of what apparently does not work for me:
-
None of the “@…” fonts work in any way - text display does not change at all when I select any of them.
-
I can’t get any condensed fonts to work (but maybe that’s as it should be?)
-
Monoid does not work, even though it’s a well-known programmer font and there is only one font to select (no subtypes).
-
With some font families, I can get the standard version of the font to display but none of the more specific styles work, e. g. I can successfully use JetBrains, but if I select the “light” or “medium” varieties, Notepad++ reverts to the “fallback” font. The same is true for Iosevka. Is that how it’s supposed to be?
-
Other families, like Kievit-OT or MonoLisa don’t work at all.
-
-
All the @ fonts I tried work exactly as expected – the font changes with every one I select. Condensed fonts work just fine. Light, Medium, SemiLight, SemiCondensed, SemiBold, any of those are working for me.
I don’t have JetBrains or Monoid or Kievit-OT or MonoLisa, so I cannot test any of those.
The following animated screenshot (by screentogif) shows me selecting a bunch of the @ fonts, then one font family that has lots of the condensed and Semi* weights, and they all worked; I also showed Deja Vu, which is a free family which I use Deja Vu Mono as a standard Monospace with good glyph support for glyphs I am interested in.
I originally thought that I toggled Settings > Preferences > MISC > DirectWrite and that it didn’t do anything… but I realized I didn’t restart Notepad++ after toggling that setting… and when I did that, the behavior did change, so it’s more like you have. Apparently, at least for me, if I want the Condensed/Light/Semi*/etc to work, I have to have DirectWrite off, otherwise it picks its fallback font. The same might be true for you – so try turning it off, and restarting Notepad++. That will enable you to explore those fonts. As the manual says for the DirectWrite setting, you need to pick the setting that works best for you, given your combination of font and desired glyphs. I find in anything I do, whether for myself or for helping others on the forum, that DirectWrite enabled is better… but I have never tried light or semi* or condensed (and see no reason why I would want to).
-
Am pleased to confirm that disabling Settings > Preferences > MISC > Use DirectWrite fixes all my issues. Many thanks for pointing it out! If it “breaks” some fonts entirely, I’ll certainly keep it turned off. Again, many thanks for your thorough involvement!