Unfortunately, there isn't a GUI configuration editor for you to use to deal with this problem under Ubuntu. The GUI font selectors under Gnome or Unity only allows you to select one font per option, while the Font Manager allows you to enable/disable fonts only.
But, as is the typical case of a Linux system, you actually can configure this, only you'll need to dig up the configuration option from lots of documentations.
Now, straight to the point: you'll need to edit/create the file ~/.fonts.conf
.
- The file does not exist by default. However, if you've used things like Font Manager, then there might be a placeholder file at
~/.fonts.conf
telling you to use ~/.config/font-manager/local.conf
instead, in which case you should create the latter.
- You should first open
~/.fonts.conf
to check.
- To check if the file exists, a simple way would be to open the file manager, go to "Home", check "View->Show Hidden Files" and see if you can find
.fonts.conf
.
Once you've created the file, put the following code in it:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Droid Sans</family>
<family>UKai</family>
</prefer>
</alias>
</fontconfig>
What it does is create a font resolution fallback list. When a program is requesting a sans-serif font (most GUI fonts are sans-serif by default), the system would try to use the first font (Droid Sans) for a character. If the font does not support that character, the second (UKai) will be used. I'm not sure if specifying Droid Sans as the first preference has any significance, but you might as well keep it, just to be safe.
Note also that you'll need to logout of your account and login again to see the effect.
For me, the effect is immediate after logging out and logging in again, and the font choice works system-wide.
The above answer is based on a related blog post: Fedora 中文字体设置
Edit
There is also a more comprehensive configuration sample under /etc/fonts/conf.avail
or /etc/fonts/conf.d
(I don't remember exactly which) whose name contains zh-CN
. Inside is a set of configuration used for adjusting the exact fallback font order, which is far more suitable than the above method. Just copy the content in the file into ~/.fonts.conf
or ~/.config/font-manager/local.conf
and change the ordering of fonts to suit your needs.
I would suggest you use gnome-tweak-tool to change the title bar font. As of this writing, it works just fine for me.
To install gnome-tweak-tool
, run this command:
sudo apt-get install gnome-tweak-tool
Best Answer
You may create a custom css override in your home directory and load it from there (otherwise if you make any change in the theme's style sheet, any update of the theme will most probably overwrite it).
First you should know where the Adapta theme is located. If you have installed it from a
.deb
package or a PPA it should be located at/usr/share/themes/Adapta
and there should be agnome-shell.css
file in/usr/share/themes/Adapta/gnome-shell/
.Now follow the steps below.
Create a directory, say
MyTheme
either in~/.themes
or in~/.local/share/themes
. (You may create~/.themes
or~/.local/share/themes
if they don't exist.)Create another directory inside
MyTheme
calledgnome-shell
.Create an empty document in this
gnome-shell
directory and name itgnome-shell.css
.Open this
gnome-shell.css
in a text editor and add the following linesChange
FONT_NAME
to a font of your choice (also you may change the font size) and save the file.Open GNOME Tweak Tools and activate the User themes extension. (If the extension is not installed, you may install it from here.)
Go to Appearance section of Tweak Tools and click on the drop-down box next to "Shell theme". MyTheme should appear in the drop-down list. Select it.
Restart GNOME shell by typing alt+f2 then R+enter (works in an Xorg session, in Wayland logout and login again).