this post was submitted on 16 Apr 2026
39 points (95.3% liked)

Programming

26563 readers
382 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

Source from HN because they have shadowbans: https://news.ycombinator.com/item?id=47773594

I'm wondering too what you are looking for in a font. Good looks, features, options to enable or disable, ligatures?

top 50 comments
sorted by: hot top controversial new old
[–] alex_riv@lemmy.org 1 points 8 hours ago

for me it comes down to: zero vs O disambiguation, good ligatures for arrows (-> =>), and comfortable line-height defaults.

been using JetBrains Mono for a while. the 1/l/I disambiguation is solid and the ligatures are not too aggressive. recently switched a few terminals to Monaspace Neon (from GitHub) which has this subtle texture that's easier on my eyes for long sessions.

the thing i care about more than people realize: how it renders on low-DPI monitors. some fonts that look great on hidpi look terrible at 1080p with no subpixel rendering. JBM handles this better than most.

[–] atzanteol@sh.itjust.works 26 points 3 days ago* (last edited 3 days ago) (1 children)

I'm not terribly picky, mostly just want to distinguish 0 from O and l from 1.

I rather like JetBrains mono though.

[–] Colloidal@programming.dev 2 points 2 days ago

And l from I from | from 1. Stuff like that. And be pretty. And somewhat retro futuristic, without sacrificing readability.

[–] communism@lemmy.ml 10 points 2 days ago

Nice to look at. Disambiguates commonly confused characters (l, 1, I; 0, O).

[–] spacemanspiffy@lemmy.world 14 points 3 days ago

No ligatures, and no ambiguity between O and 0, l and 1 and I, etc.

No serifs too, I guess. Although I don't think that's very common in coding fonts.

[–] vogi@piefed.social 20 points 3 days ago (4 children)

Recently switched to Maple Mono because it is fun and cozy.

[–] Kissaki@programming.dev 6 points 3 days ago (1 children)

Connected strokes in italic style, vivify your code.

That's cool and interesting (you can see it in action and toggle-compare on the linked website)

I wonder how distracting it would be in code, though. If it is, their configurability allows skipping that feature though, which is great.

[–] vogi@piefed.social 4 points 3 days ago (3 children)

Yea, as its only applied to italics its less distracting than it might seem at first. Your IDE may not even use italics. In VSCode with my theme, italics are used for comments and variable names, which looks like this: WLNTqLUp8P2AC1W.png

[–] prole@lemmy.blahaj.zone 3 points 2 days ago* (last edited 2 days ago)

Why is 'l' the only cursive letter (and not connected to anything)? It's kind of jarring

[–] thingsiplay@lemmy.ml 2 points 2 days ago

I don't like that one and the same character looks different on the same line (here console.log).

[–] hallettj@leminal.space 4 points 3 days ago* (last edited 3 days ago) (1 children)

I like to use this style of italics for keywords. (That's also what the Maple examples do.) My thinking is you see keywords so often that you recognize them by shape, not by reading the individual letters. And my theory is that the italic variant being a little harder to read helps my eyes skim over keywords, to focus more on words that I do need to read precisely, like variable names.

It does mean that I spend some time customizing my syntax highlighting theme to make it work the way I prefer. I've got examples set up on my blog. Although that's not Maple - it's a different font with cursive italics called Cartograph CF.

[–] vogi@piefed.social 1 points 2 days ago

Oh wow that looks pretty and also makes total sense in theory. I think I have seen it in other places as well and might just steal that. :) Thank you for pointing that out.

[–] rimu@piefed.social 6 points 3 days ago

I've been using JetBrains Mono and Maple looks the same but nicer. Thanks!

[–] bitfucker@programming.dev 3 points 3 days ago

This is a great find. Thank you very much kind internet stranger

[–] 404@lemmy.zip 3 points 3 days ago

Yes! I built my own variant using their tool (removing the weird italic l etc). I love it.

[–] Maddier1993@programming.dev 1 points 2 days ago* (last edited 2 days ago)

