Skip to content

Latest commit

 

History

40 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

获得类似 mac os 的字体体验

不喜欢linux默认使用的中文字体(Noto fons CJK / Souce Hans CJK)和西文字体(noto fonts),个人更喜欢修长的字体。 苹果的字体刚好符合我的要求,故有以下方案。

方案

  • 中文字体: 苹方字体
  • 英文字体: Inter
  • 等宽字体: Maple Mono CN
  • emoji: Apple Color Emoji
  • icon: Symbols Nerd Font Mono

苹方字体和苹果emoji不必多说。Inter风格类似于SF Pro。Maple字体有着圆润修长的字形和连字,并且使用symbols获得正确的终端icon显示

不用SF Pro,因为SF Pro的小字体字体间隔会很奇怪。非要用的话可以试试aur上打了mac补丁的 freetype 。

效果

中文和英文效果

图片

等宽展示

图片

emoji

图片

终端icon图标显示

图片 图片

用法

非arch系可以手动下载字体然后使用gnome字体管理器手动安装。谁叫你不用arch呢。就得这么麻烦。

对于arch, 请确保你已安装yay或paru:

首先,输入命令(如使用paru,替换'yay'即可):

sudo pacman -S inter-font ttf-nerd-fonts-symbols-mono 
yay -S otf-apple-pingfang ttf-apple-emoji ttf-maplemono-cn-unhinted

最后,把文件放到~/.config/fontconfig/里去,重启/注销登陆后字体配置会自动生效。

tips: 下载ttf-maplemono-nf-unhinted时,aur会默认下载maple的所有的分支,然后只安装其中的ttf-maplemono-cn-unhinted。无解,介意请使用arch linux cn.

Gnome / gtk 用户需知

如果你是Gnome / gtk用户,你会发现Adwaita Sans总是会时不时被调用。这不是字体配置的锅,而是firefox读取system-ui字体簇时优先读取了gtk的字体配置。解决办法是将gtk的字体指定为你想要的,例如:

gsettings set org.gnome.desktop.interface font-name "Inter 11"

这样,你就发现所有无衬线字体默认使用Inter了。

fonts.conf说明

arch linux不必特意添加渲染设置,因为字体渲染引擎已经默认启用如下的渲染设置(字体微调):

  • 抗锯齿
  • BCI(字节码解释器)
  • 微调风格-hintslight
  • 次像素排列(RGBA)
  • LCD滤镜:lcddefault

可能4k屏需要关闭字体微调, 以获得更好的字体显示效果? 因为ppi大于300的屏幕, 字体无需微调就会自动对齐.

fonts.conf定制

fonts.conf上已经定义好了各种类型的字体,并且有注释, 按需修改即可:

  • 无衬线字体
  • 衬线字体
  • 等宽字体

对于无衬线字体和衬线字体的设置,排在首位得是英文字体,第二个才是中文字体.这样才能确保只有在需要显示中文的情况下才使用中文字体.

检查fonts.conf是否有语法错误

  1. 直接检查:
xmllint --noout ~/.config/fontconfig/fonts.conf
  1. 重新生成字体缓存 也能自动检查语法错误:
fc-cache -fv

不管哪种方法, 无错误输出则语法正确.

About

No description, website, or topics provided.

Resources

Stars

39 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors