Readit News logoReadit News
IdreesInc · 3 years ago
Creator here, thanks for all the support for this objectively terrible programming font! Still working on some issues with windows not playing nicely with bold weights so be sure to watch the repository (https://github.com/IdreesInc/Monocraft) or follow me on Twitter (https://twitter.com/IdreesInc) for updates.
foglorn · 3 years ago
It's an absolutely hideous font for looking at code, but I appreciate the effort you put in to make it. Nice work!

Have you considered writing a blog post about the process you used to make it, anything that set you back while working on it, and advice for others who may wish to generate their own fonts?

daveslash · 3 years ago
I'm always on the hunt for a good programming font, and I opened the link and immediately thought "omg, no! i hatez this!". I didn't want to be mean and say so out loud, so it's nice to see the creator say "objectively terrible programming font", lol. As bad as it is for working with code, I could definitely see some very cool applications otherwise. Nice work op!
itronitron · 3 years ago
I have always thought that the font used in Minecraft is just a standard available font, like System or Dialog. Is that incorrect?
boredpudding · 3 years ago
It's a specific font to Minecraft. It's not an existing font. It appeared before Minecraft in 'Legend of Chambered', which was a simple game created by Notch, who later created Minecraft.
haunter · 3 years ago
GNU Unifont afaik
r618 · 3 years ago
bold weights are really killing it on windows rn - awesome that you're aware of it

FWIW usually fonts variants are named '|font| Code' for ligatures version and '|font| Mono' for normal

but feel free to ignore reminded me of spectrum font ^|

kleiba · 3 years ago
Nice idea, but how do you get around the potential copyright infringement?
wasmitnetzen · 3 years ago
There's not copyright in the US on a typeface (the look), you can only have copyrights on the individual implementation (the font)[1].

[1]: https://www.crowdspring.com/blog/font-law-licensing/

yreg · 3 years ago
They pixel-perfectly copied and recreated it in BitFontMaker2[0] (source[1]).

Not a nice thing to do to a type designer or a foundry, but a gaming studio/Notch(?) won't probably care.

[0] - https://www.pentacom.jp/pentacom/bitfontmaker2/

[1] - https://github.com/IdreesInc/Minecraft-Font

huydotnet · 3 years ago
I'm currently playing Nethack with this font [1], OMG it's just so cool, it makes the game looks good even without using curses mode.

[1]: https://i.imgur.com/wsWnMq0.png

echelon · 3 years ago
Wow, Imgur has fallen far. The image is so compressed and full of artifacts that I can't read any of it.
Sander_Marechal · 3 years ago
Imgur has been quite shit for some time now, especially on mobile.
bcraven · 3 years ago
Right-click > Open image in new tab

https://i.imgur.com/wsWnMq0.png

vanderZwan · 3 years ago
Huh, it's almost like you're backporting pixel graphics to ASCII graphics :)
IgorPartola · 3 years ago
Stupid question: how do you make it give you the additional panel on top and the right?
huydotnet · 3 years ago
The message panel on the top is the default one in ncurses mode. The one on the right is the permanent inventory, which can be enabled with `perm_invent` option.

Basically this is how my `~/.nethackrc` config look like:

  OPTIONS=windowtype:curses
  OPTIONS=autoquiver,confirm:false,hitpointbar
  OPTIONS=popup_dialog,perm_invent,showexp,!autopickup
  OPTIONS=boulder:0,color,fruit:burger

zenlot · 3 years ago
Not related to this awesome font, but is it just me who doesn't like fonts ligatures? I'd much rather see !=, than crossed =.
arthurcolle · 3 years ago
Ligatures are amazing, I don't understand why anyone would like ascii "compound versions" of a set of symbols when there are thousands if not many hundreds of thousands of great symbols that were used in older typographic settings that are available for usage.
bobbylarrybobby · 3 years ago
A few reasons I don't like ligatures when coding:

- It makes me have to think too hard to figure out where the boundaries actually lie between characters when I want to edit. I don't want to think about how many times I'll have to press backspace to delete a single "character"; without ligatures, I don't have to think at all. - With ligatures enabled, I have to remember how to type each character-group (e.g., that != is the same as slashed equals). With ligatures disabled, I can just read it back from an existing example. In other words, ligatures create a separation between what I type and what I see. - It makes it hard to quickly compare my code to examples online that don't use the ligatures because, again, I'm forced to translate between what's on my screen and what's in the file.

The only ligatures I appreciate are minor stylistic ones, e.g., raising a colon slightly before a number, adjusting the spacing between two consecutive colons, raising two consecutive asterisks, etc. Changes that don't fundamentally change the code appears but make it a teensy bit more aesthetically pleasing.

lifthrasiir · 3 years ago
Ligatures obscure the underlying text, which is a problem when you actually edit it. It is okay to have light ligatures where the original text is retained but refined in style but many fonts with ligatures do too much [1], like rendering `!==` as two lines and a slashed stroke in between (come on, who on earth did think this is a good idea???). I would rather have a Unicode symbol support and automatic symbol substitution instead.

[1] https://pbs.twimg.com/media/DKE2QBSUQAEv_dQ.jpg

