The fonts in gtk applications such as emacs or gedit look thinner than in other applications when I use awesome as windows manager. Switching back to unity solve the problem. For instance DejaVu Sans Mono is “less bold” in emacs than in my terminal or other application even when the size is the same. What configuration files should I edit to solve this issue?

I found a way to circumvent the issue which only partly satisfy me: 1. Run gnome-settings-daemon ; 2. Hit C-c to stop the process because it does not work well under awesome ;

I do not properly understand what it does and would prefer a more reliable solution. Sometimes I have to restart dbus with service dbus restart or else gnome-settings-daemon will not start. This might be unrelated.

  • Fonts are customizable -- e.g., (set-face-attribute 'default nil :background "black" :foreground "white" :font "Courier" :height 180) . Bold is :bold t. There are different weights of bold -- e.g., gnu.org/software/emacs/manual/html_node/emacs/Fonts.html – lawlist Oct 13 '13 at 21:12
  • @lawlist Thanks for your input but what I am saying is that the normal weight looks thinner that is used to be before Ubuntu update. I do not want normal text to appear bold. – Alfred M. Oct 14 '13 at 7:14

I wonder if this blog post would be of any help in understanding the problem. It's three years old, but the basic nature of the rat's nest still persists.

Since you don't have gnome-settings-daemon running, xrdb and XSETTINGS never pick up the hinting settings established in the GNOME dialogs. So you'll need to fall back on fontconfig and setting up your own $HOME/.fonts.conf, at which point you're writing obtuse XML entries. This Arch Linux Wiki page may help you get started.

EDIT: Have a look at /usr/share/doc/fontconfig/fontconfig-user.html on your system, which describes the gory details. Happily, you may be able to avoid the goriest of the gory details by using some soft links.

Please be aware that I have not actually tried the following:

Take a look inside /etc/fonts/conf.avail, which contains a number of pre-made config fragments. Of particular interest will be the files beginning with 10-* and 11-*, which control how font hinting and sub-pixel positioning is to be done. Some of these are mutually exclusive; for example, you'll only want to pick one of the 10-hinting-* fragments.

First, inside your home directory, create a directory named .fonts.conf.d and cd into it. Next, create soft-links to the config fragments you want to enable, which might look something like:

ln -s /etc/fonts/conf.avail/10-antialias.conf 10-antialias.conf
ln -s /etc/fonts/conf.avail/10-sub-pixel-rgb.conf 10-sub-pixel-rgb.conf

At this point, once you have linked to your preferred fontconfig fragments, it will either magically work the next time you launch a program (I think this will be the case); or you'll need to run fc-cache to get the system to recognize your changes; or you'll need to log out and back in to your X session (least likely).

  • 1
    Thank you for your input. I must admit that I have trouble to make sense out of it though. – Alfred M. Oct 21 '13 at 8:02
  • Basically, the GNOME control panels make changes to the gconf/dconf databases. This database is read by gnome-settings-daemon, which then jams the settings into the font rendering system. If gnome-settings-daemon is never launched, that doesn't happen, then the font rendering system looks in the "traditional" places for config data. – ewhac Oct 21 '13 at 8:28
  • One thing you might try is setting the global defaults for fontconfig using the oddly-named package fontconfig-config. To see the current settings, run the command debconf-show fontconfig-config. To change the settings, run as root: dpkg-reconfigure fontconfig-config. – ewhac Oct 21 '13 at 8:33
  • Sounds good but I lack the rights to do it here at my office. – Alfred M. Oct 21 '13 at 8:42
  • Ah, well, then you'll have to build your own ~/.fonts.conf or ~/.fonts.conf.d/. Hang on while I edit the answer... – ewhac Oct 21 '13 at 19:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.