Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Firacode | 73,140 | 16 | 20 | a month ago | 12 | December 06, 2021 | 369 | ofl-1.1 | Clojure | |
Free monospaced font with programming ligatures | ||||||||||
Hasklig | 5,188 | 2 years ago | 1 | August 12, 2018 | 40 | ofl-1.1 | Python | |||
Hasklig - a code font with monospaced ligatures | ||||||||||
Datalegreya | 551 | 2 | 2 years ago | 5 | August 11, 2017 | 4 | other | JavaScript | ||
Datalegreya, the typeface that melts text and data visualisation | ||||||||||
Pokemon Font | 439 | 4 years ago | January 18, 2017 | ofl-1.1 | CSS | |||||
GAME BOY font from Pokémon R/G/B/Y/G/S/C, Unicode extended. | ||||||||||
Font Falsehoods | 78 | 6 years ago | 2 | |||||||
Falsehoods programmers believe about fonts | ||||||||||
Fira Code Emacs | 65 | 3 years ago | 3 | apache-2.0 | Emacs Lisp | |||||
Some code to make Fira Code work in Emacs | ||||||||||
Codetta | 12 | 5 years ago | ofl-1.1 | C# | ||||||
A monospaced coding font with special ligatures for C# | ||||||||||
Knot | 12 | 9 months ago | gpl-3.0 | Python | ||||||
Celtic Knotwork Generator with GPL / OpenSIL Font included. | ||||||||||
Font To Html | 9 | 4 years ago | other | Python | ||||||
Dump all characters of a font to an HTML page for easy inspection. | ||||||||||
Paleocodage | 5 | 2 years ago | gpl-3.0 | JavaScript | ||||||
A paleographic description system for the creation of cuneiform characters |
N.B. This is a fork of the Source Code Pro repository
Programming languages are limited to relatively few characters. As a result, combined character operators surfaced quite early, such as the widely used arrow (->
), comprised of a hyphen and greater sign. It looks like an arrow if you know the analogy and squint a bit.
Composite glyphs are problematic in languages such as Haskell which utilize these complicated operators (=>
-<
>>=
etc.) extensively. The readability of such complex code improves with pretty printing. Academic articles featuring Haskell code often use lhs2tex to achieve an appealing rendering, but it is of no use when programming.
Some Haskellers have resorted to Unicode symbols (⇒
, ←
etc.), which are valid in the ghc. However they are one-character-wide and therefore eye-strainingly small. Furthermore, when displayed as substitutes to the underlying multi-character representation, as vim2hs does, the characters go out of alignment.
Hasklig solves the problem the way typographers have always solved ill-fitting characters which co-occur often: ligatures. The underlying code stays the same — only the representation changes.
Not only can multi-character glyphs be rendered more vividly, other problematic things in monospaced fonts, such as spacing can be corrected.
Download Hasklig Font Family v1.1
->>
, :::
, >=>
, <=<
, <=>
, <->
++
and +++
line inconsistency in heavy italic weights<*
<*>
<+>
<$>
***
<|>
!!
||
===
==>
, Powerline symbol support<<<
>>>
<>
and +++
==
and /=
to match other equals signs<-
->
=>
>>
<<
>>=
=<<
..
...
::
-<
>-
-<<
>>-
++
/=
and ==
<*
<*>
<+>
<$>
***
<|
|>
<|>
!!
||
===
==>
<<<
>>>
<>
+++
<-
->
=>
>>
<<
>>=
=<<
..
...
::
-<
>-
-<<
>>-
++
/=
==
This list is compiled based on reports on the current state of support for code editors and terminals. This list
To build the binary font files from source, you need to have installed the Adobe Font Development Kit for OpenType (AFDKO). The AFDKO tools are widely used for font development today, and are part of most font editor applications.
Some SVG glyphs are inserted into the fonts using Python FontTools.
This repository only includes so-called master weights of the fonts (effectively extralight and black).
The shapes of the weights in between these extremities are calculated by makeInstancesUFO
supplied with .designspace
files.
For convenience, the shell script buildInstances is provided, which executes makeInstancesUFO
, calculating all the italic and regular font weight shapes.
$ ./buildInstances.sh
The key to building OTF or TTF fonts is makeotf
, which is part of the AFDKO toolset.
Information and usage instructions can be found by executing makeotf -h
.
In this repository, all necessary files are in place for building the OTF and TTF fonts. For example, build a binary OTF font for the Regular style like this:
$ cd Roman/Regular/
$ makeotf -r
For convenience, a shell script named build is provided in the root directory. It builds all OTFs and TTFs, and can be executed by typing:
$ ./build.sh
or this on Windows:
> build.cmd
Original idea, design and implementation of code ligatures by Ian Tuomi 2014-2015. This typeface extends Source Code Pro with ligatures.