Commit Mono.
Neutral programming typeface.
Commit Mono is an anonymous and neutral coding font focused on creating a better reading experience.
Use keyboard to control website
- ↑ ↓ ← → navigate
- 1 2 3 ... go to section
- W A S D scroll
- + - zoom
- ENTER ESC edit text and cancel edit
Commit Mono: ASCII character table.
Since most code is written using ASCII characters, these characters are the
backbone of every coding font. They have been sculpted with particularly great
precision and attention to detail.
Tip: Use B and L to view the font in different weights.
Play a game: ‘Guess the Character’
Correctly spot 10 commonly confused characters.
Recommended download of style group with your custom settings for development.
Download all 34 cuts with your custom settings + source variable fonts (.tff & .woff2) for design.
Changing the settings above changes the download. Recommended weight: 450 for
dark mode, 500 for light mode. Alternate characters will be baked and features
merged, resulting in a single static font file that is compatible in all
environments. For an installation guide, see
.
Tip: Press R to reset to default settings.
-
Download CommitMono.zip:
-
-
Unzip the fonts. If you downloaded default or dev version, you get 4 font files that make up the Commit Mono ‘Style Group’:
-
CommitMono-450-Regular: Base version with settings and weight of your choice.
-
CommitMono-450-Italic: Italic version, same weight as regular.
-
CommitMono-700-Regular: Bold version, weight 700.
-
CommitMono-700-Italic: Bold Italic version, weight 700.
-
-
Install all 4 fonts on your system:
-
Windows: Right click the fonts in the folder and click "Install".
-
Mac: Open the fonts with Font Book from the folder and click "Install".
-
Linux: Unpack fonts to ~/.local/share/fonts (or /usr/share/fonts to install fonts system-wide) then fc-cache -f -v
-
Restart your editor/IDE.
-
Activate Commit Mono in your editor.
Settings/Preferences → Editor → Font:
Pick ‘CommitMono’ from the list (notice: there is no space). If you’re using VS Code, simply add these two lines to the settings.json file:
"editor.fontFamily": "CommitMono",
"editor.fontLigatures": true,
For a comprehensive guide on how to enable features/ligatures in your specific editor/IDE, refer to: Fira Code wiki
How can I be sure that I’m looking at Commit Mono?
The most noticable characters in Commit Mono are ‘agrQ£@’. If you’re not used to looking at fonts, they can be difficult to tell apart, but if those characters match what you see here, you’re looking at Commit Mono.
Why does the font not include more ligatures?
The ligatures already in Commit Mono are added because they provide additional functionality (i.e. != becomes ≠), but they are off by default. Commit Mono won’t be updated with ligatures that purely serve aesthetic purposes (i.e. $> becomes connected).
The ligatures are not showing up, why is that?
You need to check if your editor/IDE/terminal supports ligatures. If it does you should be able to enable them through ‘enabling font ligatures’. If you’re still having trouble, have a look at Fira Code wiki.
I have downloaded a new verison, but the old version is still displayed.
- Uninstall the current version you have installed.
- Install the new version.
- Restart you IDE. The new version should show up.
Is there a .woff2 version of the font available?
No, but you can use an online conversion tool like this one from Font Squirrel.
What is the licensing on Commit Mono?
Commit Mono is available under the SIL Open Font License 1.1 license. It can therefore be used freely for both commercial and non-commercial purposes. Only if you decide to make your own font based of Commit Mono, do you need to give credit, but it is always appreciated.
May I install and use Commit Mono in any editor or terminal?
Yes.
Is Commit Mono free to use in a logo or print design?
Yes.
Is Commit Mono free to use on a website, in software or an app?
Yes.
May I use Commit Mono to design my own font?
Yes, but you need to give credit and indicate that it is based on Commit Mono.
My .zip file won’t work, what to do?
There have been some problems with downloading .zip files from Safari. The download is tested to work in Chrome and FireFox.
All features/ligatures are baked into the ‘calt’ OpenType Feature, which can be turned on by ‘enabling font ligatures’. In VS Code you simply put ["editor.fontLigatures": true,] in the settings.json file.
Hold O to view feature ON
The custom alternates that you choose are baked into the font and work out of the box. That way, you don’t have to enable them through OpenType Features.
Hold O to view ALT
Full characterset without alternates
Support for Greek and Cyrillic coming soon.
End of transmission.
Currently supported languages
Thank you
- Hakim Mazouz for motivation to pursue the project.
- Mads Brodt and Philip Johansen for beta testing and interview.
- Beta testers for great feedback and testing.
- My teachers at DMJX for support and learning.
- Everyone who answered my survey.
Inspiration
- Untitled Collection by Klim Type Foundry for so much inspiration.
- sampleprograms.io for code examples.
- opentype.js for generating fonts on the web.
- zip.js for zipping files on the web.
- OpenType Cookbook for all things OpenType Features.
- Fira Code and JetBrains Mono for being a huge inspiration and go-to for best practices.
Programming font ressources
- ProgrammingFonts.org: Test drive a huge variety of programming fonts.
- CodingFont.com: Tournament style test of programming font preference.
- Article on coding fonts from Real Python.
- Other excellent free programming fonts:
Programs used
- FontLab 8 for font production.
- Figma for prototyping.
- Visual Studio Code for development environment.