I am picky and get bored all the time. These fonts below have had my attention for significant period of time.

  1. Used Hack for sometime and got bored of the weird diamond on the zero. Hence, downloaded HackSlash, A patched variant with slashed zero.
  2. Fira Code
  3. Source Code Pro
  4. Customized version of Iosevka mixed with monaco.
  5. Input mono but I changed the variants to get curved i, l, J
  6. Ubuntu mono
  7. Maple Mono (Latest I am trying)
  8. Menlo
  9. Consolas
  10. PT Mono
  11. Red Hat Mono
  12. CodeNewRoman Nerd Font

Someone mentioned codingfont.com.. but I spoil it for myself by immediately recognizing the fonts I already got weary of and get varying results just like if I let my picky self choose.

Edit: Probably forgot to mention that I have tried the Nerd font variants and exclusively the NF variants of above fonts like CodeNewRoman NF, BlexMono, CommitMono NF

[–] aivoton@sopuli.xyz 1 points 2 days ago

Not much, disambiguous characters mostly. I've been using M Plus for years because I sometimes need CJK glyphs. Inconsolata, Fira Code, etc. look OK to me. Still haven't found the perfect typeface to fill my developer-typographic font void.

[–] mbirth@lemmy.ml 10 points 3 days ago

Ligatures, slashed zeros, clearly distinguishable Il1/O0, not too big of a gap between lines, and maybe script-like italics. My current main monospace font is IosevkaTerm Nerd Font.

I also find the idea of using retro pixel fonts interesting, but so far couldn't get myself to actually try some of the fonts mentioned here: https://news.ycombinator.com/item?id=47708411 .

[–] andicraft@lemmy.blahaj.zone 5 points 3 days ago (1 children)
[–] prole@lemmy.blahaj.zone 2 points 2 days ago* (last edited 2 days ago)

Thank you for reminding me of this font name. I did a clean install of my OS a few weeks back, and forgot the terminal font I had been using

[–] MonkderVierte@lemmy.zip 7 points 3 days ago

Good readability of code.

[–] mimavox@piefed.social 3 points 2 days ago

I love Input sans because it gives me a very pleasant retro vibe, especially at heavy weights.

[–] deathmetal27@lemmy.world 7 points 3 days ago* (last edited 3 days ago) (1 children)

I use Fira Code for coding, mostly because of the ligatures. For console I use Inconsolata because it's compact and good for long console lines.

[–] one_old_coder@piefed.social 4 points 3 days ago

I admit that https://github.com/tonsky/FiraCode has the best presentation.

[–] whotookkarl@lemmy.dbzer0.com 4 points 3 days ago (1 children)

For mono space I've been using Ubuntu mono for a long time, there may be better but it was good enough when I was choosing and I haven't had any issues that made me want to pick a new one. For standard I use open sans.

[–] prole@lemmy.blahaj.zone 3 points 2 days ago

I really like the Ubuntu font family. Been rocking it on my Bazzite install for a bit now

[–] olafurp@lemmy.world 3 points 3 days ago

For me, distinguish similar letters such as 0, O, I, l, 1. Then I want ligature because I like them, then emojis should align vertically to the grid, high resolution for small font sizes, size difference between tall and not-tall characters, and it shouldn't have narrow characters.

Last time when I was changing up the font I went to https://www.nerdfonts.com/font-downloads and tried out a couple until I found one that I liked. I'm really picky about the symbol shapes, I most often just bail on a font because the @, % or & is ugly I might also bail if ` vs ' is not distinct enough.

Some fonts have absolutely wild italics that are almost cursive which is a hard pass. Even though I only see it once every week maybe I'm just not up for it.

[–] NewOldGuard@lemmy.ml 2 points 2 days ago

No ambiguous characters, nice ligatures

[–] Matty_r@programming.dev 2 points 3 days ago

This came up the other week, https://www.codingfont.com/ can help you narrow down what you find looks the best.

[–] Mesa@programming.dev 2 points 3 days ago* (last edited 3 days ago) (1 children)

Courier New but 0 has a distinguishing dot.

