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

Issue 365840043: New feature: automatically invert chords or drop/raise chord notes (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
3 months ago by Valentin Villenave
Modified:
2 months ago
Reviewers:
japaipy, dan, dak, lfm, haberg-1
CC:
lilypond-devel_gnu.org
Visibility:
Public.

Description

New feature: automatically invert chords or drop/rise chord notes This feature was suggested and improved upon by Davide Bonetti, with some help from David K: https://lists.gnu.org/archive/html/lilypond-user/2019-01/msg00360.html Included here are three new commands: \dropNote, \riseNote and \invertChords, and a new Scheme function, move-chord-note. The first two commands take an integer that selects which note will be transposed one octave lower or higher within every chord in the music expression that follows, thus allowing for more sophisticated voicings (e.g. `drop 2’ and the like). If the argument is out of range (if there aren’t enough notes in the chord), it’s silently ignored and the chord’s left unchanged. \invertChords accepts both positive and negative integers, and inverts all chords accordingly (as in switching the root note’s position, not as in reversing intervals like \inversion does). These commands work with both explicitely-written chords and \chordmode-entered chords (only when printed on a staff though; ChordNames are not to be affected).

Patch Set 1 #

Patch Set 2 : Ugh. Should be "raise" rather than "rise". #

Patch Set 3 : Fix `make check’. #

Patch Set 4 : Rebase; thanks James :-) #

Total comments: 2

Patch Set 5 : Also set 'octavation so that voicings don’t modify the chord’s name #

Total comments: 3

Patch Set 6 : Address David’s comments. (Well, most.) #

Patch Set 7 : Rebase, and use rewritten function #

Patch Set 8 : Use sorted note list to select the correct note. #

Total comments: 1

Patch Set 9 : Handle chords larger than one octave. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+191 lines, -35 lines) Patch
M Documentation/changes.tely View 1 chunk +11 lines, -0 lines 0 comments Download
M Documentation/notation/chords.itely View 1 5 chunks +51 lines, -5 lines 0 comments Download
A input/regression/chord-voicings.ly View 1 2 3 4 5 6 7 8 1 chunk +45 lines, -0 lines 0 comments Download
M ly/music-functions-init.ly View 1 2 3 4 5 6 7 8 5 chunks +47 lines, -27 lines 0 comments Download
M scm/modal-transforms.scm View 1 2 3 4 5 6 7 8 2 chunks +37 lines, -3 lines 0 comments Download

Messages

Total messages: 36
Valentin Villenave
Ugh. Should be "raise" rather than "rise".
3 months ago (2019-01-20 11:29:01 UTC) #1
Valentin Villenave
Fix `make check’.
3 months ago (2019-01-21 16:59:37 UTC) #2
Valentin Villenave
Rebase; thanks James :-)
2 months, 4 weeks ago (2019-01-22 21:57:06 UTC) #3
dak
https://codereview.appspot.com/365840043/diff/60001/scm/modal-transforms.scm File scm/modal-transforms.scm (right): https://codereview.appspot.com/365840043/diff/60001/scm/modal-transforms.scm#newcode335 scm/modal-transforms.scm:335: (ly:music-transpose Shouldn't this also set/adjust the octavation property so ...
2 months, 4 weeks ago (2019-01-23 21:14:56 UTC) #4
Valentin Villenave
Also set 'octavation so that voicings don’t modify the chord’s name
2 months, 4 weeks ago (2019-01-23 21:45:16 UTC) #5
Valentin Villenave
That’s a great idea; I hadn’t considered it. I ought to add it to the ...
2 months, 4 weeks ago (2019-01-23 21:51:02 UTC) #6
dak
https://codereview.appspot.com/365840043/diff/80001/scm/modal-transforms.scm File scm/modal-transforms.scm (right): https://codereview.appspot.com/365840043/diff/80001/scm/modal-transforms.scm#newcode324 scm/modal-transforms.scm:324: (sorted (sort pitches ly:pitch<?))) Shouldn't you consider preexisting octavation ...
2 months, 4 weeks ago (2019-01-23 22:30:25 UTC) #7
Valentin Villenave
Address David’s comments. (Well, most.)
2 months, 3 weeks ago (2019-01-28 19:58:36 UTC) #8
Valentin Villenave
On 2019/01/23 22:30:25, dak wrote: > Shouldn't you consider preexisting octavation for sorting the pitches? ...
2 months, 3 weeks ago (2019-01-28 20:02:53 UTC) #9
dak
On 2019/01/28 20:02:53, Valentin Villenave wrote: > I can’t figure out how to make it ...
2 months, 3 weeks ago (2019-01-28 21:53:04 UTC) #10
dak
On 2019/01/28 21:53:04, dak wrote: > On 2019/01/28 20:02:53, Valentin Villenave wrote: > > > ...
2 months, 3 weeks ago (2019-01-29 16:51:23 UTC) #11
japaipy
On 2019/01/20 11:29:01, Valentin Villenave wrote: > Ugh. Should be "raise" rather than "rise".
2 months, 3 weeks ago (2019-01-30 08:20:43 UTC) #12
japaipy
2 months, 3 weeks ago (2019-01-30 08:42:10 UTC) #13
japaipy
On 2019/01/30 08:20:43, japaipy wrote: > On 2019/01/20 11:29:01, Valentin Villenave wrote: > > Ugh. ...
2 months, 3 weeks ago (2019-01-30 08:43:14 UTC) #14
Valentin Villenave
Rebase, and use rewritten function
2 months, 3 weeks ago (2019-01-30 09:03:07 UTC) #15
Valentin Villenave
On 2019/01/28 21:53:04, dak wrote: > Without any pointer to what you are having problems ...
2 months, 3 weeks ago (2019-01-30 09:20:14 UTC) #16
Valentin Villenave
Use sorted note list to select the correct note.
2 months, 3 weeks ago (2019-01-30 20:17:25 UTC) #17
dak
https://codereview.appspot.com/365840043/diff/130001/ly/music-functions-init.ly File ly/music-functions-init.ly (right): https://codereview.appspot.com/365840043/diff/130001/ly/music-functions-init.ly#newcode609 ly/music-functions-init.ly:609: (let loop ((num num) (music music)) Come to think ...
2 months, 2 weeks ago (2019-02-01 16:18:10 UTC) #18
Valentin Villenave
On 2019/02/01 16:18:10, dak wrote: > raising or lowering one chord note > by an ...
2 months, 2 weeks ago (2019-02-02 19:36:58 UTC) #19
dan_faithful.be
On Feb 2, 2019, at 14:36, v.villenave@gmail.com wrote: > Oh. Then this becomes a whole ...
2 months, 2 weeks ago (2019-02-02 20:37:16 UTC) #20
Valentin Villenave
On 2/2/19, Dan Eble <dan@faithful.be> wrote: > Isn’t the salient property of an inversion simply ...
2 months, 2 weeks ago (2019-02-02 20:51:55 UTC) #21
haberg-1_telia.com
> On 2 Feb 2019, at 20:36, v.villenave@gmail.com wrote: > > On 2019/02/01 16:18:10, dak ...
2 months, 2 weeks ago (2019-02-02 21:13:53 UTC) #22
dak
Hans Åberg <haberg-1@telia.com> writes: >> On 2 Feb 2019, at 20:36, v.villenave@gmail.com wrote: >> >> ...
2 months, 2 weeks ago (2019-02-02 21:44:22 UTC) #23
haberg-1_telia.com
> On 2 Feb 2019, at 22:44, David Kastrup <dak@gnu.org> wrote: > > Hans Åberg ...
2 months, 2 weeks ago (2019-02-02 22:46:32 UTC) #24
lfm_gmx.de
>> like when using invertChords on a c:11 chord for the fifth inversion. > > ...
2 months, 2 weeks ago (2019-02-02 23:04:56 UTC) #25
haberg-1_telia.com
> On 3 Feb 2019, at 00:04, Lukas-Fabian Moser <lfm@gmx.de> wrote: > > If I ...
2 months, 2 weeks ago (2019-02-02 23:25:27 UTC) #26
Valentin Villenave
Handle chords larger than one octave.
2 months, 2 weeks ago (2019-02-03 08:27:48 UTC) #27
Valentin Villenave
On 2019/02/02 20:37:16, dan_faithful.be wrote: > Isn’t the salient property of an inversion simply which ...
2 months, 2 weeks ago (2019-02-03 08:37:13 UTC) #28
lfm_gmx.de
> much like a suspended chord (the whole point of `drop n’ transformations > being ...
2 months, 2 weeks ago (2019-02-03 09:53:52 UTC) #29
haberg-1_telia.com
> On 2 Feb 2019, at 21:37, Dan Eble <dan@faithful.be> wrote: > > Isn’t the ...
2 months, 2 weeks ago (2019-02-03 10:10:52 UTC) #30
Valentin Villenave
On 2/3/19, Lukas-Fabian Moser <lfm@gmx.de> wrote: > This statement surprises me. I always thought of ...
2 months, 2 weeks ago (2019-02-03 10:36:08 UTC) #31
lfm_gmx.de
>> This statement surprises me. I always thought of 'drop n' (with 'drop 2' >> ...
2 months, 2 weeks ago (2019-02-03 11:14:44 UTC) #32
dan_faithful.be
On Feb 3, 2019, at 05:36, Valentin Villenave <v.villenave@gmail.com> wrote: > > BTW, there’s no ...
2 months, 2 weeks ago (2019-02-03 14:59:03 UTC) #33
Valentin Villenave
On 2019/02/03 14:59:03, dan_faithful.be wrote: > While it is true that this algorithm yields chords ...
2 months, 1 week ago (2019-02-07 19:49:43 UTC) #34
dan_faithful.be
On Feb 7, 2019, at 14:49, v.villenave@gmail.com wrote: > > That being said, no problem ...
2 months, 1 week ago (2019-02-08 03:48:31 UTC) #35
Valentin Villenave
2 months ago (2019-02-14 22:12:03 UTC) #36
On 2019/02/08 03:48:31, dan_faithful.be wrote:
> So that it’s clear: I have no firm objection to \invertChords.  I just wanted
to
> make sure that the names were well explored.

OK then, pushed as
https://git.savannah.gnu.org/cgit/lilypond.git/commit/?id=0f5c0468117ae099164...

Thanks to everybody!

V.
Sign in to reply to this message.

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