Le vendredi 18 août 2023 à 13:11 -0700, Knute Snortum a écrit :
> 1) Download a fresh LillyJazz.
> 2) Convert to 2.24 (AllOfMe.ly, jazzchords.ily, lilyjazz.ily, jazzextras.ily)
> 3) Add the ly:font-config-add-directory function to AllOfMe.ly:
> 4) Make sure lilyjazz.ily uses the correct font name:


That's not how it works.

Generally speaking, there are two types of fonts that LilyPond uses, text fonts
and music fonts. The full story of how fonts work is quite convoluted (there are
a ton of libraries involved: Pango, Fontconfig, HarfBuzz, FreeType, Cairo,
Ghostscript, and each of course comes with its own notion of a font, which
obviously doesn't help), but from the point of view of searching them, text
fonts use the Fontconfig library to discover fonts on the system, while music
fonts are handled by LilyPond directly, which doesn't have the full power of
Fontconfig but just searches them in the normal LilyPond include path.

What's messier still is that LilyPond *sometimes* searches music fonts using
Fontconfig. Specifically, when writing dynamics like "mf", the music font is
used just like a normal text font, and in that case it will use Fontconfig. On
the other hand, things like note heads and clefs go through the LilyPond-
specific paths.

As part of a grand project to revise all of LilyPond's font handling, I have
ongoing efforts to improve this situation, though currently delayed by student
duties plus some backlog on Frescobaldi:

https://gitlab.com/lilypond/lilypond/-/merge_requests/1957

In the meantime, you have two options:

A. Do what is explained in the installation instructions for LilyJAZZ: drop the
otf files into the data directory of the LilyPond installation, in a path like
/.../lilypond-2.24.2/share/lilypond/2.24.2/fonts/otf/, next to the emmentaler
OTF files. This is ugly but works.
B. Make the LilyJAZZ font directory known to *both* Fontconfig and the native
LilyPond search path. Namely, use ly:font-config-directory but *also* add it as
an include path, which can be done by passing the -I /path/to/dir option to the
lilypond command, or, from Frescobaldi, in Edit > Preferences > LilyPond
Preferences.


Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to