Re: Multi-measure rest with measure numbers
Jay -Original Message- From: Jay Anderson Date: Sun, 23 Jan 2011 22:53:34 -0700 To: "lilypond-user@gnu.org" Subject: Re: Multi-measure rest with measure numbers >On Sat, Jan 22, 2011 at 2:26 PM, Jay Anderson >wrote: >> Essentially, I want to write R1*10 and have it be equivalent to >> writing something like R1*10_"[101-110]". > >I've gone in and modified multi-measure-rest-engraver.cc to roughly do >what I want. I couldn't figure out how to do it with a separate >engraver (but l don't really know what I'm doing). I'd like to either >be able to get this functionality directly from a lilypond file >(without modifying the source). Any suggestions? Is modifying the >engraver and working on a good patch a better route? Thanks. > You maybe better posting this specific question on lilypond-de...@gnu.org. James > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to tie the last note of one variable to the first note of another variable?
hi, maybe I'm missing something. I did not try your solution, but I suppose it works fine. but how would you append lyrics? \addlyrics gives a syntax error (unexpected \addlyrics), and \lyricsto requires different named voice contexts in which I could not get your solution to work. Cheers Jürgen Xavier Scheuer wrote: > > On 22 January 2011 20:07, James Bailey > wrote: >> >> I haven't checked it, but they're probably in different voice contexts. >> Possible explicity doing a \new Voice = first and \context Voice = first >> where appropriate may solve the problem. > > Yes, or simply putting all in a \new Voice works: > > \version "2.13.46" > > partOne = \relative c' { > c4 e g e~ > } > > partTwo = \relative c' { > e1 > c4 e g e~ > e1 > } > > \score { > \new PianoStaff << > \set PianoStaff.midiInstrument = "acoustic grand" > \new Staff { > \tempo 4 = 120 > \new Voice { > \partOne > \partTwo > } > } > >> > \midi { } > \layout {} > } > > > Cheers, > Xavier > > -- > Xavier Scheuer > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > -- View this message in context: http://old.nabble.com/How-to-tie-the-last-note-of-one-variable-to-the-first-note-of-another-variable--tp30737881p30746146.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: Multi-measure rest with measure numbers
On Sat, Jan 22, 2011 at 2:26 PM, Jay Anderson wrote: > Essentially, I want to write R1*10 and have it be equivalent to > writing something like R1*10_"[101-110]". I've gone in and modified multi-measure-rest-engraver.cc to roughly do what I want. I couldn't figure out how to do it with a separate engraver (but l don't really know what I'm doing). I'd like to either be able to get this functionality directly from a lilypond file (without modifying the source). Any suggestions? Is modifying the engraver and working on a good patch a better route? Thanks. -Jay diff --git a/lily/multi-measure-rest-engraver.cc b/lily/multi-measure-rest-engraver.cc index 3fbcdb6..cddd4f5 100644 --- a/lily/multi-measure-rest-engraver.cc +++ b/lily/multi-measure-rest-engraver.cc @@ -56,6 +56,7 @@ private: Item *last_command_item_; Spanner *last_rest_; Spanner *mmrest_; + Spanner *nums_text_; vector numbers_; vector last_numbers_; @@ -108,6 +109,14 @@ Multi_measure_rest_engraver::process_music () = make_spanner ("MultiMeasureRestNumber", rest_ev_->self_scm ()); numbers_.push_back (sp); + { +Spanner *sp + = make_spanner ("MultiMeasureRestText", rest_ev_->self_scm ()); +sp->set_property ("direction", scm_from_int (DOWN)); +nums_text_ = sp; +numbers_.push_back (sp); + } + if (text_events_.size ()) { for (vsize i = 0; i < text_events_.size (); i++) @@ -253,6 +262,22 @@ Multi_measure_rest_engraver::start_translation_timestep () last->set_property ("text", text); } } + + if(nums_text_ != 0) +{ + if(num <= 1) +{ + nums_text_->suicide (); + nums_text_ = 0; +} + else +{ + char s[100]; + sprintf (s, "[%d-%d]", start_measure_, cur-1); + nums_text_->set_property ("text", ly_string2scm(s)); + nums_text_ = 0; +} +} } last_main_moment_ = now.main_part_; ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Extender style
Undoubtedly, this is a simple request for those who understand Scheme... How can I change the lyric extender from a solid line to a dotted one? Nothing in the LSR or manuals discusses this. Thanks, Robert www.bostonsing.org ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
crowded page
Hello, I'm writing my second orchestral work. There's a place two systems having different height, one low and wthe other high with more instruments. Lilypond always tries to include all two on one page, and therefore generates "couldn't fit music on page". I have to use manual break, but can Lilypond not do this stupid thing itself? This is the place I can find, and when making parts, I can't find anything because only one or two staves are used. How can I provide a small snippet? Using easy notes doesn't generate such issue. Regards Haipeng ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to tie the last note of one variable to the first note of another variable?
On 22 January 2011 20:07, James Bailey wrote: > > I haven't checked it, but they're probably in different voice contexts. > Possible explicity doing a \new Voice = first and \context Voice = first > where appropriate may solve the problem. Yes, or simply putting all in a \new Voice works: \version "2.13.46" partOne = \relative c' { c4 e g e~ } partTwo = \relative c' { e1 c4 e g e~ e1 } \score { \new PianoStaff << \set PianoStaff.midiInstrument = "acoustic grand" \new Staff { \tempo 4 = 120 \new Voice { \partOne \partTwo } } >> \midi { } \layout {} } Cheers, Xavier -- Xavier Scheuer ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Baroque Articulation mark
According to the book "Ornamentation in baroque and post-baroque music" it is an English sign (apparently many traveling musicians from the continent picked up its use) that can variously be interpreted as a mordent or trill so you will have to work out from context which sounds better for each instance you see it. Although it might be Herr Finger (He was a German in the employ of James II) was consistent in his usage. So as with all such ornament go by what sounds best. Shane On Sat, Jan 22, 2011 at 1:00 PM, Laura Conrad wrote: > > I'm transcribing a flute sonata from an eighteenth centuray facsimile, > and there's a decoration that I don't know either what it means (so that > I could translate it into an equivalent modern articulation mark), or > how to produce something that looks like that in lilypond. I'm > attaching a scan. Any help would be appreciated. > > The source is the Performers' Facsimiles edition of Dix Sonates by > Godfrey Finger. > > > > -- > Laura (mailto:lcon...@laymusic.org) > (617) 661-8097 233 Broadway, Cambridge, MA 02139 > http://www.laymusic.org/ http://www.serpentpublications.org > > This song is Copyrighted in U.S., under Seal of Copyright #154085, for > a period of 28 years, and anybody caught singin' it without our > permission, will be mighty good friends of ourn, cause we don't give a > dern. Publish it. Write it. Sing it. Swing to it. Yodel it. We wrote > it, that's all we wanted to do. > > Woody Guthrie > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Bug in ties over barlines
2011/1/23 Xavier Scheuer : > On 23 January 2011 23:09, Joseph Haig wrote: >> { >> \time 4/4 >> aes'1( a') >> aes'~ aes' >> aes'( aes') >> } >> >> I believe that the first and third ties are displayed incorrectly. >> Specifically, the first tie should have a natural in front of the >> second note, > > Nope. > Usual rules specify that an accidental is only valid within _one_ > (the current) measure[1]. The second a') (in the second measure) is not > in the same measure, so no need to print the natural. I don't agree. *Theoretically* accidental is not needed, but if it would be omitted, how can you tell the difference between aes~ | aes and aes( | a) ? In my opinion accidental here is necessary (surely it may be parenthesized). If it's necessary, it should be printed automatically in my opinion. cheers, Janek ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Fermata in four voice pieces: Inner ones visible in single-staff but not visible in combined staffs
2011/1/23 Nils Gey : > Hey people, Hi man! :) > I have vocal pieces which have all fermatas in all voices > so that I can print each voice alone. > But for a reduction to a 2-staff system I only want > the Soprano and Bass fermata visible > (top first and bottom of second staff) but not the inner ones. > Do you know a way to do that? I currently use the voice presets \voiceOne and > \voiceTwo. You may try using tags. See notation reference 3.3 -> Different editions from one source. hope that helps, Janek ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Bug in ties over barlines
On 23 January 2011 23:09, Joseph Haig wrote: > > I have (I believe) found a bug in Lilypond, and I am fairly sure what > it is, but I would like to check with people who have better knowledge > of music theory than I before I submit it to the bug list. In the > following code: > > { >\time 4/4 >aes'1( a') >aes'~ aes' >aes'( aes') > } > > I believe that the first and third ties are displayed incorrectly. Nope. LilyPond is right! First and third ties are not ties, they are slurs. Hence you use '( )' instead of '~'. > Specifically, the first tie should have a natural in front of the > second note, Nope. Usual rules specify that an accidental is only valid within _one_ (the current) measure[1]. The second a') (in the second measure) is not in the same measure, so no need to print the natural. However it is common practice to add a reminder accidental or a cautionary accidental (i.e., an accidental within parentheses) in the second measure. Hence it is important to make the distinction between a tie and a slur. Slurs have no rhythmic meaning, contrary to ties. There is a big warning about this in the notation reference manual. BTW if you replace your slur by a tie you would get a warning and the tie would not be printed! > and the third tie should not have a flat in front of the > second note. That would be true if you used a tie, not a slur (like in your second, real, tie). > The second and third ties should be identical, except for > the type of tie used, while the first one should be different. Am I > correct? Hope that helps. Cheers, Xavier -- Xavier Scheuer ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Bug in ties over barlines
On Jan 23, 2011, at 11:09 PM, Joseph Haig wrote: > I have (I believe) found a bug in Lilypond, and I am fairly sure what > it is, but I would like to check with people who have better knowledge > of music theory than I before I submit it to the bug list. In the > following code: > > { >\time 4/4 >aes'1( a') >aes'~ aes' >aes'( aes') > } > > I believe that the first and third ties are displayed incorrectly. > Specifically, the first tie should have a natural in front of the > second note, and the third tie should not have a flat in front of the > second note.The second and third ties should be identical, except for > the type of tie used, while the first one should be different. Am I > correct? In short, no. There is a difference between a tie, interpreted by lilypond with the ~ symbol, and a slur, interpreted in lilypond by the ( ) symbols. You can find more information about the differences between them in your music theory books, but in short: • A tie is used to connect the same note : { a2~ a } • A slur is used to connect different notes: { g2( a) } • When a note which has been modified by an accidental has a tie, it usually does not receive another accidental: { aes2~ aes } • Accidentals usually only affect notes in one measure: { aes1 | a } ° The preceding holds true even if the notes are connected by a slur: { aes1( | a) } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Bug in ties over barlines
2011/1/23 Joseph Haig : > I have (I believe) found a bug in Lilypond, and I am fairly sure what > it is, but I would like to check with people who have better knowledge > of music theory than I before I submit it to the bug list. In the > following code: > > { > \time 4/4 > aes'1( a') > aes'~ aes' > aes'( aes') > } > > I believe that the first and third ties are displayed incorrectly. They are slurs (the ones made with parentheses). Slurs and ties look the same, but musically and logically they are quite different. > Specifically, the first tie should have a natural in front of the > second note, Yes, i think that there should be a natural (perhaps parenthesized) here - to make sure that noone mistakes this slur for a tie. > and the third tie should not have a flat in front of the > second note.The second and third ties should be identical, except for > the type of tie used, while the first one should be different. Am I > correct? No, here you are not right in my opinion. There is simply no reason to put a slur here, you should write aes'~ aes' and not bother with ( ). cheers, Janek ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Bug in ties over barlines
I have (I believe) found a bug in Lilypond, and I am fairly sure what it is, but I would like to check with people who have better knowledge of music theory than I before I submit it to the bug list. In the following code: { \time 4/4 aes'1( a') aes'~ aes' aes'( aes') } I believe that the first and third ties are displayed incorrectly. Specifically, the first tie should have a natural in front of the second note, and the third tie should not have a flat in front of the second note.The second and third ties should be identical, except for the type of tie used, while the first one should be different. Am I correct? Thanks, Joe ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Using lyrics in a markup
2011/1/23 Jan-Peter Voigt : > Hello and thank you Jakob, hello list, > > this piece is a great work. It compiles well in 2.13(.47 lilybuntu) and adds > a very useful function to lily! > The .ly is attached again, because I think it is good to have it on the > devel-list. > I would like to add it to LSR to have it in the main distro once. But it > doesn't compile in 2.12(.3) stable, so it can't be uploaded right now. > What else should we do now? > > Lilypond 2.12 complains about these lines: > ... > #(define-markup-command (verse layout props lyrics) (ly:music?) > #:properties ((display-nl #f) > (make-line make-justify-markup)) > ... > > by the way: Is this #:properties(()) notation a new functionality in 2.13? I > haven't seen it before? You're probably right about the #:properties syntax -- it should be easy enough to swap make-line and display-nl with their default values (make-justify-markup resp. #f) in the macro code to make it compile in 2.12 (which I don't have installed so I'm not gonna test it) ... ? > And is there a tutorial on all those comma- and accent-notations like in > \override #`(make-line . ,make-wordwrap-markup) ? > I haven't found it in my scheme-tutorials. I think it's mostly connected to macro definitions, as a shortcut to insert references into lists. If you write \override #'(make-line . make-wordwrap-markup) you get en error: Wrong type to apply: make-wordwrap-markup because then the value of the property is set to the SYMBOL make-wordwrap-markup rather than FUNCTION referred to by that symbol. As far as I know, `(make-line . ,make-wordwrap-markup) is the same as (cons 'make-line make-wordwrap-markup), just like '(this that the-other) is the same as (list 'this 'that 'the-other). The backtick ` is called "quasiquote" an the comma is "unquote". Btw in that last comment in the file, it should read "\verse #words" instead of "\verse \words" of course, please correct that if you put it on LSR Regards Jakob. > > Best regards, > Jan-Peter. > > Am 23.01.2011 um 14:15 schrieb jakob lund: > >> oops, forgot to reply to list (sorry about the extra spam Jan-Peter) > I don't mind ;-) >> 2011/1/23 jakob lund : >>> Hi again >>> >>> After fiddling some more with this, I came up with a simple solution. >>> Instead of a string, a LineBreakEvent is inserted into the lyric -- >>> neither \lyricmode or \addlyrics complain about this, and the events >>> doesn't seem to appear in the music output. This removes the need for >>> the filter function. >>> >>> The lyrics->list function then recognizes the placeholders and >>> replaces them with occurrences of the indicator string, which the >>> verse command then uses to split the lines. >>> >>> It seems to work well, try it out. >>> > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Using lyrics in a markup
Hello and thank you Jakob, hello list, this piece is a great work. It compiles well in 2.13(.47 lilybuntu) and adds a very useful function to lily! The .ly is attached again, because I think it is good to have it on the devel-list. I would like to add it to LSR to have it in the main distro once. But it doesn't compile in 2.12(.3) stable, so it can't be uploaded right now. What else should we do now? Lilypond 2.12 complains about these lines: ... #(define-markup-command (verse layout props lyrics) (ly:music?) #:properties ((display-nl #f) (make-line make-justify-markup)) ... by the way: Is this #:properties(()) notation a new functionality in 2.13? I haven't seen it before? And is there a tutorial on all those comma- and accent-notations like in \override #`(make-line . ,make-wordwrap-markup) ? I haven't found it in my scheme-tutorials. Best regards, Jan-Peter. Am 23.01.2011 um 14:15 schrieb jakob lund: > oops, forgot to reply to list (sorry about the extra spam Jan-Peter) I don't mind ;-) > 2011/1/23 jakob lund : >> Hi again >> >> After fiddling some more with this, I came up with a simple solution. >> Instead of a string, a LineBreakEvent is inserted into the lyric -- >> neither \lyricmode or \addlyrics complain about this, and the events >> doesn't seem to appear in the music output. This removes the need for >> the filter function. >> >> The lyrics->list function then recognizes the placeholders and >> replaces them with occurrences of the indicator string, which the >> verse command then uses to split the lines. >> >> It seems to work well, try it out. >> lyrics-to-text.ly Description: Binary data ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Fermata in four voice pieces: Inner ones visible in single-staff but not visible in combined staffs
Hey people, I have vocal pieces which have all fermatas in all voices so that I can print each voice alone. But for a reduction to a 2-staff system I only want the Soprano and Bass fermata visible (top first and bottom of second staff) but not the inner ones. Do you know a way to do that? I currently use the voice presets \voiceOne and \voiceTwo. Nils ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Pentatonic Diatonic Transposition?
On Jan 23, 2011, at 6:21 AM, Patrick Schmidt wrote: > nice work! I just think that the name modal transposition is a little > misleading in this case. At first I thought that I could change the mode of a > tune with your function e.g. transpose music from c\major to c\minor or > something like that. That's not changing the mode of a song. That's changing the key. C major has no sharps or flats, C (natural) minor has three flats (C harmonic minor and C melodic minor are special cases in terms of notation). Modes are within a single key: Ionian, Dorian, Phyrgian, Lydian, Mixolydian, Aeolian, Locrian starting on the 1st through the 7th scale steps with in the key, respectively. > I just had the idea that it might be useful to add some more scales to the > standard LP mode names (\ionian, \dorian ...) such as e.g. \majorPenta, > \minorPenta. Maybe there's a way to extend your code and/or the function of > the existing \transpose-command to also be able to do real modal > transpositions such as e.g. > > > \transpose c\ionian c\locrian \mymusic %or > \transpose c\majorPenta c\minorPenta \mymusic % etc. > \transpose c a \pentatonicmusic %or > > > This way users wouldn't have to declare scales and when no modal change is > intended we could just use \transpose. Changing from C Ionian to C Locrian is a key change, not a modal change. C Locrian is the seventh mode of Db major. C major pentatonic is a different key than C minor pentatonic, the latter having the same key signature as Eb. Since "modal transposition" necessarily happens within a single key, I am not sure that "transposition" is the correct terminology (IMHO modes are largely a waste of time for performing musicians but that's a whole 'nother discussion that doesn't belong here). ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Merging Rests in Single Staff with more than one 'voice'
Hello, -Original Message- From: Phil Holmes Date: Sun, 23 Jan 2011 13:30:50 + To: James Lowe , "lilypond-user@gnu.org" Subject: Re: Merging Rests in Single Staff with more than one 'voice' >- Original Message - >From: "James Lowe" >To: >Sent: Saturday, January 22, 2011 5:52 PM >Subject: Merging Rests in Single Staff with more than one 'voice' > > >> Hello, >> >> I don't often use multiple voices in a single staff, so am a bit >> unfamiliar and am still finding my way. >> >> However I cannot easily see how I can take two 'voices' each from a >>single >> source such that when they are combined on a single staff the rests that >> both voices share are only printed once. >> >> For example >> >> >> \musicSourceOne = { a4 b c d | R1*4 | a4 r b r2 } >> \musicSourceTwo = { f4 r f r | R1*4 | f4 f g r2 } >> >> << \musicSourceOne // \musicSourceTwo >> >> >> Is about as basic as it gets. >> >> However in measures two and three both the Multimeasure rest and the r2 >> are printed for each voice. >> >> I looked for a merge-rest type function and the LSR but couldn't see an >> easy way to do this without more complex editing. >> >> Did I miss something or am I going to have to make 'skips' in one voice >> and manually position the r2 so it sits on the correct line 'as if' it >> were only printed once in the other? >> >> Thanks for your help. >> > >> James > > >I do this quite a bit, and I always use explicitly instantiated voices, >and >turn voiceOne and voiceTwo on and off (with oneVoice) as needed. I use >skips when there is really only one voice. You can do what others show >with >skips and explicitly placed rests, or you could override the rest/MMR >rest >with something like: > >\override MultiMeasureRest #'staff-position = #0 >\override Voice.Rest #'staff-position = #-0.1 It's trickier to do this for what I usually need to do. I often take two independent systems and combine them if for instance I have a second brass player sitting next to me. That is if I am on my own I just have a single system and I'm fine but occasionally the piece has a nice counterpoint to the melody in some sections and while we could just play the same melody, it's better for the pieces if we both have complimentary lines. Or as is often the case the melody/range is often too complicated to play for my side-kick (I also play in a 'beginner' windband to help shore-up the brass and keep them and the 'basses' going - trumpets are loud : ) and often have the melody). Having a simple line for the beginners to play as well is good for them to learn to play in an ensemble and for the tune. However often this only occurs in small sections of the whole piece (the Coda for instance, if we need to substitute a missing instrument or if that run of triplets is too complicated then I can give simpler lines), and so having two voices in the same system is easier for us both and especially with less sheets of paper, on the music stand!. So being able to have a 'merge' like this is really useful for me without having to explicitly turn on and off the voices each time - sometimes this means I need to re-write the .ly file. I'm sure there are other cases and I can understand why (singing for instance or even piano music where each hand is on the same staff) why this shouldn't be default behaviour. James > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Baroque Articulation mark
>> The source is the Performers' Facsimiles edition of Dix Sonates by >> Godfrey Finger. > > May be a trill judging from the commentary in the "Ornaments" > article in Grove's and the chart at the end of the article. But in > that source and in "The New Harvard Dictionary of Music," these > paired lines are described as an English ornament (and in Grove's, > Dutch and northern German) from the late 16th and early 17th century > and found in keyboard music. I see something similar in the MGG, Vol. 9, p. 1426 (Sachteil). Fr. Geminiani (1751) describes it as `a beat'. Let's assume that the double slash is available as a lilypond macro called \beat, then these two are described as being equivalent: g4\beat g64[( fis g fis g fis g fis g fis g]) Werner ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Baroque Articulation mark
Laura Conrad wrote: > I'm transcribing a flute sonata from an eighteenth centuray facsimile, > and there's a decoration that I don't know either what it means (so that > I could translate it into an equivalent modern articulation mark), or > how to produce something that looks like that in lilypond. I'm > attaching a scan. Any help would be appreciated. > > The source is the Performers' Facsimiles edition of Dix Sonates by > Godfrey Finger. May be a trill judging from the commentary in the "Ornaments" article in Grove's and the chart at the end of the article. But in that source and in "The New Harvard Dictionary of Music," these paired lines are described as an English ornament (and in Grove's, Dutch and northern German) from the late 16th and early 17th century and found in keyboard music. Hope this points you in the right direction. Mark ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Pentatonic Diatonic Transposition?
On Sun, Jan 23, 2011 at 7:21 AM, Patrick Schmidt wrote: > Hi Michael, > > nice work! I just think that the name modal transposition is a little > misleading in this case. Thanks, Patrick! I agree that the name may be confusing. I considered calling it something like \scalarImitation, since that's also musically correct description of what it does. FWIW, if you wanted to recast a passage in C-major to c-minor (aeolian) you could use it this way: cAeolian = { a b c d e f g } \transpose a c \modalTranspose c a \cAeolian \somemusic provided, of course, that \somemusic contained only notes in the key of C. I'm pressed for time today, but will try to give a more thoughtful reply to the other points in your message this evening. Perhaps some others on the list will weigh in with more suggestions in the meantime. Cheers, Mike ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Merging Rests in Single Staff with more than one 'voice'
- Original Message - From: "James Lowe" To: Sent: Saturday, January 22, 2011 5:52 PM Subject: Merging Rests in Single Staff with more than one 'voice' Hello, I don't often use multiple voices in a single staff, so am a bit unfamiliar and am still finding my way. However I cannot easily see how I can take two 'voices' each from a single source such that when they are combined on a single staff the rests that both voices share are only printed once. For example \musicSourceOne = { a4 b c d | R1*4 | a4 r b r2 } \musicSourceTwo = { f4 r f r | R1*4 | f4 f g r2 } << \musicSourceOne // \musicSourceTwo >> Is about as basic as it gets. However in measures two and three both the Multimeasure rest and the r2 are printed for each voice. I looked for a merge-rest type function and the LSR but couldn't see an easy way to do this without more complex editing. Did I miss something or am I going to have to make 'skips' in one voice and manually position the r2 so it sits on the correct line 'as if' it were only printed once in the other? Thanks for your help. > James I do this quite a bit, and I always use explicitly instantiated voices, and turn voiceOne and voiceTwo on and off (with oneVoice) as needed. I use skips when there is really only one voice. You can do what others show with skips and explicitly placed rests, or you could override the rest/MMR rest with something like: \override MultiMeasureRest #'staff-position = #0 \override Voice.Rest #'staff-position = #-0.1 HTH -- Phil Holmes ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Using lyrics in a markup
oops, forgot to reply to list (sorry about the extra spam Jan-Peter) 2011/1/23 jakob lund : > Hi again > > After fiddling some more with this, I came up with a simple solution. > Instead of a string, a LineBreakEvent is inserted into the lyric -- > neither \lyricmode or \addlyrics complain about this, and the events > doesn't seem to appear in the music output. This removes the need for > the filter function. > > The lyrics->list function then recognizes the placeholders and > replaces them with occurrences of the indicator string, which the > verse command then uses to split the lines. > > It seems to work well, try it out. > > 2011/1/21 Jan-Peter Voigt : >> Hello again, >> >> so you would have to check (pseudo-scheme): >> ... >> (if (and (string? x)(string=? x >> "")) >> ( ...)) > > There is no \linebreak or equivalent command in \markup, so what > happens is that the list of syllables is cut at every occurrence of > the indicator string, producing a list of lists. Then, a markup > function is mapped over this list of lists, producing a list of > markups; the resulting list of markups is then passed to > make-column-markup, which produces the line breaks :-) > > :-) > > Jakob. > >> ... >> >> and this would probably be done in the (reduce-hyphens text)-method/function. >> >> If this works one could define a variable with the lyrics including the >> newlines. Then use it filtered with \lyricsto and markedup with \verse. >> >> Best regards, >> Jan-Peter. >> >> >> Am 20.01.2011 um 16:35 schrieb jakob lund: >> >>> 2011/1/20 Jan-Peter Voigt : > What do you think of allowing to define a additional "line break > character", > for example ¶, which could be filtered out within \lyricsmode, and used > as a > newline in the \verse? Thats a good idea! > So your input will look like > \override Lyrics #'ignore-chars= #'(¶) % this is pseudo code! >>> >>> I guess this would mean that the Lyrics context would have to filter >>> out the ¶ as it goes. A simpler version of the same idea could be >>> >>> nl = \lyricmode { } >>> >>> and then use >>> >>> words = \lyricmode { Toch -- ter \nl Zi -- on } >>> >>> then add a filter (a music function that calls music-filter) to use >>> with addlyrics, like this >>> >>> \addlyrics \removeLineBreakIndicators \words >>> >>> and then update the \verse macro to produce a new line for every >>> occurence of the indicator. >>> that should be doable... >>> >>> Jakob. >> >> >> > \version "2.13" #(define linebreakindicator "\\") % \nl command that inserts the placeholder event into a lyrics nl = #(make-music 'LineBreakEvent) %% Function to extract strings from lyrics. % #(define (lyrics->list lyrics) "Return only syllables and hyphens from @code{lyrics}." (if (ly:music? lyrics) (cond ((eq? (ly:music-property lyrics 'name) 'LyricEvent) (ly:music-property lyrics 'text)) ((eq? (ly:music-property lyrics 'name) 'HyphenEvent) (list "--")) ((eq? (ly:music-property lyrics 'name) 'LineBreakEvent) (list linebreakindicator)) (else (let ((elt (ly:music-property lyrics 'element)) (elts (ly:music-property lyrics 'elements))) (if (ly:music? elt) (lyrics->list elt) (if (null? elts) '() (map (lambda(x) (lyrics->list x)) elts) ) '())) #(define (flatten-nonmarkup-list x) "Unnest list, but don't flatten markup constructs!" (cond ((null? x) '()) ((not (pair? x)) (list x)) (else (append (if (markup? (car x)) (list (car x)) (flatten-nonmarkup-list (car x))) (flatten-nonmarkup-list (cdr x)) #(define (reduce-hyphens text) (let eat ((wd (car text)) (wds (cdr text))) (cond ((null? wds) (list wd)) ((and (equal? "--" (car wds)) (not (null? (cdr wds (eat (markup #:concat (wd (cadr wds))) (cddr wds))) (else (cons (markup wd) (eat (car wds) (cdr wds))) #(define (split-on predicate? l) (let loop ((h '()) (r l)) (cond ((null? r) (if (null? h) h (list (reverse h ((predicate? (car r)) (if (null? h) (loop h (cdr r)) (cons (reverse h) (loop '() (cdr r) (else (loop (cons (car r) h) (cdr r)) #(define-markup-command (verse layout props lyrics) (ly:music?) #:properties ((display-nl #f) (make-line make-justify-markup)) "Verse command that marks
RE[2]: Merging Rests in Single Staff with more than one 'voice'
You can try this: \musicSourceOne = { a4 b c d | a1\rest | a4 r b r2 } \musicSourceTwo = { f4 r f r | s1 | f4 f g r2 } --- Frank >2011/1/22 David Raleigh Arnold : >> On Saturday 22 January 2011 12:52:54 James Lowe wrote: >>> Hello, >>> >>> I don't often use multiple voices in a single staff, so am a bit >>> unfamiliar and am still finding my way. >> >>> However I cannot easily see how I can take two 'voices' each from a >>> single source such that when they are combined on a single staff the >>> rests that both voices share are only printed once. >>> >>> For example >>> >>> >>> \musicSourceOne = { a4 b c d | R1*4 | a4 r b r2 } >>> \musicSourceTwo = { f4 r f r | R1*4 | f4 f g r2 } >> >> Your example is very simple, so merging is good or at least not >> bad. In single staff polyphony which is not very simple, merging >> rests is a very bad idea because it ruins the integrity of the >> voices and can create arresting ambiguities. It ought not to be a >> candidate for default behavior with the notable exception of the >> whole measure or multimeasure rest, which cannot easily be >> misread. > >Yes, i agree that merging all rests shouldn't be default behaviour >(with the exception of multi-measure rests). >However, having the merge-rests function added to lilypond itself (se >we can use it when we want without needing to write it by hand) would >be very good! > >cheers, >Janek > >___ >lilypond-user mailing list >lilypond-user@gnu.org >http://lists.gnu.org/mailman/listinfo/lilypond-user Mit freundlichen Gr��en / Best regards Frank Weichert LPP GmbH LeiterPlatten Pfullingen GmbH Sitz der Gesellschaft / Registered Office: Sandwiesenstr.3, 72793 Pfullingen Registergericht / Register Court: AG Stuttgart HRB 730851 Gesch�ftsf�hrung / Board of Directors: Bernd Zevens, Hartmut Brandt, Norbert Grauer ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to start translate documents without running autoconf.sh
2011/1/23 Ben Luo : > Dear James, > > I translated priority 1 files to Chinese. How can I submit to key > person? I can not find the way. Send them to me, I'll tell you if anything is missing. And please, learn how to make patches soon. -- Francisco Vila. Badajoz (Spain) www.paconet.org , www.csmbadajoz.com ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to start translate documents without running autoconf.sh
Dear James, I translated priority 1 files to Chinese. How can I submit to key person? I can not find the way. Best regards, Ben Luo On Fri, Jan 21, 2011 at 6:44 PM, James Lowe wrote: > Ben, > >> -Original Message- >> From: lilypond-user-bounces+james.lowe=datacore@gnu.org >> [mailto:lilypond-user-bounces+james.lowe=datacore@gnu.org] On >> Behalf Of Ben Luo >> Sent: 21 January 2011 05:45 >> To: lilypond-user@gnu.org >> Subject: How to start translate documents without running autoconf.sh >> >> Dear All, >> >> I prepare to translate some documents to Chinese. But after git checkout, I >> have to ./autoconf.sh. The script mentioned many lib/.hh file not to find. or >> old. I use debian/ubuntu, but the version may be older than compiling code. >> But I just want to translate documents. How can Ido ? >> > > If you have not already, please see the contributor guide section: > > http://lilypond.org/doc/v2.13/Documentation/contributor/translating-the-documentation > > and also for doc work in general: > > http://lilypond.org/doc/v2.13/Documentation/contributor/compiling > > http://lilypond.org/doc/v2.13/Documentation/contributor/documentation-work > > James > > > > > ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Pentatonic Diatonic Transposition?
Hi Michael, nice work! I just think that the name modal transposition is a little misleading in this case. At first I thought that I could change the mode of a tune with your function e.g. transpose music from c\major to c\minor or something like that. I just had the idea that it might be useful to add some more scales to the standard LP mode names (\ionian, \dorian ...) such as e.g. \majorPenta, \minorPenta. Maybe there's a way to extend your code and/ or the function of the existing \transpose-command to also be able to do real modal transpositions such as e.g. \transpose c\ionian c\locrian \mymusic %or \transpose c\majorPenta c\minorPenta \mymusic % etc. \transpose c a \pentatonicmusic %or This way users wouldn't have to declare scales and when no modal change is intended we could just use \transpose. just my 2 cents... Thanks, patrick Am 23.01.2011 um 00:45 schrieb Michael Ellis: On Sat, Jan 22, 2011 at 12:09 AM, Daniel wrote: Lilypond is awesome! I agree! This topic was interest to me, so here's a cut at a working solution based on my earlier post. The attached file, modaltranspose.ly defines a new music function, \modalTranspose that works almost like the normal chromatic \transpose but takes one extra argument: the scale to use for the transposition. Here's the usage example from the file %% -- Demo -- %% Just to show it works with normally transposed music, too:-) dPentScale = \transpose c d { c'4 d' e' g' a'1 } mymotive = \transpose c d { c'4 c' e' d' c'1} %% And here's an octatonic example cOctatonicScale = {c'4 d' ees' f' ges' aes' a' b'} octamotive = {c'4 ees' ges' a' b' aes' f' d' } \score { \new Staff { \tempo "" 2=120 \mark "Pentatonic" \dPentScale \mymotive \modalTranspose d' e' \dPentScale \mymotive \mymotive \break \mark "Octatonic" \cOctatonicScale \octamotive \modalTranspose c' a' \cOctatonicScale \octamotive \octamotive {ees'1} %% Can't stand not resolving :-) } \layout {} \midi {} } %% --- Seems to work with arbitrary scales, but be aware that the code will (intentionally) throw an error if any pitch in what you're transposing is not in the scale. I'm not sure what other result is reasonable for arbitrary scales. The code Probably has some other bugs, too :-) I'm open to suggestions for improvement before I submit it to LSR. Cheers, Mike___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to tie the last note of one variable to the first note of another variable?
Hi, you may tie the e note in partOne to a e1*0 note, like this: partOne = \relative c' { c4 e g e~ e1*0 } I did not yet understand why this works, but it does, even in more complex situations like ties across voices. Note that the e1*0 note must have the same value as the e1 note in partTwo. Earlier on, I got advice from this forum to either move the tieEngraver from voice context to staff context. This works, but has side effects if you have parallel voices -- I could not manage having two voices printed in different colors, the ties would always print in the same color. The other solution was adding hidden notes with \hideNotes, with other side effects. Cheers Jürgen Disc Magnet wrote: > > partOne = \relative c' { > c4 e g e~ > } > > partTwo = \relative c' { > e1 > c4 e g e~ > e1 > } > > \score { > \new PianoStaff << > \set PianoStaff.midiInstrument = "acoustic grand" > > \new Staff { > \tempo 4 = 120 > \partOne > \partTwo > } > >> > \midi { } > \layout {} > } > > I expect the last e of partOne and first e of partTwo to be tied > together. However, it doesn't happen so. What is the right way to do > this? > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-user > > -- View this message in context: http://old.nabble.com/How-to-tie-the-last-note-of-one-variable-to-the-first-note-of-another-variable--tp30737881p30740914.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: Adding space (padding) between notes
On 23 January 2011 05:21, Michael Dykes wrote: > > I am trying to fit some markups in my score, and would like for all of them > to be on the same "line". Is there a way (without shortening the markups) to > "widen" the first measure, or put padding between the first two notes of the > score. Thanks. I would have preferred something less "hack" but to have your 2 first markups on the same line (and the first markup not overlapping the first measure), the following code gives good result with 2.13.46. soprano = \relative c'' { \global % Music follows here. \override Score.NonMusicalPaperColumn #'padding = #4 \once \override Score.RehearsalMark #'self-alignment-X = #LEFT \mark \markup { \italic \small "P: The blessing of the Lord ..." } f,2 f1 \finalis \newSpacingSection \revert Score.NonMusicalPaperColumn #'padding \once \override Score.RehearsalMark #'padding = #2.4 \once \override Score.RehearsalMark #'self-alignment-X = #LEFT \mark \markup { \italic \small "P: Glory to Thee, O Christ God ..." } f4 f f g a a a a a a a a a a a a a \divisioMinima a4 a a a a a a a a g a2 a4 a a2 \divisioMaior f4 g a a a a a a a g a2 a1 \divisioMaxima bf2 a4(g) f1 \finalis } Cheers, Xavier -- Xavier Scheuer ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user