-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Monospace font rendering issues in Alacritty with 2.2.1 but not 2.1.0 #896
Comments
Sorry to hear of and see your problem with 2.2.1. The right image looks like it does mix fonts that should not be used together. The JetBrains got another variant now, The individual font files look fine at first glance. Some questions that would help reproducing
This AUR installs 128 font files. With the broken family naming this can be problematic. |
I had the same issue with Noodling around rolling back to |
@simonwiles I just tested with the new commit and the issue is still present after a reboot. @Finii can you explain the "font family naming is buggy" a little bit more?
It seems to be ok in gnome-terminal: Yet, gnome-terminal also doesn't let me pick the medium variant, which I have found much more readable. I know that Alacritty does not support ligatures and now see that "NL" stands for "no ligatures"; if ligatures handling has changed that might be part of the issue, but specifying
Yep.
click for font config
# Font configuration
font:
# Normal (roman) font face
normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
#
#family: monospace
# family: source code pro semibold
family: jetbrainsmono medium nerd font
# The `style` can be specified to pick a specific face.
#style: Regular
# Bold font face
bold:
# Font family
#
family: jetbrainsmono Extrabold nerd font
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
# family: source code pro
# The `style` can be specified to pick a specific face.
style: Extrabold
# Italic font face
italic:
# Font family
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
# family: source code pro semibold
# The `style` can be specified to pick a specific face.
style: Italic
# Bold italic font face
bold_italic:
# Font family
family: jetbrainsmono Extrabold Italic nerd font
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
# family: monospace
# The `style` can be specified to pick a specific face.
style: Bold Italic
# Point size
size: 12.5
Nope, only the nerd font versions.
Sure.
Should the NL fonts be separated into their own package? |
Honestly, I have no idea. I originally tried different combinations until I got something that worked in the configuration with previous releases. I mention it mainly as a clue since it is slightly better without |
Wait ok, I think it is something to do with font family selection. Switching the family to This seems like the intended way of configuring the font, and I think it's actually that something in font family selection was broken previously, and my workaround had stopped working with this update. |
The same question holds for:
At the moment we have no separation at all. For example Terminus has not only two variants like JetBrains (i.e. NL and 'with ligatures'), but 'BDF', 'PCF', 'PSF', and '4.40' 😬 WHAT? Just checked the Terminus release package, and there is only one of the 4 variants? Hmm, 'Gohu' has also 4 variants, ... but these are packed at least in subdirs? OK, I will check that.
The patched font naming is ... strange, due to historical reasons. A lot of patched fonts just get clearly wrong names. For example have a look here: nerd-fonts/bin/scripts/name_parser/name_parser_test2.known_issues Lines 313 to 316 in de9bb5b
The lines in that file are: The font is Iosevka Term Bold Oblique. With 2.2.0 See also #717, which has been changed afterwards and is introduced via #723.
Let me check some things first. Just installed all fonts and starting an investigation. Need to get alacritty... 🛠️ Ah, here, after installing all fonts in the AUR:
Sorry I had to ask the obvious ;)
Let me create an experimental package with corrected Family names. I will put the link here when it is ready (need to feed my Kids first). The link is https://github.com/Finii/nerd-fonts/tree/experimental/JetBrainsMono-makegroups/archives.
Hmm. Lets see, with all the AUR supplied fonts installed, I get this $ fc-list : family | grep Jet
JetBrainsMonoNL NF
JetBrainsMono Nerd Font
JetBrainsMonoNL Nerd Font Mono
JetBrainsMonoNL Nerd Font
JetBrainsMono Nerd Font Mono
JetBrainsMono NF Then lets assume you want $ fc-list : family style | grep "JetBrainsMonoNL Nerd Font:"
JetBrainsMonoNL Nerd Font:style=Medium Italic,Italic
JetBrainsMonoNL Nerd Font:style=ExtraLight Italic,Italic
JetBrainsMonoNL Nerd Font:style=Light Italic,Italic
JetBrainsMonoNL Nerd Font:style=ExtraBold Italic,Italic
JetBrainsMonoNL Nerd Font:style=Bold
JetBrainsMonoNL Nerd Font:style=ExtraLight,Regular
JetBrainsMonoNL Nerd Font:style=Light,Regular
JetBrainsMonoNL Nerd Font:style=SemiBold Italic,Italic
JetBrainsMonoNL Nerd Font:style=Medium,Regular
JetBrainsMonoNL Nerd Font:style=SemiBold,Regular
JetBrainsMonoNL Nerd Font:style=Italic
JetBrainsMonoNL Nerd Font:style=Thin,Regular
JetBrainsMonoNL Nerd Font:style=ExtraBold,Regular
JetBrainsMonoNL Nerd Font:style=Bold Italic
JetBrainsMonoNL Nerd Font:style=Regular
JetBrainsMonoNL Nerd Font:style=Thin Italic,Italic Ok, and you want $ fc-list : family style | grep "JetBrainsMonoNL Nerd Font:" | grep Medium
JetBrainsMonoNL Nerd Font:style=Medium Italic,Italic
JetBrainsMonoNL Nerd Font:style=Medium,Regular Of course Edit: Add link to corrected family naming package |
Hmm, the Just focusing on the 'normal' variants, i.e. not
And this is just the filenames. The fontconfig sees this: Ah I get it, somehow there was a last-minute rebuilt of the patched fonts, but the older version were not removed 🙄 I will try to compile a history of commits that change the family naming behavior ... |
As example we follow
Hmm, and then I found this, the comments are from January 2022: Interestingly the family naming in the So the one working for you was the one buggy version that noone cleaned out ;) |
Great, that makes sense and was my intuition from the fact that I only got it working originally through trial + error while the new configuration which is working seems much more sensible. This is a very interesting journey and also explains why I was having difficulty selecting the older version of the font in other programs. |
If you like, you can find a patched JetBrainsMono font with 'correct' Family naming here: https://github.com/Finii/nerd-fonts/tree/experimental/JetBrainsMono-makegroups/archives It uses the new Note that also the file names changed to a more standard-ish format with the style last. They still have the unexpected blanks in them, ... |
Not good if it drives you crazy. Which font did you select on https://www.programmingfonts.org, I can not see that in the screenshot? Maybe good would be the relevant Alacritty settings, and the output of |
Apologies, for further context - the character you see is actually the zsh prompt for my shell. I copied it from my terminal and pasted it over to https://www.programmingfonts.org/#jetbrainsmono CHAR:
Font files in use:
|
Ah, thank you. It is in the source in the currently used source font: and it is in the Release (just one font checked though): And that glyph looks exactly like the one in your Alacritty screenshot. |
Odd. Before my current linux install, I was using the exact same font and the same alacritty config along with exactly the same zsh prompt, and it looked like it does on the The JB-Mono that you mention, is it a separate font file? |
I'm not really sure now ... is it 'solved' for you our shall we try something still? |
It is solved so to speak, but the discrepancies you point out are bizarre nonetheless... |
I am having a r/thanksihateit episode |
Heavy Brackets now patched in via commit 59c5cb5 |
Seems that further maintenance on that front is not guaranteed from the changelog, unless I am interpreting it incorrectly |
This issue has been automatically locked since there has not been any recent activity (i.e. last half year) after it was closed. It helps our maintainers focus on the active issues. If you have found a problem that seems similar, please open a new issue, complete the issue template with all the details necessary to reproduce, and mention this issue as reference. |
🗹 Requirements
🎯 Subject of the issue
Experienced behavior:
Major differences in font rendering for jetbrains between releases
2.1.0
and2.2.1
.Expected behavior:
I'd expect that spacing/rendering would continue working as in previous versions.
Example symbols:
left window is with release
2.1.0
while right is2.2.1
:🔧 Your Setup
Anonymice Powerline Nerd Font Complete.ttf
)?iterm2
,urxvt
,gnome
,konsole
)?font:
family: jetbrainsmono medium nerd font
from: nerd-fonts-jetbrains-mono via AUR
terminal: alacritty
OS: Arch Linux
★ Screenshots (Optional)
left window is with release
2.1.0
while right is2.2.1
:Also of note:
The install size appears to have changed significantly between the versions.
The text was updated successfully, but these errors were encountered: