aboutsummaryrefslogtreecommitdiff
path: root/fonts/dot-config/fontconfig/conf.d/66-emoji.conf
diff options
context:
space:
mode:
Diffstat (limited to 'fonts/dot-config/fontconfig/conf.d/66-emoji.conf')
-rw-r--r--fonts/dot-config/fontconfig/conf.d/66-emoji.conf46
1 files changed, 46 insertions, 0 deletions
diff --git a/fonts/dot-config/fontconfig/conf.d/66-emoji.conf b/fonts/dot-config/fontconfig/conf.d/66-emoji.conf
new file mode 100644
index 0000000..139d78a
--- /dev/null
+++ b/fonts/dot-config/fontconfig/conf.d/66-emoji.conf
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
+<fontconfig>
+ <!--
+ This adds a generic family 'emoji',
+ aimed for apps that don't specify specific font family for rendering emojis.
+ -->
+ <match target="pattern">
+ <test qual="any" name="family"><string>emoji</string></test>
+ <edit name="family" mode="assign" binding="same"><string>Noto Color Emoji</string></edit>
+ </match>
+ <!--
+ If other fonts contain emoji glyphs, they could interfere and make some emojis rendered in wrong font (often in black-and-white).
+ For example, DejaVu Sans contains black-and-white emojis, which we can remove using the following trick:
+ -->
+ <match target="scan">
+ <test name="family" compare="contains">
+ <string>Hack</string>
+ </test>
+ <test name="family" compare="contains">
+ <string>Comic Code</string>
+ </test>
+ <test name="family" compare="contains">
+ <string>IosevkaInput</string>
+ </test>
+ <test name="family" compare="contains">
+ <string>Dejavu Sans Mono</string>
+ </test>
+ <edit name="charset" mode="assign" binding="same">
+ <minus>
+ <name>charset</name>
+ <charset>
+ <range>
+ <int>0x2763</int>
+ <int>0x2764</int>
+ </range>
+ <range>
+ <int>0x1f600</int>
+ <int>0x1f640</int>
+ </range>
+ </charset>
+ </minus>
+ </edit>
+ </match>
+</fontconfig>
+