lilypond-user
[Top][All Lists]
Advanced

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

Re: scheme code generate variable series with leading "\"


From: David Kastrup
Subject: Re: scheme code generate variable series with leading "\"
Date: Mon, 08 Aug 2016 14:12:24 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

MING TSANG <address@hidden> writes:

> Dear lilyponders:I do not know scheme code. Can scheme code to
> generate variable series with leading "\"?Detail question in the lily
> file attachment.Thank you for any help.Immanuel,Ming.

\version "2.19.46"
\language "english"

\header {
  title = "感谢一生有祢"
  subtitle = "Thank You For Being In My Life"
  composer = "曲詞 : 陳玉彬"
}

\layout {
  \context {
    \Voice
    \consists "Melody_engraver"
    \override Stem #'neutral-direction = #'()
  }
}

global = {
  \key c \major
  \numericTimeSignature
  \time 4/4
  \partial 4
  \tempo 4=76
}


mel.0 = { <>^\markup{\box\bold"Verse"} g8 8 |}
mel.1 = { c'8. 16~8 b d' c'~8 b~ |}
mel.2 = { b8 a'8~4 r8 g'8 8 8 |}
mel.3 = { f'4. e'8 g' a c'8 16 e'16~ | \break }
mel.4 = { e'8 d'~4~4. g'8 |}
mel.5 = { a'4. g'8 4. e'16 f' |}
mel.6 = { g'8 f'16 g'~8 f' e'4. d'8 |}
mel.7 = { c'4 r16 c'16 a c' a'8 e'16 f'~8 g'~ | \break }

expendVar =
#(define-music-function (xx start stop) (list? index? index?)
  #{ #@(map (lambda (i) #{ $xx . #i #}) (iota (- stop start -1) start)) #})

melody =   {
  \global
%{ 
  can the following be generated by Scheme code 
  such as "\expendVar xx 0 7" where xx is the variable "\mel"; 
  "0" is start number and "7 "is the end number.  
%}
  \expendVar \mel 0 7
}



\score {
  <<

    \new Staff { \melody }

  >>
  \layout { }
  \midi { }
}

-- 
David Kastrup

reply via email to

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