lilypond-user
[Top][All Lists]
Advanced

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

Re: general question for composers


From: H. S. Teoh
Subject: Re: general question for composers
Date: Tue, 22 Nov 2016 13:55:45 -0800
User-agent: NeoMutt/20160910 (1.7.0)

On Fri, Nov 18, 2016 at 01:18:53PM -0800, Tobin Chodos wrote:
>    hi all,
> 
>    this is a general question for composers using lilypond.  at what
>    point in your process do you generally start engraving?  Like most
>    composers coming from the consumer notation softwares, I'm
>    accustomed to working in pencil first, but not to completely
>    separating the engraving and composition tasks.  Curious about
>    composer perspectives about this with lilypond.  are there
>    strategies for working with a lilypond file while still composing?
[...]

I usually sketch on paper or in my head when I get an initial idea, but
I start inputting things into lilypond quite early on.  However, instead
of inputting the full score right from the get-go, what I do is to use
multiple \score{} blocks for working out various separate passages,
possible harmonizations, etc., just to be able to visually work out some
of the details, listen to the MIDI approximation, etc..

Once I am confident enough with these "lilypond sketches", I set aside
the input file(s) and begin the "real" score as a different (set of)
input file(s). The original worked out passages are either copy-n-pasted
or retyped into the new file(s); quite often I would get new ideas in
the process and may diverge from the initial lilypond sketches. But
having them still available as other input files allows easier
consultation with my original ideas and copy-n-pasting if/when I decide
to.  So I'd say I begin typing lilypond input quite early in the
composing process, which may or may not be a good idea, but at least I
find it helpful to be able to see the score early on and to take
advantage of the computer's editing functions (i.e., change notes
without needing to rewrite an entire staff or system or even page).

Of course, lilypond input being what it is, certain editing functions
are more troublesome than others; e.g., inserting/deleting bars from the
middle of the piece can involve a lot of grunt work.  I heard that
Frescobaldi(?) is supposed to ease a lot of this grunt work, but I still
prefer working directly with the plain text files.  To that end, I find
it very helpful to have a consistent, very rigid structure to my
lilypond files -- even though lilypond does allow very flexible input
syntax, in large complex pieces this quickly becomes unmanageable.

So I impose upon myself a certain format, such as having no more than 1
bar per input line, grouping bars into "stanzas" of 4 bars each,
delimited by a blank line, prepending passages with a unique comment
header such that it's easy to jump to a specific passage just by
searching for that unique string. I also use bar checks '|' both at the
beginning *and* end of every bar, which is redundant, of course, but
does serve the useful purpose of visually indicating the start and end
of a bar (esp. in complex pieces where a bar may span multiple lines) so
that I can easily identify a bar with just a glance. It makes counting
groups of bars much easier, and less confusing to find things in the
middle of a bar.

In multi-instrument works, I found it too troublesome to keep each
instrument part to a separate file -- I spend too much time switching
between files and trying to figure out where things are in each file,
and keeping a large number of files in sync.  Instead, I keep everything
in a single file with each instrument's part in a uniquely named
variable (e.g., violinIPart, violinIIPart, trumpetIPart, trumpetIIPart,
etc.), and navigate by using my editor's search function for that unique
part name, and then the section header string, which is duplicated
consistently across all parts (even if they consist of just rests /
spacers).  Some amount of effort is required to keep all these markers
in sync with each other, but in my experience I find that they save a
lot more time when navigating the input file, than it takes to maintain
them.

True, inserting a bar here or there would require updating every
instrument part manually, but in theory if I keep to a consistent,
strict layout then I could probably write an editor script for
performing such operations.  Originally, I thought of assigning each
passage to its own variable, so that I can add new bars to a passage
without disrupting subsequent passages, but in the end it was too
complex and messy to keep everything in sync (and to remember new names
for passages or invent a system for keeping them straight), so I stuck
with one variable per instrument part under a consistent naming scheme.

When I need to insert an extensive passage in the middle of a piece,
sometimes it's easier to do it in reduced score in a separate lilypond
input file until I work out exactly the right number of bars it would
need, before actually updating each instrument in the main input file
with the right number of spacers / filler bars that eventually will get
filled with the new notes. That way I know exactly how many rests to
insert in each instrument part. (I always insert rests/spacers first
when inserting new bars, so that I can do a lilypond run and make sure
all the parts are still correctly aligned before actually writing in the
new notes. It sounds troublesome but saves much more time than would
have been spent cleaning up later when things go wrong.)


T

-- 
Life is unfair. Ask too much from it, and it may decide you don't deserve what 
you have now either.



reply via email to

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