David Kastrup>  Have a \repeat coda command for repeats with coda, and a
\repeat fine command for repeats with fine.
David Kastrup>  I thought that was obvious.  If you find that the problem
description is deficient, please add a comment to the issue.

I have a few observataions.  Not sure if these are coherent enough to be
posted to the issue.


The 3752 issue suggests this format:
\repeat coda 2 { c d e f } \alternatives { { %{coda sign%} ... %{da
capo/segno al coda%} } { %{actual coda%}... } }
\repeat fine 2 { c d e f} \alternatives { { %{fine sign%} ... %{da
capo/segno al fine %} } { %{must be empty%} } }

However, I believe that this understates the amount of complexity of how
large-scale repeats are used in practice.
To start, here are the four simple cases which show the location of music
and marking in pseudocode, using this legend:

  \music
  [symbol or text]
  ||: normal repeat :||
  ||  double bar for clarity
  // score break


D.C. al Fine
              \repeatedMusicB [Fine] \nonRepeatedMusicB [DC]

D.S. al Fine
\musicA Segno \repeatedMusicB [Fine] \nonRepeatedMusicB [DC]


D.C. al Coda
              \repeatedMusicB [Coda] \nonRepeatedMusicB DS // [Coda]
\musicCoda

D.S. al Coda
\musicA Segno \repeatedMusicB [Coda] \nonRepeatedMusicB DS // [Coda]
\musicCoda



Now, where it gets complicated is that often DS/DC occurs within some other
repeats.
(These examples are with Fine, but Segno doesn't add any additional
complexity.)


Coda used like a "3rd ending":
||: \repeatedMusicB [Coda] \voltaMusicOne :|| \voltaMusicTwo ||
\nonRepeatedMusicB [DC] // [Coda] \musicCoda

Coda used like an actual Coda, with no repeats on DC:
||: \repeatedMusicB \voltaMusicOne [Coda] :|| \voltaMusicTwo ||
\nonRepeatedMusicB [DC] // [Coda] \musicCoda

Coda used like an actual Coda, with repeats on DC:
||: \repeatedMusicB \voltaMusicOne :|| \voltaMusicTwo [Coda] ||
\nonRepeatedMusicB [DC] // [Coda] \musicCoda

Coda used similar to "3rd" ending, but in a different location like an
actual Coda, with  after a repeat:
||: \repeatedMusicBOne [Coda] \repeatedMusicBTwo \voltaMusicOne :||
\voltaMusicTwo || \nonRepeatedMusicB [DC] // [Coda] \musicCoda


I am wondering how these could be implemented using the suggested
functional syntax.

It seems like a bigger nut to crack.



On the other hand, I often wonder why we can't have and manipulate object
versions of scores, staves, books, etc.  Here is how it would look using
modern object.property and object.method(argumentList) syntax:


    %  Instead of a score being only markup, allow Lilypond objects to be
objects
    fullScore = \score { ... }

    %  Use object methods to facilitate manipulating scores.
    %  In this case, I envision a "segment" method analagous to a
"substring" function for strings.
    repeatedScore = fullScore.segment(0,measureNumber) ;
    codaScore = fullScore.segment(measureNumber) ;

    %  Now adjust only what properties differ in the coda score
    %  assuming that the object allows access and modification of contained
objects like layout
    codaScore.layout.indent = 2\cm ;
    codaScore.layout.shortIndent = .25\cm ;
    codaScore.layout.context.raggedLast = false ;

    %  Convert back into Lilypond markup using a hypothetical render method
    repeatedScore.render() ;
    codaScore.render() ;




David Elaine Alt
415 . 341 .4954                                           "*Confusion is
highly underrated*"
ela...@flaminghakama.com
self-immolation.info
skype: flaming_hakama
Producer ~ Composer ~ Instrumentalist
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

On Wed, Dec 24, 2014 at 6:18 AM, <lilypond-user-requ...@gnu.org> wrote:

