I want to talk to the (Font) Manager

You like fonts, don’t you? Well, we all do. So what happens if you want to install a fresh new font in your Linux distribution, and that distribution happens to be running, say, a Gnome desktop environment? You will have probably noticed that the font management facility available in the system settings tool is rather limited.

First, there’s the actual issue of how to handle fonts in the first place – Gnome Tweak Tool – and then, you only have the ability to select from the existing range of fonts, but not really install any new ones. At the moment, it would seem, your one option is to manually copy font files into either the system or home directory fonts folder. Well, there’s a better way. Meet GTK+ Font Manager. Manager, meet your new user.

What gives?

GTK+ Font Manager is an unofficial utility designed to help ordinary users manage their fonts using a simple, friendly frontend. This tool is a stopgap measure for the lack of such a facility in the Gnome desktop. It also self-styles itself as a non-professional solution, but we shall be the judge of that. Anyway, Font Manager is available in a range of distributions, mostly through third-party repositories. I tested the program in Fedora 28, using the COPR repo. Previously, I tried this application in CentOS 7.4, but it requires a newer version of GTK+, hence the Fedora test. Should be cool, I say.

Installation & first use

The setup was trivial. Once launched, the program comes with a fairly detailed and rich interface. On the top bar, the default mode is Manage, which lets you, eh, manage your fonts. We’ll discuss the other modes soon. Then, plus for adding fonts and minus for removing them. If you start the program as your own user, font management will only work for the fonts installed in your home directory. You need sudo or root to manage system fonts, which is understandable. If you click on the little cogwheel, there’s a whole bunch of settings available, but we will discuss that later, too.

Font Manager, installed

In the left pane, you have a list of all your fonts, with several filters slash categories you can use to narrow down your choices. For example, you can list only fonts with a certain slant or license or vendor. On the right side, the installed fonts and their variations will be listed alphabetically, and if you feel intimidated, you have a search box. You can expand each entry to see more details.

Categories

Just below, the fonts will be shown in a so-called waterfall view, with several sizes shown, illustrating what the font looks like and renders on the screen. This is quite helpful as you have a live preview of the fonts right there. The Properties tab is sort of self-explanatory.

License shows the actual license for the selected font, which can be really useful, and maybe even necessary if you intend to use the particular font for commercial purposes. There’s a whole magic around fonts, and it’s far from trivial.

License

The Characters tab is an odd one. It will show a long list of available characters, and what they look in the particular font. The left pane will also change, showing available character sets in different languages and/or encoding. You can then browse the characters categories and see what they draw on the screen. I guess this is mostly useful for non-English fonts, plus mathematical symbols, for instance.

Characters

Feels like a lot, doesn’t it, and we’ve only just started exploring the interface and haven’t done any real font management yet, or even touched the settings. Okay, let’s do that.

Settings

There’s quite a lot happening in the settings, and it’s not all that obvious. Sources allows you to add non-standard locations where you keep your font files, allowing to check them. This is cool. You do not need to install the fonts, you can dry-run them. I haven’t tested this yet, but I wonder if network locations and/or online locations are possible.

Sources

Rendering threw me off. First, in Gnome Tweak Tool, I did select anti-aliasing and hinting, but this tool shows these to be set to off. I do not understand why the difference or if there’s one, how it affects the fonts shown on the screen or through the tool. Perhaps the setting only affects the internal display, i.e. how you see the fonts inside Font Manager but not how they are rendered in the desktop environment. I am not sure, and this requires clarifications.

Rendering

Rendering, changed

There is a similar problem with the Display settings. You can change the scale factor and DPI, plus subhinting, but I’m not sure what effect they have on the Gnome Tweak Tool options. Maybe once you click Save, Font Manager writes this to a configuration file in your home directory? Is the restart of applications required, and will all these changes actually affect the desktop right away or not be visible until the next login?

Display

