[HN Gopher] Monaspace
       ___________________________________________________________________
        
       Monaspace
        
       Author : davidbarker
       Score  : 111 points
       Date   : 2023-11-09 20:16 UTC (2 hours ago)
        
 (HTM) web link (monaspace.githubnext.com)
 (TXT) w3m dump (monaspace.githubnext.com)
        
       | amerine wrote:
       | It's a really cool idea to have a collection of monospaced fonts
       | that work wonderfully together. I can't wait to give this a spin
       | today.
        
       | turnsout wrote:
       | The "Texture Healing" feature is a really smart use of OpenType
       | features to make problematic monospace combinations look much
       | better without breaking the grid at all.
       | 
       | One naive way to do this would be to create ligature pairs for
       | difficult pairs (mi, lm, etc). But instead, they seem to be
       | selecting character alternates that fill the fixed width
       | differently based on their surroundings.
        
         | idan wrote:
         | It really is super clever! And the crazy part is that it's been
         | possible for a super long time, just nobody thought of the
         | technique. Mad props to Riley Cran and the entire crew at
         | https://lettermatic.com for devising this technique as a part
         | of this project.
        
           | csande17 wrote:
           | I'm curious: did the team consider applying the technique to
           | letter pairs like Ty and TA that traditionally get kerned
           | closer together in proportional fonts?
           | 
           | As far as I can tell from the demo, these pairs currently
           | aren't affected by texture healing, and they look a little
           | awkward in Radon especially.
        
         | nvartolomei wrote:
         | Commit Mono font does something similar and calls it "Smart
         | kerning". Visit https://commitmono.com/ and click on the "04
         | Intelligent" tab for details.
         | 
         | In practice this is unusable. Because the width of the letters
         | now depends on the succeeding character, the text jumps as you
         | write it. Super annoying.
         | 
         | Cool for reading. Awful for writing.
        
       | dpc_01234 wrote:
       | I was initially thinking ... "OK, another monospace font
       | (family), look nice", until I got to "texture healing" which
       | really made me want to try it out.
       | 
       | I really like the idea of using different style of font for
       | different things, but as primarily terminal user, I don't even
       | know which terminals support it (if any), and then we would need
       | CLI text editors support as well. But I think it's a great idea.
        
       | helix278 wrote:
       | How would you configure a text editor or terminal to use
       | different fonts based on syntax (e.g. neon for code, argon for
       | comments)?
        
         | leipert wrote:
         | In vscode probably easy because it is all CSS?
         | 
         | Other editors/terminal emulators would probably need to add
         | support for this.
        
         | idan wrote:
         | Hi! I worked on this at Next.
         | 
         | Unfortunately, it's on the editor to support mixing fonts.
         | There's never been multiple compatible monospaced fonts before
         | so no editors really support this yet. Lots of editors also
         | don't support variable typefaces properly yet (ahem, VS Code)
         | but this is going to change.
         | 
         | Ultimately what you're describing is the future! But we have to
         | release the typefaces to bootstrap that future.
         | 
         | We made a prototype extension that hack it into VS Code. But
         | they're hacky af and not really releasable.
        
           | ctenb wrote:
           | I wonder if terminal escape code sequences would arise to
           | support this too!
        
       | markcollin wrote:
       | going to try this out.. clever font name ;)
        
       | aquir wrote:
       | I keep using Berkeley Mono! That font is just perfect! This font
       | and the styles are a bit wonky for me...
        
       | csande17 wrote:
       | I'm curious what people think of the "Mix & Match" examples.
       | 
       | Radon (the handwriting one) seems to complement the other fonts
       | well because it's basically an italic. But all the others are so
       | similar, with their identical metrics and whatnot, that the
       | "authoritative docstrings" and "Copilot voice" examples are
       | really hard to distinguish.
        
       | itishappy wrote:
       | I like everything about this! Font families seem like an
       | incredible idea that I'm surprised nobody's done before, variable
       | fonts are new to me and super interesting, textural healing seems
       | like a huge step forward, and damn if that isn't one of the
       | smoothest sites I've ever played with. Nice work!
        
         | thrtythreeforty wrote:
         | > Font families seem like an incredible idea that I'm surprised
         | nobody's done before
         | 
         | Oh this has been done for _decades_. Metafont (by the
         | inimitable Don Knuth) let you describe glyphs as toolpaths in
         | code. You could have as many parameters as you wanted; I 've
         | seen examples where a sans-serif is smoothly swept into a
         | serif.
         | 
         | Metafont never got adopted as much as I would have hoped; the
         | lack of a graphical editor and some impedance mismatch with
         | OpenType probably prevented its wider adoption.
        
       | samus wrote:
       | Texture healing is a really smart and beautiful idea! I will try
       | to apply it to Chinese handwriting, which is often monospace. A
       | lot of common, but really dense characters (especially
       | traditional ones, for example these: Bian Tie Can Ting Tai Yao Ji
       | Mian Gu Lu Lou Bang Rang ) could benefit from receiving
       | additionally space to spread out.
        
       | zaps wrote:
       | When I get that feeling / I need textural healing
        
       | ChrisArchitect wrote:
       | Superfamily? they're just making up stuff so they can bundle a
       | bunch of fonts and say people are using "theirs"
       | 
       | blah
        
         | Kerrick wrote:
         | > Monospaced fonts are generally incompatible with one another.
         | Each one uses different metrics, making it impossible to mix
         | different fonts. Each Monaspace font is designed to be
         | seamlessly mixed and matched. Layer more meaning onto code,
         | with a palette that goes beyond colors and bolder weights.
         | Build interfaces for code that require more structure and
         | hierarchy.
         | 
         | FTA. It means you can do things like have inline comments use
         | Radon, docstrings use Xenon, code use Neon, and string literals
         | use Krypton for more visual difference -- without the line
         | heights and columns getting all weird because of it.
        
       | redder23 wrote:
       | I really hate most of these fontLigatures. They just confuse me,
       | many of the character combination I never even used in the
       | languages I code in. And others look so different that I would be
       | afraid to not know what they actually are.
       | 
       | Some seem useful but is seems I can not pick them individually
       | and have to commit to an entire group of them. The symbol for </>
       | (something I never used anyway) looks like the absolute worst to
       | me, like how is that better? And especially of you do rarely or
       | never used it you get forced into this shit if you like other
       | things from that group and enable it.
       | 
       | Turning two == into one long one, NO! I think people just
       | overthink it, it becomes confusing and not more readable.
        
       | readthenotes1 wrote:
       | Beautiful.
       | 
       | Even to my aesthetically un-nuanced sensitivity, these fonts look
       | good
        
       | bsder wrote:
       | Can we _please_ stop with abusing ligatures for things like !=
       | into [?]? If you want APL, please use APL and leave the rest of
       | us alone.
       | 
       | != is _two bloody characters_ not _one_.
       | 
       | And now people are doing it for _3_ characters.
       | 
       | With this kind of thing, you get _all_ the text editing idiocy of
       | combining characters (like emojis) for no benefit at all.
       | 
       | See: Text Editing Hates You Too https://lord.io/text-editing-
       | hates-you-too/
        
       ___________________________________________________________________
       (page generated 2023-11-09 23:00 UTC)