1. 程式人生 > >你在用哪種程式設計字型?

你在用哪種程式設計字型?

哪種字型最適合程式設計?在本文中,我們將看看各式編輯器所使用的預設字型,考察其他的程式設計字型以及探討在評估程式設計字型時,希望得到什麼。

程式設計師喜歡定製自己的開發環境。他們會安裝酷酷的主題,順手的外掛。不過,通常這並不包括定製字型。事實上,我猜很多程式設計師都不知道正使用的編輯器中的字型。忽略字型未必是件壞事,因為大多預設字型都相當棒。不過, 如果你每天使用一種編輯器 8 到 10 小時,為什麼不更進一步來了解下有哪些字型可選呢?

預設字型

首先,讓我們看看一些編輯器和整合開發環境(IDEs)中的預設字型。

MacOS Windows 10 Ubuntu
Sublime Text
Menlo Consolas Monospace
Atom Menlo Consolas DejaVu Sans Mono
IntelliJ Idea Menlo Monospace DejaVu Sans Mono
Eclipse Monaco Consolas Monospace
Visual Studio Consolas
Visual Studio Code Menlo Consolas Droid Sans Mono
XCode Menlo
Notepad++ Courier New
Spacemacs
Source Code Pro Source Code Pro Source Code Pro

為了製作上表,我花費了比預計要更長的時間。找出特定編輯器的預設字型是一件異常困難的事情。

我找到了一些編輯器線上文件。另一些編輯器,我都安裝後檢視其實際用了哪種字型。一些程式遵從作業系統或執行時的字型選擇,也可能列出一個通用的字型,通常叫做類似 Monospace 。這種情況在 Linux 中更為普遍。像 Vim 或者 Emacs 這類可以執行在終端中的編輯器,它們使用終端環境中的字型,所以很難把它們加到這個表格中。

從上表來看,Menlo 和 Consolas 是大贏家。如果你使用 Mac 系統,那麼你可能在用 Menlo。類似地,如果你用 Windows 系統,那麼你可能在用 Consolas。下面是這兩種字型的樣子:

正如你所見,儘管有著一些細微的差異:即 f 的尾巴、l 的襯線、0 的寬度以及 * 的大小,在 Menlo中會寬些 — 它們是非常相似的。

想要指出 Linux 系統中的預設字型,那就更加困難,因為它們隨著不同的發行版而變化。甚至在 Ubuntu 內,還存在著相當一部分的變種。一些編輯器使用作業系統預設的等寬字型。不管怎樣,下面是 DejaVu Sans Mono 的樣子:

注意,字元零的中間是一個圓點,而不是在 Menlo 和 Consolas 中使用的斜線。

為了進一步對比,來看下 Courier New 和 Source Code Pro (同樣出現在上表中)的樣子:

對比並評估字型

現在,我們已經看過了一些常見的預設字型。你可能正想了解如何去評估和對比字型。雖然字型偏好是非常主觀的,但一個好的程式設計字型仍有一些重要的可量化的特徵。

等寬的

好的程式設計字型應該是等寬的。不言而喻,所有的編輯器和整合開發環境預設都使用了某種等寬字型。所謂“等寬”既是每個字元在螢幕上佔據著相同的水平空間。這會讓文字在原始碼中準確地對齊。在本文中所有提及的字型都是等寬的。

字元易於區分

有幾組看起來很像的字元,比如零和字母 O、數字 1 和字母 L。在優秀的程式設計字型中,區分這些相似的字元應該很容易。在做程式設計字型評估時,要對比下面這些組字元:

組1: 零和字母 O O, o, 0
組2: 壹、小寫字母 l 和大寫字母 L 1 I i L l
組3: 伍、小寫字母 s 和大寫字母 S 5 S s
組4: 貳、小寫字母 z 和大寫字母 Z 2 Z z
組5: 圓括號、方括號和大括號 ( { [ ] } )

讓我們看看上文列出的流行字型,是如何處理這些字元的:

以上這些字型中,Courier New 顯然是最差的。它在數字 0 中沒有使用斜線或者點,它的數字 1 與小寫字母 L 看起來幾乎一樣。Consolas 也有看起來相似的數字 1 和小寫字母 L。剩下的字型在區分相似字元方面做的都不錯。

許可證和可用性

不是所有字型在所有作業系統上可用 — 同時也不是所有字型是免費的。例如,在 Windows 上可以找到 Consolas,但如果你想在 Mac 中使用它,就必須付款購買了。通常情況下,如果你安裝了微軟的其他軟體,比如 Office,Consolas 會隨之安裝上。相似地,MacOS 自帶了 Menlo,在其他作業系統(例如 Windows),中就難以獲得。

如果你大多時間使用同一種作業系統,這可能不是什麼大問題。然而,如果你同時使用 MacOS、Windows 和 Linux。最好去了解下哪種字型可以在這些作業系統中同時使用。

其他字型

在上文列出的預設字型之外,還有許多字型可供選擇。下面是幾個經常被討論和提及的非預設字型:

-----------------------------------------------------------------------------

很多年前, 哥就閒得蛋痛的折騰程式設計字型了, 然後自己搞了一種程式設計字型, 使用至今 , 可以說是俺集成了大部分程式設計字型的有點, 精細製作的了, 嘻嘻...喜歡的自己去我百度網盤下載:
連結:http://pan.baidu.com/s/1hrF2ZL6 密碼:kgyv