[–] Mesa@programming.dev 6 points 3 days ago

No ligatures.

[–] schnurrito@discuss.tchncs.de 4 points 3 days ago* (last edited 3 days ago)

Mainly that I can clearly distinguish Il1 and 0O. I like DejaVu Sans Mono because it does that; if I'm limited to fonts preinstalled on Windows, Lucida Console works too.

[–] vext01@feddit.uk 3 points 3 days ago (1 children)

I love iosevka because it's so condensed. You can fit so much on the screen.

load more comments (1 replies)
[–] belated_frog_pants@beehaw.org 2 points 3 days ago (1 children)

Perfectly half circle parens

[–] bleistift2@sopuli.xyz 5 points 3 days ago

I would like my parentheses to look normal, thank you.

[–] syklemil@discuss.tchncs.de 3 points 3 days ago (1 children)

Not that big on ligatures in monospace, really. I think I just go with what seems to look kinda nice and has a big enough amount of symbols to not look weird once a few of them are needed.

Also generally prefer dotted zero, or an inverse Ø. Fonts that make 0 and Ø look the same might as well just drop the slash altogether.

In spite of that I've been using Fantasque Sans Mono for years. At least the slash in its 0 doesn't extend beyond the circle like in an Ø.

[–] kata1yst@sh.itjust.works 1 points 3 days ago

This is my choice too. I love it.

[–] fulg@lemmy.world 3 points 3 days ago* (last edited 3 days ago) (2 children)

I am a big fan of MonoLisa, but it is a paid font.

I wasn’t convinced initially (never paid for a font before!) and found some version of it online, found that I liked it very much, then willingly parted with my money for a license.

I really like the difference between normal and italics, I set up my code editor to use italics for comments.

[–] Nighed@feddit.uk 4 points 3 days ago (2 children)

When you said 'paid' I was thinking £5, not £50 (for the basic version!)

[–] one_old_coder@piefed.social 3 points 3 days ago

On PragmataPro, I know it's a bit pricey (60 euros) but I've been using 12 hours a day for years, it has a lot of characters available, supposedly hand-made, and the guy updates it regularly.

I have bought software that was more expensive but had way less usefulness.

[–] fulg@lemmy.world 2 points 3 days ago

Yeah that’s why I found an “evaluation” version before. Once I saw it was genuinely great I was happy to pay for a license.

I look at this font 12+ hours a day everyday for work, if this was just for ricing a terminal window I agree it is a bit steep.

[–] bradboimler@lemmy.world 1 points 3 days ago* (last edited 3 days ago)

Distinct lower case connections

I stopped reading right there 🙂

[–] sfxrlz@lemmy.world 2 points 3 days ago

Vibes, gotta feel comfy. That’s why it’s 0xProto nerd font mono for me

[–] theherk@lemmy.world 3 points 3 days ago (2 children)

Everything VictorMono offers, exactly as offered. Also good for me to be able to distinguish O, 0, and Ø.

[–] one_old_coder@piefed.social 2 points 3 days ago

I like it, it's pleasant to my eyes. Thanks.

load more comments (1 replies)
[–] Kissaki@programming.dev 2 points 3 days ago (2 children)

I use Cascadia Code / the NerdFonts extension Caskaydia Code.

Primarily I look for readability, distinguishability. Ligatures are nice, I came to like them. Eligibility on different font sizes and weight/bold and italic, and colors - they must remain very readable and distinguishable.

I'm using the same font (family) for coding and terminal/console.

load more comments (2 replies)
[–] Auster@thebrainbin.org 2 points 3 days ago (1 children)
load more comments (1 replies)
[–] one_old_coder@piefed.social 2 points 3 days ago* (last edited 3 days ago)

I personally use PragmataPro and Berkeley Mono (both paid fonts) because they are pretty, have ligatures, and are narrow enough to show more text on a line.

Edit: I forgot https://typeof.net/Iosevka/ which can be customized to mimic other fonts.

[–] AstroLightz@lemmy.world 1 points 3 days ago

Pretty colors. That's it

load more comments
view more: next ›