Skip to content

Instantly share code, notes, and snippets.

@hexchain
Last active July 7, 2020 23:42
Show Gist options
  • Star 25 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save hexchain/47f550472e79d0805060 to your computer and use it in GitHub Desktop.
Save hexchain/47f550472e79d0805060 to your computer and use it in GitHub Desktop.
Emoji on Linux desktop. Use with aur/cairo-coloredemoji.
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/conf.avail/51-noto-color-emoji.conf -->
<fontconfig>
<selectfont>
<acceptfont>
<pattern>
<patelt name="family"><string>Noto Color Emoji</string></patelt>
</pattern>
</acceptfont>
</selectfont>
<match target="scan">
<test name="family">
<string>Noto Color Emoji</string>
</test>
<edit name="charset">
<charset>
<int>0xa9</int>
<int>0xae</int>
<int>0x200d</int>
<int>0x203c</int>
<int>0x2049</int>
<int>0x20e3</int>
<int>0x2122</int>
<int>0x2139</int>
<range><int>0x2194</int><int>0x2199</int></range>
<range><int>0x21a9</int><int>0x21aa</int></range>
<range><int>0x231a</int><int>0x231b</int></range>
<int>0x2328</int>
<int>0x23cf</int>
<range><int>0x23e9</int><int>0x23f3</int></range>
<range><int>0x23f8</int><int>0x23fa</int></range>
<int>0x24c2</int>
<range><int>0x25aa</int><int>0x25ab</int></range>
<int>0x25b6</int>
<int>0x25c0</int>
<range><int>0x25fb</int><int>0x25fe</int></range>
<range><int>0x2600</int><int>0x2604</int></range>
<int>0x260e</int>
<int>0x2611</int>
<range><int>0x2614</int><int>0x2615</int></range>
<int>0x2618</int>
<int>0x261d</int>
<int>0x2620</int>
<range><int>0x2622</int><int>0x2623</int></range>
<int>0x2626</int>
<int>0x262a</int>
<range><int>0x262e</int><int>0x262f</int></range>
<range><int>0x2638</int><int>0x263a</int></range>
<int>0x2640</int>
<int>0x2642</int>
<range><int>0x2648</int><int>0x2653</int></range>
<int>0x2660</int>
<int>0x2663</int>
<range><int>0x2665</int><int>0x2666</int></range>
<int>0x2668</int>
<int>0x267b</int>
<int>0x267f</int>
<range><int>0x2692</int><int>0x2697</int></range>
<int>0x2699</int>
<range><int>0x269b</int><int>0x269c</int></range>
<range><int>0x26a0</int><int>0x26a1</int></range>
<range><int>0x26aa</int><int>0x26ab</int></range>
<range><int>0x26b0</int><int>0x26b1</int></range>
<range><int>0x26bd</int><int>0x26be</int></range>
<range><int>0x26c4</int><int>0x26c5</int></range>
<int>0x26c8</int>
<range><int>0x26ce</int><int>0x26cf</int></range>
<int>0x26d1</int>
<range><int>0x26d3</int><int>0x26d4</int></range>
<range><int>0x26e9</int><int>0x26ea</int></range>
<range><int>0x26f0</int><int>0x26f5</int></range>
<range><int>0x26f7</int><int>0x26fa</int></range>
<int>0x26fd</int>
<int>0x2702</int>
<int>0x2705</int>
<range><int>0x2708</int><int>0x270d</int></range>
<int>0x270f</int>
<int>0x2712</int>
<int>0x2714</int>
<int>0x2716</int>
<int>0x271d</int>
<int>0x2721</int>
<int>0x2728</int>
<range><int>0x2733</int><int>0x2734</int></range>
<int>0x2744</int>
<int>0x2747</int>
<int>0x274c</int>
<int>0x274e</int>
<range><int>0x2753</int><int>0x2755</int></range>
<int>0x2757</int>
<range><int>0x2763</int><int>0x2764</int></range>
<range><int>0x2795</int><int>0x2797</int></range>
<int>0x27a1</int>
<int>0x27b0</int>
<int>0x27bf</int>
<range><int>0x2934</int><int>0x2935</int></range>
<range><int>0x2b05</int><int>0x2b07</int></range>
<range><int>0x2b1b</int><int>0x2b1c</int></range>
<int>0x2b50</int>
<int>0x2b55</int>
<int>0x3030</int>
<int>0x303d</int>
<int>0x3297</int>
<int>0x3299</int>
<int>0xfe0f</int>
<int>0x1f004</int>
<int>0x1f0cf</int>
<range><int>0x1f170</int><int>0x1f171</int></range>
<range><int>0x1f17e</int><int>0x1f17f</int></range>
<int>0x1f18e</int>
<range><int>0x1f191</int><int>0x1f19a</int></range>
<range><int>0x1f1e6</int><int>0x1f1ff</int></range>
<range><int>0x1f201</int><int>0x1f202</int></range>
<int>0x1f21a</int>
<int>0x1f22f</int>
<range><int>0x1f232</int><int>0x1f23a</int></range>
<range><int>0x1f250</int><int>0x1f251</int></range>
<range><int>0x1f300</int><int>0x1f321</int></range>
<range><int>0x1f324</int><int>0x1f393</int></range>
<range><int>0x1f396</int><int>0x1f397</int></range>
<range><int>0x1f399</int><int>0x1f39b</int></range>
<range><int>0x1f39e</int><int>0x1f3f0</int></range>
<range><int>0x1f3f3</int><int>0x1f3f5</int></range>
<range><int>0x1f3f7</int><int>0x1f4fd</int></range>
<range><int>0x1f4ff</int><int>0x1f53d</int></range>
<range><int>0x1f549</int><int>0x1f54e</int></range>
<range><int>0x1f550</int><int>0x1f567</int></range>
<range><int>0x1f56f</int><int>0x1f570</int></range>
<range><int>0x1f573</int><int>0x1f57a</int></range>
<int>0x1f587</int>
<range><int>0x1f58a</int><int>0x1f58d</int></range>
<int>0x1f590</int>
<range><int>0x1f595</int><int>0x1f596</int></range>
<range><int>0x1f5a4</int><int>0x1f5a5</int></range>
<int>0x1f5a8</int>
<range><int>0x1f5b1</int><int>0x1f5b2</int></range>
<int>0x1f5bc</int>
<range><int>0x1f5c2</int><int>0x1f5c4</int></range>
<range><int>0x1f5d1</int><int>0x1f5d3</int></range>
<range><int>0x1f5dc</int><int>0x1f5de</int></range>
<int>0x1f5e1</int>
<int>0x1f5e3</int>
<int>0x1f5e8</int>
<int>0x1f5ef</int>
<int>0x1f5f3</int>
<range><int>0x1f5fa</int><int>0x1f64f</int></range>
<range><int>0x1f680</int><int>0x1f6c5</int></range>
<range><int>0x1f6cb</int><int>0x1f6d2</int></range>
<range><int>0x1f6e0</int><int>0x1f6e5</int></range>
<int>0x1f6e9</int>
<range><int>0x1f6eb</int><int>0x1f6ec</int></range>
<int>0x1f6f0</int>
<range><int>0x1f6f3</int><int>0x1f6f6</int></range>
<range><int>0x1f910</int><int>0x1f91e</int></range>
<range><int>0x1f920</int><int>0x1f927</int></range>
<int>0x1f930</int>
<range><int>0x1f933</int><int>0x1f93a</int></range>
<range><int>0x1f93c</int><int>0x1f93e</int></range>
<range><int>0x1f940</int><int>0x1f945</int></range>
<range><int>0x1f947</int><int>0x1f94b</int></range>
<range><int>0x1f950</int><int>0x1f95e</int></range>
<range><int>0x1f980</int><int>0x1f991</int></range>
<int>0x1f9c0</int>
</charset>
</edit>
</match>
<match target="font">
<test name="family">
<string>Noto Color Emoji</string>
</test>
<edit name="scalable" mode="assign"><bool>true</bool></edit>
<edit name="embeddedbitmap" mode="assign"><bool>true</bool></edit>
<edit name="hinting" mode="assign"><bool>true</bool></edit>
<edit name="hintstyle" mode="assign"><const>hintfull</const></edit>
</match>
<!-- Experimental -->
<match target="pattern">
<test name="family" qual="first" compare="contains">
<string>emoji</string>
</test>
<edit mode="assign" name="color">
<bool>true</bool>
</edit>
<edit mode="assign" name="family">
<string>Noto Color Emoji</string>
</edit>
</match>
<match target="pattern">
<test name="prgname" compare="not_eq">
<string>java</string>
</test>
<edit name="family" mode="prepend">
<string>Noto Color Emoji</string>
</edit>
</match>
</fontconfig>
@cookiengineer
Copy link