Lastly, there’s the Interface section. You don’t get too many options here, but some problems with the UI are quite evident. For example, there are no window buttons. Not even the Close button. This goes against how my desktop is configured, and this application should obey the system configuration. Moreover, there are some visual glitches here and there, like the listing of fonts touching the interface borders due to insufficient padding and alike. Small things, but they sure can be easily and quickly improved.

Interface

The Final Fontasy – Browse & Compare

Pray forgive the joke, I had to. Well, I started playing with the program, to see how it behaves. It’s very friendly, easy to use, and quite effective. This is a very good addition to the Gnome desktop, even if it’s not currently official. Browsing and exploring fonts is easy. And this brings me to the other two modes available in the program.

If you click on the three-dot menu (which by default reads Manage), you have the option to browse all your installed fonts, again using a very powerful filtering capability, and even more importantly, compare fonts.

Browse

What I liked the best is indeed the ability to compare font families. This is probably the most useful function, because sometimes you may want to use a certain type for your documents, or maybe a presentation, and nothing beats a side by side comparison. But rather than doing than in a file, messing up styles and whatnot, you can do this quite efficiently through Font Manager.

Comparison

You can place multiple font families, change size and even background and foreground colors. This gives you a workspace canvas, plus all the convenience of searching for fonts, categorizing them, live preview, installation, and all that. This is something you don’t normally have in document-preparation programs, and you will only see things once you’ve applied a certain font type. But wait, there’s more.

Font Viewer & Nautilus extension

More goodies. A helper utility that gets installed alongside Font Manager is Font Viewer. In a way, this program is somewhat similar to the built-in utility, however it has more features. You can use it to view font files, like in a download folder, before choosing to install them, for instance. You still have the option to see detailed information about any which font. If you want, you can manage the selected font, too, in line with your permissions. The preview field is awesome, and the ability to increase or decrease font size also helps get the right impression. Really neat.

Font Viewer

Font Viewer, working

What I really liked – in theory – is the font preview on hover. Now, you may have noticed that if you place a mouse cursor over a music file (say MP3), Nautilus (the file manager in Gnome) will actually start playing the song, and stop if you move the cursor away. This is part of the extended functionality available in Nautilus, provided through its extensions framework. Various extensions – similar to Dolphin plugins – allow you to achieve more things within the context menu in the file manager, like launch a console, check a file hash and similar. Not to be confused with Gnome extensions.

Font Manager comes with a Font Viewer extension, which you can setup and install in your system, if you want to be able to preview fonts without actually selecting them. This is the one piece of the whole thing that did not work for me. I copied the Python file into both the system folder and the home dir extensions folder, even logged out and logged back in with a new session, but this did not yield the desired results.

/usr/share/nautilus-python/extensions/
~/.local/share/nautilus-python/extensions/

I even tried compiling, following the online documentation, but there was no change in the Nautilus behavior.

python -m compileall ~/.local/share/nautilus-python/extensions/
Listing /home/roger/.local/share/nautilus-python/extensions/ ...
Compiling /home/roger/.local/share/nautilus-python/extensions/font-manager.py ...

I then checked the repos, and found that there’s actually a Font Viewer extension available in the COPR repo and installed it.

...
nautilus-extensions.x86_64 : Nautilus extensions library
nautilus-font-manager.noarch : Nautilus extension for font-manager
...

But again, this did nothing. Maybe I am missing something crucial, or perhaps the instructions are not clear, but given how simple and straightforward Font Manager was so far, I think there might be a little glitch in here somewhere.

Now, speaking of extensions, a right-click option to install fonts (as user and as root) would be a good thing, because that means seamless functionality. Now, if this is already what the extension is supposed to do, then all good, it just needs to work.

Conclusion

GTK+ Font Viewer is an impressive piece of software, for many reasons. On a conceptual level, it shows that Gnome desktop applications can retain their relatively abstract look & feel but still provide a wealth of useful functionality. When it comes to functionality, the program really has everything: easy management, the ability to browse fonts, the kickass comparison feature, flexible and powerful filtering, detailed information, and more. Font Viewer adds bonus points, and truly offers a mighty combo.

