使用 noto-fonts-emoji 在 Arch Linux 上启用表情符号
将 Arch Linux 作为我的日常操作系统后,我遇到了一个新问题:我看不到表情符号!
您可以安装和设置一些表情符号字体。其中之一是[此处应填写字体noto-fonts-emoji名称]。我决定编写一个小脚本来自动设置该字体,以下是具体步骤:
#!/bin/sh
set -e
if [[ $(id -u) -ne 0 ]] ; then echo "Please run as root" ; exit 1 ; fi
echo "Setting up Noto Emoji font..."
# 1 - install noto-fonts-emoji package
pacman -S noto-fonts-emoji --needed
# pacman -S powerline-fonts --needed
echo "Recommended system font: inconsolata regular (ttf-inconsolata or powerline-fonts)"
# 2 - add font config to /etc/fonts/conf.d/01-notosans.conf
echo "<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Sans</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Serif</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Mono</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
</fontconfig>
" > /etc/fonts/local.conf
# 3 - update font cache via fc-cache
fc-cache
echo "Noto Emoji Font installed! You may need to restart applications like chrome. If chrome displays no symbols or no letters, your default font contains emojis."
echo "consider inconsolata regular"
第一部分是安装软件包noto-fonts-emoji。该参数--needed用于仅在软件包尚未安装时才下载并安装
它。第二部分是创建并保存配置文件。
第三部分fc-cache是刷新字体缓存。
我建议Inconsolata Nerd Font Mono Regular使用不带表情符号的字体作为系统字体。如果您在浏览器中看到数字显示为表情符号,很可能是您当前的系统字体本身就包含表情符号(例如 DejaVu),您需要切换到其他字体才能看到彩色表情符号。
更新于2020年2月20日
有一个更简便的方法,我已经编辑了这篇文章,加入了新的信息。之前需要反复尝试才能找到字体配置文件的编号。现在,只需要一个文件即可。
文章来源:https://dev.to/darksmile92/get-emojis-working-on-arch-linux-with-noto-fonts-emoji-2a9