IdreesInc / Monocraft

A monospaced programming font inspired by the Minecraft typeface
https://idreesinc.com
SIL Open Font License 1.1
8.03k stars 114 forks source link

Add continuous ligatures for equal sign (=) #12

Closed Scrumplex closed 1 year ago

Scrumplex commented 1 year ago

I think it would be nicer, if equal signs were connected instead of having chunks of triple-equal-signs.

=== should still become ≣≣≣ but ==== and longer should be ====

Monocraft: Equal signs with Monocraft

Fira Code:

Equal signs with Fira Code

IdreesInc commented 1 year ago

I wonder how Fira Code does this. If it is due to some script automatically generating ligatures for arbitrary lengths of that character, I will not be able to add that to this font since it was made by hand. However, if it is just using a feature of OpenTypeFonts that I'm not aware of, then I would be happy to add it.

MCFX2 commented 1 year ago

An alternative approach (and what I'd prefer) is dong what JetBrains Mono does with these: image

This might be easier to implement in practice. It also fixes one of my gripes with the current system which is that using = as a spacer (for example when editing Markdown documents) makes it look really strange and behave in a kind of counterintuitive way:

image

IdreesInc commented 1 year ago

Turns out this requires complex character substitution, and as such is pretty much blocked until I can figure out #77

IdreesInc commented 1 year ago

Partially complete as part of #116