lilypond-user
[Top][All Lists]
Advanced

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

Re: ottavation duplicates text after \break


From: Thomas Morley
Subject: Re: ottavation duplicates text after \break
Date: Thu, 25 Dec 2014 02:31:24 +0100

2014-12-24 21:48 GMT+01:00 Jinsong Zhao <address@hidden>:
> Hi there,
>
> For the following snippet,I want the ottavation duplicates text after \break
> to be (8va), how to get that?
>
> \version "2.19.15"
> \relative c'' {
>      c4 \ottava #1
>      \set Staff.ottavation = #"octave"
>      c4 c4 c4 \break
>      c4 c4 c4 c4
> }
>
> Thanks in advance.
>
> Best regards,
> Jinsong


Pity OttavaBracket has no bound-details property, at least not per
default. Though you can set the stencil property to
ly:line-spanner::print and use bound-details then to mimic/adjust
several values.
It's not really convincing, try dotted notes for example.

At least it should do most of what you want:

\version "2.18.2"

myOttava = {
  \override Staff.OttavaBracket.stencil =
     #ly:line-spanner::print
  \override Staff.OttavaBracket.bound-details =
     #`((right
          (attach-dir . 2)
          (Y . 0)
          (text . ,(make-draw-line-markup (cons 0 -0.8))))
        (right-broken
          (attach-dir . 1)
          (padding . 0)
          (text . #f))
        (left
          (attach-dir . -2)
          (Y . 0)
          (stencil-align-dir-y . ,CENTER)
          (text . "octave")
          (stencil-offset -0.5 . 0)
          (padding . 0.75))
        (left-broken
          (attach-dir . 1)
          ;(padding . 2)
          (text . "8va")))
  \override Staff.OttavaBracket.left-bound-info =
     #ly:line-spanner::calc-left-bound-info-and-text
  \override Staff.OttavaBracket.right-bound-info =
     #ly:line-spanner::calc-right-bound-info
}

\relative c''' {
  c1
  c1
  \once \myOttava
  \ottava #1
  c'1
  \break
  c1
  c1
  \ottava #0
  c1
  %% default OttavaBracket:
  \ottava #1
  c1^"Default:"
  \break
  c1
  c1
}


HTH,
  Harm



reply via email to

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