2
3
4
5
6
7
8
9
10
11
12
13
14
fun <T : Comparable<T>> List<T>.quickSort(): List<T> = when {
size < 2 -> this
else -> {
val pivot = first()
val (smaller, greater) = drop(1).partition { it <= pivot }
smaller.quickSort() + pivot + greater.quickSort()
}
}
fun main() {
print(listOf(5, 0, 1, 5, 3, 7, 4, 2).quickSort())
}
增加字母高度以获得更好的阅读体验
字符的宽度保持标准,但小写字母的高度最大化。 这种方法使代码行保持开发者期望的长度,并且由于每个字母占用更多像素,因此有助于改善渲染。
对比
考虑一下此字体与其他字体的比较。 例如:Consolas 的字母稍宽, 但字母仍然很小,这迫使您将字体大小增加一点,以使字体更具可读性。 结果,运行代码行的时间往往比预期的要长。
JetBrains Mono 的标准宽度字母有助于使代码行保持预期的长度。
特定于读代码的眼动
椭圆形接近矩形符号,这使整个文本更加清晰。
椭圆形的外侧确保在垂直扫描文本时,您的眼睛没有其他障碍。
功能性建设
JetBrains Mono 的字体形式非常简单,没有不必要的细节。 以小尺寸呈现,文本看起来更清晰。
形式越简单,眼睛看得越快,大脑处理所需的精力也就越少。
符号的独特性
“1”、“l” 和 “I” 都易于区分。
数字 “0” 在中间有一个点。 字母 “O” 没有。
逗号的形状不同于句点的形状,使它们在小尺寸时更容易区分。 派生符号也是如此。
笔划的水平末端
笔划结束的水平末端更适合像素网格,并赋予字样更严厉和更“科技”的个性。
斜体
好斜率体的关键是微调直立字体和斜体字体之间的对比度。 通常,倾斜角度约为 11°–12°。 JetBrains Mono 使用 9° 角; 这样可以保持最佳对比度,以最大程度地减少干扰和眼睛疲劳。
仅对于 “a”,“y” 和 “f”,采用 “真斜体” 表示,以稍微增强眼睛的水平流动。
用于代码的连字
连字是由两个或多个连接符号组成的字符,通常是作为节省空间的技术引入印刷文本中的。 在代码中,此技术用于显示运算符,主要用于两个目的:
1.
通过合并符号和删除细节,减少了眼睛需处理的信息。
2.
在某些情况下,通过移动字形可以更有效地平衡空白。
JetBrains Mono 字体系列
细体
基础拉丁文
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z
等宽合连字
-- --- == === != !== =!= =:= =/= <= >= && &&& &= ++ +++ *** ;; !! ?? ??? ?: ?. ?= <: :< :> >: <:< <> <<< >>> << >> || -| _|_ |- ||- |= ||= ## ### #### #{ #[ ]# #( #? #_ #_( #: #! #= ^= <$> <$ $> <+> <+ +> <*> <* *> </ </> /> <!-- <#-- --> -> ->> <<- <- <=< =<< <<= <== <=> <==> ==> => =>> >=> >>= >>- >- -< -<< >-> <-< <-| <=| |=> |-> <-> <~~ <~ <~> ~~ ~~> ~> ~- -~ ~@ [||] |] [| |} {| [< >] |> <| ||> <|| |||> <||| <|> ... .. .= ..< .? :: ::: := ::= :? :?> // /// /* */ /= //= /== @_ __ ??? <:< ;;;
变音符号
Á Ă Ắ Ặ Ằ Ẳ Ẵ Ǎ  Ấ Ậ Ầ Ẩ Ẫ Ä Ạ À Ả Ā Ą Å Ã Æ Ǽ Ć Č Ç Ĉ Ċ Ð Ď Đ É Ĕ Ě Ê Ế Ệ Ề Ể Ễ Ë Ė Ẹ È Ẻ Ē Ę Ɛ Ẽ Ǵ Ğ Ǧ Ĝ Ģ Ġ Ħ Ĥ Í Ĭ Î Ï İ Ị Ì Ỉ Ī Į Ĩ Ĵ Ķ Ĺ Ľ Ļ Ŀ Ł Ń Ň Ņ Ŋ Ñ Ó Ŏ Ô Ố Ộ Ồ Ổ Ỗ Ö Ọ Ò Ỏ Ơ Ớ Ợ Ờ Ở Ỡ Ő Ō Ǫ Ø Ǿ Õ Œ Þ Ŕ Ř Ŗ Ś Š Ş Ŝ Ș ẞ Ə Ŧ Ť Ţ Ț Ú Ŭ Û Ü Ụ Ù Ủ Ư Ứ Ự Ừ Ử Ữ Ű Ū Ų Ů Ũ Ẃ Ŵ Ẅ Ẁ Ý Ŷ Ÿ Ỵ Ỳ Ỷ Ȳ Ỹ Ź Ž Ż á ă â ä à ā ą å ã æ ǽ ć č ç ĉ ċ ð ď đ é ĕ ě ê ë ė è ē ę ə ğ ǧ ĝ ġ ħ ĥ i ı í ĭ î ï ì ī į ĩ j ȷ ĵ ĸ l ĺ ľ ŀ ł m n ń ʼn ň ŋ ñ ó ŏ ô ö ò ơ ő ō ø ǿ õ œ þ ŕ ř s ś š ş ŝ ß ſ ŧ ť ú ŭ û ü ù ư ű ū ģ ķ ļ ņ ŗ ţ ǫ ǵ ș ț ạ ả ấ ầ ẩ ẫ ậ ắ ằ ẳ ẵ ặ ẹ ẻ ẽ ế ề ể ễ ệ ỉ ị ọ ỏ ố ồ ổ ỗ ộ ớ ờ ở ỡ ợ ụ ủ ứ ừ ử ữ ự ỵ ỷ ỹ ų ů ũ ẃ ŵ ẅ ẁ ý ŷ ÿ ỳ z ź ž ż
数字
0 0 1 2 3 4 5 6 7 8 9 ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ½ ¼ ¾ ↋ ↊ ૪
标点符号
. , : ; … ! ¡ ? ¿ · • * ⁅ ⁆ # ․ ‾ / \ ‿ ( ) { } [ ] ❰ ❮ ❱ ❯ ⌈ ⌊ ⌉ ⌋ ⦇ ⦈ - – — ‐ _ ‚ „ “ ” ‘ ’ « » ‹ › ‴ " ' ⟨ ⟪ ⟦ ⟩ ⟫ ⟧ · ;
希腊语
Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω Ά Έ Ή Ί Ό Ύ Ώ Ϊ Ϋ Ϗ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ ω ί ϊ ΐ ύ ϋ ΰ ό ώ ά έ ή ϗ ϕ ϖ
西里尔文
А Б В Г Ѓ Ґ Д Е Ё Ж З И Й К Ќ Л М Н О П Р С Т У Ў Ф Х Ч Ц Ш Щ Џ Ь Ъ Ы Љ Њ Ѕ Є Э І Ї Ј Ћ Ю Я Ђ Ғ Қ Ң Ү Ұ Ҷ Һ Ә Ө Ӝ Ӟ Ӥ Ӧ Ө Ӵ а б в г ѓ ґ д е ё ж з и й к ќ л м н о п р с т у ў ф х ч ц ш щ џ ь ъ ы љ њ ѕ є э і ї ј ћ ю я ђ ғ қ ң ү ұ ҷ һ ә ө ӝ ӟ ӥ ӧ ө ӵ
其他字符
₿ ¢ ¤ $ ₫ € ƒ ₴ ₽ £ ₮ ¥ ≃ ∵ ≬ ⋈ ∙ ≔ ∁ ≅ ∐ ⎪ ⋎ ⋄ ∣ ∕ ∤ ∸ ⋐ ⋱ ∈ ∊ ⋮ ∎ ⁼ ≡ ≍ ∹ ∃ ∇ ≳ ∾ ⥊ ⟜ ⎩ ⎨ ⎧ ⋉ ⎢ ⎣ ⎡ ≲ ⋯ ∓ ≫ ≪ ⊸ ⊎ ⨀ ⨅ ⨆ ⊼ ⋂ ⋃ ≇ ⊈ ⊉ ⊽ ⊴ ≉ ∌ ∉ ≭ ≯ ≱ ≢ ≮ ≰ ⋢ ⊄ ⊅ +− × ÷ = ≠ > < ≥ ≤ ± ≈ ¬ ~ ^ ∞ ∅ ∧ ∨ ∩ ∪ ∫ ∆ ∏ ∑ √ ∂ µ ∥ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ % ‰ ﹢ ⁺ ≺ ≼ ∷ ≟ ∶ ⊆ ⊇ ⤖ ⎭ ⎬ ⎫ ⋊ ⎥ ⎦ ⎤ ⊢ ≗ ∘ ∼ ⊓ ⊔ ⊡ ⊟ ⊞ ⊠ ⊏ ⊑ ⊐ ⊒ ⋆ ≣ ⊂ ≻ ∋ ⅀ ⊃ ⊤ ⊣ ∄ ∴ ≋ ∀ ⋰ ⊥ ⊻ ⊛ ⊝ ⊜ ⊘ ⊖ ⊗ ⊙ ⊕ ↑ ↗ → ↘ ↓ ↙ ← ↖ ↔ ↕ ↝ ↭↞ ↠ ↢ ↣ ↥ ↦ ↧ ⇥↩ ↪ ↾ ⇉ ⇑ ⇒ ⇓ ⇐ ⇔ ⇛ ⇧ ⇨ ⌄ ⌤ ➔ ➜ ➝ ➞ ⟵ ⟶ ⟷ ● ○ ◯ ◔ ◕ ◶ ◌ ◉ ◎ ◦ ◆ ◇ ◈ ◊ ■ □ ▪▫ ◧ ◨ ◩ ◪ ◫ ▲ ▶ ▼ ◀ △ ▷ ▽ ◁ ► ◄ ▻ ◅ ▴ ▸ ▾ ◂ ▵ ▹ ▿ ◃ ⌶ ⍺ ⍶ ⍀ ⍉ ⍥ ⌾ ⍟ ⌽ ⍜ ⍪ ⍢ ⍒ ⍋ ⍙ ⍫ ⍚ ⍱ ⍦ ⍎ ⍊ ⍖ ⍷ ⍩ ⍳ ⍸ ⍤ ⍛ ⍧ ⍅ ⍵ ⍹ ⎕ ⍂ ⌼ ⍠ ⍔ ⍍ ⌺ ⌹ ⍗ ⍌ ⌸ ⍄ ⌻ ⍇ ⍃ ⍯ ⍰ ⍈ ⍁ ⍐ ⍓ ⍞ ⍘ ⍴ ⍆ ⍮ ⌿ ⌷ ⍣ ⍭ ⍨ ⍲ ⍝ ⍡ ⍕ ⍑ ⍏ ⍬ ⚇ ⚠ ⚡ ✓ ✕ ✗ ✶ @ & ¶ § © ® ™ ° ′ ″ | ¦ † ℓ ‡ № ℮ ␣ ⎋ ⌃ ⌞ ⌟ ⌝ ⌜ ⎊ ⎉ ⌂ ⇪ ⌫ ⌦ ⌨ ⌥ ⇟ ⇞ ⌘ ⏎ ⏻ ⏼ ⭘ ⏽ ⏾ ⌅ � ˳ ˷
𝔸 𝔹 ℂ 𝔻 𝔼 𝔽 𝔾 ℍ 𝕀 𝕁 𝕂 𝕃 𝕄 ℕ 𝕆 ℙ ℚ ℝ 𝕊 𝕋 𝕌 𝕍 𝕎 𝕏 𝕐 ℤ 𝕒 𝕓 𝕔 𝕕 𝕖 𝕗 𝕘 𝕙 𝕚 𝕛 𝕜 𝕝 𝕞 𝕟 𝕠 𝕡 𝕢 𝕣 𝕤 𝕥 𝕦 𝕧 𝕨 𝕩 𝕪
块符号
▁ ▂ ▃ ▄ ▅ ▆ ▇ █ ▀ ▔ ▏ ▎ ▍ ▌ ▋ ▊ ▉ ▐ ▕ ▖ ▗ ▘ ▙ ▚ ▛ ▜ ▝ ▞ ▟ ░ ▒ ▓
制表符
┌ └ ┐ ┘ ┼ ┬ ┴ ├ ┤ ─ │ ╡ ╢ ╖ ╕ ╣ ║ ╗ ╝ ╜ ╛ ╞ ╟ ╚ ╔ ╩ ╦ ╠ ═ ╬ ╧ ╨ ╤ ╥ ╙ ╘ ╒ ╓ ╫ ╪ ━ ┃ ┄ ┅ ┆ ┇ ┈ ┉ ┊ ┋ ┍ ┎ ┏ ┑ ┒ ┓ ┕ ┖ ┗ ┙ ┚ ┛ ┝ ┞ ┟ ┠ ┡ ┢ ┣ ┥ ┦ ┧ ┨ ┩ ┪ ┫ ┭ ┮ ┯ ┰ ┱ ┲ ┳ ┵ ┶ ┷ ┸ ┹ ┺ ┻ ┽ ┾ ┿ ╀ ╁ ╂ ╃ ╄ ╅ ╆ ╇ ╈ ╉ ╊ ╋ ╌ ╍ ╎ ╏ ╭ ╮ ╯ ╰ ╱ ╲ ╳ ╴ ╵ ╶ ╷ ╸ ╹ ╺ ╻ ╼ ╽ ╾ ╿
控制字符
␆ ␈ ␇ ␘ ␍ ␐ ␡ ␔ ␑ ␓ ␒ ␙ ␃ ␄ ␗ ␅ ␛ ␜ ␌ ␝ ␉ ␊ ␕  ␀ ␞ ␏ ␎ ␠ ␁ ␂ ␚ ␖ ␟ ␋
Powerline
支持 148 种语言
Udmurt
世界语
丹麦语
乌克兰语
伊多语
伊纳里萨米语
伦巴底语
低德语
佛里乌利语
俄语
保加利亚语
修纳语
克丘亚语
克罗地亚语
冰岛语
凯克其语
刚果语
加利西亚语
加泰罗尼亚语
匈牙利语
北恩德贝莱语
北索托语
北萨米语
南恩德贝莱语
南索托语
南非语
卡伦金语
卡拉卡尔帕克语(拉丁)
卡拉拉高语
卡累利阿语(拉丁)
卡舒比语
卡齐格尔语
卢希亚语
卢旺达语
卢森堡语
印尼语
厄尔兹亚语
古西语
哈萨克字母
国际语
土库曼语
土耳其语
坎巴语
基库尤语
基里巴斯语
基隆迪语
塔伊塔语
塞尔维亚语
塞纳语
太鲁阁语
奇加文
奥万博语
奥克西丹语
奥塞梯语(拉丁)
奥罗莫语
宿务语
尼扬科塘语
尼扬贾语
巴斯克语
希腊语
帕皮阿门托语
库尔德语(拉丁)
康沃尔语
德语
恩布语
意大利语
拉丁语
拉罗通加语
拉脱维亚语
挪威博克马尔语
挪威新挪威语
捷克语
撒丁岛语
文乔语
斯洛伐克语
斯洛文尼亚语
斯瓦希里语
斯瓦提语
曼岛语
本巴语
朱拉语
格陵兰语(拉丁)
桑古语
桑布鲁语
桑戈语
梅鲁语
毛利语
毛里求斯克里奥尔语
沃尔瑟语
沃洛夫语
法罗语
法语
波兰语
波斯尼亚语
泽西语
济州语
爪哇语(拉丁)
爱尔兰语
爱沙尼亚语
特索语
瑞典语
瑞士德语
瓦隆语
甘达语
白俄罗斯语
皮埃蒙特语
祖鲁语
科萨人使用的班图语
科西嘉语
立陶宛语
索布语(上索布族)
索布语(下索布族)
索马里语
罗托卡特语
罗曼什语
罗语
罗马尼亚语
聪加语
芬兰语
苏加语
苏格兰盖尔语
英格里亚语(伊乔里亚语)
英语
茨瓦纳语
荷兰语
菲律宾语
葡萄牙归融语
葡萄牙语
蒙古语
西班牙语
贝纳语
逻辑语
邦板牙语(拉丁)
阿尔巴尼亚语
阿苏语
隆迪语
香巴拉语
马其顿语
马卡姆语
马卡瓦米托语
马孔德语
马来语
马科瓦语
马耳他语
马赛语
马里加斯语
鲁瓦语
龙博语
如何安装
JetBrains IDE 中
从 v2019.3 开始,JetBrains IDE 随附了最新版本的 JetBrains Mono。
在 IDE 设置中选择 JetBrains Mono :转到 Preferences/Settings → Editor → Font ,然后从字体下拉列表中选择 JetBrains Mono 。
另一个 IDE 或旧版本的 JetBrains IDE
- 下载字体
- 解压缩存档并安装字体:
- 选择文件夹中的所有字体文件,然后双击 “安装字体” 按钮。
- 选择文件夹中的所有字体文件,右键单击其中任何一个,然后从菜单中选择 “安装”。
- 将字体解压缩到 ~/.local/share/fonts(或 usr/share/fonts,以在系统范围内安装字体)并执行 fc-cache -f -v
- 重启您使用的 IDE
- 转到 Preferences/Settings → Editor → Font ,然后从字体下拉列表中选择JetBrains Mono。
字体的推荐设置
字号:13
行距:1.2
授权许可
JetBrains Mono 字体可在 SIL Open Font License 1.1 许可下获得,并且可以免费用于商业和非商业目的。 您无需赞扬 JetBrains,但如果您能提及我们的贡献,我们会非常感谢。
常见问题解答
我可以在系统上安装 JetBrains Mono 并在任何代码编辑器中使用它吗?
-> 可以。
我可以用 JetBrains Mono 制作和打印海报吗?
-> 可以。
我可以在标志中使用 JetBrains Mono 吗?
-> 可以。
我可以在我的网站上使用 JetBrains Mono 吗?
-> 可以。
我可以在我的应用程序中使用 JetBrains Mono 吗?
-> 可以。
我可以基于JetBrains Mono 设计自己的字体吗?
->可以。 在这种情况下,您需要指出您的字体基于 JetBrains Mono 。
主要贡献者
字体设计师
Philipp Nurullin
项目主管
Konstantin Bulenkov
谢谢
Eugene Auduchinok
Dmitrij Batrak