matthewjberger / scoop-nerd-fonts

A scoop bucket for installing nerd fonts
The Unlicense
360 stars 34 forks source link

Windows Compatible Fonts don't work on Windows 10 #60

Closed fv-ian closed 3 years ago

fv-ian commented 4 years ago

I'm currently on Windows 10 version 1909 (OS Build 18363.720).

Now that I see the bug in Nerd Fonts was fixed with the 2.1.0 release, I attempted to utilize Hack Nerd Fonts version. None of the Fonts showed up as options to utilize in the default powershell terminal fonts menu.

If I install the Mono version that is not 'Windows Compatible' it shows up properly and works as expected.

I'm willing to do the work on it to offer a way with Scoop to do the install. How do you want to get this fixed?

1) A new option for say scoop install hack-nf-opentype for the non-(not really fixed) version approach for Windows specific. 2) Flip the default version to install with scoop install hack-nf to use the not "Windows Compatible" version and have another scoop install hack-nf-win to install Windows Compatible.
3) Open a ticket and get a different fix from nerd fonts? (Could take a long time to resolve)

Thanks

matthewjberger commented 4 years ago

I'm on windows 10 as well and not experiencing this issue. Could you try scoop install cmder and then scoop install hack-nf and let me know if the font appears in the 'Fonts' list of the cmder settings?

Or are you getting an error when you attempt to install the font?

iguyking commented 4 years ago

It installs without error.

I'm using the default Windows Terminal that comes with Powershell. Upon further digging the pattern used by nerdfonts for deployment is to just install all the fonts in the zip, both matches. They also show up in the font list as a single font with 8 font faces. This pattern shows up as different fonts.

Further digging, the Hack NF named font (Windows Compatible one) comes in as a single font with 8 different faces. All the other fonts follow the major families naming and related to the same family gets merged together to having different font faces. So Hack Nerd Font & Hack Nerd Font Mono both have 4 font faces.

The current list of fonts do show up with cmder.

iguyking commented 4 years ago

Solution 4: Install all the fonts in one go. Not just the Windows Compatible ones.

matthewjberger commented 4 years ago

I'd be curious if this were to happen on a separate computer. Do you have another Windows 10 machine you could attempt the installation on? I have multiple at home that I can't reproduce the issue with currently

fv-ian commented 4 years ago

Yup.. Same problem on multiple devices. Launch the default powershell window for powershell core 7 and if only the Windows Compatible fonts are loaded, they are not available as options in the menu. If I load the not Windows Compatible ones (all the rest) the nerdfonts show up as viable options.

Would screenshots help?

On Mon, Apr 6, 2020 at 11:54 AM Matthew J. Berger notifications@github.com wrote:

I'd be curious if this were to happen on a separate computer. Do you have another Windows 10 machine you could attempt the installation on? I have multiple at home that I can't reproduce the issue with currently

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/matthewjberger/scoop-nerd-fonts/issues/60#issuecomment-609913080, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANVUBEB66QOULJYTXURBZ3DRLICNLANCNFSM4L4MKF7A .

zb140 commented 3 years ago

I'm having this exact same problem. If I install just the "Windows Compatible" fonts, I can't use them in built-in console windows, nor in gVim. They simply do not appear as options. If I install the non-"Windows Compatible" mono font, I can use that one in Vim and in console windows without issue.

I don't know if it's relevant, but I can use the "Windows Compatible" version in the new Windows Terminal.

For now I'm working around this with my own bucket containing Hack-NF-NonWin and Hack-NF-Mono-NonWin but it'd be great to figure out a way to make the "standard" ones work. I'm happy to help if I can.

matthewjberger commented 3 years ago

Thank you for providing more insight on this! I added a Hack-NF-nonwin manifest that excludes the windows compatible fonts and only installs the non windows compatible fonts. I'm going to try and find some time to add nonwin manifests for the rest of the fonts. There isn't a distinct nonwin and nonwin-mono manifest at the moment but that will probably be updated as well. I'll need to see if going down the path of having 4 distinct manifests (2 windows compatible mono and regular, 2 non-windows compatible mono and regular) is best. I'm not sure if scoop has a good way to handle manifests that are very similar, so I'll try generating them

zb140 commented 3 years ago

Yes, it does show up in the Windows font folder. On my system, I've got both Hack-NF and Hack-NF-Mono installed. They show up in the font folder as one font called Hack NF with 8 faces, some of which happen to be monospaced. The place where it doesn't show up is in the console settings font picker or the gVim font picker. Here's an example: image

I have just made an interesting discovery though. While I was verifying the answer to your question and making sure I hadn't made any silly mistakes, I discovered that if I change the console settings to use Hack NF using concfg (https://github.com/lukesampson/concfg) rather than the font picker, it actually does change the font to Hack. Likewise, if I put set guifont=Hack_NF in my .vimrc, gVim will use it, even though it's not available as a choice in the font picker.

So I guess the bottom line is, I can get the experience I want without actually having to install any other fonts, as long as whatever tool I'm using has a way to set the font without actually using the picker. I suspect the reason they don't show up in the pickers is that Windows is considering the mono and "regular" versions together as one font. The non-"Windows Compatible" version doesn't get lumped in with Hack NF, which is probably why it does show up in the pickers.

As far as this issue is concerned, I think the title is a little misleading. It's not that the "Windows Compatible" fonts don't work on Windows 10, it's that (at least some) things that try to limit themselves to monospaced fonts can't tell that any of the "Windows Compatible" fonts are monospaced. I'm not sure there's anything to actually be done about that, except possibly add a way to install the other variants alongside the "Windows Compatible" ones.

zb140 commented 3 years ago

Oh, you were too fast for me 😄 Thanks for adding them. Given my new discovery, though, maybe it's not necessary after all. I can see both sides of that argument. Whichever way you prefer to go, though, I think it's reasonable to close this issue now that it's pretty well understood.

matthewjberger commented 3 years ago

@zb140 Thank you for investigating! I'll remove the manifest actually, based on the new info. Oddly enough I tried using the font through the gvimrc but I had used escaped spaces instead of underscores so it didn't recognize the font name (oops). I appreciate your help figuring this one out!