lilypond-user
[Top][All Lists]
Advanced

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

arranger.ly (new library)


From: Gilles Thibault
Subject: arranger.ly (new library)
Date: Fri, 23 Oct 2020 02:03:44 +0200
User-agent: Webmail Free/1.3.3

I have been using a Lilypond library called "arranger.ly" for several years. It has made it much easier for me to create arrangements for large ensembles and it is time for me to share this new approach with the community.

What I call "arrangement" here is for example the transcription for Concert Band (winds + percussions) of a piece intended for a symphony orchestra. The arrangement has the peculiarity that you don't know at the beginning, what each instrument will play ! Just a few ideas here and there: theme1 to a set of instruments, theme2 to another set instruments etc..., and between these great guiding ideas, you try to complement in the most suitable way the music that remains with the other instruments available.

Arranger.ly breaks the usual linear method of data entry (measure by measure, instrument by instrument) and allows us to work, as our ideas come to mind:
  "Insert theme1 at bar 5 to clarinets 1 2 3 and alto saxophones 1 2"
and, if theme1 is to high for the range of an alto saxophone between bar 10 and 15 : "(Please) transpose now an octave lower the alto saxophones 1 2 from bar 10 to bar 15"

At the beginning of his work, user has only 2 things to do :
1) declare a variable named "global" with all the timing infos of the piece
     ex: global = { \time 4/4
                    \partial 4 s4
                    s1*10
                    \time 5/8
                    s8*5*20 }
arranger.ly uses bar numbers as locating system of musical positions, and needs these infos to translate this system to Lilypond system, based on moments.

  2) declare all the instruments of your score in a list:
     all = #'(flI flII oboe clI clII clIII clB altoI altoII ...)
     and initialize it by the function: init
     #(init all)

Now, at this state, all your instruments are filled by MultiMeasureRests (+ here a rest), as if you had entered :
   flI = { r4 R1*10 R8*5*20}
   flII = { r4 R1*10 R8*5*20}  % etc...

You can then use all the functions provided by arranger.ly. In one shot, you can for example, insert a music into several instruments or in several places, or even copy out an entire section of music. There is a list, classified by topic, of all provided functions in page 1 and 2 of the doc (quick access here:
   http://gillesth.free.fr/Lilypond/arranger-docs/arrangerDoc-en.pdf   )
Please note that arranger.ly functions are 100% scheme (just a warning for scheme refractories).

If you want to see arranger.ly working in "real life", there is a tutorial in the directory: TUTO of the project. It proceeds in steps. You go from one step to the next in the NOTES.ily file, by adding a comment: % where indicated, and then by re-compiling the SCORE.ly file. For the understanding of what is done, I strongly advise to download the conductor of the original piece: the second movement of the BORODINE's Polovtsian Dances. If the laws of your country allow it, you can get it here:
    http://imslp.org/wiki/Special:ImagefromIndex/22928
    (you have to wait about 15 seconds).
    the 2nd movement is from page 9 to 20

arranger.ly is intended for Lilypond 2.20, but should work under 2.21, and even the latest versions of 2.19.

Thank you for reading.
Happy exploring.
Many thanks to the French list for its constant help and support.


%%%%%%%%%%%% links

The GitHub link of the project:
  https://github.com/gilles-th/arranger.ly
Direct link:
   http://gillesth.free.fr/Lilypond/arranger-GIT-copy/arranger.ly.zip

--
Gilles



reply via email to

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