Hi Kim,

Am 03.07.25 um 02:32 schrieb Kim Cascone:

% not sure if cadenza mode can be used with polymetric? and if so, how that would work

Yes, this should "just work". The price you have to pay for this to work is that you have to enter your bar lines manually, but maybe that's preferable to calculating the numbers in "\time 43/8" by hand anyway.

any help as to how to create equal-length measurescontaining arbitrary note time values would be appreciated

You can do the following - but it's not completely trivial to optimise spacing if the automatic result is dissatisfactory.

Note that my code needs a current development version of LilyPond to run: The infrastructure for dealing with musical lengths changed a bit in the 2.25 series, and I wanted to make sure the code works with up-to-date LilyPond. If it's not possible for you to switch to a recent 2.25.xx, it's no problem to re-write the code in legacy LilyPond.

Lukas



\version "2.25.27"
\language "english"

\header {
  title = "Pollen & Fragments"
  subsubtitle = "section one"
  composer = "Kim Cascone"
  tagline = \markup {
    \line { \italic "Engraved at Silent Records July 2025" }
  }
}

\paper {
  #(set-paper-size '(cons (* 17 in) (* 11 in)))
  indent = 20
  top-margin = 8\mm
  bottom-margin = 8\mm
  left-margin = 10\mm
  right-margin = 10\mm
  ragged-right = ##f
}

global = {
  \omit Staff.KeySignature
  \omit Staff.TimeSignature
  \omit Staff.Stem
}

stretchToLength =
#(define-music-function (len mus) (positive-musical-length? ly:music?)
   (ly:music-compress mus (/ (ly:make-moment (musical-length->number len))
                             (ly:music-length mus))))

myLength = 1 % the precise choice subtly influences the spacing

\layout {
  \enablePolymeter
}

newBar = \bar "|"

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% SECTION 1 of 3

\relative c' <<
  \new Staff
  \with { instrumentName = "euphonium" }
  \stretchToLength \myLength
  {
    \global
    \cadenzaOn
    d'1 b!1 d,1
    \bar "|."
  }

  \new Staff \with { instrumentName = "tampura" }
  \stretchToLength \myLength
  {
    \global
    \cadenzaOn
    <d d' c'!>1
    \bar "|."
  }

  \new Staff \with { instrumentName = "organ" }
  \stretchToLength \myLength
  {
    \global
    \cadenzaOn
    \newBar
    d1
    \newBar
    g4
    \newBar
    a1
    \newBar
    d,1 b! e f <e b>1 <f b, >1 <b! f>1 <b e,>1 f <b, f' b>1
    \bar "|."
  }

  \new Staff \with { instrumentName = "guitar 1" }
  \stretchToLength \myLength
  {
    \global
    \cadenzaOn
    \newBar
    d1 g'4 a1
    \newBar
    c,4 b!1 c4 d4
    \newBar
    d4 c4 b!4 f!1
    \newBar
    c'4 a4 b!4 d1
    \newBar
    c1 b!4 g4 a1
    \bar "|."
  }
>>

Reply via email to