Skip to content
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

wishlist: fnt manager to help sift through fonts #37

Open
hackerb9 opened this issue Mar 27, 2024 · 0 comments
Open

wishlist: fnt manager to help sift through fonts #37

hackerb9 opened this issue Mar 27, 2024 · 0 comments

Comments

@hackerb9
Copy link

hackerb9 commented Mar 27, 2024

Perhaps I am not the proper target audience for fnt, but for me it is overwhelming. I already have a lot of fonts on my system and there are hundreds available for Debian, so I can easily install more if I know the name of what I want. The problem I have is that there are hundreds of fonts, so I can't simply say apt install font-best-typeface-ever. fnt offers even more fonts but I don't see that it provides any better way of sifting through them.

I know this is perhaps too big a request to wish for, but I would like to see fnt grow the ability to help people sort and select fonts quickly.


If you think this is a good idea, I have some ideas for ways that might work:

Categories would be one way to do it: For example, if I am looking for a traditional, formal font, I don't need to be shown whimsical, fun fonts.

Metapackages of fonts that people use together commonly would be handy. For example, there could be a set for basic word processing, another for designers, and maybe one for command line users.

Searching by Unicode coverage would be helpful (at least for people like me who use unusual glyphs). For example, what fonts support U+FDFD?

Ideally, fnt would show a Quick Comparison of fonts found from such a search. I wrote a tool which does that, but it only works for the fonts installed.

Terminal screenshot showing the unicode character FDFD in different fonts

Sorting by Popularity is a way that many font sites work and would probably be helpful to people, although maybe there should also be a reverse option for folks who want to avoid overly popular fonts. fnt could probably leverage the Debian popcon database for this.

Having a small Blurb, like one sees on bottles of wine, describing the characteristics and purpose of the font would be helpful. Many OFL font designers have already written such descriptions for their fonts.

Showing a Single line Preview of multiple fonts would be great. Here's an example of one way to show all the fonts available on your system, one per line, in a terminal. (Requires ImageMagick and a sixel capable terminal. For simplicity, the height is hardcoded to 20 pixels, but see my ugrep program for an example of how to detect the size of the character cell):

for f in $(convert -list font | grep Font: | cut -d: -f2- ); do printf "%40s" "$f "; convert -size x20 -font "$f" label:"ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 abcdefghijklmnopqrstuvwxyz" sixel:-; done

Searching by Similar fonts can be helpful. For example, I might want something that has some of the same characteristics as Iosevka and it'd be great if fnt could show me suggestions for alternatives.

Conversely, deduplicating would reduce the overwhelm by not presenting multiple versions of fonts that are too similar any way. For example, when I fnt search obs I am shown two fonts, "google-lobster" and "google-lobster-two", but there is no way in fnt to distinguish them. (By the way, typing fnt preview google-lobster returns "Couldn't retrieve preview". Using fnt preview lobster does show me a preview but it is actually a third font, "fonts-lobster", which may or may not be the same as google-lobster. If they are substantially the same, it would be nice if fewer lobsters were shown by default.)

That is probably more than enough ideas, so I'll just stop here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant