Thank you, Elaine. I'm on the road, but I'll gladly check it out later! One thought though: As far as I understand it: displaying chords within Lilypond is not done with/by a "normal" font but rather a special chord-mechanism. I fear, that this mechanism (as far I've seen) does a good job, but can also be seen as a limitation. How wrong would it be to create a normal font (with tons of ligatures) which I could use as info/comments/expression - NOT in Chord-mode to display chords? I feel like that would be the only way that leads to perfect chord symbols. Or am I completely out? :-)
On Wed, Jul 3, 2019, 19:26 Flaming Hakama by Elaine < ela...@flaminghakama.com> wrote: > --------- Forwarded message ---------- >> From: Marco Baumgartner <vonbaumgart...@gmail.com> >> To: lilypond-user@gnu.org >> Date: Wed, 3 Jul 2019 14:27:27 +0200 >> Subject: Jazz Chord Symbols (as new font - NOT notation font) >> Hi, >> >> I wonder how I had to build a "normal" font (otf, ttf, whatever) to work >> as chord-symbols-font only. >> Spacing and style is very important to make chord symbols readable. I >> haven't seen one yet for lilypond. >> Goal is to have a font rendering chord symbols like in the real books >> (handwritten or not), thus: including tons of ligatures and special >> thingies per symbol/cluster of symbols. >> >> If Ab7sus4(b9) isn't typeset "right", you simply can't read it. You don't >> buy it. You don't even want to play it... :-) That's a little harsh, I >> know. But hence my question. I'm happy to spend some time on a >> Jazz-chord-font - but I have no clue on how to make it, so it can be used >> by lilypond. Could also be as "comments" or "music expression", if "chords" >> doesn't work. >> >> The lilyjazz-font doesn't come with this kind of chord-symbol-font. >> >> So, is it possible to build one? How do I set up the font? I work with >> fontforge. I'm not a font-specialist, but I had built and drawn fonts from >> scratch. Just need someone to point me into the right direction. >> >> I need to know: >> >> - is it possible and how? (how to "embed"/use the font in lilypond) >> - what font-format >> - what encoding (unicode doesn't allow ligatures as far as I know. So >> latin1?) >> >> Thanks a lot for some hints and tips! >> >> Have a good time, >> Marco >> >> *** >> www.marcobaumgartner.com >> >> >> >> ---------- Forwarded message ---------- >> From: Kieren MacMillan <kieren_macmil...@sympatico.ca> >> To: Marco Baumgartner <vonbaumgart...@gmail.com> >> Cc: Lilypond-User Mailing List <lilypond-user@gnu.org> >> Bcc: >> Date: Wed, 3 Jul 2019 09:05:18 -0400 >> Subject: Re: Jazz Chord Symbols (as new font - NOT notation font) >> Hi Marco, >> >> > Spacing and style is very important to make chord symbols readable. I >> haven't seen one yet for lilypond. >> >> How does < >> http://leighverlag.blogspot.com/2015/12/mimicking-real-book-look.html> >> not do what you want? >> >> Thanks, >> Kieren. >> ________________________________ >> >> Kieren MacMillan, composer >> ‣ website: www.kierenmacmillan.info >> ‣ email: i...@kierenmacmillan.info >> >> >> > > To be fair, Lee's post does not delve into manipulating the chord symbol > layout. It focuses on the quirks of the real book style, including an > In-staff title bar and Only one clef and time signature. (Which are both > not what the OP asked about, and are arguably things that should be > abandoned practices of a previous century.) > > Lee does show how to get a "handwritten" font for chords: > > \paper { > #(define fonts > (set-global-fonts > #:music "lilyjazz" > #:roman "Pea Missy with a Marker" > #:sans "Pea Missy with a Marker" > #:factor (/ staff-height pt 20))) > } > > But in order to get things liked stacked alterations, or the "proper" > vertical placement and relative sizing of symbols, this is not addressed. > The example in that post ("All of Me") only uses basic chords symbols that > don't really need tweaking, so it is not obvious what the OP is taking > about from looking at that example. > > > There are references in the example code to files that may be doing > something more: > > \include "jazzchords.ily" > \include "lilyjazz.ily" > > But since there is no use of chordNameExceptions in the example, it is > unlikely that these files address the typography of the chord symbols. > > > The reality is that any kind of typography related to chord symbols > requires a complete customization of all or most of the chord symbols you > use. > > I'm happy to share what I use. This style employs the graphical symbol > approach: triangle for major, dash for minor, plus for augmented, circle > for diminished and null symbol for half diminished. If you use something > else, like M/m/aug/dim/m7b5, you'd have to construct your own, but > hopefully this pattern will be helpful as a basis. It contains definitions > for every chord I've had to notate, but is by no means complete. There are > a few exceptions to "standard" chord symbol notation, in particular for sus > chords, (e.g. Csus7 instead of C7sus4). > > > To use this, first save the chord definitions below in a file. > Then include that file from your ly file. > Then when creating chords, use these chord exceptions: > > myChords = \chordmode { > \set chordNameExceptions = #flamingChordExceptions > e1:m > % etc. > } > > > Also, I use the following syntax for specifying the font used for chords > symbols; it is the second font in this list. I don't use a "handwritten" > font for chord symbols, my preference happens to be "Highlander ITC TT", > but you would put whatever font name you want in that position. > > \paper { > #(define fonts > (make-pango-font-tree "Marker Felt" > "Highlander ITC TT" > "LilyJAZZText" > (/ myStaffSize 20))) > } > > > Here is the code to save in a .ily file: > > \version "2.19.81" > \include "english.ly" > > flamingChordNames = { > > % Major > <c e g b>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle ##f } > \normalsize 7 } } > <c e g b d'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle > ##f } \normalsize 9 } } > <c e g b a'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle > ##f } \teeny " " \normalsize 13 } } > <c e g b d' a'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle > ##f } \normalsize 13 } } > <c e g a d'>1-\markup { \raise #3 { \tiny \center-column { \lower > #1.25 { " 6" } " 9" } } } > <c e g b d-sharp' f-sharp' a-flat'>1-\markup { > \raise #0.7 { \magnify #0.5 { " " \triangle ##f } \normalsize 9 } > \raise #3.8 { \tiny \center-column { \lower #1.25 { " #9" } "#11" > \raise #1.25 { "b13" } } } > } > > % Minor > <c e-flat g>1-\markup { \raise #0.6 { \magnify #0.2 { " " } \tiny { > \char ##x2013 } } } > <c e-flat g a>1-\markup { \raise #0.6 { \magnify #0.2 { " " } \tiny { > \char ##x2013 } \magnify #0.2 { " " }} \raise #0.7 \normalsize 6 } > <c e-flat g b-flat>1-\markup { \raise #0.6 { \magnify #0.2 { " " } > \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 \normalsize 7 } > > <c e-flat g b>1-\markup { \raise #0.6 { \magnify #0.2 { " " } \tiny { > \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 { \magnify #0.5 { " " > \triangle ##f } \small 7 } } > <c e-flat g b d' a'>1-\markup { \raise #0.6 { \magnify #0.2 { " " } > \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 { \magnify > #0.5 { " " \triangle ##f } \small 7 } } > > <c e-flat g b-flat d'>1-\markup { \raise #0.6 { \magnify #0.2 { " " } > \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 \normalsize 9 } > <c e-flat g b-flat d' f>1-\markup { \raise #0.6 { \magnify #0.2 { " " > } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 \normalsize > 11 } > <c e-flat g b-flat d' a'>1-\markup { \raise #0.6 { \magnify #0.2 { " > " } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 > \normalsize 13 } > <c e-flat g b-flat d' a'>1-\markup { \raise #0.6 { \magnify #0.2 { " > " } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 > \normalsize 13 } > > % minor7 b13 as "-7 b13" > % <c e-flat g b-flat a-flat'>1-\markup { \raise #0.6 { \magnify #0.2 { > " " } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 { > \normalsize 7 } \raise #0.9 { \small b13 } } > > % minor7 b13 as "- b13" > <c e-flat g a-flat'>1-\markup { \raise #0.6 { \magnify #0.2 { " " } > \tiny { \char ##x2013 } \magnify #0.1 { " " }} \teeny " " \raise #1.2 { > \tiny \flat } \teeny " " \raise #0.9 { \tiny "13" } } > <c e-flat g b-flat a-flat'>1-\markup { \raise #0.6 { \magnify #0.2 { " > " } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.9 { \small " > b13" } } > <c e-flat g b-flat d' a-flat'>1-\markup { \raise #0.6 { \magnify #0.2 > { " " } \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 > \normalsize "9 b13" } > > <c e-flat g b a-flat'>1-\markup { \raise #0.6 { \magnify #0.2 { " " } > \tiny { \char ##x2013 } \magnify #0.1 { " " }} \raise #0.7 { \magnify > #0.5 { " " \triangle ##f } \small 7 \teeny " " \raise #0.5 { \tiny \flat } > \magnify #0.1 { " " } \raise #0.3 { \tiny "13" } } } > > % Dominant > <c e g a>1-\markup { \raise #0.7 { \normalsize 6 } } > <c e g b-flat>1-\markup { \raise #0.7 { \normalsize 7 } } > <c e g b-flat d'>1-\markup { \raise #0.7 { \normalsize 9 } } > <c e g b-flat d-flat'>1-\markup { \raise #0.7 { \normalsize 7 } \raise > #1.2 { \teeny " " \tiny \flat \tiny "9" } } > <c e g b-flat d-sharp'>1-\markup { \raise #0.7 { \normalsize 7 } > \raise #0.9 { \small " #9" } } > <c e g b-flat c-sharp' d-sharp'>1-\markup { \raise #0.7 { \normalsize > 7 } \raise #3.9 { \tiny \center-column { \lower #1.25 { " b9" } " #9" } } } > <c e g b-flat d-sharp' f-sharp'>1-\markup { \raise #0.7 { \normalsize > 7 } \raise #3.9 { \tiny \center-column { \lower #1.25 { " #9" } " #11" } } } > <c e g b-flat d' a'>1-\markup { \raise #0.7 { \normalsize 13 } } > <c e g b-flat d-flat' a'>1-\markup { \raise #0.7 { \normalsize 13 } > \raise #0.9 { \small " b9" } } > <c e g b-flat a-flat'>1-\markup { \raise #0.7 { \normalsize 7 } \raise > #0.9 { \small " b13" } } > <c e g b-flat d' a-flat'>1-\markup { \raise #0.7 { \normalsize 9 } > \raise #0.9 { \small " b13" } } > > % Dominant b5 > <c e g-flat b-flat>1-\markup { \raise #0.7 { \normalsize 7 } \raise > #1.0 { \small " b5" } } > <c e g-flat b-flat d-flat'>1-\markup { \raise #0.7 { \normalsize 7 } > \raise #1.0 { \small " b5" } \raise #1.0 { \small " b9" } } > > % Half-diminished > <c e-flat g-flat b-flat>1-\markup { \raise #0.5 { \magnify #0.85 \char > ##x2205 } } > <c e-flat g-flat b-flat c-sharp'>1-\markup { \raise #0.5 { \magnify > #0.85 \char ##x2205 } } > <c e-flat g-flat b-flat f'>1-\markup { \raise #0.5 { \magnify #0.85 > \char ##x2205 } \raise #0.5 { \normalsize 11 } } > <c e-flat g-flat b-flat a'>1-\markup { \raise #0.5 { \magnify #0.85 > \char ##x2205 } \raise #0.5 { \normalsize 13 } } > > % Diminished > %<c e-flat g-flat b-flatflat f'>1-\markup { \raise #1.5 { \magnify #2 > \circle "" } \raise #0.5 { \normalsize 11 } } > > % Augmented > <c e g-sharp>1-\markup { \raise #0.4 { \magnify #1.3 { + } } } > <c e g-sharp b-flat>1-\markup { \raise #0.4 { \magnify #1.3 { + } } > \raise #0.5 { \normalsize 7 } } > <c e g-sharp b-flat d'>1-\markup { \raise #0.4 { \magnify #1.3 { + } } > \raise #0.5 { \normalsize 9 } } > <c e g-sharp b-flat c-sharp' d-sharp'>1-\markup { \raise #0.4 { > \magnify #1.3 { + } } \raise #0.5 { \normalsize 7 } \raise #3.9 { \tiny > \center-column { \lower #1.25 { " b9" } " #9" } } } > <c e g-sharp b-flat d-sharp'>1-\markup { \raise #0.4 { \magnify #1.3 { > + } } \raise #0.5 { \magnify #1.2 { \normalsize 7 } } \raise #1.0 \tiny " > #9" } > <c e g-sharp b-flat f-sharp'>1-\markup { \raise #0.4 { \magnify #1.3 { > + } } \raise #0.5 { \magnify #1.2 { \normalsize 7 } } \raise #1.0 \tiny " > #11" } > <c e g-sharp d-flat'>1-\markup { \raise #0.4 { \magnify #1.3 { + } } > \raise #1.2 { \teeny " " \tiny \flat \tiny "9" } } > <c e g-sharp b-flat d-flat'>1-\markup { \raise #0.4 { \magnify #1.3 { > + } } \raise #0.5 { \normalsize 7 } \raise #1.2 { \teeny " " \tiny \flat > \tiny "9" } } > <c e g-sharp b-flat d' a'>1-\markup { \raise #0.4 { \magnify #1.3 { + > } } \raise #0.5 { \normalsize 13 } } > > <c e g-sharp b-flat d-sharp' f-sharp'>1-\markup { > \raise #0.4 { \magnify #1.3 { + } } > \raise #0.7 { \magnify #0.5 { " " \triangle ##f } \normalsize 7 } > \raise #3.8 { \tiny \center-column { \lower #1.25 { " 9" } " #9" > \raise #1.25 "#11" } } > } > > % Lydian > %<c e g b f-sharp'>1-\markup { \raise #1.0 \small " lyd" } > <c e g f-sharp'>1-\markup { \raise #1.0 \tiny " #11" } > %<c e g b f-sharp'>1-\markup { > % \raise #0.7 { \magnify #0.5 { " " \triangle ##f } \normalsize 7 } > % \raise #1.2 { \teeny " " \tiny "#11" } > %} > <c e g b f-sharp'>1-\markup { > \raise #0.7 { \magnify #0.5 { " " \triangle ##f } } > \raise #1.2 { \teeny " " \tiny "#11" } > } > <c e g b d' f-sharp'>1-\markup { \raise #0.7 { \magnify #0.5 { " " > \triangle ##f } } \raise #3.4 { \teeny \center-column { \lower #1.25 { " 9" > } " #11" } } } > <c e g b d' f-sharp' a'>1-\markup { \raise #0.7 { \magnify #0.5 { " " > \triangle ##f } } \raise #3.4 { \teeny \center-column { \lower #1.25 { " > 13" } " #11" } } } > <c e g b-flat f-sharp'>1-\markup { \raise #0.5 { \magnify #1.2 { > \normalsize 7 } } \raise #1.0 \tiny " #11" } > > % Suspended > <c f g>1-\markup { \raise #0.7 { \normalsize "sus" } } > <c f g b-flat>1-\markup { \raise #0.4 { \small "sus" } \raise #0.5 { > \normalsize 7 } } > <c f g b-flat d'>1-\markup { \raise #0.4 { \small "sus" } \raise #1.0 > \small 9 } > <c f g d-flat'>1-\markup { \raise #0.4 { \small "sus" } \raise #1.2 { > \teeny " " \tiny \flat \tiny "9" } } > <c f g b-flat d-flat'>1-\markup { \raise #0.4 { \small " sus" } \raise > #0.5 { \normalsize 7 } \raise #1.0 \small " b9" } > <c f g-flat>1-\markup { \raise #0.4 { \small " sus" } \raise #1.2 { > \teeny " " \tiny \flat \small 5 } } > <c f g-flat b-flat d-flat'>1-\markup { \raise #0.4 { \small " sus" } > \raise #0.5 { \normalsize 7 } \raise #1.0 \small " b5" \raise #1.0 \small " > b9" } > <c e g-flat b-flat d-flat' f' a-flat'>1-\markup { > \raise #0.5 { \normalsize 11 } > \raise #6.5 { > \magnify #0.5 \teeny \center-column { > \lower #3.6 " b5" > \lower #1.5 " b9" > "b13" > } > } > } > } > flamingChordExceptions = #(append (sequential-music-to-chord-exceptions > flamingChordNames #t) ignatzekExceptions) > > > > HTH, > > Elaine Alt > 415 . 341 .4954 "*Confusion is > highly underrated*" > ela...@flaminghakama.com > Producer ~ Composer ~ Instrumentalist ~ Educator > > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- > <https://lists.gnu.org/mailman/listinfo/lilypond-user> > > _______________________________________________ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user >
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user