0

Input Mono 和它的家人们

 9 months ago
source link: https://type.cyhsu.xyz/2023/06/input-font/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Input Mono 和它的家人们

2023-06-21

A version of this article appears on Jun. 21, 2023 on SSPAI as a part of a member-only post. Learn more or subscribe

The article is permitted to be self-archived in the version as originally submitted for publication on the author’s personal website under CC BY-NC 4.0 pursuant to § 5.2(b) of the SSPAI Fellowship Contributor Agreement.

我很喜欢用等宽字体。虽说等宽字体的主要使用场景是终端和代码编辑,也没法做得像比例字体那么「精致」,但这种粗放中也有种不事雕琢的美感。优美的字体有时是「危险」的,可以被误用或滥用,干扰以至带偏观者对内容的判断;而等宽字体不会让自身的风格和调性渗入到所显示的内容中,看惯以后反而更能带来平静和专注。也正因如此,很多面向写作者的 markdown 软件,都会用等宽字体作为编辑模式下的默认字体,追求的就是那种在打字机上敲手稿的「工作氛围」。

得益于紧密邻接的开源文化,等宽字体不缺选择(近年来冠名制作等宽字体还成了技术公司的时髦做法);「赏玩」等宽字体也是我的闲暇消遣之一。但无论怎么尝鲜,只有一个字体像对我有地心引力一样,吸引我反复换回去——Input

db7b6d250111ff3f37245dd00b871ab1.png

你问为什么?呃,作为一个每天以输入为主要工作的人,还有什么比用一个叫做「输入」的字体来输入更能激发我对工作的热爱呢……

……当然我在开玩笑。但 Input 确实有很多值得一提的优点。首先,对于一个编程字体的基本功:易读易认和不易混淆,Input 是完全让人放心的:躯干壮实、x 字高(字母中间部分的高度)挺拔,因此在深色主题和小字号下也很清晰;1/i/lo/0 这些基本的防混淆设计也一应俱全。

设计风格上,Input 有着我很满意的平衡取舍。从远处看,它的整体风格是比较严肃的,a、c 等字母的开口(aperture)很「含蓄」,o、p 等字母的弧线近乎「横平竖直」,显现出一种机械风。但凑近了看,Input 又有很丰富的细节:g 的后脑勺像喇叭一样的「辫子」,S、G 带角度的切口,以及成为装饰物的油墨陷阱(嵌入转角的切口)。

斜体也是类似:Input 既没有像很多编程字体那样略过斜体,或者只是把常规体简单地倾斜(看看那个魔术师手杖一样活泼又利落的 f),也没有像 Operator(和它的一众效颦者)那样过于「花枝招展」地把斜体做成手写花体。

db0110a6b25d147424cf78de220efc7a.png

Input 的另一个美德在于高度可定制。代码工作是一个充满各种「圣战」的领域,写不同语言的用户可以打起来,用不同编辑器的用户可以打起来,用不同编程字体的用户……也可以打起来。a 和 g 应该做成单层(手写体)还是双层(印刷体)?i 和 l 要不要有尾巴,数字 0 中间应该是点是线还是留空?字符应该胖一点还是瘦一点?

a6a34c3a431d3c71399fe20e9208f773.png

Input 说,别打了,我都给你做好。它有 4 种宽度版本,名称无后缀的最宽,Narrow、Condensed、Compressed 则依次变窄(个人最喜欢 Narrow),还可以通过 OpenType 特性调整 agil0{} 的风格。如果你的使用环境不支持高级字体设置(尤见于老式终端模拟器和代码编辑器),甚至可以用预览页面混搭出自己想要的字符变体组合、行间距和字重,然后直接下载一个把这些配置「写死」在字体里的定制版本。

如果说 Input 有什么缺失,那就是它问世的 2014 年还不时兴连字(ligatures),所以如果你喜欢把「等号 + 大于号」显示成箭头、把「大于号 + 等号」显示成大于等于号,那 Input 是做不到的(但反过来说,讨厌这种设计的也大有人在)。此外,Input 没有内置渲染提示(hinting),所以在「低分屏 + Windows」这种地狱环境下,显示效果比较一般。

对了,Input 不是一个字体,而是一个家族;除了等宽版本,还有两种比例字体:无衬线体 Input Sans 和衬线体 Input Serif。它们和 Input Mono 有类似的骨架,但因为不同的宽度和笔画特征另有一番风格:

  • Input Sans 的笔画曲线更为柔和(它的 a 和 l 在我看来尤其可爱),不会有看 Input Mono 那种仿佛视线踩在减速带上的顿挫感;我很喜欢用来看长文章,以至于把个人博客都改成了这个字体(通过 Adobe Fonts 订阅获得的网页字体托管和授权)。
3378b8b01a45033225cc4baa864f0797.png
  • Input Serif 严格来说属于 slab serif——末端衬线是无过渡的钝块状,我用得不多,但正如官网演示的那样,很适合在剧本等场合替换「瘦骨嶙峋」的 Courier。

特别有趣的是,Input 的网站还「动员」用户尝试一种「离经叛道」的用法:直接用 Input Sans 和 Input Serif 来编程。作者给出的理由是:「每个字一样宽」并不是编程字体的必备特征;清晰不易混淆才是。Input Sans 和 Input Serif 仍然保持了它们等宽亲戚的大间距、大标点和防混淆设计,所以用来编程也是够格的。

至于一些用户在显示代码时追求的「纵向对齐」视觉效果,作者认为编程中最需要对齐的是行首缩进,而换用比例字体并不影响行首缩进。相反,因为比例字体的字母宽度各不相同,反而更有利于发现拼写错误:如果你手滑打了一个 <spam>,它和上下行的 <span> 放在一起就会很扎眼。

0ae5c5d7c7792c720425bbb754690181.png

最后需要说明,Input 是一款免费字体,但并不是开源字体,其许可允许在个人计算机上编辑代码(可以是职业编程)、纯文本文档时使用,其他用例需要购买(每种样式 5 美元,说实话也挺良心)。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK