Am Mittwoch, 7. August 2024, 06:53:02 MESZ schrieb Lucas Cavalcanti:
> Hello. I'm migrating from Guitar Pro to Lilypond and I'm trying to
> replicate something that I've always done in my scores and lead sheets:
> [image: image.png]
> I'm having a bit of a pickle while trying to recreate this score,
> especially because of two factors:
> 1. Lilypond's way of writing percent repeats.
> 2. The frequent/periodical time signature changes (6/4 to 5/4).
> 
> Is there a way to make a score that looks like this?
> 
> Best regards,
> Lucas

Hello Lucas,

first let’s write out your score:

\new TabStaff \with {
  \tabFullNotation
} \relative {
  \time 6/4
  e,8 e e d'\5 e, e c' d\5 f d c d\5
  \time 5/4
  e, e e d'\5 e, e f' d f g\4
}

Now how do we get percent repeats? We can simply do \repeat percent count ...:

\new TabStaff \with {
  \tabFullNotation
} \relative {
  \repeat percent 2 {
    \time 6/4
    e,8 e e d'\5 e, e c' d\5 f d c d\5
    \time 5/4
    e, e e d'\5 e, e f' d f g\4
  }
}

But note how this does not apply the time changes. So we need to specify them 
ourselves:

\new TabStaff \with {
  \tabFullNotation
} \relative {
  \after 4*11 \time 6/4
  \after 4*17 \time 5/4
  \repeat percent 2 {
    \time 6/4
    e,8 e e d'\5 e, e c' d\5 f d c d\5
    \time 5/4
    e, e e d'\5 e, e f' d f g\4
  }
}

So how do we get repeats? In simple cases we can use \repeat volta count ... 
and \alternative for the voltas. Now here this is a bit complicated, as 
essentially the first alternative is actually a repeat.

So instead of using \repeat percent we’ll need to manually place the Percent 
repeat signs:

makeDPercent =
#(define-music-function (duration) (ly:duration?)
   "Make a double percent repeat of given duration."
   (make-music 'DoublePercentEvent
               'length (ly:duration-length duration)))

\new TabStaff \with {
  \tabFullNotation
} \relative {
  \repeat volta 4 {
    \time 6/4
    e,8 e e d'\5 e, e c' d\5 f d c d\5 |
    \time 5/4
    e, e e d'\5 e, e f' d f g\4 |
    \alternative {
      {
        \time 6/4
        \after 1. \time 5/4
        \makeDPercent 4*11
      }
      {
        \time 6/4
        e, e e d'\5 e, e c' d\5 f d c d\5~ |
        \time 5/4
        d1*5/4\5
      }
    }
  }
  \section
}

Cheers,
Valentin

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to