spicybright · 3 years ago
My view: Because languages are defined as those symbols, so why obfuscate it? It would be like collapsing the letters "ch" in english to a new symbol because it's a digraph.
nerdponx · 3 years ago
I personally like font ligatures, but I'd much rather have true Unicode "synonyms". E.g why shouldn't `!=` and `≠` be synonymous tokens?
MH15 · 3 years ago
Luckily as programmers we can each use a different configuration- I just spent two hours at work trying to get my ligature fonts to show up in a hosted VSCode instance.
iamevn · 3 years ago
I tend to dislike these sorts of ligatures because they obscure the underlying text that was typed. I would much prefer programming languages supported characters like "≠" or "≡" as aliases for operators.
fiddlerwoaroof · 3 years ago
Yeah, I’d rather these characters be implemented in-editor by replacing != with ≠
imaginary_unit · 3 years ago
Toxide · 3 years ago
Mostly I find it distracting when you edit them and they magically change back and forth.

Deleted Comment

corytheboyd · 3 years ago
I just want to see the literal characters as well. Computers are hard enough as it is, don't need to add visual tricks into the mix.
_vdpp · 3 years ago
It’s not just you. The first time I turned them on it was like “whoa, neat!” But they grew tiresome fairly quickly.
jakzurr · 3 years ago
Agreed. I really love the ligatures, but not sure I'd like actually coding with them. Perhaps a quick way to enable/disable?
vlunkr · 3 years ago
They look great in screenshots, but in my experience they aren’t any more readable.
enobrev · 3 years ago
I personally prefer them and find them easier to read, but have been using them for the past 2-3 years.
dymk · 3 years ago
I love ligatures, for what it's worth. I find them nicer to look at than the separate char versions, and I've not found them to be distracting or confusing.
cercatrova · 3 years ago
Yes, I hate ligatures. I want to know exactly what sequence of characters exist in a file, not transformed into another symbol.
shp0ngle · 3 years ago
I used to like them, but one time I wasted 15 minutes on trying to split → into - and > before I realised I have them on, so I hate them now too.
adrusi · 3 years ago
In principle I agree that there's issues with ligature fonts, but I tried using one for a few months a while back and found that in practice I didn't find myself having to think more about what the underlying text actually was, and it was occasionally delightful to look at the pretty symbols.

On the whole I think they're nice.

sodapopcan · 3 years ago
Plus one for the dislike camp. That vim calls them “conceal characters” gives me a bit of a chuckle for some reason.
beej71 · 3 years ago
You're not alone. :)
eahm · 3 years ago
I don't either, never did, never will.
benstopics · 3 years ago
Thank you for 1) making the font I’m actually going to try using it in VSCode simply because I think it will be fun and oddly enough easy to read, and 2) teaching me what a ligature is.
IdreesInc · 3 years ago
Thank you for your kind words, and thank you @CharlesW for submitting this
CharlesW · 3 years ago
I’m just the submitter, but I’ll bet the creator would be delighted to hear that from you!
mysterydip · 3 years ago
Curious how font ownership works, especially with pixel fonts. If I make my own font from scratch, and it matches per-pixel an already-created font, is it mine or theirs?
CharlesW · 3 years ago
This seems like a fairly comprehensive answer: http://www.faqs.org/faqs/fonts-faq/part2/

"First, the short answer in the USA: Typefaces are not copyrightable; bitmapped fonts are not copyrightable, but scalable fonts are copyrightable. Authorities for these conclusions follow."

nerdponx · 3 years ago
An IP lawyer once explained to me that "fonts" are copyrightable because they are technically computer programs, and computer programs are copyrightable.

I actually find it odd that "typefaces" are not copyrightable, but I think that's more of an historical quirk than some wise feature of the legal system.

Deleted Comment

and0 · 3 years ago
It's cute! Some people will enjoy it, may be brighten their day during some nasty debugging.

I wonder how it does for people with dyslexia. I'm guessing not great.

OGWhales · 3 years ago
I have dyslexia and I can tell I have to slow down a bit when reading this, but it’s not bad. I assume the closeness between characters makes it slightly worse for everyone, especially with characters like “o” and “c” differing by a single pixel.

On the topic, I recently learned about the Dyslexie font [0] as well as OpenDyslexic [1]. You can see the goal is to make characters easily differentiated. Not sure how I feel about these fonts—I can certainly read them easily, but I am not a fan of the style. There are other fonts I can read just as well which look better too.

[0]: https://www.dyslexiefont.com/

[1]: https://opendyslexic.org/

tsuujin · 3 years ago
Interesting research paper on those fonts: https://link.springer.com/article/10.1007/s11881-017-0154-6
Zobat · 3 years ago
Question: Are you a programmer? If so, what is you opinion on ligatures? Do they help in readability of code?
Kalanos · 3 years ago
cool. too many single-pixel gaps to be usable. the diff btw c and o shoudln't be a single pixel
Tao3300 · 3 years ago
1) it's faithful to the original

2) it's meant to be rendered large enough that this doesn't matter

3) "bitmap" fonts always have compromises to fit the limitations of the grid