> Send lilypond-user mailing list submissions to
>         lilypond-user@gnu.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://lists.gnu.org/mailman/listinfo/lilypond-user
> or, via email, send a message with subject or body 'help' to
>         lilypond-user-requ...@gnu.org
>
> You can reach the person managing the list at
>         lilypond-user-ow...@gnu.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of lilypond-user digest..."
>
>
> Today's Topics:
>
>    1. Re:Changing the default end-repeat bracket (Thomas Morley)
>    2. Re:Changing the default end-repeat bracket (Thomas Morley)
>    3. Re:Coda ahead of a line of its own (Kieren MacMillan)
>    4. Re:Coda ahead of a line of its own (Federico Bruni)
>    5. Re:Changing the default end-repeat bracket
>       (Pierre Perol-Schneider)
>    6. Re:translation of "divisi lyrics" (Jayaratna)
>    7. Re:Coda ahead of a line of its own (Kieren MacMillan)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 24 Dec 2014 12:27:19 +0100
> From: Thomas Morley <thomasmorle...@gmail.com>
> To: Pierre Perol-Schneider <pierre.schneider.pa...@gmail.com>
> Cc: Jacques Menu <imj-...@bluewin.ch>,  lilypond-user Mailinglist
>         <lilypond-user@gnu.org>
> Subject: Re: Changing the default end-repeat bracket
> Message-ID:
>         <
> cabsfgyuzt6-uycb2szfoubuwtzgadkaoqksp8s_tq5dg3mg...@mail.gmail.com>
> Content-Type: text/plain; charset=UTF-8
>
> 2014-12-10 15:02 GMT+01:00 Pierre Perol-Schneider
> <pierre.schneider.pa...@gmail.com>:
> > 2014-12-10 14:47 GMT+01:00 Jacques Menu <imj-...@bluewin.ch>:
> >
> >>
> >> IMHO, it could be in the notation manual.
> >
> >
> > Added to the LSR with a "docs" tag  :
> http://lsr.di.unimi.it/LSR/Item?id=964
> >
> > Cheers,
> > Pierre
>
>
>
> Hi Pierre,
>
> I had a look in said snippet and stumbled across the added override:
> \once\override Score.VoltaBracket.X-offset = #.9
> Deleting that line and compiling the code with 2.18.0 and 2.19.15 on
> my machine returns proper output.
> Deleting that line in the LSR (it runs 2.18.0 as well) shows some
> collision.
> No idea whats going on.
>
> In any case the correct override would be:
> \once\override Score.VoltaBracket.shorten-pair = #'(1 . -1)
>
> Though again, I've no clue why it's needed in the LSR, and only in the
> LSR, at all.
>
> Therefore I can't approve it, at least not with a docs-tag
>
> Cheers,
>   Harm
>
>
>
> ------------------------------
>
> Message: 2
> Date: Wed, 24 Dec 2014 13:04:21 +0100
> From: Thomas Morley <thomasmorle...@gmail.com>
> To: Pierre Perol-Schneider <pierre.schneider.pa...@gmail.com>
> Cc: Jacques Menu <imj-...@bluewin.ch>,  lilypond-user Mailinglist
>         <lilypond-user@gnu.org>
> Subject: Re: Changing the default end-repeat bracket
> Message-ID:
>         <
> cabsfgywi6acmdcaqqhf76sxszyk+5x-mihu0cfjaqzju6w1...@mail.gmail.com>
> Content-Type: text/plain; charset=UTF-8
>
> 2014-12-24 12:27 GMT+01:00 Thomas Morley <thomasmorle...@gmail.com>:
> > 2014-12-10 15:02 GMT+01:00 Pierre Perol-Schneider
> > <pierre.schneider.pa...@gmail.com>:
> >> 2014-12-10 14:47 GMT+01:00 Jacques Menu <imj-...@bluewin.ch>:
> >>
> >>>
> >>> IMHO, it could be in the notation manual.
> >>
> >>
> >> Added to the LSR with a "docs" tag  :
> http://lsr.di.unimi.it/LSR/Item?id=964
> >>
> >> Cheers,
> >> Pierre
> >
> >
> >
> > Hi Pierre,
> >
> > I had a look in said snippet and stumbled across the added override:
> > \once\override Score.VoltaBracket.X-offset = #.9
> > Deleting that line and compiling the code with 2.18.0 and 2.19.15 on
> > my machine returns proper output.
> > Deleting that line in the LSR (it runs 2.18.0 as well) shows some
> collision.
> > No idea whats going on.
> >
> > In any case the correct override would be:
> > \once\override Score.VoltaBracket.shorten-pair = #'(1 . -1)
> >
> > Though again, I've no clue why it's needed in the LSR, and only in the
> > LSR, at all.
> >
> > Therefore I can't approve it, at least not with a docs-tag
> >
> > Cheers,
> >   Harm
>
> Found it.
> After discusion
>
> http://lilypond.1069038.n5.nabble.com/Reducing-the-second-VoltaBracketSpanner-length-td161852.html
> I changed my 2.18.0.-version of bar-line.scm
>
> Undoing it returns the collision.
>
> Anyway, I can't approve the snippet as is.
> Correct way would be to approve it _and_ insert a corrected snippet
> into Documentation/snippets/new
> Can't do it myself, currently I've no git running.
>
> Cheers,
>   Harm
>
>
>
> ------------------------------
>
> Message: 3
> Date: Wed, 24 Dec 2014 07:48:53 -0500
> From: Kieren MacMillan <kieren_macmil...@sympatico.ca>
> To: Federico Bruni <fedel...@gmail.com>, Johan Vromans
>         <jvrom...@squirrel.nl>
> Cc: Lilypond-User Mailing List <lilypond-user@gnu.org>
> Subject: Re: Coda ahead of a line of its own
> Message-ID: <blu436-smtp8c90bf96774e7f19c94a694...@phx.gbl>
> Content-Type: text/plain; charset="windows-1252"
>
> Hi Johan, Federico, et al.,
>
> >> As far as I know, coda en segno are often (mostly?) used to break the
> >> structure of a piece of music beyond the capabilities of repetition
> loops.
>
> No? it's precisely the same structure as a ?regular? long repeat.
> The only difference is how the break is handled from an engraving
> perspective (i.e., new line or blanked staff, symbols above and/or below
> the staff/system at various points, etc.)
>
> > I had the same thought when I read the issue, but I thought it was just
> me...
>
> >> I'd love to see some use cases of this hypothetical coda and fine
> \repeats.
>
> Did you even look at the previously-linked issue page? <
> https://code.google.com/p/lilypond/issues/detail?id=3752>
> David K helpfully provided several examples (= use cases).
>
> Cheers,
> Kieren.
> _______________________
>
> Kieren MacMillan, composer
> www:  <http://www.kierenmacmillan.info>
> email:  i...@kierenmacmillan.info
>
>
>
>
> ------------------------------
>
> Message: 4
> Date: Wed, 24 Dec 2014 14:04:43 +0100
> From: Federico Bruni <fedel...@gmail.com>
> To: Kieren MacMillan <kieren_macmil...@sympatico.ca>
> Cc: Lilypond-User Mailing List <lilypond-user@gnu.org>
> Subject: Re: Coda ahead of a line of its own
> Message-ID:
>         <CAPjDBpr4tAgp0CXtRbcG4Gyn=
> sm7vachd0rsgh2gsfm1dwy...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> 2014-12-24 13:48 GMT+01:00 Kieren MacMillan <kieren_macmil...@sympatico.ca
> >:
>
> > >> I'd love to see some use cases of this hypothetical coda and fine
> > \repeats.
> >
> > Did you even look at the previously-linked issue page? <
> > https://code.google.com/p/lilypond/issues/detail?id=3752>
> > David K helpfully provided several examples (= use cases).
>
>
> Of course I did.
> I don't understand why coda sign and fine sign are in first alternative.
> I'd expect to see them at the end.
> Just added a comment and a link to the issue.
>
> But I don't want to bother you :-)
> As long as the issue is clear for those who want to work on it I'm fine.
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> http://lists.gnu.org/archive/html/lilypond-user/attachments/20141224/7107c060/attachment.html
> >
>
> ------------------------------
>
> Message: 5
> Date: Wed, 24 Dec 2014 14:11:16 +0100
> From: Pierre Perol-Schneider <pierre.schneider.pa...@gmail.com>
> To: Thomas Morley <thomasmorle...@gmail.com>
> Cc: Jacques Menu <imj-...@bluewin.ch>,  lilypond-user Mailinglist
>         <lilypond-user@gnu.org>
> Subject: Re: Changing the default end-repeat bracket
> Message-ID:
>         <
> caphotuxk-upx0ss3f3a3+lotpx6yon7mtjc8iovg0lpwug5...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Ok Harm.
> Thanks for pointing that out.
> Cheers,
> Pierre
>
> 2014-12-24 13:04 GMT+01:00 Thomas Morley <thomasmorle...@gmail.com>:
>
> > 2014-12-24 12:27 GMT+01:00 Thomas Morley <thomasmorle...@gmail.com>:
> > > 2014-12-10 15:02 GMT+01:00 Pierre Perol-Schneider
> > > <pierre.schneider.pa...@gmail.com>:
> > >> 2014-12-10 14:47 GMT+01:00 Jacques Menu <imj-...@bluewin.ch>:
> > >>
> > >>>
> > >>> IMHO, it could be in the notation manual.
> > >>
> > >>
> > >> Added to the LSR with a "docs" tag  :
> > http://lsr.di.unimi.it/LSR/Item?id=964
> > >>
> > >> Cheers,
> > >> Pierre
> > >
> > >
> > >
> > > Hi Pierre,
> > >
> > > I had a look in said snippet and stumbled across the added override:
> > > \once\override Score.VoltaBracket.X-offset = #.9
> > > Deleting that line and compiling the code with 2.18.0 and 2.19.15 on
> > > my machine returns proper output.
> > > Deleting that line in the LSR (it runs 2.18.0 as well) shows some
> > collision.
> > > No idea whats going on.
> > >
> > > In any case the correct override would be:
> > > \once\override Score.VoltaBracket.shorten-pair = #'(1 . -1)
> > >
> > > Though again, I've no clue why it's needed in the LSR, and only in the
> > > LSR, at all.
> > >
> > > Therefore I can't approve it, at least not with a docs-tag
> > >
> > > Cheers,
> > >   Harm
> >
> > Found it.
> > After discusion
> >
> >
> http://lilypond.1069038.n5.nabble.com/Reducing-the-second-VoltaBracketSpanner-length-td161852.html
> > I changed my 2.18.0.-version of bar-line.scm
> >
> > Undoing it returns the collision.
> >
> > Anyway, I can't approve the snippet as is.
> > Correct way would be to approve it _and_ insert a corrected snippet
> > into Documentation/snippets/new
> > Can't do it myself, currently I've no git running.
> >
> > Cheers,
> >   Harm
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> http://lists.gnu.org/archive/html/lilypond-user/attachments/20141224/c1ff19a4/attachment.html
> >
>
> ------------------------------
>
> Message: 6
> Date: Wed, 24 Dec 2014 07:06:34 -0700 (MST)
> From: Jayaratna <jayara...@gmail.com>
> To: lilypond-user@gnu.org
> Subject: Re: translation of "divisi lyrics"
> Message-ID: <1419429994857-169678.p...@n5.nabble.com>
> Content-Type: text/plain; charset=us-ascii
>
> Maybe something like 'testi alternativi', but I'm sure you could find
> something better.
>
>
>
> --
> View this message in context:
> http://lilypond.1069038.n5.nabble.com/translation-of-divisi-lyrics-tp169671p169678.html
> Sent from the User mailing list archive at Nabble.com.
>
>
>
> ------------------------------
>
> Message: 7
> Date: Wed, 24 Dec 2014 09:17:42 -0500
> From: Kieren MacMillan <kieren_macmil...@sympatico.ca>
> To: Federico Bruni <fedel...@gmail.com>
> Cc: Lilypond-User Mailing List <lilypond-user@gnu.org>
> Subject: Re: Coda ahead of a line of its own
> Message-ID: <blu436-smtp166a5eda9f424b8cf9490ad94...@phx.gbl>
> Content-Type: text/plain; charset="windows-1252"
>
> Hi Federico,
>
> > I don't understand why coda sign and fine sign are in first alternative.
> I'd expect to see them at the end.
>
> The \repeat function needs to know two things:
>   (1) where to put the various visual bits; and
>   (2) how to unfold the repeats if the part (or midi) is being written out.
>
> In the example you linked to (page 23, first score), we have structurally
>
>   { 1m } { ? + 3m + ?to Coda ?? } { 2m + ?D.S. al coda? + || } { '? coda?
> + 2m + .| }
>
> where ? is the standard D.S. symbol, ? is the standard coda symbol, ?m?
> stands for measures of music, and the other symbols are the various
> barlines.
>
> So the suggested repeat structure would be
>
>   \repeat segnocoda { 1m } \alternatives { { 3m } { 2m } { 2m } }
>
> which is essentially exactly what David K has on the issue page.
>
> Does that make sense now?
> If not, please ask a specific question, as I?m not clear on what you don?t
> understand.
> If it *does* make sense to you, but you think it?s an inferior solution,
> please point out why and suggest an alternative which in your opinion
> solves the problem(s).
>
> All the best,
> Kieren.
>
> _______________________
>
> Kieren MacMillan, composer
> www:  <http://www.kierenmacmillan.info>
> email:  i...@kierenmacmillan.info
>
>
>
>
> ------------------------------
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
>
> End of lilypond-user Digest, Vol 145, Issue 96
> **********************************************
>
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to