LilyPond: configuración de diferentes tamaños de pentagrama para diferentes puntuaciones en "2.18"

Estoy seguro de usar different staff sizespara diferentes scoreso al menos partes de libros en LilyPond "2.18.2" .

Aquí hay una pregunta sobre cómo configurar el tamaño del personal globalmente , lo que no resuelve mi problema. La respuesta está vinculada a la solución "2.19" en la que puede usar #(layout-set-staff-size NN)dentro de un \layoutbloque. Esto no funciona en "2.18.2":

\version "2.18.2"

\score {
  \relative c' {
    c4( d e f
    g1) \bar "|."
  }
  \layout {
    #(layout-set-staff-size 24)
  }
}

\score {
  \relative c'' {
    g4( f e d
    c1) \bar "|."
  }
  \layout {
    #(layout-set-staff-size 10)
  }
}

da esta salida:

ingrese la descripción de la imagen aquí

¿ Hay alguna manera de usar diferentes tamaños de personal en "2.18.2"?
estaba bien si pudiera establecer un tamaño de personal individual al menos para un \bookpart {}.

Este no es un problema específico de 2.18. También se porta mal en 2.19. Pude obtener algo de lo que quería usando estos comandos , pero al jugar con varias permutaciones descubrí que esto tampoco se comporta de manera consistente. Así que no voy a publicar una respuesta general todavía, ya que no estoy muy seguro de qué está mal con los comandos internos (y no tengo tiempo ahora para solucionarlo). Pero mientras tanto, tal vez ese enlace pueda ayudar.
@Athanasius acaba de descubrir que layout-set-staff-sizeya se sugiere en los documentos "2.18.2" , no sabía esto ...

Respuestas (1)

Encontré un Fragmento con una función en el Repositorio de Fragmentos de LilyPond (LSR) :

\version "2.18.2"

staffSize = #(define-music-function (parser location new-size) (number?)
  #{
    \set fontSize = #new-size
    \override StaffSymbol.staff-space = #(magstep new-size)
    \override StaffSymbol.thickness = #(magstep new-size)
  #})

\score {
  \new Staff        % default size
  \relative c' {
    c4( d e f
    g1) \bar "|."
  }
  \layout {}
}

\score {
  \new Staff \with { \staffSize #-4 } 

  \relative c'' {
    g4( f e d
    c1) \bar "|."
  }
  \layout {}
}

ingrese la descripción de la imagen aquí

no cambia los tamaños de pentagrama para \bookpartbloques completos, pero cumple su propósito, aunque parece un poco estirado.

Nota: las \with { \staffSize #-4 }necesidades deben agregarse a cada uno \new Staff:

\version "2.18.2"

staffSize = #(define-music-function (parser location new-size) (number?)
  #{
    \set fontSize = #new-size
    \override StaffSymbol.staff-space = #(magstep new-size)
    \override StaffSymbol.thickness = #(magstep new-size)
  #})

melody = \relative c'' {
  \repeat unfold 3 {
    g4( f e d) 
    e2 e
  }
  g8( f e d c d e f)
  g( f e d c d e f)
  g( f e d c2)~
  c1 \bar "|."
}

basscl = \relative c' {
  \clef bass
  \repeat unfold 3 {
    g2 e
    e c
  }
  g1
  d
  f2. c4~
  c1 \bar "|."
}


\score {
  \new StaffGroup \with {
    instrumentName = "minus 4"}
  <<
  \new Staff \with { \staffSize #-4 }
    \melody 
  \new Staff \with { \staffSize #-4 }
    \basscl
  >>
  \layout {}
}

\score {
  \new StaffGroup \with {
    instrumentName = "default"}
  <<
  \new Staff
    \melody 
  \new Staff
    \basscl
  >>
  \layout {}
}

\score {
  \new StaffGroup \with {
    instrumentName = "plus 4"}
  <<
  \new Staff \with { \staffSize #4 }
    \melody 
  \new Staff \with { \staffSize #4 }
    \basscl
  >>
  \layout {}
}

ingrese la descripción de la imagen aquí

también la distancia entre los pentagramas se vuelve más y más pequeña cuanto mayor es la partitura y viceversa. Esto debe ajustarse manualmente. No hay solución ideal en absoluto.