Linux中國

5 款適合程序員的開源字體

什麼是最好的編程字體呢?首先,你需要考慮到字體被設計出來的初衷可能並不相同。當選擇一款用於休閑閱讀的字體時,讀者希望該字體的字母能夠順滑地銜接,提供一種輕鬆愉悅的體驗。一款標準字體的每個字元,類似於拼圖的一塊,它需要被仔細的設計,從而與整個字體的其他部分融合在一起。

然而,在編寫代碼時,通常來說對字體的要求更具功能性。這也是為什麼大多數程序員在選擇時更偏愛使用固定寬度的等寬字體。選擇一款帶有容易分辨的數字和標點的字體在美學上令人愉悅;但它是否擁有滿足你需求的版權許可也是非常重要的。

某些功能使得字體更適合編程。首先要清楚是什麼使得等寬字體看上去井然有序。這裡,讓我們對比一下字母 w 和字母 i。當選擇一款字體時,重要的是要考慮字母本身及周圍的空白。在紙質的書籍和報紙中,有效地利用空間是極為重要的,為瘦小的 i 分配較小的空間,為寬大的字母 w 分配較大的空間是有意義的。

然而在終端中,你沒有這些限制。每個字元享有相等的空間將非常有用。這麼做的首要好處是你可以隨意掃過一段代碼來「估測」代碼的長度。第二個好處是能夠輕鬆地對齊字元和標點,高亮在視覺上更加明顯。另外列印紙張上的等寬字體比均衡字體更加容易通過 OCR 識別。

在本篇文章中,我們將探索 5 款卓越的開源字體,使用它們來編程和寫代碼都非常理想。

1、Firacode:最佳整套編程字體

![FiraCode 示例](/data/attachment/album/201904/16/104736pkgdd37np337zfff.png "FiraCode example")

FiraCode, Andrew Lekashman

在我們列表上的首款字體是 FiraCode,一款真正符合甚至超越了其職責的編程字體。FiraCode 是 Fira 的擴展,而後者是由 Mozilla 委託設計的開源字體族。使得 FiraCode 與眾不同的原因是它修改了在代碼中常使用的一些符號的組合或連字,使得它看上去更具可讀性。這款字體有幾種不同的風格,特別是還包含 Retina 選項。你可以在它的 GitHub 主頁中找到它被使用到多種編程語言中的例子。

![FiraCode compared to Fira Mono](/data/attachment/album/201904/16/104737pus4rtr8iocio8go.png "FiraCode compared to Fira Mono")

FiraCode 與 Fira Mono 的對比,Nikita Prokopov,源自 GitHub

2、Inconsolata:優雅且由卓越設計者創造

![Inconsolata 示例](/data/attachment/album/201904/16/104738exemy0xx2l9x0kke.png "Inconsolata example")

Inconsolata, Andrew Lekashman

Inconsolata 是最為漂亮的等寬字體之一。從 2006 年開始它便一直是一款開源和可免費獲取的字體。它的創造者 Raph Levien 在設計 Inconsolata 時秉承的一個基本原則是:等寬字體並不應該那麼糟糕。使得 Inconsolata 如此優秀的兩個原因是:對於 0o 這兩個字元它們有很大的不同,另外它還特別地設計了標點符號。

3、DejaVu Sans Mono:許多 Linux 發行版的標準配置,龐大的字形覆蓋率

![DejaVu Sans Mono example](/data/attachment/album/201904/16/104738t4n0zbd03e3tnxxz.png "DejaVu Sans Mono example")

DejaVu Sans Mono, Andrew Lekashman

受在 GNOME 中使用的帶有版權和閉源的 Vera 字體的啟發,DejaVu Sans Mono 是一個非常受歡迎的編程字體,幾乎在每個現代的 Linux 發行版中都帶有它。在 Book Variant 風格下 DejaVu 擁有驚人的 3310 個字形,相比於一般的字體,它們含有 100 個左右的字形。在工作中你將不會出現缺少某些字元的情況,它覆蓋了 Unicode 的絕大部分,並且一直在活躍地增長著。

4、Source Code Pro:優雅、可讀性強,由 Adobe 中一個小巧但天才的團隊打造

![Source Code Pro example](/data/attachment/album/201904/16/104738gxzh18q1zx0xyyen.png "Source Code Pro example")

Source Code Pro, Andrew Lekashman

由 Paul Hunt 和 Teo Tuominen 設計,Source Code Pro由 Adobe 創造的,成為了它的首款開源字體。Source Code Pro 值得注意的地方在於它極具可讀性,且對於容易混淆的字元和標點,它有著非常好的區分度。Source Code Pro 也是一個字體族,有 7 中不同的風格:Extralight、Light、Regular、Medium、Semibold、Bold 和 Black,每種風格都還有斜體變體。

![Differentiating potentially confusable characters](/data/attachment/album/201904/16/104739hpzyly6xbjplilpb.png "Differentiating potentially confusable characters")

潛在易混淆的字元之間的區別,Paul D. Hunt 源自 Adobe Typekit 博客。

![Metacharacters with special meaning in computer languages](/data/attachment/album/201904/16/104739de3oozgl8v2yfuuf.png "Metacharacters with special meaning in computer languages")

在計算機領域中有特別含義的特殊元字元, Paul D. Hunt 源自 Adobe Typekit 博客。

5、Noto Mono:巨量的語言覆蓋率,由 Google 中的一個大團隊打造

![Noto Mono example](/data/attachment/album/201904/16/104740v0cg4c9uu0j4wugp.png "Noto Mono example")

Noto Mono, Andrew Lekashman

在我們列表上的最後一款字體是 Noto Mono,這是 Google 打造的龐大 Note 字體族中的等寬版本。儘管它並不是專為編程所設計,但它在 209 種語言(包括 emoji 顏文字!)中都可以使用,並且一直在維護和更新。該項目非常龐大,是 Google 宣稱 「組織全世界信息」 的使命的延續。假如你想更多地了解它,可以查看這個絕妙的關於這些字體的視頻

選擇合適的字體

無論你選擇那個字體,你都有可能在每天中花費數小時面對它,所以請確保它在審美和哲學層面上與你產生共鳴。選擇正確的開源字體是確保你擁有最佳生產環境的一個重要部分。這些字體都是很棒的選擇,每個都具有讓它脫穎而出的功能強大的特性。

via: https://opensource.com/article/17/11/how-select-open-source-programming-font

作者:Andrew Lekashman 譯者:FSSlc 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國