Berkeley Mono Ligatures Release

2 years ago (berkeleygraphics.com)

I paid for this font. I can't believe it, but I just kept coming back to the webpage every week thinking "Aww dang its nice, but no way would I ever pay $75 for a font for personal use".

But I kept coming back. Again and again, just looking through their page. I tried the trial. I eventually caved. A weird moment for me, but I bloody love this font and I frequently notice how nice it is in all my IDEs.

I sound like a shill, sorry.

  • The website is fantastic. Font looks great and samples are an eye candy, so tried it just now.

    Windows, 1920 x 1200 @ 96 dpi, Visual Studio, light-on-dark theme. I like 'em small to fit more on the screen and at 8px this font looks janky. It is blurry with uneven thickness and requires an eye strain to read. It doesn't seem to be hinted at all even though it is a TTF version.

    Here's Berkley Mono on the left and Mensch on the right - https://i.imgur.com/CM27hVV.png

    At 9px characters somehow retain their width but just get taller.

    At 10px it starts looking better, but glyphs still look kinda feeble and aren't terribly pleasant to look at.

    Just 2c. The character design is very nice still.

    • I have the same issue. Things look blurry at any font size below 12pt, which affects pretty much all of my use cases since I live in the terminal, sized at 10pt. This is especially bad with the bold version of the font.

      I really like the look of the font, but the hinting needs to be fixed before I'd purchase it. It's currently unusable for me.

    • IDK; it might as well be Windows.

      I'm used to use DejaVu Sans Mono. Under X (Linux) it works beautifully and stays relatively readable down to 7pt; I usually set it to 11pt.

      Under Windows 10, on the same screen with same DPI, I could not make it look reasonably in native programs like Notepad++; it stays blurry up until ridiculously large sizes. Emacs, which of course brings its own rendering to Windows, is able to render it somehow more crisply.

      Conversely, Consolas looks wonderful under Windows, crisp and sharp. I could not make it render equally well under Linux.

      And macOS is another land; it refuses to make fonts crisp if matching the pixel grid would change their shape even slightly. The only recourse is retina displays.

      YMMV.

    • This is one of the reasons why I'm hoping to sometime this year upgrade my main monitor to something with high pixel density that is practical to run with integer scaling: super crisp text with any size and font. Text doesn't look terrible on my current 27" 2560x1440 monitor with a font that's designed for it, but it's a far cry from the same text on my MBP screen.

      7 replies →

    • so am i right to assume the font does not have embedded bitmap for small pixel sizes? That would be a bummer.

    • 1920x1200? 96 DPI?! Both those fonts look like absolute garbage, and how could they not? Only, in my opinion, Berkeley Mono actually looks more passable of the two. Something about the one on the right makes it look ethereal. Like it's behind the display. But don't let that detract from the fact that looking at code at 96 dpi is absolute garbage. Perhaps you're broke, in which case I retract my stupid comment. But if not: https://tonsky.me/blog/monitors/

      4 replies →

  • Personally, I've stuck with free fonts most of the time. For programming, currently I tend to use:

    Liberation Mono: from the very same package of fonts that are included in LibreOffice, I find it to be surprisingly readable and easy on the eyes for most kinds of code or monospaced text https://en.wikipedia.org/wiki/Liberation_fonts

    PT Mono: while initially I really liked PT Sans and PT Serif separately (they're currently the fonts for my homepage/blog), their monospaced offering is also quite nice; albeit when there's some light colored text (e.g. comments) at the smaller font sizes, the full stop character can become a bit harder to see. Here's more information about them: https://en.wikipedia.org/wiki/PT_Fonts

    Here's a quick comparison, comparing the two fonts against Consolas and JetBrains Mono (with some Java code, taken from a throwaway project): https://imgur.com/a/mr9afqT

    Personally, out of all of them Liberation Mono feels like the most readable, whereas PT Mono just appeals to me stylistically on some level. However, paid fonts, like the linked one are also great - whatever feels more pleasant to stare at for a large number of hours per day!

    • PT Mono was my goto for a long time. For the past few years I've been running Dank Mono[0].

      The Liberation font don't look bad but their wideness as well as that of other common FOSS fonts like the Vera/Bitstream fonts has always bugged me for some reason. Whenever I do a fresh Linux install and the desktop is configured to use one of those I have to download and install Inter UI or Ubuntu Sans as the UI font for it to not bug me.

      [0]: https://philpl.gumroad.com/l/dank-mono [1]: https://rsms.me/inter/ [2]: https://design.ubuntu.com/font

      1 reply →

    • Thanks for posting that comparison. I really wanted to like Liberation Mono, as I'm a big fan of the whole LibreOffice project in general, but I find that, when compared side by side, I actually prefer Jetbrains Mono over the other three.

    • Same here, I try out a lot of monospace fonts as they come along. But Liberation Mono just scratches all my itches so well.

      I do however enjoy setting comments using fonts that aren't monospaced (which I begrudgingly acknowledge Comic Sans is actually decent for).

      At some point though the old typographers adage of "people read best, what they read most" must impact our preferences.

      2 replies →

  • I had a very similar experience with Pragmata Pro. I kept coming back to the page and eventually just forked out the money for it. I adore that font and I've been using it for going on 8 years.

    This is not a this font vs. that font comment - it's about spending money on a font and how a lot of people find that a weird thing. For me, I came to the realization that it's a thing I literally spend hours every day looking at, so if spending a small amount of cash would improve that experience then why would I not do it?

  • I just did the exact same thing. I've been thinking about it since it was first on Show HN a year ago. And I kept putting it off. Today they got me.

    And this isn't even the first monospaced font I've spent money on that I know I will probably not always use. I own Operator. Dank. Mono Lisa.

    But the design and the attention to detail with downloading as regards to the stylistic set defaults (for applications that don't follow/adhere/support stylistic sets, which is something I could write a whole rant on) makes me very happy to support this team.

    • Dank mono annoys me except in one spot - conference presentation slides (where it still annoys me, but I can see it being useful). The italics as cursive is annoying - especially with the 's' that shows up in too many places.

      However, the difficulty of distinguishing italics from regular on a presentation I can mostly forgive it since I can now recognize the italics and that hint to whatever it is trying to show much more easily than if I was trying to figure out a color (I'm not color blind but that is an accessibility issue) or the 'is that tilted enough?'

      (and looking for a bit of nostalgia, https://dank.sh/ now redirects to https://philpl.gumroad.com/l/dank-mono and while its done, it can be purchased again!)

  • I did the same, and have zero regrets. I've tried so many fonts over the last 15 years, but this one just works for me.

  • I also paid for it, my first font I paid for just for aesthetics and personal enjoyment. I don't regret it. I use it anywhere and everywhere I can!

To all the people complaining about how they don't like ligatures:

Nobody cares. If you don't like them, then don't use them. They are optional.

Lots of people like them. Let people like things.

  • Ligatures make code harder to read and harder to edit. It's not just personal preference, it's the science of usability. When I press backspace or cursor keys, I expect one glyph to be erased, not who-knows-how-many (half?!).

    Authors of content and programs with ligatures-by-default subject their readers and users to the penalty of ligatures.

    Some people like pain, but that doesn't mean we need pain switches on everything with pain set to on by default.

    • > When I press backspace or cursor keys, I expect one glyph to be erased, not who-knows-how-many.

      That's you, and not very generalizable. Many people edit on sites with ligatures and many people edit non-Latin text where isolated, non-ligatured text is wrong (Arabic, some Indic scripts, Han characters, Japanese katakana).

      Me personally, with respect to code, I pretty much think in terms of tokens: to remove the `==`, I backspace twice, rather than that to remove the `==`, I remove `=` and then the other `=`, and each requires one backspace.

      4 replies →

    • If it's established science that they are worse, could you share some citations backing that?

    • > It's not just personal preference, it's the science of usability

      It's obviously personal preference, because many people prefer it. If I found ligatures harder to read or edit then I wouldn't use them, but I don't, so I do.

      > programs with ligatures-by-default

      Such as?

      6 replies →

    • Ligatures make code easier to read because they map 1-to-1 to tokens. Ideally, the font would also be proportional; and the IDE would support elastic tabstops... But the tech isn't there yet.

  • Let blind people's text to speech readers read things. If you're printing it out, or you know it's for limited use digitally, go for it. But if you expect the public at large to read the digital text please make it text to speech accessible: no ligatures.

    • Ligatures (the kind mentioned in TFA) are inserted at the font rendering level. Screen readers don't even know ligatures exist, because the server sends ordinary characters that your browser's engine then groups into (and replaces with) ligatures as defined by the font itself.

    • The ligatures discussed are implemented at the rendering level. The byte sequence of text is unchanged vs the "no ligature" scenario. So this has zero impact on screen readers.

Judging by the other replies I must be alone here, but I can't stand these ligatures. I don't even like them on blog posts, especially that awful ostentatious s-t ligature (nobody writes like that!). But in that context I can tolerate the whimsy. For a fixed-width programming font, though? Where individual characters frequently completely modify the meaning of a statement? The absolute last thing I want is for any of the characters to be obfuscated. I want to see exactly the symbols that I can type on my keyboard to reproduce the text, not some typographer's notion of good aesthetics.

It is sometimes said, that nostalgia is not the yearning for the past as it actually was, but for the past as it exists in our rosiest memories. I seem to have taken this one step further — I yearn for a world which I never experienced, and which possibly never existed except in my fantasy at the time. I was born in 1971. By the time I was aware of computers, but still a child, in the late 1970’s to the mid 1980’s, my image of computers — real computers, the sort that flew you to the moon or ran large companies or research labs, not the Z80 basic-in-ROM “home computer” we actually had at home — was formed by whatever reading matter was around, most of it outdated even at the time. This was Apollo-era spaceflight. It was 9-track open-reel tape stations and chain printers. It was Frutiger and Univers.

Obviously, many of the things my parents used were from the 1960’s or 1970’s, so that is what serious stuff for grown-ups looked like. (This condition could be hereditary. I have no children, but if I had, they would be exposed to things like my DSLR and stereo amp, both older than they would have been.)

I think this is what makes me like the aesthetics of this typeface so much. It is not what computers used to look like, what they look like today, or what they will look like tomorrow. It is what they were supposed to look like!

Regarding fonts, here's one that makes me sad... The ASCII vertical bar (the "pipe" symbol) used to be a "broken bar", making it very clear it wasn't an uppercase "I" or a lowercase "l" or even a "1" (in some old or stylized font).

I really like a broken vertical bar. There's been a fight, where it became a solid vertical bar, then a broken vertical bar again, then a solid bar again:

https://en.wikipedia.org/wiki/Vertical_bar

See the "Solid vertical bar vs broken bar" section.

Because mathematical "OR" and all that IIUC. But I don't care. I'm in control. So my monospace font use a broken vertical bar (and a taller one than what's usually seen too, there's no risk of mistaking my "broken bar" '|' with '!'). When I write "my" font, it's literally a font I made myself by using FontForge slightly modifying another font (I basically modified @$%&|l and a few other tiny details). I cannot distribute it though.

EDIT: funnily enough reading that Wikipedia article I posted, I checked my keyboards... Two of them, an old IBM Model M and a "not so old but still old" Sun keyboard do both have a broken bar printed as the vertical bar: I never realized that!

I absolutely love Berkeley Mono and the author’s efforts into perfecting the font. It has been my favorite font since it was first released. Some fonts don’t go beyond the initial release for fixing minor issues, so I appreciate these updates. While I understand that Ligatures are controversial, it’s still good to add the option for people who likes it.

In another note, I really enjoy the simplicity in the website design.

Am I alone in disliking ligatures? I want a font that displays the characters I type in exactly the form I type them. I really don't see the appeal.

  • We talked about ligatures in-depth in BT-001 bulletin: https://berkeleygraphics.com/public-affairs/bulletins/BT-001...

    In short, we think 1 keypress = 1 symbol printed on the screen. That explicitness brings peace. But, we also think that ligatures are optional and many people like them (read about all the pros and cons in the link above).

    That makes everyone happy.

    • > and many people like them

      I love them and can barely tolerate not having them. These ligatures of yours filled my heart with joy. Thank you!

  • You are not alone. While I can imagine a feasible use for some very commonly used glyph combinations being made a ligature, I just really prefer the one glyph per key press presentation (kerning them well OTOH is always greatly appreciated). Unicode in text editors still bugs me in that way, in the back of my mind I know that pretty non-ASCII character is taking up more than a byte, and it's... distracting.

  • Then don't use them. They are always optional, and in fact usually require opt-in via editor settings.

Berkeley Mono is my favorite programming font (happy paying customer) and Berkley Mono(filament) is my go to cheap fishing line. Anytime I see a link or get a rare update email from the former it takes me a second to realize it's not about the latter.

If you want excellent ligature support I would recommend Fira Mono. There are powerline variants, too. Lately I have been in love with IBM Plex Mono, but no ligature support.

> DO NOT OPERATE ON CRITICAL CODE WITH THE TRIAL FONT. WE ARE NOT RESPONSIBLE FOR DAMAGES TO YOUR MAINFRAME SYSTEM OR OTHERWISE.

The styling on this site is so neat

I think it looks great, and decided to check out how my favourite font (Fira Code) stacks up [0].

Hate to poop on others hard work, but i think Fira Code looks much better. The missing one i found might be critical for Clojurists, could be patched in FC.

https://imgur.com/gallery/OzcOgq5

I love Berkeley Mono and have been using it as my main font for some time. I’m in two minds about using the ligatures version because I’m not completely crazy about ligatures in general, but this font is just a fantastic monospace font for general use. I can heartily recommend it.

With a paid font like this, what’s the story for supporting Nerd front icons and power line icons?

  • You can do it manually if you take it on yourself and offer a patcher that people who own the font can use. But most of the time, it is not going to be aesthetically pleasing to the font designer.

    This is what Berkeley Graphics says about it in the article that is linked:

    >Nerd Fonts: We don't mind our customers patching the typeface. We respect your ownership of the typeface. However, Nerd Fonts are put together [haphazardly](https://www.nerdfonts.com/#home_) from several difference sources, kind of destroys our typeface's cohesiveness: We do not endorse it, we don't provide support to do this. It is a bad idea despite of its questionable usefulness. They're popular though and if you don't mind breaking the aesthetic uniformity of our typefaces, please go for it.

  • Nerd fonts comes with a patcher that can patch .ttf fonts to add all the icons. I've never tried it but I take it it'd work?

this looks sick, I might actually give in and swap the IBM VGA bitmap font I use everywhere for this...

  • I could never make that VGA font look good on MacOS... on Windows fonts like 6x13 looked fine. In the meantime I also changed from FHD to 4K-but-scaled display so...

    • yeah i temporarily have to use a 4k monitor and am realizing that eventually I'm going to have to give that font up. with 100% scaling it looks good but is way too small.

My font already has ligature support for coding.

What does this font offer in support for unicode glyphs?

Signed up for the "free trial" font (for personal use) and was particularly disappointed by this:

  Please note that the trial version has the following limitations:
  
  * Limited to ASCII-128 character set
  * Missing '7' and 'S' glyphs
  * Swapped: '/' and '\', '\*' and '#'

  • It's not uncommon for free trials to do things like this. I've used video edit suites which will edit a 5min clip but no more, which watermark the output, which show the edit stream but won't save it.

    Personally, I think this is fine. They are pretty explicit this is try before you buy checking it works. Not "use it free for 30 days and then we nag you" fully operational.