Monaspace 字体系统是一个等宽字体超家族,其中包含一些现代技巧。它由五种可变轴字体组成。每一种都有独特的声音,但它们的指标都相互兼容,允许您混合和匹配它们以获得更具表现力的印刷调色板。
网格上的字母是我们查看代码的方式。为什么不把这些字母做得更好呢?
来自 GitHub Next 的探索。请访问 monaspace.githubnext.com 查看 Monaspace 的完整故事。
?下载最新版本?
Monaspace 可用作可变轴字体和静态版本。您可以并排安装它们;他们的姓氏不同。例如:
Monaspace _____
:静态家族Monaspace _____ Var
或VF
:变量族可变字体每个系列有一个文件(Neon、Argon 等)。现代又方便!
静态字体每个系列的每个剪切都有一个文件。变量轴为每个轴命名了停止点,例如粗细为light
或bold
, italic
为斜体,宽度为semiwide
或wide
。所有这些属性的组合爆炸意味着静态字体的完整安装涉及数百个字体文件。但对于尚不支持可变字体的情况,静态构建可以在每个轴的范围内为您提供多种停止点。
Monaspace 首创了等宽字体的“纹理修复”技术:
当在编辑器中打开calt
字体功能设置时,将启用纹理修复。此设置的位置因应用程序而异,并且并非所有应用程序都支持它。有关具体指导,请参阅下面的编辑部分。
您可以在 Monaspace 网站上阅读有关其工作原理的更多信息,并在文档中了解其实现方式。
警告
Monaspace v1.1 和 v1.101 中的连字处理发生了显着变化。如果您要升级,请参阅发行说明以获取有关如何更改编辑器设置的指南。
liga
字体功能可以自定义重复字符的间距,例如///
或||
。它旨在避免在较长的序列(如////
内激活。
有八组编码连字,分为风格组。您可以有选择地启用或禁用单个集:
ss01
:与 equals 字形相关的连字,如!=
和===
。ss02
:大于/小于或等于的连字( <=
, >=
)。ss03
:与->
和~>
等箭头相关的连字。ss04
:与标记相关的连字,例如
和/>
。ss05
:与 F# 编程语言相关的连字,例如|>
。ss06
:与重复使用#
、 +
和&
相关的连字。ss07
:与冒号相关的连字,例如::
或=:=
。ss08
:与句点与其他字形(如..=
或.-
)组合相关的连字。ss09
:与大于/小于和等号组合相关的连字,例如<=>
、 >>
和=<<
。您可以在 Monaspace 网站上看到所有连字的交互式显示
特定字符具有变体,您可以选择启用:
cv30
:启用 Monaspace 1.0 中附带的旧星号,该星号垂直对齐,靠近空间顶部。cv60
:强制<=
对以匹配=>
的方式呈现,而不是交换≤
。cv61
:启用[]
的可选闭合方形连字。在许多编辑器中创作数组时,这可能会分散注意力,因为它们会自动插入右括号,从而在键入左括号后立即生成闭合的方形连字。 操作系统上的字体缓存是一个难以理解的混乱,可以追溯到三十年前,而且我们无法在 Monaspace 中修复。一般来说,您应该:
重新启动通常是 100% 确定操作系统中的底层机器采用新字体的唯一方法。
您可以手动将字体从fonts/otf
或fonts/variable
目录拖到字体簿中。
还有一个脚本可以自动从~/Library/Fonts
中删除所有 Monaspace 字体,然后复制最新版本。从存储库的根目录调用它,如下所示:
$ bash util/install_macos.sh
您还可以使用自制程序作为替代:
brew tap homebrew/cask-fonts
brew install font-monaspace
您可以手动将字体从fonts/otf
或fonts/variable
目录拖到C:WindowsFonts
中。或者,右键单击所需的字体,然后单击“安装”。
您可以手动将字体从fonts/otf
和fonts/variable
目录拖到~/.local/share/fonts
中。
还有一个脚本可以自动从~/.local/share/fonts
中删除所有 Monaspace 字体,然后复制最新版本。从存储库的根目录调用它,如下所示:
$ bash util/install_linux.sh
所有带有.woff
或.woff2
后缀的文件都适合在 Web 上使用。您不会将它们安装在操作系统中,而是将它们添加到您的 Web 开发项目中。
与桌面字体一样,它们有可变版本和静态版本。
警告
Monaspace v1.1 中的连字处理发生了显着变化。如果您要从 Monaspace v1.0 升级,请参阅发行说明(v1.100、v1.101)以获取有关如何更改编辑器设置的指南。
设置字体系列:
"editor.fontFamily" : " 'Monaspace Neon', monospace " ,
笔记
VS Code 尚未很好地支持可变字体,并且尚无法混合多种字体。请继续关注,我们正在与 VS Code 团队讨论此事!
您必须使用editor.fontLigatures
设置来启用各种功能(纹理修复、连字和字符变体)。该设置是要启用的字体功能的逗号分隔列表。
笔记
此设置在图形设置编辑器中不可用;您必须手动创建它。
calt
:启用纹理修复liga
:为某些重复字符模式启用动态间距,例如///
ss01
、 ss02
等:启用特定的风格集cv30
、 cv60
等:启用特定字符变体将它们放在一起,启用除字符变体之外的所有内容的设置字符串将如下所示:
"editor.fontLigatures" : " 'calt', 'liga', 'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'ss07', 'ss08', 'ss09' " ,
目前还没有正式的贡献指南!如果您有兴趣为字体做出贡献,您应该阅读纹理修复指南,因为它解释了如何生成必要的替代字形。
这个方便的实用程序重命名内置字体并将其移动到各自的目录中。您需要安装 Deno,然后调用它:
$ ./util/renamer.ts --src= " ~/path/to/the/built/fonts "
SIL OFL。请参阅许可证。
请在此存储库中提交问题。 Monaspace 不是受支持的产品;如有问题,请勿联系 GitHub 支持,因为他们不支持 GitHub Next 探索。
Monaspace 旨在为所有开发人员改进所有代码。 GitHub Next 于 2022 年开始了这一旅程,我们很幸运地找到了一家与我们一样热衷于改进 Lettermatic 软件的字体铸造厂。其结果是形式和功能的结合,为新的开发人员体验打开了大门,如果没有 Lettermatic 团队的领域专业知识和技能,以及他们与 GitHub Next 合作研究排版方式所投入的时间,这是不可能实现的应该适用于代码。