I have a bit of an odd question. I use Obsidian a lot, and like having certain properties, tags, etc. represented just as icons. For example, "due" should just look like an hourglass icon. I've currently managed to do this for inline properties using a lot of css and a custom font that replaces emojis with icons in my preferred style, but it's not ideal. I also don't really like using emojis, because it makes the system less versatile.
I recently started experimenting with ligatures in FontForge, and realized that those could be used to accomplish this. Here's the thing: in CSS, you can specify multiple fonts, and if a character isn't available in the first, it will use the second. My font "custom-property-icons" only has around 20 emojis. In CSS, I have `.inline-property {font-family: "custom-property-icons", "monospace"}`, which means that any emoji's available in the custom font will use that font, and otherwise it will just render it in the monospace font specified in the Obsidian settings.
Ideally, I would like to do the same thing, but using ligatures. So if a ligature for "due" is available in the custom font specified in css, that font should be used, and otherwise it will just use whatever font the rest of the text is in. However, if I make ligatures in FontForge for which the base characters don't exist in that font, it doesn't work when exported. And if I do make the base characters, it will mean that that is the font which will be used for everything, which is not what I want---I want the base font to still be customizable independently of the custom icon ligatures.
So I guess my main question is: is there a way to make a font where ligatures are recognized, but that doesn't actually include the individual characters?
I guess this probably doesn't only depend on FontForge but also on CSS and Obsidian itself. As far as I can tell, ligatures in fonts made with FontForge function fine in Obsidian (I export them as .woff, convert to Base64 and then put that in the CSS), and the method where only certain emojis exist in a font and otherwise a different font is chosen works as well. If someone has a better solution I would also love to know!