Thank you for this!

I forgot to mention one other limitation of using TextSpanner. As far as I 
know, adjacent TextSpanner objects can’t be aligned horizontally, so attempting 
something like this—

→ s.p. → ord.

—results in the “→ ord.” above the “→ s.p.”. I’ve included a test program 
showing this. Do you know of a workaround for this?

Thanks again!
Nate

\version "2.25.5"

\include "transitionSpanner.ily"

{
  \once \transitionSpanner "" "s.p."
  1\startTextSpan
  \once \transitionSpanner "" "ord."
  1\stopTextSpan \startTextSpan
  1\stopTextSpan
}

ordinario = #(make-dynamic-script (markup #:normal-text #:whiteout "ord."))
sulPont = #(make-dynamic-script (markup #:normal-text #:whiteout "s.p."))

\score {
  \new Staff="strings" {
    <<
      \new Bowing \with { alignAboveContext = "strings" } {
        s1 \tweak minimum-length #10 \>
        s \sulPont \tweak minimum-length #10 \>
        s \ordinario
      }
      { 1 1 1 }
    >>
  }

  \layout {
    \context {
      \Dynamics
      \name Bowing
      \alias Dynamics
      crescendoSpanner = #'text
      decrescendoText = \markup { }
      decrescendoSpanner = #'text
      \override DynamicTextSpanner.bound-details.right.arrow = ##t
      \override DynamicTextSpanner.style = #'line
      \override DynamicTextSpanner.whiteout = ##t
    }
    \inherit-acceptability Bowing Dynamics
  }
}


> On Jun 20, 2023, at 6:49 AM, Mark Knoop <m...@opus11.net> wrote:
> 
> Hi Nate,
> 
> At 06:31 on 20 Jun 2023, Nate Whetsell wrote:
>> Hi,
> 
>> I’m trying to figure out the “right” (most flexible, best looking) way
>> to put bow positions like sul pont and sul tasto (really their
>> abbreviations s.p. and s.t.) above a staff with transition arrows,
>> like in Gould’s Behind Bars p. 407. Here are some things I’ve tried:
> 
>> • Use a TextSpanner
>> (https://lilypond.org/doc/Documentation/notation/line-spanners), as
>> suggested at
>> https://lists.gnu.org/archive/html/lilypond-user/2017-12/msg00347.html.
>> This has the advantage of being relatively simple to use. Some
>> disadvantages are that the text at the ends of the arrow tends to be
>> misaligned (although this can be fixed with some hacks), and the
>> line-breaking behavior can produce unreadable results.
> 
> I've generally come to the conclusion that TextSpanner is the most
> flexible solution for this. My custom function include file is attached
> - it contains some examples at the bottom (commented out by default). I
> think the text alignments are fixed. I'm not sure what problems you're
> having with line-breaking - perhaps the list can help with those?
> 
> Regards,
> 
> Mark
> <transitionSpanner.ily>
> --
> Mark Knoop

Reply via email to