Hi Dirck,

On Fri, Apr 5, 2024 at 5:36 PM Dirck Nagy <[email protected]> wrote:

> Hello Michael!
>
> First of all, thank you for your patience!  I don't have much computer
> code experience, so i apologize if i am asking questions that are obvious
> to most others.
>
> This custom header looks like the most promising solution, but I had a
> couple problems:
>
>
>      1. The link you sent doesnt work; i cant find anything called
> "default header block" in the lilypond manuals.  Could you re-send, please?
>

The link I sent wasn't actually a web link - it was referring to a file
that will be on your hard drive as part of LilyPond itself. However, the
relevant section of the documentation would be section 3.3 of the Notation
Reference:
https://lilypond.org/doc/v2.25/Documentation/notation/titles-and-headers
for the 2.25 development series, or
https://lilypond.org/doc/v2.24/Documentation/notation/titles-and-headers
for the 2.24 non-development series.
To locate the file I referred to, you'll need to find where LilyPond is
installed on your system. The path I gave in my earlier email was a partial
file path, omitting the first section as that part will vary depending on
your specific installation. On my system, I have a general lilypond
directory in my home directory. All the different versions of lilypond just
get dropped into that directory. So, for the latest development version of
LilyPond (that's 2.25.14) the full path for my particular installation to
the file I referenced is:
/home/michael/lilypond/lilypond-2.25.14/share/lilypond/2.25.14/ly/
titling-init.ly

   2.  I couldnt get the examples.  I'm sure this is due to my
> misunderstanding of basic concepts, so could i ask you to send the complete
> lilypond file for the example you sent?  This way, I could paste it into an
> empty document.
>

Sure can. Here goes:

\version "2.25.14"  % Can also be changed to ...
% \version "2.24.3"  % ... or whichever version you use

\paper {
  bookTitleMarkup = \markup {
    \override #'(baseline-skip . 3.5)
    \column {
      \fill-line { \fromproperty #'header:dedication }
      \override #'(baseline-skip . 3.5)
      \column {
        \fill-line {
          \huge \larger \larger \bold
          \fromproperty #'header:title
        }
        \fill-line {
          \large \bold
          \fromproperty #'header:subtitle
        }
        \fill-line {
          \smaller \bold
          \fromproperty #'header:subsubtitle
        }
        \fill-line {
          \fromproperty #'header:poet
          { \large \bold \fromproperty #'header:instrument }
          \fromproperty #'header:composer
        }
        \fill-line {
          \fromproperty #'header:meter
          \fromproperty #'header:arranger
        }
        \fromproperty #'header:scordatura  %  <-- This line is what defines
the custom header
      }
    }
  }
}


\header {
  title = "Example Title"
  composer = "Composer here"
  poet = "Poet here"
  arranger = "Arranger here"
  meter = "Meter here"
  scordatura = \markup { \override #'(baseline-skip . 2.75)  % Adjust this
value ...
                         \fontsize #-1.5                     % ... and this
one as needed
                         \column { \line { \circle "6" "= D" }
                                   \line { \circle "5" "= G" } } }
}

\score {

  \new Staff {
    \new Voice {
      c''1 d''1
    }
  }

}

The bookTitleMarkup block can be changed just as much or as little as you
desire. It's basically just a block of markup. Something like this (adding
a single custom header) is just scratching the surface. If you wanted, you
could completely redefine the entire header section, to make it completely
your own. Another part of just how configurable LilyPond can be. The
learning curve can be a bit steep at times, but I think it's well worth it.
-- 
Michael

Reply via email to