我本来也用方正聚珍仿宋,但看久了,我的眼睛有点吃力。
霞鹜文楷啊,字体更粗一点。
聚珍仿宋确实不错,但是覆盖少了,很多字都没有
看久了,也还是觉得黑体舒服…简单直接,消耗脑力少
感谢大佬!!
最近喜欢上使用”方正柳公权楷书 简繁“(个人免费使用,下载链接)这款中文字体,英文字体搭配 Amazon出的 Bookerly (随Kindle 应用安装,也可在Typography上下载)在 Org-mode 中使用很赞。等宽字体目前用Triplicate T4c (这是一款衬线等宽字体,可惜是要收费的,参见Triplicate官网),在MacOS 上英文字体大小15号,中文字体为18号,这样在 org的表格中就可以中英文对齐了。
在Org-mode上的效果如下:
这几个星期在研究等宽等高合并中英文字体,英文字体的(宽度
/upm
) > 53%的话,基本上很难看。大部分英文字体都是大于60%的。而中文字体一般都是500/1000这样的宽度和upm。如FiraCdoe(1200/1950)来合并中文字体的话,导致要等宽的话,中文字符的宽度要调整到原来的120%,看着中文字符的间距过宽。
现在找到的完美的英文字体:
- Iosevka(500/1000),过于瘦高,看着很累眼
- Inconsolata(500/1000),相同size时,感觉比其他字体小一号,没有连字符
- UbuntuMono(500/1000),辨识度高,字形非常矮,合并后显示的行数秒杀其他字体。
- FantasqueSans(1060/2048),辨识度高,字形较矮。合并后显示的行数较多。字形美观。
- PragmataPro(500/1000),过于瘦高,看着很累眼,字符不好看。
现在用的字体是FantasqueSans Nerd Font Mono
+ LXGW WenKai Mono Lite
。
用到现在还是最喜欢霞骛+JetBrains Mono,这对组合用于平时各种界面。霞骛+PragmataPro 用于 org(iosevka 平替后者)。对于生僻字用 Jigmo 大字符集作为 fallback,覆盖了所有字符。
JetBrains Mono的宽度/upm是(600/1000)太宽了。Maple是基于JetBrains改进的,也是这个问题。
PragmataPro我觉得看着好累。
下图是VimR里用Iosevka + LXGW WenKai Mono Lite
的显示效果,总感觉英文字母看着好费眼睛。
Iosevka以FiraCode为模板修改了几个字母的样式。
习惯了就好,这样代码每行显示的内容还多一些,字号设置大一些,目前我用的是14。
和操作系统、屏幕有关。我用macOS、27寸4k显示器,开hidpi缩放到1920x1080,用16的字号或者18的字号。
中英文1:2对齐和字体美观度不可共存。如果1:2严格对齐,英文就要么瘦长,要么看起来比中文更小一号。
我的建议是在需要严格1:2的地方(如表格)自定义1:2字体,其他时候用个凑合3:5对齐的字体组合也行
Ubuntu、Iosevka、Inconsolata和PragmataPro都正好和中文字体是1:2的宽度,而且upm都是1000,你可以试试。
我就是这样做的
表格用1:2字体,其他3:5字体 这是如何设置的啊?
(set-face-attribute 'org-table nil :family "xxx")
把 GitHub - ryanoasis/nerd-fonts: Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts: Hack, Source Code Pro, more. Glyph collections: Font Awesome, Material Design Icons, Octicons, & more 上的字体大致翻了一遍,选择标准是char width/upm 接近50%
的字体:
字体 | upm | char width | 说明 |
---|---|---|---|
3270 SemiCondensed | 2000 | 974 | 放弃。3种字体宽度里面最佳宽度,但是字形好丑 |
Agave Nerd Font |
2048 | 1024 | 完美匹配,用小写t修改小写l。没有连字符,和Ubuntu的风格类似,略卡通,显示62行,厉害了 |
AnonymiceProNerdFont | 2048 | 1118 | 放弃。太宽 |
Arimo Nerd Font | 不等宽 | 放弃。 | |
AurulentSans | 1000 | 600 | 放弃。 |
CaskaydiaCove | 2048 | 1200 | 放弃。老的nerd file是otf文件,用fontforge编辑,upm改到1000,宽度为585。调整到540后有点挤 |
CommitMono | 1000 | 600(默认) | 放弃。宽度可定制,但是字体不会变小,和Iosevka一样。改到540的话就挤在一起了 |
FantaqueSans |
2048 | 1060 | 首选。fontforge可编辑sdfir文件 |
FiraCode原版 | 1950 | 1200 | 放弃。太宽了。基本上没法和中文等宽 |
GeistMono v1.4.01 | 1000 | 600 | 放弃。 |
Hasklig v1.2 | 1000 | 600 | 放弃。fork from Source Code Pro,怪不得这么宽 |
Iosevka |
1000 | 500 | 太高太瘦了,width调整到520感觉稍微好点,中文到1040。用SS05模板,再定制 |
Lilex | 1000 | 600 | 放弃。扩展了IBM Plex Mono,增加连字符等 |
LektonNerdFont |
1000 | 500 | 凑合着用,但是需要调整行高,大、小、方括号太高了,到时候行距肯定很大,regular很细 |
Maple | 1000 | 600 | 放弃。600太宽了,中文字体都是1000,只能改到550,再小就不好看了 |
MartianMono Nerd Font | 1000 | 700 | 放弃。 |
MartianMono Condensed | 1000 | 600 | 放弃。600还是宽啊 |
MonegoLigaturesNerdFont | 1000 | 600 | 放弃。各种宽度的字符,为什么? |
MonofurNerdFont |
2400 | 1200 | 很漂亮,但没有源码,regular的太细了,比LXGW还细一些,西文字体最好比中文字体粗一些。bold的太粗了 |
MonoidNerdFont | 1536 | 1024 | 放弃。看着1024的宽度不错的,但是upm才1536,哈哈 |
MononokiNerdFontMono | 1000 | 575 | 放弃。挺漂亮的字形 |
NotoSansMNerdFontMono | 1000 | 600 | 放弃。不喜欢小写l |
OverpassM NF | 1000 | 616 | 放弃。修改redhat的字体,太宽了 |
PragmataProMonoLiga | 2048 | 1024 | 可以的,就是有点瘦高,看着累。v0.829 |
ProFontIIxNerdFont | 1000 | 600 | 放弃。 |
RecMonoLinearNerdFont | 1000 | 600 | 放弃吧。都是600的宽度,没法用 |
ShureTechMonoNerdFont |
1000 | 540 | 勉强可用,宽度改到530。改为525会有点挤。字形有点小,而且不好看,没有连字符 |
TinosNerdFont | 不等宽 | 放弃。 | |
Ubuntu mono NF |
1000 | 500 | 完美啊。还得是Ubuntu,十多年前的设计,美观、耐看。只有LXGW是绝配,缺点是没有连字符。 |