lilypond-user
[Top][All Lists]
Advanced

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

Re: command for 'sequences'?


From: David Raleigh Arnold
Subject: Re: command for 'sequences'?
Date: Tue, 02 Oct 2001 12:19:53 -0500

> > decide to add a lot of this type of macro, lily will be too big / slow ?
> >       I don't know how it's work, but can't it be possible too add a second
> > "package" with this type of extra feature ?
> >
> >       In spite of, thank's for this trick.
> >               nemo.
> 
> It's not difficult to add a feature in ly2dvi to first run the
> input files through a preprocessor like m4 or cpp, if there's
> a public demand for it. Adding another macro language within
> Lilypond, on the other hand, sounds like a silly idea.

Absolutely.

*For sequences* you don't want a macro in lilypond, you want a macro in
emacs or a bash script or whatever to run on an .ly file to produce the
necessary notes in the .ly file.  I thought this was discussed before. 
This would also be the best way to implement the sort of easy tablature
that Rune suggested long ago.

\strings ebgdam    % list of open strings which are tab lines from top
to bottom.
\tab { a3 d 2 3 g 2 b 1 }  % a C major scale.  String = letter, number =
fret

This could produce, if there were not chords in the voice(s):

------------------------------
-T---------------------0--1---
-A--------------0--2----------
-B-----0--2--3----------------
----3-------------------------
------------------------------

To write it descending: \tab { b1 b g2 g d3 2 d a3 }

The only problem is to put the numbers on the correct beats, which have
to be grabbed from the voices desired (included in the tab staff), each
for each, up and then right.  That is the programming part.

\tabstaff <
        \tabclef  % bars, volte, etc come from the music
                  % staff or staves, but you need this.
        \strings ebgdam
        \ptA
        \ptB
        \tab { a3 d2 g 2 b 1 }
>

This might produce, if the music began with 3 simultaneous notes
distributed in whatever way between the voices ptA and ptB:

-----------------
-T--------0--1---
-A--0--2---------
-B--2------------
----3------------
-----------------

Understand that the string designations are arbitrary.  This would make
sense on guitar but it could be for anything with strings and frets. 
For Baroque (five course) guitar:

        \strings ebgda

for banjo d tuning:

        \strings dbgpk 

because p looks like d and k sounds like g.  Any unique letter will do. 
For samisen:

        \strings xrv 

or whatever is convenient for the names of the strings in Japanese. 

It is totally counterproductive to put grace notes, ties, slurs or
anything such in the tab, because it would be merely clutter duplicating
what's in the music staff (or staves).  And you ignore rests
completely.  Remember that *Tab is fingering*, not music notation.

Someone who wanted a more limited or cumbersome way of entering the data
could write a macro that would process a .ly file from the score
according to the tuning of the instrument and the fretting, but it
should produce another .ly file.  Nothing like that is necessary to
implement tablature for *any* fretted instrument with *any* tuning in
lilypond.

A script that would write the notation from tab could also be easily
implemented outside lilypond without hacking it.  In fact, that could be
done now, but I don't see the point.  Of course your source would be
somewhat more complicated, and it would amount to nothing more than
substituting the pitch for the string-fret combination.

Making tab for any particular instrument or doing sequences is a
*composition* problem, not a notation problem, and it would be best to
do those with bash or emacs macros or python or whatever floats your
boat first so that the lilypond notes syntax would not be affected in
the final .ly file that is to be processed by ly2dvi or lilypond, or
even to be read by humans.

Even transposition when used for composition rather than for scoring
transposing instruments is better done this way.  Otherwise, you could
be transposing the same parts twice or more times in the same score,
which seems to me to be a very confusing thing.

So can we have the tab now?   Please?   Also fingering in front of notes
is somewhat overdue.  :-)

------------------------------------------------------------
Information is not knowledge.           Belief is not truth.
Indoctrination is not teaching.   Tradition is not evidence.
         David Raleigh Arnold   address@hidden




reply via email to

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