JetBrains Mono: A free and open source typeface for developers
jetbrains.comprevious discussion at https://news.ycombinator.com/item?id=22053998
Interesting this URL doesn't have lp and was what caused the duplication detection to fail.
I wonder why does lp stands for?
I was following the discussion yesterday, but was wondering the same with the link, although it redirects to the one with /lp/
lp stands probably for LandingPage, a online marketing term for a website which the user is seeing first
Landing Page?
The ligatures for != -> etc. are a terrible idea, imagine someone reading a programming language tutorial or a snippet and then actually trying to type stuff rather than copy-pasting.
This is like saying you shouldn’t render latex. I like my ligature font, it makes nicer to read code for me, not terrible at all. Your programming font is a personal choice, i guess when publishing a tutorial you need to consider which font is appropriate, but that doesn’t make anything terrible.
The opposite really, it's like publishing unrendered latex and have the reader render it in their head or run it through a latex renderrer themselves
Ok. However, I publish all my code in plain text. Arguably this this is the normal way code gets distributed, unless you edit in word... The choice of font, syntax highlighting, editor, etc are personal choices, what is terrible for you might not be terrible for me.
You publish your code in plaintext, it goes to github where someone reads it through some fancyfying code formatter that github applies to it and which might not even do the same ligatures as your editor. I'm not saying this is a dire problem, or a problem with you or even this specific font - rather the idea of ligatures in program source code to begin with, somewhat similar to using code identifiers (as opposed to literals or comments) outside of ascii-compatible characters of unicode.
Once I got used to ligatures, they did aid flow for me.
-> now needs more internal “rendering” than → does.
Same with ≡ vs ===
That's not a very good thing, especially considering that there are (probably ?) actual unicode characters '→' and '≡' that are not valid syntax for -> and === in languages that utilize the later.
Good for who? In an IDE the person reading them knows what don’t they are using, and so won’t get confused. The IDE itself knows what language the code is in and will highlight invalid syntax.
Languages like Agda allow → or -> interchangeably in the body of the code: https://agda.readthedocs.io/en/v2.5.2/language/lexical-struc...
Most languages only allow such symbols in strings, though, so it's pretty simple:
- Symbols outside of a string literal are ligatures.
- Symbols inside strings are the real symbol.
Ligatures are also rendered differently to any similar unicode characters.
In IntelliJ they can be turned off. So if you don’t like them, don’t use them.
I love em. Even when editing
I'm sure they're very rewarding for the author/editor - but the cost is externalized onto unversed readers, this is generally considered bad practice in other areas of programming.
The good thing about ligatures is that they only affect how the text is displayed, so people who don't like and use ligature fonts won't encounter them.
The exceptions may be, as you said, online tutorials etc. with their own fonts and formatting, but I think that's more a part of the problem of bloated website design overriding browser-wide preferences.
For me ligatures are less important than syntax highlighting, but I do find them helpful - especially the greater-equal and smaller-equal signs are much more readable with ligatures, and that also applies when I read other people's code in my editor.
That's not always true. Reader may decide to not use ligatures and the code will appear as is for them. They're entirely optional.
This means they need to be aware of this issue in the first place and is yet another side concern to bear in mind, so yeah - externalized cost.
The reader uses their own font with or without ligatures. There is no cost.
Not really, too often on the web it is the font decided by the author or an intermediary - the above page is case in point or they wouldn't have been able to demonstrate it as I have never explicitly opted-in to ligatures at any point.
Every time a new shiny font comes out I always try it. Then I run back to Inconsolata until the next time :)
I do so as well, but I run back to Fira Code with ligatures. I'll try this one now.
I'm not a fan of ligatures. Don't like the idea to not have a source of truth when reading code/text. Text should be pure, I find that ligatures obscure intention when I read code. I've tried using them, but they just look weird to me and I have to stop my reading flow and reason about a given ligature. I'm pretty sure it's just habit, but I never pushed myself to use them for long time, never felt the need to train myself.
Georgian script is missing as always :-( It's really a pain to speak rare language.
It's for programming with English based programming languages, not regular arbitrary text. I do think there should be more language specific programming languages, but since there are not, there is no reason for a programming font to support it.
It's still useful for writing localized string literals and comments.
fair