Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: Alternate font without ligatures #82

Open
bkhl opened this issue Nov 27, 2020 · 5 comments
Open

Feature request: Alternate font without ligatures #82

bkhl opened this issue Nov 27, 2020 · 5 comments
Labels
enhancement may be implemented as an enhancement

Comments

@bkhl
Copy link

bkhl commented Nov 27, 2020

I'd like to use Julia Mono as my global monospace font.

In Emacs I can control where ligatures are shown, so that's all good, and my terminal doesn't support them, so that's fine too.

However, Firefox has started showing ligatures with no option (that I can find) of disabling them.

It would consequently be nice if there was an alternate font (named something like "Julia Mono NL") which didn't include the ligatures.

That way, I could set that as my global monospace font, and only enable the ligature version in environments where

@cormullion cormullion added the enhancement may be implemented as an enhancement label Nov 27, 2020
@cormullion
Copy link
Owner

cormullion commented Nov 27, 2020

Hi there! Thanks for the interest... There are probably a few solutions to your dilemma.

The first would be to disable the calt feature in FireFox. To do this, you need to create a file userContent.css in a folder called chrome in your profile, which contains code like this:

body {
    font-variant-ligatures: no-contextual;
}

calt ligatures are then off by default, instead of on. The procedure for doing this works, but involves more steps than I can be bothered to type... :) That CSS is a bit draconian, though, so it might be better to restrict it somehow, but my CSS skills won't get me further, really.

The second would be to strip out the unwanted features from the fonts you want to use. This is also quite straighforward, and fortunately the wonderful Mr Ekre has provided the instructions here.

The third is for me to add an extra instance of each weight (also mentioned in #61) to the build process. I might get around to doing this, but it's not, you know, a pressing problem 😃 and I'm slightly (but not yet unduly) worried by the size of this repo (1 GB and counting...).

@bkhl
Copy link
Author

bkhl commented Nov 27, 2020

Thanks for the quick response, I think the guide in #61 should work for me.

@bkhl bkhl closed this as completed Nov 27, 2020
@mars0i
Copy link

mars0i commented Oct 6, 2024

I'm grateful for JuliaMono. It's a great font for my uses. Thank you!

I'm using JuliaMono in a gui wrapper, Goneovim, for Neovim. JuliaMono is great, but the ligatures for "->" and "=>" bug me a lot. I want to see exactly the characters I have put into my source code. (I'm writing code for the Lean language, where a lot of Unicode characters are routinely used, so when I see a ligature, I have to think, "Is that how some single-character Unicode character looks in this font, or is it a ligature?")

I have been investigating, but so far I can't see any way to turn off calt or something like that from Neovim or Goneovim.

I see the tips here about how to strip ligatures from a font, but I just think that's a lot to ask of many users. I don't fully understand how my fonts are installed on my system, or what their format is, and that's got to be the case for most users of JuliaMono. I could spend time modifying the JuliaMono fonts, figuring out where to put the new files, installing them, etc. But rather than each user who uses an application that doesn't allow customizing calt doing this on their own, to me it would make more sense to automatically build ligature-less variants of the fonts for downloads. (If these should be in a separate file to avoid large downloads, that's an option.)

I know that this is extra work for anyone who works on JuliaMono, and I am sure that you're all very busy! I wanted to add this thought, though. I very much appreciate all of the work that went into the font--work of a kind that I don't know enough to truly appreciate in ful.

@cormullion
Copy link
Owner

Hi. Thanks for the kind words. I'll think some more about doing this. The font build process isn't particularly automatic at the moment (there's an File>Export... command, but no command-line options that I can see).

I tracked down the goneovim editor (a bit obscure!) and it is mildly configurable:

Screenshot 2024-10-07 at 10 13 47

to the extent that there's a "Disable Ligatures" option usable in ~/.config/goneovim/settings.toml which appears to work.

@cormullion cormullion reopened this Oct 7, 2024
@mars0i
Copy link

mars0i commented Oct 7, 2024

Thanks so much for investigating goneovim! That's very kind of you. I didn't see that setting. Obviously I should have looked harder. It does the trick. Great!

(I think very few people use Neovim with a GUI front end, and there are a few dozen GUI frontends, so they are all obscure in the sense that each has a small number of users. Goneovim is one of the few that has features I want, runs on MacOS, and isn't overly buggy.)

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement may be implemented as an enhancement
Projects
None yet
Development

No branches or pull requests

3 participants