Skip to content

Vend a version of 0xProto with ligatures disabled #116

Closed

Description

@brzzdev

Description of the Issue:
It would be great if a ligature-less version of 0xProto could be was made available alongside the existing version.

Additional Context:
Quite a few editors have ligatures enabled by default, or have no way to disable ligatures (looking at you Xcode). As a result, a lot of monospace font providers vend a version with no ligatures. Usually with the suffix NL for 'no ligatures', Terminal for use in the terminal where ligatures can cause issues, or Fixed representing that all the characters are fixed width.

This would be greatly appreciated.

Activity

  1. msaktype commented on Apr 28, 2025

    @msaktype
    Member

    Hi @brzzdev , thank you for using 0xProto!

    I've just found that font ligatures are always enabled in Xcode and there is no way to disable them (and I felt like, Why?? ).

    Font files are programs, not completely static assets like image files, and 0xProto provides OpenType Features such as ligatures, script variants, and texture healing under the OpenType standardized specification. Besides, it is up to the user of the font (including the application) to decide whether to use these features.
    For example, my text editors such as VS Code and Zed, and terminal software such as iTerm and MATE Terminal are designed to give users access to OpenType Features such as those listed above.

    There is no end to the number of font providers who will begin to offer versions of their fonts that take into account the implementation of the application. Some may need font files with Stylistic Sets (ss01: Script Variants in 0xProto) disabled.

    For these reasons, I thought it was the application (Xcode) that should change, not the fonts.

  2. brzzdev commented on Apr 29, 2025

    @brzzdev
    Author

    Hi @matype,

    Thanks for the prompt response.

    We're definitely on the same page that editors should be better in this department, but it's also apparently JetBrains.
    I think there are other valid arguments for vending 'frozen' version of fonts. I like to use the font I choose in TextEdit and as my browser's monospaced font, for example. These places don't allow for customisation of OpenType features, so if I don't want ligatures I'm forced to use a font that doesn't have them, or vends an NL version.

    For a similar situation, take GitHub's own Monaspace's latest release and reasoning. They feel similarly to you, but it's unlikely these slow-moving year-old ships are likely to change anytime soon, and I'm guessing (hoping) it's not a large burden on yourself to provide a version that would play nicely with these other environments.

    Unfortunately, not every application exposes these settings to the user. This was a particular pain point for users of XCode and JetBrains IDEs — even if you choose Monaspace, you can't turn on ligatures, texture healing, or control the active stylistic sets/variants.
    We'd prefer that applications do the right thing and expose those controls, but in the meanwhile, we'd like you to enjoy everything Monaspace has to offer. The frozen formats are just like the static builds of Monaspace, but with the various OpenType features turned on by default. When using the frozen builds of Monaspace, you get texture healing and all the ligatures on by default, but you give up the fine-grained control of enabling specific stylistic sets and character variants. Computers are hard.

  3. msaktype commented on Apr 29, 2025

    @msaktype
    Member

    Thanks for the information.
    I thought, Oh no, but I understand. Apparently, computers are hard 😂

    I understand what is going on, but I can't say that I am ready to deal with it yet. Monospace seems to have separate font source files to generate Frozen font files, but since 0xProto is made by me alone in my non-working hours, it will be difficult for me to continue to maintain it in the future.

    For now, I will leave this issue open.

  4. brzzdev commented on Apr 29, 2025

    @brzzdev
    Author

    I appreciate the dicussion.

    You've made a hell of a font in your spare time!
    Unfortunate that my hatred of ligatures in monospace fonts stops me from using it everywhere currently.

    Hopefully, time or some software solution can remedy this is the future.

  5. msaktype commented on Apr 29, 2025

    @msaktype
    Member

    I built the font file with the OpenType ligature feature disabled without adding the font source files. I will merge it after I have fully tested it and will include it in the next release.

    I have attached a 0xProto NL font files without ligature built in my local environment, if you would like to try it.

    0xProto-NL-beta.zip

  6. brzzdev commented on Apr 29, 2025

    @brzzdev
    Author

    Awesome! Looks to be exactly what I wanted so far. I'll let you know if I spot any issues.

  7. msaktype commented on Apr 29, 2025

    @msaktype
    Member

    I've just released v2.400 that includes "0xProto NL" fonts !!
    Appreciate your feedback 🙏

    If you find any problems, please feel free to create an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions