Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(25)

Issue 144170043: Add chord range to make-part-combine-music (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
9 years, 7 months ago by Dan Eble
Modified:
9 years, 5 months ago
Reviewers:
Keith, dak
CC:
lilypond-devel_gnu.org
Base URL:
http://git.savannah.gnu.org/gitweb/?p=lilypond.git/trunk/
Visibility:
Public.

Description

Issue 4112: Add internal chord-range option to part combiner Add a number-pair parameter to make-part-combine-music to replace the previously hard-coded minimum and maximum intervals that may be combined into a chord or unison in the shared voice. There is no user interface for this enhancement because it is not easy to agree on one, but there is a regression test showing how it might be used at one's own risk.

Patch Set 1 #

Total comments: 4

Patch Set 2 : Improve readability #

Unified diffs Side-by-side diffs Delta from patch set Stats (+47 lines, -18 lines) Patch
A input/regression/part-combine-chord-range.ly View 1 1 chunk +27 lines, -0 lines 0 comments Download
M ly/music-functions-init.ly View 1 chunk +5 lines, -3 lines 0 comments Download
M scm/part-combiner.scm View 1 3 chunks +15 lines, -15 lines 0 comments Download

Messages

Total messages: 22
Dan Eble
I hope this is acceptable for now without a music function. I have other partcombiner ...
9 years, 7 months ago (2014-09-19 02:38:12 UTC) #1
dak
https://codereview.appspot.com/144170043/diff/1/ly/music-functions-init.ly File ly/music-functions-init.ly (right): https://codereview.appspot.com/144170043/diff/1/ly/music-functions-init.ly#newcode1134 ly/music-functions-init.ly:1134: #(define partcombine-chord-range '(0 . 8)) I think that's the ...
9 years, 7 months ago (2014-09-19 11:20:55 UTC) #2
Dan Eble
On 2014/09/19 11:20:55, dak wrote: > I think that's the kind of thing much better ...
9 years, 7 months ago (2014-09-19 13:20:41 UTC) #3
dak
On 2014/09/19 13:20:41, Dan Eble wrote: > On 2014/09/19 11:20:55, dak wrote: > > I ...
9 years, 7 months ago (2014-09-19 13:51:55 UTC) #4
Dan Eble
On 2014/09/19 13:51:55, dak wrote: > If you want to, I can rebase the respective ...
9 years, 7 months ago (2014-09-19 22:16:33 UTC) #5
Keith
This seems to allow the style of partcombine where unisons are double-stemmed which would be ...
9 years, 6 months ago (2014-10-29 05:06:28 UTC) #6
Keith
> #(define-music-function (parser location part1 part2) > (number-pair? '(0 . 8))(ly:music? ly:music?) #(define-music-function (parser location ...
9 years, 6 months ago (2014-10-29 05:07:58 UTC) #7
Keith
On 2014/10/29 05:07:58, Keith wrote: > > #(define-music-function (parser location part1 part2) > > (number-pair? ...
9 years, 6 months ago (2014-10-29 05:09:12 UTC) #8
Dan Eble
On 2014/10/29 05:06:28, Keith wrote: > This seems to allow the style of partcombine where ...
9 years, 5 months ago (2014-10-31 03:19:01 UTC) #9
Keith
On Thu, 30 Oct 2014 20:19:01 -0700, <nine.fierce.ballads@gmail.com> wrote: > This is the beginning of ...
9 years, 5 months ago (2014-10-31 06:39:45 UTC) #10
Dan Eble
On 2014/10/31 06:39:45, Keith wrote: > If I understand, this is the style where if ...
9 years, 5 months ago (2014-10-31 13:20:01 UTC) #11
dak
On 2014/10/31 13:20:01, Dan Eble wrote: > On 2014/10/31 06:39:45, Keith wrote: > > If ...
9 years, 5 months ago (2014-10-31 13:36:31 UTC) #12
Dan Eble
On 2014/10/31 13:36:31, dak wrote: > Do you have a good suggestion how we could ...
9 years, 5 months ago (2014-10-31 22:50:35 UTC) #13
Keith
On Fri, 31 Oct 2014 15:50:35 -0700, <nine.fierce.ballads@gmail.com> wrote: > One thing just occurred to ...
9 years, 5 months ago (2014-11-01 04:18:41 UTC) #14
dak
On 2014/10/31 22:50:35, Dan Eble wrote: > One thing just occurred to me. If this ...
9 years, 5 months ago (2014-11-01 06:37:11 UTC) #15
Dan Eble
On 2014/11/01 06:37:11, dak wrote: > I can rebase that patch if you want to ...
9 years, 5 months ago (2014-11-01 18:04:31 UTC) #16
dak
On 2014/11/01 18:04:31, Dan Eble wrote: > On 2014/11/01 06:37:11, dak wrote: > > I ...
9 years, 5 months ago (2014-11-01 18:32:49 UTC) #17
Dan Eble
On 2014/11/01 18:32:49, dak wrote: > On 2014/11/01 18:04:31, Dan Eble wrote: > > Would ...
9 years, 5 months ago (2014-11-01 19:07:36 UTC) #18
Dan Eble
Improve readability
9 years, 5 months ago (2014-11-03 13:19:22 UTC) #19
Keith
Still good, still useful. The hesitation on the user interface seems foolish. Without a stable ...
9 years, 5 months ago (2014-11-06 05:44:50 UTC) #20
Dan Eble
On 2014/11/06 05:44:50, Keith wrote: > Changing the current global variable 'partcombine-chord-range' will not become ...
9 years, 5 months ago (2014-11-07 12:37:41 UTC) #21
Keith
9 years, 5 months ago (2014-11-08 04:51:57 UTC) #22
On Fri, 07 Nov 2014 04:37:41 -0800, <nine.fierce.ballads@gmail.com> wrote:

> On 2014/11/06 05:44:50, Keith wrote:
>> Changing the current global variable 'partcombine-chord-range' will
> not become
>> the user interface.
>
> All I meant for that variable was to avoid repeating the same magic
> numbers three times.  Is there a more idiomatic way to do that in
> Scheme?  Should I have commented it?
>

No, that seems fine as it is.
I was trying to go through the possible user-interfaces systematically, and
exposing that global variable was one possible interface.  I had trouble
articulating exactly /why/ simply changing that global variable wouldn't become
the user-interface.

I forgot the originally-suggested possible interface for the user to change the
chord-range, by setting some context property of the temporary Voice contexts,
the ones used by \partcombine to iterate through its inputs.  Then we could
change chord-range in the middle of the music, but I'm not sure the \partcombine
logic can handle mid-music changes.  The analysis is global, so if you
double-stem the e' below, probably the slurs should separate and all slurred
become double-stemmed (like \partcombine already does if there is a
voice-crossing).
   \partcombine
    {e'( e' b' f')}
    {c'( e' g' c')}
Changing chord-range just before the e' might (or might not) fool \partcombine.

Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b