Live data from Hacker News

Dev Fonts

devfonts.gafi.dev

161–170 of 342 posts

Re: Dev Fonts

#161
post #15

Earlier quoted context omitted.

I suppose some might say the code looks cleaner with ligatures and they better convey the meaning of the code (e.g. ≠ is easier to understand than !=). Personally, however, I like to see exactly what it is I am typing, exactly which symbols are being used. Ligatures distort that. Ligatures are fine when reading prose, but I find them too confusing when coding. That's a personal preference, though. I'm sure some peopl…

Personally, however, I like to see exactly what it is I am typing, exactly which symbols are being used. Ligatures distort that. I feel the same way. I do think I would enjoy programming in a language that used a slightly more extended set of real characters, as long as we had solid editor and font support so typing and viewing them wasn’t going to be an issue for anyone. For example, I’d like to finally have ≠, ≤ an…

I feel the same way.

Ligatures in coding fonts are a poor workaround for bad keyboard layouts. If you want to see ≠ then type ≠.

Julia is the only ‘major’ language I know that supports most such characters.

Re: Dev Fonts

#162

I switched to coding in a proportional font, Verdana, a couple of years ago and never looked back. That's the font you are reading this comment in, in fact. Code is mostly words and words are much easier to read in a proportional font. Symbols are plenty clear enough in Verdana, all letters are distinguishable, and I don't use mid-line alignment so I don't see the point in a monospace font outside of the terminal.

I’m changing my editor font to Verdana now... let’s see how that works out. Edit: it feels so wrong! Let’s see if I can get used to it. Screenshot: https://i.imgur.com/lmOR9ze.png

I tried it about ten years ago. Turned out, old habits die hard. I had it for about a week, but went back to a monospaced font.

Re: Dev Fonts

#163
post #130

Earlier quoted context omitted.

I'm not a fan of symbol ligatures but what I really loathe are monospaced fonts with a single character width fi ligature so the f and the i are both half width. I've seen several websites recently using fonts that do this. It is very visually distracting, especially in code samples.

Really? So it's not monospaced? I'm having trouble imagining any monospaced font doing this. (The ligatures in fonts such as Fira Code take up the same amount of space as the non-ligatured versions.)

On Macs, Courier (but not Courier New) can do it, though not by default.

(Open up TextEdit, enable Rich Text, select Courier, type "ff", highlight it, go to Font > Ligatures > Use All. The "ff" will now take up the width of a single character.)

I've run into a bug where certain styles of Courier Prime turns into ligatures in Google Docs. (Long story short, whether or not ligatures get enabled is a complex interplay between the OS, font, browser, and application, and not every layer always does it right.)

I'm not really sure why font designers even bother creating them in monospace in the first place though, I can't imagine any valid use for them. The only thing I can imagine is if a badly written application forces a ligature character, at least the end result will be readable rather than an empty box or something.

Re: Dev Fonts

#164

My favorite monospaced font is Recursive Mono. https://www.recursive.design/ https://github.com/arrowtype/recursive I am not sure whether this is a actually feature of this font. Some ligatures, like => are only active in comments. It works both in Sublime Text and QtCreator: https://imgur.com/nWsZieo

It reminds me of Comic Sans...

Re: Dev Fonts

#165
post #15

Earlier quoted context omitted.

I suppose some might say the code looks cleaner with ligatures and they better convey the meaning of the code (e.g. ≠ is easier to understand than !=). Personally, however, I like to see exactly what it is I am typing, exactly which symbols are being used. Ligatures distort that. Ligatures are fine when reading prose, but I find them too confusing when coding. That's a personal preference, though. I'm sure some peopl…

> ≠ is easier to understand than != I respectfully disagree with this claim. It's conventional code notation that != is a Boolean test for (in)equality; that convention doesn't apply to ≠, which is overloaded in mathematics.

It's C notation. Other languages use other notations like ~= or /= or . And any conceptual overloading of ≠ is a tiny fraction of the problem with = (it's too bad ASCII'67 dropped the ASCII'63 ← in favor of _).

Re: Dev Fonts

#166

My favourite monospaced font is Triplicate https://practicaltypography.com/triplicate.html >: the only true serif monospace that I know of (though I have a vague feeling I found one other at some point). Every other serif monospace I know of is a slab serif. Triplicate’s variable stroke thickness is also exceedingly rare in monospaced fonts; almost everyone goes for uniform stroke thickness, as is customary with sans…

Triplicate has a nice look, but l (lowercase L) and 1 (one) are indistinguishable, which is an immediate non-starter for me in a programming font. ( CORRECTION: there is apparently a code version that disambiguates these and others. See comments. That means this probably would be a candidate font for me, except: ) I finally just paid for Pragmata Pro, and haven't regretted it. The unicode support is incomparable, and…

There's a code variant that disambiguates 1 and l (and others).

Re: Dev Fonts

#167

My favourite monospaced font is Triplicate https://practicaltypography.com/triplicate.html >: the only true serif monospace that I know of (though I have a vague feeling I found one other at some point). Every other serif monospace I know of is a slab serif. Triplicate’s variable stroke thickness is also exceedingly rare in monospaced fonts; almost everyone goes for uniform stroke thickness, as is customary with sans…

Triplicate has a nice look, but l (lowercase L) and 1 (one) are indistinguishable, which is an immediate non-starter for me in a programming font. ( CORRECTION: there is apparently a code version that disambiguates these and others. See comments. That means this probably would be a candidate font for me, except: ) I finally just paid for Pragmata Pro, and haven't regretted it. The unicode support is incomparable, and…

The homepage includes snippets of both the regular and code variants, and they do look pretty distinctive in the code variant.

Re: Dev Fonts

#168
post #120

I don't see ligatures solving any important problem. If you think they do, I'd rather change syntax highlighting to recognize !== and others as a single token . It's like multi-select in text editors. When you think about it, it's actually an inferior form of search&replace. Inferior because it interacts badly with off-screen matches. I find arguments of kakoune users unconvincing. My personal opinion is - and I'm fi…

I kind of agree with your statement about multi-select, but even so, I love to use it!

(I "kind of" agree because a sibling comment is right that multi-select is a restricted form of macros, not search and replace. Because the things you can do with the multiple cursors are more than just search and replace.)

Re: Dev Fonts

#169
post #78

My favourite monospaced font is Triplicate https://practicaltypography.com/triplicate.html >: the only true serif monospace that I know of (though I have a vague feeling I found one other at some point). Every other serif monospace I know of is a slab serif. Triplicate’s variable stroke thickness is also exceedingly rare in monospaced fonts; almost everyone goes for uniform stroke thickness, as is customary with sans…

Personally, my eyes and brain just can't scan ligatures in code efficiently, I have to double read the code, especially "is that =, ==, or ===? Oh, and that's !==" (edit) I'll additionally qualify my comment, from a mathematics background I can casually scan a handwritten "!=" which is the same as the ligature, but I just cannot retrain my adult brain to accept the ligature version which is the same as the handwritte…

I find some ligatures help a lot. I can often miss != but won't miss ≠ or ≢

I think the whole idea of pre-pending ! to negate is a poor idea in general, it's too hard to spot especially in long convoluted lines where it's just thrown in before a complex bracketed expression.

Re: Dev Fonts

#170
I've been programming for over three decades, on many different systems with many different fonts. This topic pops up every so often but I cannot help but think that to me, it's the ultimate bikeshedding...
Post reply on HN