Re: Re: Chords and what they mean
I think the proper way for reaching your proposed Lilypond redesign is to pay a developer ... Am 19.09.2015 23:52, schrieb 70147pers...@telia.com: On 2015-09-19 13:52, Johan Vromans wrote: On Sat, 19 Sep 2015 01:05:12 +0200 70147pers...@telia.com wrote: This should, by means of a translation table, take my input and translate it into LP code. So when I write c:sus this will be changed to e.g. c:sus4 (or perhaps c:1.4.5) before it is dealt with by LP, and when I write c:5 it is translated into c:1.5. This can easily be done with small Perl script. Even a one-liner like perl -pe 's/:sus(?!4)/:sus4/g;' -e 's/:5(?![.\/])/:5.1/g;' myfile.ly | lilypond -o myout - A table-driven solution would require a couple of more lines. If you give me the exact transformations I'll write it for you. -- Johan You are certainly completely right. The transformation is quite simple, so a script in perl or awk or any similar program can easily solve the task. But can you use it in an integrated environment, like Frescobaldi-LilyPond, which I have come to appreciate a lot. I can think you have to write my (version of) LP code, run it through the filter (the script) then import this new file into Frescobaldi to run it in LP, or possibly put it directly into LP. Well possibly you can use a pipe, but I do not see how. My dream is to have all this integrated in the environment, so, to make it flexible, you feed some database or table or something with your transforms, preferable only once, and then you can forget it. Thereafter you write your code, and on its way into LP it is transformed according to the content in the table. So from LP you get the correct printout and midi and so on despite the code is written "my" way. Thomas Morley has written a procedure in scheme, which therefore has the better opportunities for integration, but I have not yet had the time to test it. /Kaj ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
On 20/09/15 11:30 AM, Flaming Hakama by Elaine wrote: > Just to be clear, in Hancock's piece and other jazz standards, D7sus is > not simply a 7th chord with the third omitted. As Mark Levine explained > in the "The Jazz Piano Book" (Sher Music Co. 1989), for D7sus (or simply > "Dsus" as it appears in some arrangements) Herbie played a C major triad > (with the G doubled) over the root and fifth on the left hand. The > effect of this was that the right hand was playing the 7th, 9th and 11th > (or if you prefer, 7th, 2nd and 4th). Hence Levine's description of a > sus chord: the " major triad in the right hand [is] a whole step down > from the root". > Brett Yes, but it is worth pointing out that that is a "voicing" of D7sus. It is not the "definition" of D7sus. Well, in his explanation of sus chords, Levine indicates that that he does not interpret "sus" to be exactly synonymous with "sus4". At one point, he wrote "A persistent myth about sus chords is that 'the fouth takes the place of the third.' Jazz pianists, however, often voice the third with a sus chord" (The Jazz Piano Book, p.24). My point was that it would be incorrect in a jazz context to rigidly interpret D7sus as simply a D7 chord with the third omitted or with the 4th in place of the third. For comparison, I'd enjoy hearing how Mr. Levine suggests to voice a C major chord. (If I recall correctly, it doesn't have C or G in it.) The short answer is, he doesn't. But if we are discussing definitions rather than voicings, is this relevant? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re:Chords and what they mean
Thank you for the interesting analysis and the links. With the flats and > sharps instead of "-es" and "-is" in your code, it is a bit strange. > I'm glad it was helpful, despite using the the lilypond english. > The m7b5 chord (your example) in the jazz slang usually/often is called > "half diminished" an uses the slashed 0 "?" symbolically "halving" the > 0.I do not think that m7b5 is better or more worse than "?", but it > depends on the taste of the user and the social music context he is > working in. Another point in naming is, that b5 is often used (freedom > of interpretation) and written as #11 on top that then is Cm7#11. > Yes, the "empty set" symbol is my preferred symbol, too. And I think it's the lilypond default. But lots of folks query the list to ask how to get m7b5, so that's why that example exists. > On the given internet page there is written under the head line "Note > sets" > "So, once you have your input syntax, lilypond converts that into note > sets. > So, ?C:1.4.5? becomes ." > Obviously it is meant > "So, ?C:1.4.5? becomes ." > But is missing on the page. May be you want to add this? > Thanks for the note. That is what happens when you cut and paste ascii text into a blog and don't escape brackets! > You wrote > "An exception to this is sus. Logically, I might expect this to work, > but > doesn?t: > C:sus4 <==> C:5.3+" > > It is a bit more complicated, as c:5.3+ does work but with an unusual > e#, enharmonically this is an f ... > Regarding the c:5.3+, I'm not sure it is motivated by a musical example, but more of a thought experiment. But before going any further, it is worth pointing out that I fell into the trap I was trying to describe: Just because lilypond prints just "C" for a chord, that doesn't mean that it thinks the notes are . Am 19.09.2015 02:30, schrieb Flaming Hakama by Elaine: > > The final comment I have is related to your statement: > > "For me it is logic to understand, that c:sus will suspend the 3." > > > > That is a correct *musical* interpretation of Csus. (In my opinion.) > > > > I agree. > > > Unfortunately, lilypond does not have a musical interpretation of > > sus. > So, when I tried out the examples from my post, I didn't realize that I don't have these various power chords defined (yet), so lilypond defaulted to the symbol for major. I didn't bother to check what the note sets were, I just tested it from input syntax to printed symbols. Which was supposed to be the point of my reply: when the chord name you want isn't being printed, you first have to find out what note set it is. Then, you can customize that name in the chord exceptions. Thanks for checking what actually comes out more thoroughly! > > Lilypond requires you to explicitly specify an interval to replace the > > 3rd with. > I now believe this to be a false statement, based on your examples. Lilypond seems to be consistent in its interpretation of sus as omit 3. > Does Lilypond require a substitute for the suspended 3? c:sus is > compiling without error and any specified substituton note and shows > root and 5 - exactly the result I am expecting. > Again, my issue was that I don't have C5 defined in the chord symbol exceptions. > > I suppose that this is because some people (and Lilypond) think that > > C:sus2 is equally as valid or usual interpretation of "sus", and > > May be I misundertand this? c:sus2 works with Lilypond and IS a valid > chord often used in pop/rock, not so frequently used in jazz? May be I > am wrong. > Of course sus2 is used. The question is more like: if you saw Csus, would you know how to interpret it musically? Or would you be stuck in your tracks wondering, "is this a sus2, sus4, both? something else?" I tend to think that the sus implies 4, unless otherwise noted. But, now that I understand it a little better, I don't have any issue with the way lilypond is organized regarding sus and the input syntax. Although adding the powerchords to the chord symbol exceptions seems like it might unconfuse many people who are trying to write these chord symbols. > One can simply verify this by experiment: > > \version "2.19.25" > #(set-global-staff-size 30) > \chordmode { >c:sus %power chord Lilypond calls it wrong as C >c:sus3 % power chord Lilypond calls it wrong as C >c:sus5 %power chord Lilypond calls it wrong as C >c:1.4.5 % equal to: >c:sus4 >c:1.4.2 % equal to: >c:sus2 >c:sus3 % normal c major chord Lilypond calls it correctly as C >c:5.3 % normal c major chord Lilypond calls it correctly as C >c:5.3+ % normal c major chord Lilypond calls it correctly as C, 3+ > is written as e# > } > Thanks for actually trying this and clarifying the discussion. The only problem I see is naming the chords with the sus correctly. This > happens with c:sus5, c:sus3 and c:sus as Lilypond calls it C instead of > C5. > There is a little confusion in my min
Re: Text centralized above a TextSpan
David, On Sat, Sep 19, 2015 at 3:48 PM, David Kastrup wrote: > David Nalesnik writes: > > > (As an aside: I must say that David's suggestion of using lyrics > > produces miraculous results without the hundreds and hundreds of lines > > of new code! Don't want a connector line? Don't write a hyphen. > > Etc.) > > Actually, we might have had some miscommunication. I was not really > suggesting using a lyrics context, just \lyricsmode as a user interface. > The idea was more or less to pick the music expression apart and then > let your code do the work. > > OK, I see. Using \lyricmode would be a user-friendly way to specify markups/strings, connectors/no connectors, and relative spacing of texts through attached durations (making the use of spacers--somewhat awkward to handle--unnecessary). > However, (re-)using engravers for the "picking apart" bit in a context > without its own vertical axis group might be an interesting option. > Want several text spanners? Use several contexts. I'll need to experiment a bit before I can say I understand! Thanks, David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Re: Chords and what they mean
On 2015-09-19 13:52, Johan Vromans wrote: On Sat, 19 Sep 2015 01:05:12 +0200 70147pers...@telia.com wrote: This should, by means of a translation table, take my input and translate it into LP code. So when I write c:sus this will be changed to e.g. c:sus4 (or perhaps c:1.4.5) before it is dealt with by LP, and when I write c:5 it is translated into c:1.5. This can easily be done with small Perl script. Even a one-liner like perl -pe 's/:sus(?!4)/:sus4/g;' -e 's/:5(?![.\/])/:5.1/g;' myfile.ly | lilypond -o myout - A table-driven solution would require a couple of more lines. If you give me the exact transformations I'll write it for you. -- Johan You are certainly completely right. The transformation is quite simple, so a script in perl or awk or any similar program can easily solve the task. But can you use it in an integrated environment, like Frescobaldi-LilyPond, which I have come to appreciate a lot. I can think you have to write my (version of) LP code, run it through the filter (the script) then import this new file into Frescobaldi to run it in LP, or possibly put it directly into LP. Well possibly you can use a pipe, but I do not see how. My dream is to have all this integrated in the environment, so, to make it flexible, you feed some database or table or something with your transforms, preferable only once, and then you can forget it. Thereafter you write your code, and on its way into LP it is transformed according to the content in the table. So from LP you get the correct printout and midi and so on despite the code is written "my" way. Thomas Morley has written a procedure in scheme, which therefore has the better opportunities for integration, but I have not yet had the time to test it. /Kaj ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
David Nalesnik writes: > (As an aside: I must say that David's suggestion of using lyrics > produces miraculous results without the hundreds and hundreds of lines > of new code! Don't want a connector line? Don't write a hyphen. > Etc.) Actually, we might have had some miscommunication. I was not really suggesting using a lyrics context, just \lyricsmode as a user interface. The idea was more or less to pick the music expression apart and then let your code do the work. However, (re-)using engravers for the "picking apart" bit in a context without its own vertical axis group might be an interesting option. Want several text spanners? Use several contexts. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Violin notation advice requested
On Sat, Sep 19, 2015 at 2:34 PM, Chris Yate wrote: > No, It's quite common to indicate the string by Roman numerals. Printed > music would hardly ever indicate position, but it is normal to see either > "sul G" or "IV". > Actually, I have occasionally seen (and used on scores, myself) Roman numeral designation of position. I find it confusing when I see Roman numerals for strings; I much prefer "G" or "sul G". Less ambiguous to me. All the best, Ralph -- Ralph Palmer Brattleboro, VT USA palmer.r.vio...@gmail.com ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi Trevor, On Sat, Sep 19, 2015 at 1:49 PM, Trevor Daniels wrote: > > David Nalesnik wrote Saturday, September 19, 2015 7:14 PM > > On Sat, Sep 19, 2015 at 12:10 PM, David Kastrup wrote: > > [...] > > Right now LyricHyphen will draw something resembling the spanner line, > > but comprised of a succession of round-filled boxes. > > Actually for the purpose I had in mind (words over music but spoken and > out of rhythm) > we wouldn't need a spanner line, just the spaced-out text. > > I could easily allow a switch to turn off all connectors. > Using lyrics with explicit durations is the way it's done in the NR now, > but it's > difficult to set up and prone to not working under some circumstances. The > automatic spacing over several lines was the attractive feature of your > TextSpan code. > > To do that, you'd need to split the text up into individual words. That could get irritating, but it wouldn't be hard to break long strings up by whitespace, or some other alternative. This should give acceptable results, with two conditions: (1) items will be equally spaced; (2) Items are currently parceled out between lines solely based on their number, as if they were equal in length. The distribution algorithm ought to take word-length into account, and I wonder if my math is up to that :( (As an aside: I must say that David's suggestion of using lyrics produces miraculous results without the hundreds and hundreds of lines of new code! Don't want a connector line? Don't write a hyphen. Etc.) David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi Trevor (et al.), > Actually for the purpose I had in mind (words over music but spoken and out > of rhythm) > we wouldn't need a spanner line, just the spaced-out text. After David N. made his wonderful MeasureAttachedSpanner for me, we spoke (briefly) of how it might be taken “to the goal line” — which would include (I believe) the kind of thing you’re talking about / hoping for. Let’s brainstorm a bunch of use cases, and see what we can do about getting them all handled [well] by a single grob/mechanism. Cheers, Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
David Nalesnik wrote Saturday, September 19, 2015 7:14 PM On Sat, Sep 19, 2015 at 12:10 PM, David Kastrup wrote: > "Trevor Daniels" writes: > >> http://www.lilypond.org/doc/v2.19/Documentation/notation/opera-and-stage-musicals#dialogue-over-music >> >> I'd like to see this developed and added to LP core. >> > Right now LyricHyphen will draw something resembling the spanner line, > but comprised of a succession of round-filled boxes. Actually for the purpose I had in mind (words over music but spoken and out of rhythm) we wouldn't need a spanner line, just the spaced-out text. > Here's a sketch: [snipped] Using lyrics with explicit durations is the way it's done in the NR now, but it's difficult to set up and prone to not working under some circumstances. The automatic spacing over several lines was the attractive feature of your TextSpan code. Trevor ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Violin notation advice requested
No, It's quite common to indicate the string by Roman numerals. Printed music would hardly ever indicate position, but it is normal to see either "sul G" or "IV". On 19 Sep 2015 12:31, "Ralph Palmer" wrote: > On Fri, Sep 18, 2015 at 2:14 PM, Michael Gerdau wrote: > >> > No, both are fingerings. >> >> I've never seen a >> violin fingering indicating the string. > > > I have seen violin and viola fingerings indicating the string, but I agree > that it is infrequent and usually the string is indicated by letter, not > number. I have, however, seen the string indicated by number, though I > cannot remember where. > > All the best, > > Ralph > > -- > Ralph Palmer > Brattleboro, VT > USA > palmer.r.vio...@gmail.com > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user > > ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
On Sat, Sep 19, 2015 at 1:14 PM, David Nalesnik wrote: Right now LyricHyphen will draw something resembling the spanner line, but > comprised of a succession of round-filled boxes. An enhancement of the > stencil callback would be needed to allow for all the possibilities of > TextSpanner, 'style, for example. > > Here's a sketch: > > Image attached. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
On Sat, Sep 19, 2015 at 12:10 PM, David Kastrup wrote: > "Trevor Daniels" writes: > > > > http://www.lilypond.org/doc/v2.19/Documentation/notation/opera-and-stage-musicals#dialogue-over-music > > > > I'd like to see this developed and added to LP core. > > > > Trevor > > > > - Original Message - > > From: David Nalesnik > > To: Simon Albrecht > > Cc: lilypond-user > > Sent: Friday, September 18, 2015 11:58 PM > > Subject: Re: Text centralized above a TextSpan > > > > > > Hi, > > > > > > Alright! This should do it... > > > > > > You can: > > > > > > --Adapt this for versions < 2.19.27 with a loss of overriding power > > (style, dash-fraction, etc.)--see comments beginning in line 435 > > > > > > --Use/mix markups and strings. > > > > > > --Specify any number of texts >= 2 for your spanner. > > > > > > --Break it across an arbitrary number of lines, with an acceptable > > distribution. > > > > > > --Use spacers ("") to force texts closer/farther apart. You can > > also move them like this: > > \markup \translate [...] > > \markup \right-align [...] > > etc. > > > > > > --Override the number of texts per line if you don't like the > > automatic distribution. There's a warning if the numbers don't tally. > > > > > > --Specify which texts will be joined by a line and which won't using > > TextSpanner.connectors. I noticed this request in another related > > thread: > > http://www.mail-archive.com/lilypond-user%40gnu.org/msg103939.html > > Well, it looks to me like being able to use something in \lyricsmode > would be useful for specifying extenders, hyphens, rhythmic > distribution, text without creating lots of new commands and properties > for the user. > > Right now LyricHyphen will draw something resembling the spanner line, but comprised of a succession of round-filled boxes. An enhancement of the stencil callback would be needed to allow for all the possibilities of TextSpanner, 'style, for example. Here's a sketch: \version "2.19.27" %%% REQUIRED #(define (connector grob) (let* ((lb (ly:spanner-bound grob LEFT)) (rb (ly:spanner-bound grob RIGHT)) (common-x (ly:grob-common-refpoint lb rb X)) (l-ext (ly:grob-extent lb common-x X)) (r-ext (ly:grob-extent rb common-x X)) (x-coord (ly:grob-relative-coordinate lb common-x X))) (ly:stencil-translate-axis (ly:line-interface::line grob (cdr l-ext) 0.0 (car r-ext) 0.0) (- x-coord) X))) << \new Lyrics \lyricmode { %\once \override LyricText.self-alignment-X = #RIGHT "rit"1*2 -- "tar"2*5 -- "dan"2*3 -- "do"1 } \new Staff { c2 c c2 c c2 c c2 c \break c2 c c2 c c2 c c2 c } >> \layout { \context { \Lyrics \override LyricHyphen.style = #'dashed-line \override LyricHyphen.dash-fraction = 0.2 \override LyricHyphen.dash-period = 3.0 \override LyricText.font-shape = #'italic \override LyricHyphen.stencil = #connector } } %%% DN ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Transpose without collapsing double accidentals
msk...@ansuz.sooke.bc.ca writes: > On Sat, 19 Sep 2015, Michael Gerdau wrote: >> > > Issue 1009, fixed in version 2.19.0. >> > >> > LilyPond 2.19 (installation of which is non-trivial, since it seems to be >> > only available through Git >> >> Have you checked out >> http://lilypond.org/development.de.html >> >> Of course it is not 2.19.0 but 2.19.27 > > Hm, I didn't even notice that there were precompiled binaries there - I > had been looking for a source package and, not seeing that, went straight > to the Git repository. Water under the bridge now, since I did manage to > compile and install it. > > As for the regular.ly script, I was able to modify it to work with the > newer version, basically just by removing the "parser" and "location" > variables that the new version doesn't expect in music functions. The new version perfectly well will accept parser and location arguments in music functions. It will no longer take them for _internal_ functions, but convert-ly will properly convert the calls of those. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
"Trevor Daniels" writes: > http://www.lilypond.org/doc/v2.19/Documentation/notation/opera-and-stage-musicals#dialogue-over-music > > I'd like to see this developed and added to LP core. > > Trevor > > - Original Message - > From: David Nalesnik > To: Simon Albrecht > Cc: lilypond-user > Sent: Friday, September 18, 2015 11:58 PM > Subject: Re: Text centralized above a TextSpan > > > Hi, > > > Alright! This should do it... > > > You can: > > > --Adapt this for versions < 2.19.27 with a loss of overriding power > (style, dash-fraction, etc.)--see comments beginning in line 435 > > > --Use/mix markups and strings. > > > --Specify any number of texts >= 2 for your spanner. > > > --Break it across an arbitrary number of lines, with an acceptable > distribution. > > > --Use spacers ("") to force texts closer/farther apart. You can > also move them like this: > \markup \translate [...] > \markup \right-align [...] > etc. > > > --Override the number of texts per line if you don't like the > automatic distribution. There's a warning if the numbers don't tally. > > > --Specify which texts will be joined by a line and which won't using > TextSpanner.connectors. I noticed this request in another related > thread: > http://www.mail-archive.com/lilypond-user%40gnu.org/msg103939.html Well, it looks to me like being able to use something in \lyricsmode would be useful for specifying extenders, hyphens, rhythmic distribution, text without creating lots of new commands and properties for the user. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi Trevor (et al.), > This looks potentially very useful for adding spoken words which need to be > said during a passage of music, often required in musical theatre. If we do this, let’s do it right… I’m willing to pay some sponsorship for it. Cheers, Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
This looks potentially very useful for adding spoken words which need to be said during a passage of music, often required in musical theatre. This is very difficult and hackish to do with current LP - see http://www.lilypond.org/doc/v2.19/Documentation/notation/opera-and-stage-musicals#dialogue-over-music I'd like to see this developed and added to LP core. Trevor - Original Message - From: David Nalesnik To: Simon Albrecht Cc: lilypond-user Sent: Friday, September 18, 2015 11:58 PM Subject: Re: Text centralized above a TextSpan Hi, Alright! This should do it... You can: --Adapt this for versions < 2.19.27 with a loss of overriding power (style, dash-fraction, etc.)--see comments beginning in line 435 --Use/mix markups and strings. --Specify any number of texts >= 2 for your spanner. --Break it across an arbitrary number of lines, with an acceptable distribution. --Use spacers ("") to force texts closer/farther apart. You can also move them like this: \markup \translate [...] \markup \right-align [...] etc. --Override the number of texts per line if you don't like the automatic distribution. There's a warning if the numbers don't tally. --Specify which texts will be joined by a line and which won't using TextSpanner.connectors. I noticed this request in another related thread: http://www.mail-archive.com/lilypond-user%40gnu.org/msg103939.html The default is to join everything, and we revert to that with a warning if you specify too few connections. (Full disclosure: you can't hide one half of a line crossing a break and show the other half, but unless there's some pressing need, I'm going to forget I noticed this) --Change the distance from text to line with TextSpanner.line-offset, which defaults to #'(0.0 . 0.0). Additionally, there are warnings for overlaps. There's no attempt at fixing these. I wouldn't know how to influence spacing. By the way, is there a way to get spacing to accommodate really long left/right texts with ordinary TextSpanners without resorting to \newSpacingArea, manual breaks, and the like? I don't find a mechanism: \textLengthOn doesn't seem to work... Enjoy-- David P.S. One area of further improvement would be the input syntax. Any suggestions for making this more user-friendly? I can't figure out how to get markups to process properly without that off-putting #(list #{ \markup "foo" #} ) construction. %%% -- ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Transpose without collapsing double accidentals
On Sat, 19 Sep 2015, Michael Gerdau wrote: > > > Issue 1009, fixed in version 2.19.0. > > > > LilyPond 2.19 (installation of which is non-trivial, since it seems to be > > only available through Git > > Have you checked out > http://lilypond.org/development.de.html > > Of course it is not 2.19.0 but 2.19.27 Hm, I didn't even notice that there were precompiled binaries there - I had been looking for a source package and, not seeing that, went straight to the Git repository. Water under the bridge now, since I did manage to compile and install it. As for the regular.ly script, I was able to modify it to work with the newer version, basically just by removing the "parser" and "location" variables that the new version doesn't expect in music functions. And, for the moment at least, the result seems to work. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Transpose without collapsing double accidentals
> > Issue 1009, fixed in version 2.19.0. > > LilyPond 2.19 (installation of which is non-trivial, since it seems to be > only available through Git Have you checked out http://lilypond.org/development.de.html Of course it is not 2.19.0 but 2.19.27 HTH, Michael -- Michael Gerdau email: m...@qata.de GPG-keys available on request or at public keyserver signature.asc Description: This is a digitally signed message part. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Transpose without collapsing double accidentals
On Sat, 19 Sep 2015, David Kastrup wrote: > msk...@ansuz.sooke.bc.ca writes: > > > If transposing music produces notes with alteration of more than a whole > > tone, \transpose will produce a warning and change the note name. I would > > like to be able to transpose notes up or down an octave without changing > > their names or alteration at all, even if it is more than a whole > > tone. > > Issue 1009, fixed in version 2.19.0. Thanks for the pointer. LilyPond 2.19 (installation of which is non-trivial, since it seems to be only available through Git and is dependent on several obsolete packages) fixes this in small test cases, but chokes on the regular.ly script from http://x31eq.com/lilypond/ , which I'm using in my actual project. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Transpose without collapsing double accidentals
msk...@ansuz.sooke.bc.ca writes: > If transposing music produces notes with alteration of more than a whole > tone, \transpose will produce a warning and change the note name. I would > like to be able to transpose notes up or down an octave without changing > their names or alteration at all, even if it is more than a whole > tone. Issue 1009, fixed in version 2.19.0. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi Kieren, On Sat, Sep 19, 2015 at 9:10 AM, Kieren MacMillan < kieren_macmil...@sympatico.ca> wrote: > Hi David, > > > Sure, no problem. I added a 'line-Y-offset property which just > raises/lowers the line without any reference to the texts. > > Perfect! Thanks. > (To my eye, a setting of about 0.0875 is right.) > > Ah, OK. I see what the issue is. The lines are drawn centered to the baseline. (Up TextSpanner.thickness and you'll get a vivid demonstration.) This correction can be automated. Try running this example: \relative c' { \override TextSpanner.thickness = 5 \override TextSpanner.line-X-offset = #'(0.5 . 0.5) \override TextSpanner.line-Y-offset = #(lambda (grob) (let* ((line-th (ly:staff-symbol-line-thickness grob)) (th (* (ly:grob-property grob 'thickness 1.0) line-th))) (/ th 2.0))) \addTextSpannerText #'("ral" "len" "tan" "do") c1\startTextSpan d'1\stopTextSpan } --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Transpose without collapsing double accidentals
If transposing music produces notes with alteration of more than a whole tone, \transpose will produce a warning and change the note name. I would like to be able to transpose notes up or down an octave without changing their names or alteration at all, even if it is more than a whole tone. Simple example (not an octave, but exhibits what I think is the same problem): \score { \transpose cis c \transpose c cis { cisis'1 } } This gives a warning ("warning: Transposing cProb' by cisih' makes alteration larger than double") from the inner transpose, and then engraves a D, not a C-double-sharp. When it creates a note more altered than double-sharp, it changes the note name, even though the round trip would correctly have ended with a note not more altered than double-sharp. Despite the wording of the error, it is actually "a whole tone of alteration" that triggers the note name change, not twice the size of a sharp or flat, as demonstrated by my actual application: My actual application is in 22-EDO microtonal music, where a sharp or flat is worth three units of the octave division, and the gaps between successive letter names are one and four units. The note cisis is two EDO units sharper than d ; but I want to pass it to some kind of "transpose down an octave" function and get cisis, as the output. Given that I've already redefined the note names and accidentals with the regular.ly script from http://x31eq.com/lilypond/ , doing \transpose c c, { cisis } gives me a warning about how it has no accidental symbol for 6/11 of a whole tone, and engraves a D note. It's apparently detecting that the alteration of cisis makes it sharper than d and automatically changing the note name from c to d. Is there any simple way to make it NOT change the note name or alteration, but only transpose the octave? -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi David, > Sure, no problem. I added a 'line-Y-offset property which just raises/lowers > the line without any reference to the texts. Perfect! Thanks. (To my eye, a setting of about 0.0875 is right.) > For consistency, I renamed 'line-offset to 'line-X-offset. Makes sense. Thanks again, Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi Kieren, On Sat, Sep 19, 2015 at 5:56 AM, Kieren MacMillan < kieren_macmil...@sympatico.ca> wrote: > > > Change the distance from text to line with TextSpanner.line-offset, > which defaults to #'(0.0 . 0.0). > > Love this. Is there a tweak for the vertical position of the line > (independent of the text)? > Sure, no problem. I added a 'line-Y-offset property which just raises/lowers the line without any reference to the texts. For consistency, I renamed 'line-offset to 'line-X-offset. > > P.S. One area of further improvement would be the input syntax. Any > suggestions for making this more user-friendly? > > As I play with it, I’ll see what I can come up with. > Please do! I thought about a music function which reframes the input and calls what I have for \addTextSpannerText, but I'm not sure how to go about that. > > Many thanks for this! > > You're very welcome. David \version "2.19.27" %% CUSTOM GROB PROPERTIES % Taken from http://www.mail-archive.com/lilypond-user%40gnu.org/msg97663.html % (Paul Morris) % function from "scm/define-grob-properties.scm" (modified) #(define (cn-define-grob-property symbol type?) (set-object-property! symbol 'backend-type? type?) (set-object-property! symbol 'backend-doc "custom grob property") symbol) % For internal use. #(cn-define-grob-property 'text-spanner-stencils list?) % user interface #(cn-define-grob-property 'text-spanner-line-count number-list?) % List of booleans describing connections between text items regardless % of line breaks. #(cn-define-grob-property 'connectors list?) % How much space between line and object to left and right? % Default is '(0.0 . 0.0). #(cn-define-grob-property 'line-X-offset number-pair?) % Vertical shift of connector line, independenf of texts. #(cn-define-grob-property 'line-Y-offset number?) #(define (get-text-distribution text-list line-extents) ;; Given a list of texts and a list of line extents, attempt to ;; find a decent line distribution. The goal is to put more texts ;; on longer lines, while ensuring that first and last lines are texted. ;; TODO: ideally, we should consider extents of text, rather than ;; simply their number. (let* ((line-count (length line-extents)) (text-count (length text-list)) (line-lengths (map (lambda (line) (interval-length line)) line-extents)) (total-line-len (apply + line-lengths)) (exact-per-line (map (lambda (line-len) (* text-count (/ line-len total-line-len))) line-lengths)) ;; First and last lines can't be untexted. (adjusted (let loop ((epl exact-per-line) (idx 0) (result '())) (if (null? epl) result (if (and (or (= idx 0) (= idx (1- line-count))) (< (car epl) 1)) (loop (cdr epl) (1+ idx) (append result (list 1.0))) (loop (cdr epl) (1+ idx) (append result (list (car epl) ;; The idea is to raise the "most roundable" line's count, then the ;; "next most roundable," and so forth, until we account for all texts. ;; Everything else is rounded down (except those lines which need to be ;; bumped up to get the minimum of one text), so we shouldn't exceed our ;; total number of texts. ;; TODO: Need a promote-demote-until-flush to be safe, unless this is ;; mathematically sound! (define (promote-until-flush result) (let* ((floored (map floor result)) (total (apply + floored))) (if (>= total text-count) (begin ;(format #t "guess: ~a~%~%~%" result) floored) (let* ((decimal-amount (map (lambda (x) (- x (floor x))) result)) (maximum (apply max decimal-amount)) (max-location (list-index (lambda (x) (= x maximum)) decimal-amount)) (item-to-bump (list-ref result max-location))) ;(format #t "guess: ~a~%" result) (list-set! result max-location (1+ (floor item-to-bump))) (promote-until-flush result) (let ((result (map inexact->exact (promote-until-flush adjusted (if (not (= (apply + result) text-count)) ;; If this doesn't work, discard, triggering crude ;; distribution elsewhere. '() result #(define (get-connectors grob text-distribution) "Modify @var{text-distribution} to reflect line breaks. Return a list of lists of booleans representing whether to draw a connecting line between successive texts." ;; The property TextSpanner.connectors holds a list of booleans representing ;; whether a line will be drawn between t
Re: Chords and what they mean
For sure Hancock is giving the sus some specific "colour". I just listend Maiden Voyage and I am sure he always play a powerchord root doubled and a 5 with his left hand, not a complete triad. Nothing strange for modal jazz. And a 7sus chord with the right hand. Not shure, but it sounds like 7sus2 or more likely 7sus9? Anyway, the unresolved sus is the key of that Hancock sound. Am 19.09.2015 12:34, schrieb Brett Duncan: On 19/09/15 7:52 PM, Blöchl Bernhard wrote: A bit OT: For anybody having doubts if sus chords are of any use, I found a nice example in jazz. In Herbie Hancock’s jazz piece Maiden Voyage one can recognize examples of sus chords covering D7sus, F7sus, Eb7sus, and F#7sus (C#-13). Lilipond unhappily omits the sus in this combinations. Just to be clear, in Hancock's piece and other jazz standards, D7sus is not simply a 7th chord with the third omitted. As Mark Levine explained in the "The Jazz Piano Book" (Sher Music Co. 1989), for D7sus (or simply "Dsus" as it appears in some arrangements) Herbie played a C major triad (with the G doubled) over the root and fifth on the left hand. The effect of this was that the right hand was playing the 7th, 9th and 11th (or if you prefer, 7th, 2nd and 4th). Hence Levine's description of a sus chord: the " major triad in the right hand [is] a whole step down from the root". Brett ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
On Sat, 19 Sep 2015 01:05:12 +0200 70147pers...@telia.com wrote: > This should, by means of a translation table, take my input and > translate it into LP code. So when I write c:sus this will be changed to > e.g. c:sus4 (or perhaps c:1.4.5) before it is dealt with by LP, and when > I write c:5 it is translated into c:1.5. This can easily be done with small Perl script. Even a one-liner like perl -pe 's/:sus(?!4)/:sus4/g;' -e 's/:5(?![.\/])/:5.1/g;' myfile.ly | lilypond -o myout - A table-driven solution would require a couple of more lines. If you give me the exact transformations I'll write it for you. -- Johan ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Violin notation advice requested
On Fri, Sep 18, 2015 at 2:14 PM, Michael Gerdau wrote: > > No, both are fingerings. > > I've never seen a > violin fingering indicating the string. I have seen violin and viola fingerings indicating the string, but I agree that it is infrequent and usually the string is indicated by letter, not number. I have, however, seen the string indicated by number, though I cannot remember where. All the best, Ralph -- Ralph Palmer Brattleboro, VT USA palmer.r.vio...@gmail.com ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Text centralized above a TextSpan
Hi David, > Alright! This should do it… Amazing! (As always…) > Change the distance from text to line with TextSpanner.line-offset, which > defaults to #'(0.0 . 0.0). Love this. Is there a tweak for the vertical position of the line (independent of the text)? > P.S. One area of further improvement would be the input syntax. Any > suggestions for making this more user-friendly? As I play with it, I’ll see what I can come up with. Many thanks for this! Kieren. Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
On 19/09/15 7:52 PM, Blöchl Bernhard wrote: A bit OT: For anybody having doubts if sus chords are of any use, I found a nice example in jazz. In Herbie Hancock’s jazz piece Maiden Voyage one can recognize examples of sus chords covering D7sus, F7sus, Eb7sus, and F#7sus (C#-13). Lilipond unhappily omits the sus in this combinations. Just to be clear, in Hancock's piece and other jazz standards, D7sus is not simply a 7th chord with the third omitted. As Mark Levine explained in the "The Jazz Piano Book" (Sher Music Co. 1989), for D7sus (or simply "Dsus" as it appears in some arrangements) Herbie played a C major triad (with the G doubled) over the root and fifth on the left hand. The effect of this was that the right hand was playing the 7th, 9th and 11th (or if you prefer, 7th, 2nd and 4th). Hence Levine's description of a sus chord: the " major triad in the right hand [is] a whole step down from the root". Brett ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
A bit OT: For anybody having doubts if sus chords are of any use, I found a nice example in jazz. In Herbie Hancock’s jazz piece Maiden Voyage one can recognize examples of sus chords covering D7sus, F7sus, Eb7sus, and F#7sus (C#-13). Lilipond unhappily omits the sus in this combinations. https://youtu.be/hwmRQ0PBtXU not working in Germany, but in case simply use a proxy ... ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
There was a long thread "Lilypond and Jazz chords" in 2009 https://www.mail-archive.com/lilypond-user@gnu.org/msg48254.html I have not read it completely, but may be one might find it interesting? I think one might find many repetitions and may be some additional aspects? ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Chords and what they mean
Thank you for the interesting analysis and the links. With the flats and sharps instead of "-es" and "-is" in your code, it is a bit strange. The m7b5 chord (your example) in the jazz slang usually/often is called "half diminished" an uses the slashed 0 "ø" symbolically "halving" the 0.I do not think that m7b5 is better or more worse than "ø", but it depends on the taste of the user and the social music context he is working in. Another point in naming is, that b5 is often used (freedom of interpretation) and written as #11 on top that then is Cm7#11. On the given internet page there is written under the head line "Note sets" "So, once you have your input syntax, lilypond converts that into note sets. So, “C:1.4.5″ becomes ." Obviously it is meant "So, “C:1.4.5″ becomes ." But is missing on the page. May be you want to add this? You wrote "An exception to this is sus. Logically, I might expect this to work, but doesn’t: C:sus4 <==> C:5.3+" It is a bit more complicated, as c:5.3+ does work but with an unusual e#, enharmonically this is an f ... Am 19.09.2015 02:30, schrieb Flaming Hakama by Elaine: The most important thing to understand about the way Lilypond does chords, is that there are three completely different parts. 1) Input syntax 2) Note sets 3) Chord symbols My explanation for doing that is available at http://flaminghakama.com/flaming-lilypond-chords [1] The final comment I have is related to your statement: "For me it is logic to understand, that c:sus will suspend the 3." That is a correct *musical* interpretation of Csus. (In my opinion.) I agree. Unfortunately, lilypond does not have a musical interpretation of sus. ... would expect some knowledge base or composition rules or artificial intelligence ... Lilypond user would complain oppression ... Lilypond requires you to explicitly specify an interval to replace the 3rd with. Does Lilypond require a substitute for the suspended 3? c:sus is compiling without error and any specified substituton note and shows root and 5 - exactly the result I am expecting. I suppose that this is because some people (and Lilypond) think that C:sus2 is equally as valid or usual interpretation of "sus", and May be I misundertand this? c:sus2 works with Lilypond and IS a valid chord often used in pop/rock, not so frequently used in jazz? May be I am wrong. One can simply verify this by experiment: \version "2.19.25" #(set-global-staff-size 30) \chordmode { c:sus %power chord Lilypond calls it wrong as C c:sus3 % power chord Lilypond calls it wrong as C c:sus5 %power chord Lilypond calls it wrong as C c:1.4.5 % equal to: c:sus4 c:1.4.2 % equal to: c:sus2 c:sus3 % normal c major chord Lilypond calls it correctly as C c:5.3 % normal c major chord Lilypond calls it correctly as C c:5.3+ % normal c major chord Lilypond calls it correctly as C, 3+ is written as e# } The only problem I see is naming the chords with the sus correctly. This happens with c:sus5, c:sus3 and c:sus as Lilypond calls it C instead of C5. Even exotic chords as c:7sus work correctly in the note pattern, but will be called C7 omitting the sus ... therefore pretends that "sus" is not a well defined chord modification by itself. Hence, if you are using modifications, why you need to say C:sus4 instead of C:sus HTH, David Elaine Alt 415 . 341 .4954 "_Confusion is highly underrated_" ela...@flaminghakama.com self-immolation.info [2] skype: flaming_hakama Producer ~ Composer ~ Instrumentalist -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Links: -- [1] http://flaminghakama.com/flaming-lilypond-chords [2] http://self-immolation.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Re: Chords and what they mean
On 2015-09-19 05:06, Brett Duncan wrote: On 19/09/15 8:49 AM, Kaj Persson wrote: As you wrote Csus ought to mean that the first third is removed, and nothing else. Among professional musicians, which I am not, but I have friends who are, this is not the whole truth, there exists a de facto standard which does not exactly coincide with the pure logical. Not exactly - there are several conventions used by musicians, with a wide range of similarities and differences, but there is no one standard, de facto or otherwise. Csus is one example, C5 another. So when I work with these people i will use their methods and system, not trying to introduce something else (more "clever"). Therefore it would be fine if one could adapt LP to the current situation. Well, in this instance that might seem reasonable, where we are only talking about simple chords, but where the chords are more complex or follow some other convention, adapting LP might prove a lot more difficult. For example, a lot of jazz charts follow a widely used convention where minor chords are denoted with a minus sign and augmented chords are denoted with a plus sign, i.e. F-7, G+. But LP uses these symbols in \chordmode for alterations. But this all just points to the fact that there is a distinction between how chords are entered and how they are displayed. And given that the same chord can be displayed several different ways, that distinction cannot really be avoided. For my own purposes, the default chord names generated by LP are far from ideal, so like many I have a separate file of chord exceptions that I include when I need it. So long as the input method allows me to create the chords I need in a reasonably way and I can get the output to appear as I need it to, there is no need to make the input take the same form as the output. Brett Yes, you are completely right, Brett and David. Also, I myself was wrong, when I used the term de facto standard. I should have developed my discussion a wee more. You might say that the world of music and musicians is like an archipelago, with a lot islands. On every of these islands they speak their own language, or at least dialect, and everybody there understands everyting, as they have common way of talking. You might say there is a de facto standard of how to communicate. But if you come to another of the islands, you will find another vocabulary, which everybody on that island understands. They too have a de facto standard, but another one. The standard is not global, so some of you would say there is no standard. But such is life elsewhere too. Do not tell an American that he/she does not follow a standard because he/she measures in inches while most of we others use meters. So there are de facto standards in the music world too, and as long as you are in one of these islands, which some of us call contexts, it is practical to use adapted tools. That makes life easier. On the other hand, when you are skilled enough, you can use the global standard, almost as quickly as the local one, and you make the transformations in your head, like American scientists who hardly use inches and gallons in their job, but instead the established SI-units. As you might understand, I here consider the LP way of interpreting the symbols the "global" standard (we forget Sibelius and the others), while many of us live on our own island, where it might being an aid to use an adapted tool. However skilled people like Brett do not need them, they fix that in their brains. Much of my thoughts came from the happiness I felt, and this is not a very long time ago, when I first discovered that I can put chord symbols direct into LP in chordmode, but also the disappointment I felt when I found the deviations. I guess that once in the future, with even more experience, I can talk like Brett, and say: I do not need the adaptions any more. /Kaj ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: idea for fretboard-diagram chords
Marc Hohl writes: > Am 18.09.2015 um 08:40 schrieb bart deruyter: >> Hi all, > [...] >> For inversions one might choose a number based on the n'th note of a >> chord, for example 2 as the second note from the root note, which in the >> case of c:m would result in a ees as the lowest note and display a >> fretboard diagram accordingly. >> >> \invertedChords = \chordmode{ >> \setrootString #'6 >> \set inversion #'2 >> c4:m >> } >> >> I think this can be used for other instruments too. >> >> What do you think? Can this be achieved? Is it a good idea to implement, >> good enough for a feature request? :-) . > > I like the idea, perhaps enlarged by a \set chordShape command. > Most chord shapes may be derived from either an open C, A, G or E > chord voicing. > > \set chordShape #'A > c4:maj7 This is the basic idea of https://github.com/Philomelos/lilypond-predefined-fretboards. Here are some test files: https://github.com/Philomelos/lilypond-predefined-fretboards/tree/master/EADGBE/test. hth patrick ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user