> I know I can list fonts and their alias via xlsfonts. > > but how can I know what actual font the alias is stand for? thanks!
> I know I can list fonts and their alias via xlsfonts. > > but how can I know what actual font the alias is stand for? thanks!
In the XFree86 on GNU/Linux system, fonts are usually located in `/usr/X11R6/lib/X11/fonts/'
Each directoryes under `/usr/X11R6/lib/X11/fonts/' always have two files named `fonts.alias' and `fonts.dir'
`fonts.dir' maps the real font name to font filename. `fonts.alias' maps the alias name to the real font name.
So try to look at the every `fonts.alias'
Following command may help you find the location of every alias file.
$ find /usr/X11R6/lib/X11/fonts/ -iname 'fonts.alias' -print
I keep getting the error message: could not open default font 'fixed'
This is by far the most popular Frequently Asked Question
To run X you need at least the font 'fixed' and 'cursor' to display a cursor image and be able to print meaningful error messages. If these fonts are not present the server doesn't start. My Xserver refuses to start and gives me the error message:
Fatal server error: could not open default font 'fixed'
When reporting a problem related to a server crash, please send the full server output, not just the last messages. This can be found in the log file "/var/log/Xorg.0.log". Please report problems to xorg@lists.freedesktop.org.
There may be different reasons for this:
Somewhere (pretty much at the beginning of the log) there is a message:
Could not init font path element unix/:7100, removing from list!
This message tells that the Xserver is trying to contact a font server which appearantly isn't running. So you need to get your font server up and running before you start X. How this is done depends heavily on the OS and/or the distribution you use. Please contact your vendor support on how to do this!
The use of the font server xfs is deprecated due to several bugs in it. It is recommended that the Xserver loads the fonts directly. To do so add at least the lines: |
FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/CID/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
to the "Files" section of your xorg.conf file.
There is also a possibility that the [fontpath]/misc/fonts.alias file is missing. This can cause the X server to not find the alias of 'fixed' to whatever is the actual fixed font.
fixed -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-1
If you see a messages like:
(WW) The directory "/usr/X11R6/lib/X11/fonts/100dpi" does not exist.
Entry deleted from font path.
it means that this font path element either does not exist or isn't readable. Normally it is no problem if some font path elements listed in your xorg.conf are missing. However if /usr/X11R6/lib/X11/fonts/misc/ is missing the cursor and the fixed fonts are missing, too, therefore the server cannot start. Therefore please make sure that this directory exists and is readable. To have a good selection of standard fonts you should have at least the directories listed above. If you need non-latin character sets more fonts may be required.
Please also check for messages like:
(WW) `fonts.dir' not found (or not valid) in "/usr/X11R6/lib/X11/fonts/local/" . Entry deleted from font path. (Run 'mkfontdir' on "/usr/X11R6/lib/X11/fonts/local/"). ... Could not init font path element /usr/X11R6/lib/X11/fonts/misc/, removing from list!
These tell you that the fonts were probably not installed correctly. Please do as suggested and run
mkfontdir /usr/X11R6/lib/X11/fonts/local/
Please replace /usr/X11R6/lib/X11/fonts/local/ with the directories listed in your log file. You should do this for every directory listed.
> Just did an update on a Sid machine and now xfree86 server isn't > starting:
> Fatal server error: > could not open default font 'fixed';
Ok, I only have ssh access right now, but this is interesting. Seems the Sid update created 8859-15 font aliases for me, but I don't have fonts to match. If I run update-fonts-alias it creates a fonts.alias file with 8859-15 encodings. I'm LANG=en_US so I should have 8859-1.
My /etc/X11/fonts/misc/xfonts-base.alias file is listing 8859-15 aliases which don't map to any font files I have.
On my working laptop /etc/X11/fonts/misc/xfonts-base.alias lists 8859-1 fonts.
Is xfonts-base broken?
On the broken machine: xfonts-base 4.3.0-5
$ grep ^fixed /etc/X11/fonts/misc/xfonts-base.alias fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
$ grep misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15 /usr/lib/X11/fonts/misc/fonts.dir | wc -l 0
On this working Sid laptop: xfonts-base 4.3.0-2
$ grep ^fixed /etc/X11/fonts/misc/xfonts-base.alias fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1
$ grep misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1$ /usr/lib/X11/fonts/misc/fonts.dir 6x13-ISO8859-1.pcf.gz -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1
Bill Moseley
Ok, now I'm really confused:
I ran this to extract out the .deb:
$ dpkg-deb -x /var/cache/apt/archives/xfonts-base_4.3.0-5_all.deb xbase $ grep ^fixed xbase/etc/X11/fonts/misc/xfonts-base.alias fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1
Ok so that's the correct encoding. Then I did this:
# apt-get remove xfonts-base # rm -f /etc/X11/fonts/misc/xfonts-base.alias # dpkg -i /var/cache/apt/archives/xfonts-base_4.3.0-5_all.deb # cat /etc/X11/fonts/misc/xfonts-base.alias cat: /etc/X11/fonts/misc/xfonts-base.alias: No such file or directory
So, why didn't that file get installed with dpkg -i ?
And how did I get a xfonts-base.alias with 8859-15 encodings.
Bill Moseley
$ find /opt/X11R6/lib/X11/fonts -name 'fonts.alias' -print /opt/X11R6/lib/X11/fonts/100dpi/fonts.alias /opt/X11R6/lib/X11/fonts/75dpi/fonts.alias /opt/X11R6/lib/X11/fonts/misc/fonts.alias
and in /opt/X11R6/lib/X11/fonts/misc/fonts.alias
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-1 5x7 -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-1 5x8 -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso646.1991-irv 6x9 -misc-fixed-medium-r-normal--9-90-75-75-c-60-iso646.1991-irv 6x10 -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1 6x12 -misc-fixed-medium-r-semicondensed--12-110-75-75-c-60-iso646.1991-irv 6x13 -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1 6x13bold -misc-fixed-bold-r-semicondensed--13-120-75-75-c-60-iso8859-1 7x13 -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1 7x13bold -misc-fixed-bold-r-normal--13-120-75-75-c-70-iso8859-1 7x14 -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1 7x14bold -misc-fixed-bold-r-normal--14-130-75-75-c-70-iso8859-1 8x13 -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-1 8x13bold -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1 8x16 -sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1 9x15 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso8859-1 9x15bold -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso8859-1 10x20 -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso8859-1 12x24 -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1 nil2 -misc-nil-medium-r-normal--2-20-75-75-c-10-misc-fontspecific
$ ff /usr/openwin/lib/X11/fonts fonts.alias /usr/openwin/lib/X11/fonts/TrueType/fonts.alias /usr/openwin/lib/X11/fonts/100dpi/fonts.alias /usr/openwin/lib/X11/fonts/75dpi/fonts.alias /usr/openwin/lib/X11/fonts/F3/fonts.alias /usr/openwin/lib/X11/fonts/F3bitmaps/fonts.alias /usr/openwin/lib/X11/fonts/Speedo/fonts.alias /usr/openwin/lib/X11/fonts/Type1/fonts.alias /usr/openwin/lib/X11/fonts/misc/fonts.alias /usr/openwin/lib/X11/fonts/TTbitmaps/fonts.alias
From RH8?, I can't 'see' any Chinese characters in Xterm windows any more. They show up blank.
Just realize it is because of the font that I choose — "6x13". Changing it to "fixed" solove the problem.
Also, change the default font for emacs from "6x13" to "fixed" solve the delay when launching as Chinese Emacs.