On the negative side, so to speak, there can be some improvements. The layout can be streamlined, with better padding and margins so that no element is hidden, and the window controls need to conform to the desktop settings. I wasn’t sure what the anti-aliasing and hinting configurations do, and if they only apply to the view port inside the program or actually tweak the desktop, in which case there’s a discrepancy between what I’ve already set and configured and what the program displayed. Lastly, the Font Viewer extension did not work, or it worked but I failed to understand what it does. Either way, that can be improved.

I believe GTK+ Font Manager should be integrated into the Gnome desktop, as it offers a refreshing, powerful experience and simplifies font management in an elegant and fun way. Quoting the author, the program isn’t just for Gnome but anything that gee tee kays. A pleasant surprise, and definitely worth testing. Take care.

Cheers.

  • jawnhenry

    “…I believe GTK+ Font Manager should be integrated into the Gnome desktop…”

    Riiighttt…and I always believed that ‘4DOS’ should have been integrated into Microsoft’s MS-DOS, too…

    …”it offers a refreshing, powerful experience and simplifies font
    management in an elegant and fun way…”
    .

    What ARE you smoking, D.D.I.? This is precisely why it will never be “…integrated into the Gnome desktop.”

    We’re talking here about the room-temperature-IQ, dumber-than-an-axe-handle, ‘systemd’-authors-soulmates who would eat their children before admitting that someone has a better idea than they ever could even conceive of.

    Now, if we could just convince these Gnome cretin blockheads that self-immolation would result in their being immortalized, revered, and–like Julius Caesar–absolutely made into gods…

    Oh, before I forget–very good article, as usual. Seriously.

    • Dedoimedo

      Dude, don’t go personal. People can make bad software – it doesn’t make them bad people. Focus on the product, otherwise all of it loses meaning.
      Dedoimedo

      • jawnhenry

        Of course people can make bad software; people can make bad anything. I have dug ditches; laid brick; designed computers; taught college. Flaws in the end product have always been corrected.
        What establishes the quality of the individual, and of his work, is the goal to ultimately do what is good, honorable, and the best possible, without laying blame for anything less at someone else’s doorstep. This seems to not be the case in today’s “new normal” of software design. What makes the situation bad is that these same people who make the bad software–thank you very much for pointing out my error–do absolutely nothing, and, in a lot of cases, much less than nothing, to correct the problems which they have created, and worse yet, seem only interested in perpetuating, and making excuses for, the problems which they have created. But, as you say–and with which I heartily agree–this does NOT make them bad people.

        “…All who knew him personally [Leland Stanford. industrialist, and founder of Stanford University] recognized his kindly disposition and he was held in great regard by his employes (sic). The poorest man in his employ could go to him and be sure of considerate treatment. It has been said that the surest criterion of the character of an individual is the way in which he treats his inferiors. Mr. Stanford never let it be known that he considered an individual an inferior…”

        “…One of these standards is the treatment that the weak and inferior
        receive from the strong and superior. It is a matter of no great
        importance as to what church a lady belongs but it is highly
        important as to how she treats the social inferior who enters at the
        back door and does the menial tasks about a home…
        “As a matter of fact there is no other standard of measurement more
        accurate than the manner in which a man treats his inferiors and
        dependents.”–Augusta (GA) Chronicle, 1930.

        “…As far as Systemd is concerned, I am concerned, because it is a
        technology that does not correlate to knowledge or experience, and it
        poses a great risk to the prosperity of Linux.”–dedoimedo, Progress Through Complexity

        “…PulseAudio? Is my sound any better? No. Shit. Wayland? Are my graphics any better? No. Shit. Systemd? Is mysystem more stable and/or boots faster? No. Shit. And the list goes on and on and on and on…
        “…Windows 10. Half-baked releases. I didn’t pay money for a half-baked crap you will complete in 2 years. I don’t need a system settings menu that will be equivalent to the Control Panel in 6 months when I had the perfectly sane and functional Control Panel in Windows 7/8 years ago…”–dedoimedo, Modern Software Development is Cancer