lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: \uppercase function


From: David Nalesnik
Subject: Re: \uppercase function
Date: Thu, 9 Apr 2015 15:35:36 -0500



On Thu, Apr 9, 2015 at 3:02 PM, Kieren MacMillan <address@hidden> wrote:
Hi David,

> you could just as easily write the following:
>
> \header {
>  myTitle = #"myOtherTitle"
>  title = \markup {
>    from \italic #(string-upcase myTitle)
>  }
> }

Yes, but at that point, why not just write

 \header {
   title = “MY OTHER TITLE"
 }

??  ;)
 
This might prove the least labor-intensive solution :)
 

Here’s the concrete use-case:
1. I have musical theatre pieces with (naturally enough) title case titles, such as “My Lucky Day”.
2. When they’re included in the Piano/Conductor score (or other score from the regular performance materials), the title should remain in title case.
3. When they’re included in a songbook, I’m trying to show the title in the the expected format, which is all-caps (cf. modern Warner-Chappell imprints), e.g., “MY LUCKY DAY”.
4. I want to accomplish this entirely in the stylesheets, and not have to have two different ways of inputting the title in the code/content.

It seems odd to me that it’s so convoluted a process — and apparently so different, depending on whether it’s a string or a property.  =\

To make the title uppercase we have to work with it as a string.  I can't extract the string from the \markup \fromproperty #'header:title statement, presumably because header:title hasn't even been defined yet:

\header {
  title = "myTitle"
  title = \markup \fromproperty #'header:title
  #(format #t "~%is header:title defined? ~a~%~%" (defined? 'header:title))
}
\markup {
  \null
}

%%
David



reply via email to

[Prev in Thread] Current Thread [Next in Thread]