I want to make a custom music font that can be typed in Microsoft Word 2010, but I cannot get custom ligatures to work. In Word 2010, I have in Font > Advanced the Ligatures option set to 'All'. I don't understand why 'fi' and 'mp' coalesce into the custom glyph of my choice, while '|-' (bar + hyphen) does not.

I am using FontForge to construct the font. I am exporting the font as an OpenType (either .otf or .ttf). I suspect the problem may be related to the 'feature' or 'script' that I select in the Lookup section, which seem to confine me to particular languages like Latin or Arabic. All the tutorials online talk only about standard ligatures like 'ff' and 'ae' and Arabic ligatures, rather than custom combinations of any two arbitrary glyphs.

I don't even know if ligatures are what I want. My real desire is to have a 'Replace as you type' feature built into the font, but is that even possible? If it is, I could chain glyph replacements (ligatures?) together infinitely. If it isn't, I can work around it by redesigning my character map. Still, I can't get anything to work if the only ligatures that render are those which are already commonplace in some particular language.

I have tried a Gregorian chant music font called Caeciliae in Microsoft Word, with All Ligatures turned on, and it doesn't work either. Yet Calibri works, so I can't determine whether the problem is caused by me, FontForge, Word, or the nature of fonts in general, about which I know very little.

  • What's the purpose of making a new font? There are a wealth of readily available fonts to use already. To address the "replace as you type" have you tried manually adding the characters you want with this feature? support.office.com/en-us/article/… – Ovaryraptor Dec 12 '17 at 18:52
  • 1
    It's a custom music notation with esoteric note heads. Standard music fonts are normally used by music apps, which reference the glyph indices directly, not exactly the same as typing into a word processor. Word's replace-text is nigh-perfect (aside from the chaining thing I'd like to have), but it's only for Word. I'd rather have that feature built into the font, like ligatures are built in, since I will reuse this font in other applications. – Coemgenus Dec 12 '17 at 19:06
  • Do you have to use MS word? – LateralTerminal Dec 12 '17 at 20:31
  • No, but I prefer it since Word is the world's most common word processor, and most alternatives like Libre Office, Latex, or Indesign, are hard to use, weak on compatibility, not free, or not readily available for Windows. Besides, I think this question (which is really a composite) needs a place on SE because it has been asked elsewhere on the web, without successful answers. If it's a problem in Word, I'd like to ascertain that for sure. – Coemgenus Dec 14 '17 at 18:03
  • What syntax does FontForge use to create ligatures? If it's something like Adobe's own .fea syntax, you cannot use the literal characters | and - in their definition; you need to use their glyph names. There is no limit on what characters you can use for a ligature – other than that their base glyphs must also exist. – usr2564301 Jan 14 '18 at 14:28

If you have the time, I urge you to ignore suggestions to don't-even-try-and-use-something-already-done, and at least try to do the new thing you propose. Thus, you can start by reading The OpenType Cookbook in order to understand how the features, lookups, substitutions, etc. work. Then read more and keep asking if you need help. As far as I know, it is possible to do what you want, but can require some trickery.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.