cookiengineer commented Nov 9, 2016

Installation instructions

sudo pacman -S noto-fonts-emoji noto-fonts;
yaourt -S cairo-coloredemoji;

# Create XML file into /etc/fonts/conf.avail/51-noto-color-emoji.conf

cd /etc/fonts/conf.d;
sudo ln -s /etc/fonts/conf.avail/51-noto-color-emoji.conf 51-noto-color-emoji.conf;

sudo fc-cache; # Generate global font cache
fc-cache; # Generate user-specific font cache

Afterwards, remember to restart your App / Browser that uses emojis. Surf to getemoji.com. They use the "experimental" font-family, so you might wanna link the "Segoe UI Emoji" font as suggested in the XML file.

@smallst
Copy link

smallst commented Dec 19, 2016

thanks, but a little problem
chromium works well but firefox not, but in firebug emoji is just right.
i use archlinux and cairo-infinality-ultimate-with-colored-emoji
untitled

@GeekaholicLin
Copy link

@cookiengineer Are there any easy way for ubuntu terminal?I have changed the cairo source that cairo-coloredemojisupplied and use make to build it.And then download the fonts from google,and follow your installation instructions.Change the terminal font to Noto Color Emoji and restart the terminal.But it does not workQAQ.I spent much time in configuring it in linux terminal,but it is in vain.Do you have any idea about it?thx!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment