Re: rolled chords in mulivoice classical guitar score
Ok I've given this a tiny tweak that I think will work the way you want. I just removed the two separate voices I had used before in the score block for the melody and bass, and replaced those with a single voice called "music" that will hold all voices, instantiated on-the-fly with <<{}\\{}>>. The arpeggio still works beautifully. I think with this score block you should be able to move freely between a single voice and two or more voices and simply add the \arpeggio command whenever you want one. Is this the behavior you were looking for? Jon \version "2.11.62" music = \relative c'' { c,8 e g c e c g c << { e4 f 2\arpeggio } \\ { d2 g,\arpeggio } >> } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "music" { \music } >> \layout { } \midi { \context { \Score } } } Tom Cloyd wrote: Jonathan, This looks interesting, and its structure is not hard to discern (for me), but it requires me to split my guitar scores into voices and write them separately from beginning to end. This is possible, but not exactly what one expects to do, except with true multi-voice scores (vocal, orchestral, etc.). -- Jonathan Kulp http://www.jonathankulp.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: rolled chords in mulivoice classical guitar score
Jonathan, First, thank you for your continued interest. Attached is my engraving of the 5th section of a "Variations and Theme" piece I have written - the theme comes last. The F# added to the final chord is my addition, and is there to remind listeners of the harmonic flavor of the variations they've heard previously. I have indicated with "arp." below the staff where I seek to place arpeggiation indicators. I have added some comments below. I'm very interested in how you handle this whole problem of setting multipart guitar scores, as I'm much in the learning phase, still, at this point (obviously), so I'm grateful for your comments. Jonathan Kulp wrote: Hmm. These organizational things are a matter of preference, of course. Still, I don't see why you'd have to rewrite things so dramatically. I thought I saw in one of your posts here that you had all the notes in one variable. Yes - an idea taken from some of the Lilypond documentation. Could be useful where one adds, say, a second guitar or a flute or whatever, I'm thinking. It seems like this \score block ought to work even when all the notes are held in one variable that has mostly one voice and only occasionally another. Well, it's mostly 2 and sometimes 3, actually. Could you attach the actual code of one of your scores (not abbreviated, but the whole score) so I can really see what you're working with? I bet this score block can be modified to work just how you want. I'd be fascinated to see yourideas on this. The reason I spent so much time figuring out this problem of arpeggiation across voices is because I know that I'll want to do it myself at some point, and in fact have already added one to an existing score where I had just been too lazy to figure out how before (!). Ah...good - I like it when my problems lead to solutions for others as well. Personally, I do break my guitar pieces into separate voices, each held in a different variable, then assemble them onto the staff in the \score block. I didn't do it this way originally but came to the conclusion eventually that it was the way to go, so as to avoid having to do lots of << { } \\ {} >> all over the place. In the orchestral piece I'm engraving right now, I have different variables for the voices of, say, flutes 1-2. Now, a lot of the time, the "fluteOneNotes" variable holds the music for *both* flutes 1 and 2 since they move together with the same rhythms often, so in those places the "fluteTwoNotes" just has full-measure skips ("s1*35" or something) while fluteOneNotes has lots of . At this moment I can't recall precisely why I decided to do it this way instead of just putting the occasional <<{}\\{}>> in there, but I think it had to do with the length of the multivoice passages. If they were any longer than about two or three bars, then I broke them up into different variables for each voice because I don't like having this construct <<{}\\{}>> spread over multiple lines in my text file--too hard to keep track of it. OK, I CAN see some advantages with this approach. For one, it forces a kind of formalism which probably isn't a bad idea - a relentless part analysis. Especially could be useful for a composer, as opposed to someone merely setting down a piece from a score or whatever. Clearly a more orchestral approach, and also one that well fits one such as I who is much inclined to muck around a lot with Rennaisance and Baroque score that may be played or transcribed for classical guitar. Dowland comes readily to mind. Anyway please do send me a file, even off-list if you want, because I think the problem of making an arpeggio span different voices is solved now and it's gotten into matters of organization instead of technical problems. Well, it you think so, it's surely the case. We (I) are near to a practical solution. A cheery thought! t. ~ Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist Bellingham, Washington, U.S.A: (360) 920-1226 << [EMAIL PROTECTED] >> (email) << TomCloyd.com >> (website) << sleightmind.wordpress.com >> (mental health weblog) ~ \version "2.11.60" #(set-global-staff-size 20) % 20 this is said to be standard for most scores date = #(strftime "%Y.%m.%d" (localtime (current-time))) % define a variable to hold the formatted date #(define RH rightHandFinger) %assigns value to RH \header { % * centered top * %dedication="{dedication}" %centered above title, top of page one title = "Variations on a de Visee Minuet" %centered below dedication subtitle = "5 - theme - Minuet in E Minor" %centered below title subsubtitle = \markup { "(2008.10.04-11) - version" \date } %centered below subtitle %piece = "(piece)" %{ useful only with multi-piece set given Opus number; set flus left below meter %} instrument = "For Classical Guitar"
Re: rolled chords in mulivoice classical guitar score
Hmm. These organizational things are a matter of preference, of course. Still, I don't see why you'd have to rewrite things so dramatically. I thought I saw in one of your posts here that you had all the notes in one variable. It seems like this \score block ought to work even when all the notes are held in one variable that has mostly one voice and only occasionally another. Could you attach the actual code of one of your scores (not abbreviated, but the whole score) so I can really see what you're working with? I bet this score block can be modified to work just how you want. The reason I spent so much time figuring out this problem of arpeggiation across voices is because I know that I'll want to do it myself at some point, and in fact have already added one to an existing score where I had just been too lazy to figure out how before (!). Personally, I do break my guitar pieces into separate voices, each held in a different variable, then assemble them onto the staff in the \score block. I didn't do it this way originally but came to the conclusion eventually that it was the way to go, so as to avoid having to do lots of << { } \\ {} >> all over the place. In the orchestral piece I'm engraving right now, I have different variables for the voices of, say, flutes 1-2. Now, a lot of the time, the "fluteOneNotes" variable holds the music for *both* flutes 1 and 2 since they move together with the same rhythms often, so in those places the "fluteTwoNotes" just has full-measure skips ("s1*35" or something) while fluteOneNotes has lots of . At this moment I can't recall precisely why I decided to do it this way instead of just putting the occasional <<{}\\{}>> in there, but I think it had to do with the length of the multivoice passages. If they were any longer than about two or three bars, then I broke them up into different variables for each voice because I don't like having this construct <<{}\\{}>> spread over multiple lines in my text file--too hard to keep track of it. Anyway please do send me a file, even off-list if you want, because I think the problem of making an arpeggio span different voices is solved now and it's gotten into matters of organization instead of technical problems. Best, Jon Tom Cloyd wrote: Jonathan, This looks interesting, and its structure is not hard to discern (for me), but it requires me to split my guitar scores into voices and write them separately from beginning to end. This is possible, but not exactly what one expects to do, except with true multi-voice scores (vocal, orchestral, etc.). Further, I find that splitting a score into voices is at times a formalistic strategy but at other times a practical one. I have several scores which are simply quicker to notate in two voices, except for a few measures which make more sense in three voices. Your approach blows this way of working out of the water. It forces me to split things into a fixed number of voices from beginning to end. I remain puzzled about how hard this is all is. It just seems awfully strained, and I don't yet see a graceful solution - although the formalistic elegance of your suggestion is appealing for certain types of scores. But...is this the best approach available for a guitarist? If so, then I must, in effect, dissect my scores into horizontal layers, and their complexity instantly increases dramatically. I dread this. t. Jonathan Kulp wrote: Ok this is better. I put the \set Staff.connectArpeggios in the score block instead. This is more elegant: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne e4\arpeggio 2 } bass = \relative c' { \voiceTwo d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all c
Re: rolled chords in mulivoice classical guitar score
Sorry. I spoke too soon. This is no solution. It messes up the VISIBLE voicing in the score - the direction of stems. It also cannot be used to arpeggiate across chords where different voices have different durations - unless one breaks notes up into tied groups. This a bad solution. Sigh. I still have no accessible solution. t. Tom Cloyd wrote: Adjunct to my previous post - I'll admit that my Ruby programming experience biases me in the direction of seeking simple, direct, comprehensible, heuristic solutions. I think I may have found one - Building on my notion of using this construct to manage polyphonically structured scores - << {} \\ {} >> it should be possible to restructure voicing so as to force structuring of chords into expressions which allow use of the simple < >|\arpeggio construct. This won't make sense formally, but THAT will not affect the output score, which, after all IS the point of this exercise. I can employ this tactic with my score immediately, and it doesn't require me to completely restructure my scores, or insert all manner of (to me) incomprehensible code or hacks or whatever. I can just get on with notating my scores, which really is my objective. I still hope for a more high level elegant solution, as, I believe, is your inclination as well. I will continue to watch this thread carefully, hoping to see something develop. In truth, if it comes from anyone, I think it's likely to be from you, so...I want to encourage you to keep thinking about it. Thanks for your care and effort on this matter, t. | Jonathan Kulp wrote: Ok this is better. I put the \set Staff.connectArpeggios in the score block instead. This is more elegant: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne e4\arpeggio 2 } bass = \relative c' { \voiceTwo d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear a
Re: rolled chords in mulivoice classical guitar score
Adjunct to my previous post - I'll admit that my Ruby programming experience biases me in the direction of seeking simple, direct, comprehensible, heuristic solutions. I think I may have found one - Building on my notion of using this construct to manage polyphonically structured scores - << {} \\ {} >> it should be possible to restructure voicing so as to force structuring of chords into expressions which allow use of the simple < >|\arpeggio construct. This won't make sense formally, but THAT will not affect the output score, which, after all IS the point of this exercise. I can employ this tactic with my score immediately, and it doesn't require me to completely restructure my scores, or insert all manner of (to me) incomprehensible code or hacks or whatever. I can just get on with notating my scores, which really is my objective. I still hope for a more high level elegant solution, as, I believe, is your inclination as well. I will continue to watch this thread carefully, hoping to see something develop. In truth, if it comes from anyone, I think it's likely to be from you, so...I want to encourage you to keep thinking about it. Thanks for your care and effort on this matter, t. | Jonathan Kulp wrote: Ok this is better. I put the \set Staff.connectArpeggios in the score block instead. This is more elegant: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne e4\arpeggio 2 } bass = \relative c' { \voiceTwo d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c
Re: rolled chords in mulivoice classical guitar score
Jonathan, This looks interesting, and its structure is not hard to discern (for me), but it requires me to split my guitar scores into voices and write them separately from beginning to end. This is possible, but not exactly what one expects to do, except with true multi-voice scores (vocal, orchestral, etc.). Further, I find that splitting a score into voices is at times a formalistic strategy but at other times a practical one. I have several scores which are simply quicker to notate in two voices, except for a few measures which make more sense in three voices. Your approach blows this way of working out of the water. It forces me to split things into a fixed number of voices from beginning to end. I remain puzzled about how hard this is all is. It just seems awfully strained, and I don't yet see a graceful solution - although the formalistic elegance of your suggestion is appealing for certain types of scores. But...is this the best approach available for a guitarist? If so, then I must, in effect, dissect my scores into horizontal layers, and their complexity instantly increases dramatically. I dread this. t. Jonathan Kulp wrote: Ok this is better. I put the \set Staff.connectArpeggios in the score block instead. This is more elegant: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne e4\arpeggio 2 } bass = \relative c' { \voiceTwo d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ {
Re: rolled chords in mulivoice classical guitar score
Ok this is better. I put the \set Staff.connectArpeggios in the score block instead. This is more elegant: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne e4\arpeggio 2 } bass = \relative c' { \voiceTwo d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \set Staff.connectArpeggios = ##t \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ { 2\arpeggio 2 } >> } % % end ly snippet % Tom Cloyd wrote: Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled ar
Re: rolled chords in mulivoice classical guitar score
I think I have it, Tom. Took me a long time, too. Try the code below: % This shows how to use arpeggios that cross % from one voice to another. \version "2.11.62" melody = \relative c'' { \voiceOne \set Staff.connectArpeggios = ##t e4\arpeggio 2 } bass = \relative c' { \voiceTwo \set Staff.connectArpeggios = ##t d2\arpeggio 2 } \score { \context Staff = "guitar" \with { \consists "Span_arpeggio_engraver" } << \context Voice = "melody" { \melody } \context Voice = "bass" { \bass } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 160 4) } } } Tom Cloyd wrote: Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ { 2\arpeggio 2 } >> } % % end ly snippet % Tom Cloyd wrote: Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled arpeggio
Re: rolled chords in mulivoice classical guitar score
Maybe. Probably. If I could get it to work. The problem is that it start a new staff. I need arpeggios across voices in arbitrary locations - of course. Here's the structure of my file: \header stuff staffClassicalGuitar = { my music, in 2 & 3 part voicing} \score { \new Staff { (staff definitions stuff) << \staffClassicalGuitar >> } \layout... \midi... } \paper I got this structure right from the Lilypond 2.11.60 documentation. But I cannot find a place to put this stuff - \new Staff \with { \consists "Span_arpeggio_engraver" } where it will be accepted. Starting a new staff in the middle of a measure makes no sense. OR in the middle of a line. So, I assume the "\with..." thing needs to go into the existing "\new Staff..." I already have. But nothing I try works - it all causes prodigious errors. For example, this is NOT accepted... \score { \new Staff \with { \consists "Span_arpeggio_engraver" \clef treble \key e \minor \time 3/4 \tempo "" 4 = 90 [...] I've tried all the variations I can imagine, and I cannot find any real-world examples that show me the solution, and I cannot make sense of things logically. Why do I have to create a new staff to get a single arpeggio? If I want to do this arbitrarily, why is the setup for it so arcane? I must not be understanding something, but can't see what. Any help would be appreciated (!). t. Can you suggest what I need to do? Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ { 2\arpeggio 2 } >> } % % end ly snippet % Tom Cloyd wrote: Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled arpeggio business is very common in classical guitar music. I'm a little surprised there isn't some simple way to indicate it, but...maybe I'm missing something. Any help would be much appreciated! Tom -- ~ Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist Bellingham, Washington, U.S.A: (360) 920-1226 << [EMAIL PROTECTED] >> (email) << TomCloyd.com >> (website) << sleightmind.wordpress.com >> (mental health weblog) ~ ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: rolled chords in mulivoice classical guitar score
BTW this works with single notes, too. I changed it as follows and the arpeggio still works fine: \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { e'4\arpeggio 2 } \\ { d,2\arpeggio 2 } >> } Jonathan Kulp wrote: This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ { 2\arpeggio 2 } >> } % % end ly snippet % Tom Cloyd wrote: Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled arpeggio business is very common in classical guitar music. I'm a little surprised there isn't some simple way to indicate it, but...maybe I'm missing something. Any help would be much appreciated! Tom -- Jonathan Kulp http://www.jonathankulp.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: rolled chords in mulivoice classical guitar score
Tom Cloyd-2 wrote: > > > I get this error - "warning: cannot find file: `consists' " > > This msg means that Lilypond is looking for a file named "consists" - since you only sent this fragment we cannot check if there is a unwanted \include of such a file or something similar! hth -Eluze -- View this message in context: http://www.nabble.com/rolled-chords-in-mulivoice-classical-guitar-score-tp19953962p19954919.html Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: rolled chords in mulivoice classical guitar score
This snippet appears to do what you're asking: http://lilypond.org/doc/v2.11/input/lsr/lilypond-snippets/Expressive-marks Go down to where it says "Creating arpeggios across notes in different voices." Jon % % Start cut-&-pastable-section % \paper { #(define dump-extents #t) indent = 0\mm line-width = 160\mm force-assignment = #"" line-width = #(- line-width (* mm 3.00)) } \layout { } % % ly snippet: % \sourcefilename "creating-arpeggios-across-notes-in-different-voices.ly" \sourcefileline 0 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it %% This file is in the public domain. \version "2.11.62" \header { lsrtags = "expressive-marks" texidoces = " Se puede trazar un símbolo de arpegio entre notas de distintas voces que están sobre el mismo pentagrama si el grabador @code{Span_arpeggio_engraver} se traslada al contexto de @code{Staff} context: " doctitlees = "Crear arpegios entre notas de voces distintas" texidoc = " An arpeggio can be drawn across notes in different voices on the same staff if the @code{Span_arpeggio_engraver} is moved to the @code{Staff} context: " doctitle = "Creating arpeggios across notes in different voices" } % begin verbatim \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { 4\arpeggio 2 } \\ { 2\arpeggio 2 } >> } % % end ly snippet % Tom Cloyd wrote: Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled arpeggio business is very common in classical guitar music. I'm a little surprised there isn't some simple way to indicate it, but...maybe I'm missing something. Any help would be much appreciated! Tom -- Jonathan Kulp http://www.jonathankulp.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
rolled chords in mulivoice classical guitar score
Greetings! After digging around considerably in the excellent Lilypond documentation (am running 2.11.60 on Kubuntu Linux 8.04.1), and running a number of experiments, I'm defeated on this problem. A simple test case: I have two voices in a single staff. Periodically, I want to indicate that the notea co-occuring at a given point are to be played as a "rolled" arpeggio. There is NO chord notated - just two voices with single notes. Please don't suggest I merge the voices. That's not the solution I'm looking for. P. 90 of Lilypond Notation reference illustrates a rolled arpeggio across different notes in the same staff, but it involves notes in chord clusters. Besides, my Lilypond doesn't at all like this stuff (from the reference): \new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' {... I get this error - "warning: cannot find file: `consists' " So, even if I HAD chord clusters, I'd still have a problem. This rolled arpeggio business is very common in classical guitar music. I'm a little surprised there isn't some simple way to indicate it, but...maybe I'm missing something. Any help would be much appreciated! Tom -- ~ Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist Bellingham, Washington, U.S.A: (360) 920-1226 << [EMAIL PROTECTED] >> (email) << TomCloyd.com >> (website) << sleightmind.wordpress.com >> (mental health weblog) ~ ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user