This repository has been archived by the owner on Nov 10, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 48
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fonts.conf: A conf making Bitstream Vera default
The DejaVu font family is based on the Bitstream Vera font family to provide greater unicode coverage. The only way to override the emoji it includes is to make the emoji font the primary system font. This shouldn't be a problem, but a number of programs do not correctly use font fallback resulting in font rendering errors everywhere: #1, #5, #16, #18, #19. This font.conf makes Bitstream Vera the default font for Serif, Sans-Serif, and Monospace font requests since it does not contain any Unicode Emoji characters. Emoji One Color font is the first fallback, followed by DejaVu to provide everything else. Test with: fc-match -s serif fc-match -s sans-serif fc-match -s monospace May be the solution for #17
- Loading branch information
Showing
1 changed file
with
135 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | ||
|
||
<fontconfig> | ||
<!-- | ||
Emoji One Color SVGinOT Font | ||
https://github.com/eosrei/emojione-color-font | ||
The DejaVu font family is based on the Bitstream Vera font family to provide | ||
greater unicode coverage. The only way to override the emoji it includes is | ||
to make the emoji font the primary system font. This shouldn't be a problem, | ||
but a number of programs do not correctly use font fallback resulting in font | ||
rendering errors everywhere. | ||
This font.conf makes Bitstream Vera the default font for Serif, Sans-Serif, | ||
and Monospace font requests since it does not contain any Unicode Emoji | ||
characters. Emoji One Color font is the first fallback, followed by DejaVu | ||
to provide everything else. | ||
Test with: | ||
fc-match -s serif | ||
fc-match -s sans-serif | ||
fc-match -s monospace | ||
--> | ||
|
||
<match target="font"> | ||
<!-- If the requested font is Bitstream Vera Serif --> | ||
<test name="family" compare="eq"> | ||
<string>Bitstream Vera Serif</string> | ||
</test> | ||
<!-- Replace the entire match list with Bitstream Vera Serif alone --> | ||
<edit name="family" mode="assign_replace"> | ||
<string>Bitstream Vera Serif</string> | ||
</edit> | ||
<!-- Assign the serif family --> | ||
<edit name="family" mode="append_last"> | ||
<string>serif</string> | ||
</edit> | ||
</match> | ||
|
||
<match> | ||
<!-- If the requested font is serif --> | ||
<test qual="any" name="family"> | ||
<string>serif</string> | ||
</test> | ||
<!-- Make Bitstream Vera Serif the first result --> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Bitstream Vera Serif</string> | ||
</edit> | ||
<!-- Followed by Emoji One Color --> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Emoji One Color</string> | ||
</edit> | ||
</match> | ||
|
||
<match target="font"> | ||
<!-- If the requested font is Bitstream Vera Sans --> | ||
<test name="family" compare="eq"> | ||
<string>Bitstream Vera Sans</string> | ||
</test> | ||
<!-- Replace the entire match list with Bitstream Vera Sans alone --> | ||
<edit name="family" mode="assign_replace"> | ||
<string>Bitstream Vera Sans</string> | ||
</edit> | ||
<!-- Assign the sans-serif family --> | ||
<edit name="family" mode="append_last"> | ||
<string>sans-serif</string> | ||
</edit> | ||
</match> | ||
|
||
<match target="pattern"> | ||
<!-- If the requested font is sans-serif --> | ||
<test qual="any" name="family"> | ||
<string>sans-serif</string> | ||
</test> | ||
<!-- Make Bitstream Vera Sans the first result --> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Bitstream Vera Sans</string> | ||
</edit> | ||
<!-- Followed by Emoji One Color --> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Emoji One Color</string> | ||
</edit> | ||
</match> | ||
|
||
<match target="font"> | ||
<!-- If the requested font is Bitstream Vera Sans Mono --> | ||
<test name="family" compare="eq"> | ||
<string>Bitstream Vera Sans Mono</string> | ||
</test> | ||
<!-- Replace the entire match list with Bitstream Vera Sans Mono alone --> | ||
<edit name="family" mode="assign_replace"> | ||
<string>Bitstream Vera Sans Mono</string> | ||
</edit> | ||
<!-- Assign the monospace family last --> | ||
<edit name="family" mode="append_last"> | ||
<string>monospace</string> | ||
</edit> | ||
</match> | ||
|
||
<match target="pattern"> | ||
<!-- If the requested font is monospace --> | ||
<test qual="any" name="family"> | ||
<string>monospace</string> | ||
</test> | ||
<!-- | ||
Make Bitstream Vera Sans Mono the first result | ||
Note: If you want a different monospace font, this is where you change it. | ||
--> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Bitstream Vera Sans Mono</string> | ||
</edit> | ||
<!-- Followed by Emoji One Color --> | ||
<edit name="family" mode="prepend_first"> | ||
<string>Emoji One Color</string> | ||
</edit> | ||
</match> | ||
|
||
<!-- Alias requests for the other emoji fonts --> | ||
<alias binding="strong"> | ||
<family>Apple Color Emoji</family> | ||
<prefer><family>Emoji One Color</family></prefer> | ||
<default><family>sans-serif</family></default> | ||
</alias> | ||
<alias binding="strong"> | ||
<family>Segoe UI Emoji</family> | ||
<prefer><family>Emoji One Color</family></prefer> | ||
<default><family>sans-serif</family></default> | ||
</alias> | ||
<alias binding="strong"> | ||
<family>Noto Color Emoji</family> | ||
<prefer><family>Emoji One Color</family></prefer> | ||
<default><family>sans-serif</family></default> | ||
</alias> | ||
</fontconfig> |