On some projects, I use this method:Make the number a rehearsal mark. In the layout block:\override Score.RehearsalMark.X-extent = ##f\override Score.RehearsalMark.Y-extent = ##f\override Score.RehearsalMark.X-offset= #?\override Score.RehearsalMark.Y-offset= #?Create a scheme music definition for each page (useful for slides) which includes the rehearsal mark. The result, for me, is a number that prints on every page and immune from pushing around, or being pushed around by...other grobs. Sorry, away from my computer now, can't send an actual example. Sent from my Verizon, Samsung Galaxy smartphone -------- Original message --------From: Michael Werner <reznae...@gmail.com> Date: 12/28/23 6:15 AM (GMT-06:00) To: Kris Van Bruwaene <kr...@yahoo.co.uk> Cc: lilypond-user@gnu.org Subject: Re: How to put a big number in the upper left or right corner of a score? Hi Kris,On Mon, Aug 28, 2023 at 4:44 AM Kris Van Bruwaene <kr...@yahoo.co.uk> wrote:(Lilypond version 2.24.1, Guile 2.2).
What is the easiest way to put a big number (e.g. font size 4 bold) in the upper left or right corner of a score? In previous versions I used to manage this with a double header, one in \book and one in \score, and faking a second "poet" (left corner) or "composer" (right corner), but this does not seem to work any more, at least not the way it used to. Moreover it isn't a very "clean" solution. Something like a regular (but huge) page number would be better.If this is something you'll want on a regular basis I'd do a custom header. They're pretty simple to define - I've got one I use for a score version. I used to use either subtitle or subsubtitle, but ran into enough cases where I actually had need of both that I finally just defined my own header to use. It goes into a \paper block, defined before the \header block where you want to use it. For the docs seehttps://lilypond.org/doc/v2.24/Documentation/notation/custom-titles-headers-and-footersThe part about defining your own is about half way down. The entry in the \paper block for this would be something like:bookTitleMarkup = \markup { \sans { \override #'(baseline-skip . 3.5) \column { \fill-line { \null \null \fontsize #4 \bold \fromproperty #'header:bignumber } \fill-line { \fromproperty #'header:dedication } \override #'(baseline-skip . 3) % default 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 { { \smaller \fromproperty #'header:poet } { \bold \fromproperty #'header:myscoreversion } { \smaller \fromproperty #'header:composer } } \fill-line { { \smaller \fromproperty #'header:meter } { \large \bold \fromproperty #'header:instrument } { \smaller \fromproperty #'header:arranger } } } } }}In this case a new header field called bignumber is defined on the fifth line, placed at the very top of the header block, in the top right corner. If you want it in the top left corner, change that line to:\fill-line { \fontsize #4 \bold \fromproperty #'header:bignumber \null \null }(BTW, Lilypond's default for this block is in titling-init.ly) In this block you can adjust the order and placement of all the headers, not just your own custom ones. In this example, I've also added myscoreversion (the one I mentioned earlier), put it where the instrument header used to be, and moved instrument down a line centered between meter and arranger (a spot left blank in the default).To use your newly defined custom header, you set it just like any other header:\header { title = "Title Goes Here" bignumber = "42" composer = "Written by Somebody" subtitle = "Random subtitle"}Also, as this is now a defined header entry, it can be used just like any other header entry, such as in subsequent page headers:oddHeaderMarkup = \markup \sans { \fill-line { \unless \on-first-page \fontsize #4 \bold \fromproperty #'header:bignumber \unless \on-first-page \fromproperty #'header:title \unless \on-first-page \fromproperty #'page:page-number-string }}Granted, this all winds up being a fair sized chunk of code. But it's easy enough to just save it all off into an include file, where it's out of the way but accessible.-- Michael