Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can you easily differenciate between == and === with ligatures ? That's one thing that holds me back to trying ligatures.


Yes, it’s fairly obvious. It depends on the font, but my triple comparisons actually have three bars (you can see it in the examples I think)


Of course. A `==` is two characters long, while `===` is three characters long. Also, with the font I use (Fire Code) the `===` ligature has three lines, making it even easier to distinguish.


I just had a look at Fire Code. How do you distinguish -> with ligatures from → (an Unicode arrow)?


Personally, it’s never really come up. I have no Unicode arrows in my actual source code.

On the occasion it’s in a string literal or whatever the it’s pretty obviously different, because it’s a single-width character as opposed to the double-width ligature.


The ligaturized -> is two characters wide and is pretty easy to tell apart.


So it looks like U+27F6 ⟶ rather than U+2192 →?


Sure, but in a monospaced font both of those arrows would have to fit into the same small box, so 27F6 might be the full width while 2192 would be some partial width, while a -> ligature would be two widths.


The Unicode arrow looks smaller and is positioned lower, while the ligature has the same size as -> with the dash extended into the 'arrow'. Not that I use this frequently.


The Unicode arrow is most likely throwing an error in the linter or compiler and is underlined with a red line.


For me, I just selectively use _some_ ligatures. There are a few I like (like a lambda symbol instead of `fn` in Clojure), and the rest I just don't use.


yes because === is presented as a three long parallel lines (at least in the font I use, which is JetBrains Mono)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: