[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Syntax explanations
From: |
Carl D. Sorensen |
Subject: |
Syntax explanations |
Date: |
Wed, 11 Jun 2008 06:22:44 -0600 |
On another thread, Reihnold Kainhofer wrote:
<quote>
What I'm missing anyway is a complete syntax overview for figured bass and for
chords. Something like:
~~~~~~~~~~~~~~
A figured bass entry [TODO: enter correct term...] is of the form
< //number//modifier(s) ... >duration
where number is either a number or _ to indicate an empty number, which still
takes space and displays any modifiers attached to it.
Supported modifiers (multiple modifiers per number are possible):
+ ... Raises the corresponding step (a sharp is shown)
- ... Lowers the corresponding step (a flat is shown)
! ... Forces a natural step (a cancel sign is shown)
\+ ... Augmented step (a plus is shown)
/ ... Diminished step (a forward slash through the number)
\! ... Forces a breaks of any extender assigned to that step
There is no modifier for placing a backward slash through the number
(typically used indicating a raised sixth step).
One or more of the figures can also be placed between square brackets, e.g.
[ //number//modifier(s) //number//modifier(s)], to print square brackets
around these numbers.
Instead of //number//modifier(s), one can also enter a full markup.
~~~~~~~~~~~~~~
</quote>
When I first started working on chords.itely I wrote something like this for
chordmode chords. However, by design we don't do this in the NR.
Although this would be a clear definition of the syntax, the syntax can change
with future versions. Therefore, we try to keep all of the syntax in the
snippets, so convert-ly can update the documentation automatically.
In the past, there has been a call for a full syntax diagram for LilyPond.
Such a diagram should come directly from the parser, IMO. Are there current
plans for developing one? At one time, I wrote a Python routine that generated
a BNF syntax diagram from the parser.
<http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/7431/focus=7443>
Do we want to include it (or some better version, rolled by somebody with more
development capability than me) in the documentation? It seems to me that such
a diagram would be helpful as a place to find out what one could type where.
Carl
P.S. Reinhold, the available chordmode modifiers are shown in a list in the
GDP docs. If the explanation isn't clear, please let me know. Thanks.
- Syntax explanations,
Carl D. Sorensen <=
Re: Syntax explanations, Graham Percival, 2008/06/11
Re: Syntax explanations, Trevor Daniels, 2008/06/12