-
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
Konsole rendering messed up for non-mono version on master branch #746
Comments
I should also note that neither konsole nor kitty detect the new version of Hack Nerd Font Complete as monospaced, while both did for the old version. |
More explanation in bottom of #731, but it's better to have a proper issue (like this). |
On the other hand, you say 2.1.0 is still ok? Then it must be something different. But from your description it is the same. Good would be a screenshot what exactly means 'mess up' 😬 |
Actually Hack Nerd Font hasn't been updated since 2.1.0 until a week ago so that's why this wasn't an issue before. Here is an example with JetBrains mono on the master branch. It shows the same problem. Note that in the nono-mono version, the home icon shifts the And yes, I believe #731 (comment) is the cause of this. The home button has a wider advance. Konsole apparently only realigns to the grid on color changes. |
I decided to run a git bisect, and this seems to be the commit that broke it: Looking at the commit message, it looks like this was to fix spacing issues in proportional fonts, but it breaks monospace fonts. So this may need to be a command-line flag in the patcher |
Yes, that is the reason for some issues... #731 (comment) |
I think I do not really understand this. What will break monospace fonts? This can mean 'Blah Mono Nerd Font' or 'Blah Nerd Font Mono', which says two different things. To be more abstract.. do you propose an additional category to these three?
And we additionally have Sorry dont get me wrong. But I try to understand that on a more abstract level and here I fail with your suggestion for a new option. |
I'm not so sure, And in the Issue, the original reporter Daniel Capella looks like using the Nerd Font Mono maybe. Later on Tim Summerer obviously uses a propotional font. Do we have propotional fonts? Or are the glyphs just replaced into a non-patched propotional font by the renderer. It's a pity people never state which font they exactly use. Somehow I can not bend my head around the problem. The exact problem evades me. But anyhow, both code variants (before and after the commit) do not really 'communicate' what is intended and rely on side effects of the fontforge calls. I believe we need to understand what we want and then reformulate in a way that makes it more explicit what the code intends to do (for future maintenance). |
To clarify:
My point is that, for fonts that are proportional to begin with (eg. Noto Sans which is in this repo), and for the symbol only font, option 3 should be used. But for monospaced fonts, in most contexts, option 2 makes more sense. The only time something will break is if an application thinks it's using one of the original fonts as a fallback font and doesn't put spaces after icons. |
That seem to be the same 3 patching variants. 👍 Your Variant 3 (my second) is good for people in proportional environments, as one does not need to care about adding spaces and stuff (*). This can be Visual Studio (I guess, remember slightly I did try programming with a proportional font some years back, but that was Erlang or Haskell? So not VS...), or me personally when I do talks (with Libre Impress) and want to have Icons in the text. The auto-detect feature is a good idea, but I guess an command line option is still (additionally) desirable. (*) See original Issue for 59c45ba which is this and shows this image: Afterthought... Looking on the battery icon percentage thing, ... This is probably wider than two P.S.
But I think it works in Tilix, which I use mostly, at least I never stumbled about problems, but then... I seldom use non-mono. |
Yeah most terminals takes the advance from a single character in the font. Konsole and QTerminal seem to be the exception here (my guess is that they do it for the ligatures). And of course emacs renders the terminal like normal text.
Some font awesome icons are quite wide. |
An update: Apparently turning of bidirectional text support in Konsole somewhat fixes the problem. Still have to test more thoroughly because proportional fonts still don't render along a grid with that setting on. That being said the options is definitely worth having, because the 2.1.0 version is actually detected by terminals as a monospaced font. |
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
On the master branch, patched symbols maintain their advance value from the original font, instead of being adjusted to match the target font. This messes up Konsole and emacs terminal which don't use strict grid-based rendering. The 2.1.0 version does not have this problem.
🔧 Your Setup
Anonymice Powerline Nerd Font Complete.ttf
)?Hack Nerd Font Complete
iterm2
,urxvt
,gnome
,konsole
)?Konsole
Archlinux
★ Screenshots (Optional)
The text was updated successfully, but these errors were encountered: