lilypond-devel
[Top][All Lists]
Advanced

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

Da Capos, Codas and Segnos


From: Ian Hulin
Subject: Da Capos, Codas and Segnos
Date: Mon, 15 Feb 2010 17:40:48 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.9.1.7) Gecko/20100111 Lightning/1.0b1 Thunderbird/3.0.1

Hi Frogs and Developers,
This is by way of limbering up for a discussion on the GLISS list when it gets going.

I'm trying to think of all the commoner combinations of Segnos, Codas and Da Capo instructions so maybe we can work out a consistent syntax for addressing what are, after all, variations on the theme of repeat blocks.

Here are the ones I can think of off the top of my head

Da Capo al Fine:

A "Fine" B "Da Capo al Fine" ==> A B A

Dal Sego Al Fine

A "§" B "Fine" C "Dal Segno Al Fine" ==> A B C B

Da Capo Al Coda

A B  "©" C "Da Capo al Coda" "©" D ==> A B C A B D

Dal Segno Al Coda

A
"§" B C "©" D "Dal Segno al Coda" E ==> A B C D B C E

Firstly, can anyone think of any more combinations I may have missed here?

Secondly, what I had in mind was this kind of thing:

  • \dalsegno and \dacapo - both of these start off a segno/dacapo section.  I know it's a bit weird that the \dacapo command would have to be at the start of the score, but I think it would be beneficial in terms of syntax checking.
  • \dalsegno and \dacapo both take a keyword and a music _expression_ as parameters. The keyword is either coda, fine or it is omitted.  If it is omitted it defaults to fine.
  • \fine - checks if a \dacapo or \dalsegno block are current and that the last \dalsegno or \dacapo used a fine keyword.  If so it, generates a double bar and "Fine" markup.
  • \tocoda - checks if a \dacapo or \dalsegno block are current, and that the last \dalsegno or \dacapo used a coda keyword.  If so it generates a double bar and "Al ©" markup. (For © read the coda hot-cross-bun sign).
  • \endDaCapo, \endDalSegno terminate the block.  They firstly check if a block is current, and what kind of keyword was used. If the block was started with a fine keyword, it generates a double bar and a markup "Dal Segno"|"Da Capo" al "Fine"|"Coda", depending on the type of block and the keyword parameter used.
    • If the coda keyword was used a \break is generated and the © markup generated ready for the next music _expression_.
Comments welcome.

Cheers,

Ian

 


reply via email to

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