ryanoasis / nerd-fonts

Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, & more
https://NerdFonts.com
Other
52.6k stars 3.59k forks source link

ShureTechMono "fi" text overlap. #1631

Closed Markov-Komarov closed 1 month ago

Markov-Komarov commented 1 month ago

πŸ—Ή Requirements

-πŸ—Ή I have searched the issues for my issue and found nothing related and/or helpful -πŸ—Ή I have searched the FAQ for help -πŸ—Ή I have searched the Wiki for help

🎯 Subject of the issue

Experienced behavior:

st terminal firefox and pcmanfm-gkt3 show overlapping text when displaying "fi" followed by any letter. Similar to #784 Expected behavior: writing the word "config" or "find" " displays the word with no overlap between "i" and the following letter. Example symbols: no symbol. text "fi"+any letter. #### πŸ”§ Your Setup - _Which font are you using ?_ - _ShureTechMono Nerd Font_ - _Where did you get the file from (download link, self patched, source downloaded from link...)_ - pacman (ttf-sharetech-mono-nerd 3.2.1-1 package) Also tried direct download from this repo. - _Which terminal emulator are you using (e.g. `iterm2`, `urxvt`, `gnome`, `konsole`)?_ - st terminal 0.9.2 patched enough to properly show nerd fonts (confirmed with Terminess and CaskaydiaCove) - _Are you using OS X, Linux or Windows? And which specific version or distribution?_ - Arch Linux 6.8.9 #### β˜… Screenshots (Optional) st with Terminess ![05-08-2024-03-25-03](https://github.com/ryanoasis/nerd-fonts/assets/83531009/27c73571-f880-4f4a-ad33-598fdc5f2cb0) st with ShureTech ![05-08-2024-03-27-52](https://github.com/ryanoasis/nerd-fonts/assets/83531009/52060b7e-d442-4046-b4ed-3ef0aab9a956)

The issue is resolved in gtk apps setting the font type to propo 05-08-2024-03-28-58

unfortunately st even when specifying propo font type it continues to show overlaping text 05-08-2024-03-33-13 I would blame it on my poor C knowledge (like missconfiguring st) but when using CaskaydiaCove or Terminess fonts there is no overlapping 05-08-2024-03-36-11

Finii commented 1 month ago

Waaah!!! :scream:

Sorry to hear this, thanks for reporting. Investigating immediately.

Finii commented 1 month ago

I guess you use the Nerd Font Mono variant?

image

Finii commented 1 month ago

Fixed it via special rule.

a) Was my impression right that you use the Nerd Font Mono? b) Would you like fixed version here in a comment or is next release (whenever that will be) soon enough?

image

Finii commented 1 month ago

@allcontributors please add @Markov-Komarov for bug

allcontributors[bot] commented 1 month ago

@Finii

I've put up a pull request to add @Markov-Komarov! :tada:

Finii commented 1 month ago

Ah, I could not see the original error with writer, but scribus could of course show it. Just for future reference if someone wants to reproduce the error/fix.

Finii commented 1 month ago

Fixed via 3043085331f30955b336331ed92ab9588dac8957

Finii commented 1 month ago
Nerd Fonts Patcher v3.2.1-37 (4.14.3) (ff 20230101)
INFO: Adding config commandline options: --removeligatures
DEBUG: Naming mode 1
DEBUG: Monospace check: Panose says "monospaced"; glyph-width-mono True
INFO: Removing ligatures from configfile `Subtables` section
DEBUG: Removing subtable: 'liga' Standard Ligatures lookup 5 subtable
DEBUG: Successfully removed subtable: 'liga' Standard Ligatures lookup 5 subtable
DEBUG: Removing subtable: 'dlig' Discretionary Ligatures lookup 4 subtable
DEBUG: Successfully removed subtable: 'dlig' Discretionary Ligatures lookup 4 subtable
DEBUG: Final font cell dimensions 540 w x 1127 h
Done with Patch Sets, generating font...
DEBUG: Weight approximations: OS2/PS/Name: 400/400/400 (from 400/'Book'/'')
DEBUG: =====> Family (ID 1)      ok       (23 <=31): ShureTechMono Nerd Font
DEBUG: =====> SubFamily (ID 2)   ok       ( 7 <=31): Regular
DEBUG: =====> Fullname (ID 4)    ok       (23 <=63): ShureTechMono Nerd Font
DEBUG: =====> PSN (ID 6)         ok       (15 <=63): ShureTechMonoNF
DEBUG: Tweaking 1/1
DEBUG: Changing flags from 0x1F to 0x17
DEBUG: Changing lowestRecPPEM from 8 to 7
   ShureTechMono Nerd Font
   \===> '/home/fini/extra/git/nerd-fonts/patched-fonts/ShareTechMono/ShureTechMonoNerdFont-Regular.ttf'

As there is no real plan when the next Nerd Fonts release will be, please find the fixed fonts attached:

ShareTechMono.zip 3.4MB

Finii commented 1 month ago

unfortunately st even when specifying propo font type it continues to show overlaping text

The font itself is ok, but that is some kind of compromise that st does on its end. It does allow ligatures but expects them to not-change the character width. That is not true in general, just a lot of terminal fonts do it that way (keep the advance width constant) for various reasons, not the least being that is is hard(er) to work with the classical ligatures. For that reason Nerd Fonts generally removes the two-letter ligatures because in programming contexts they are almost always unwanted and are just there because 'fonts do have fi ligatures' from a typographer's perspective ;)

Markov-Komarov commented 1 month ago

05-08-2024-11-33-03 Thank you so much for the clarification and the fix itself :DD