Re: Multimeasure rests over a cadenza
At Sun, 8 Apr 2012 09:39:13 -0500, David Nalesnik wrote: > Hi James, > Possibly the following thread will be useful to you: > http://www.mail-archive.com/lilypond-user@gnu.org/msg68492.html Thanks, this is a lot closer. (By the way, it seems that mail-archive is on the wrong side of the Great Firewall of China -- not a big deal, but it did make it less convenient to access the link. Speaking just for myself, I'd prefer links to gmane or nabble archives.) It's "closer" -- I'm now getting bar check failures only at the ends of the two cadenzas, where I think I was getting more of them before. But, it's still failing and the multi-measure rests are drawn in the wrong place. So, a more illustrative example, using actual notes from my piece and replicating the context (one bar of cadenza, one metered bar, and another bar of cadenza). It looks to me like time advances the correct number of beats, but LP doesn't recognize that it should roll over to the next bar at that point. I'm guessing that for each cadenza + following-bar pair, where there should be two full-bar rests, only one is being drawn (probably the first one, for the cadenza) and the other one is being dropped because of the bar check failure. Then it draws the single full-bar rest in the middle of the span for /both/ bars. It doesn't help to include an explicit \bar "|" after the \cadenzaToMusic calls. LP output. For debugging I restored the (format...) call, which shows that the duration of both cadenzas is being calculated correctly. Parsing...factor : # factor : # Interpreting music... :2:32: warning: barcheck failed at: 5/4 \set Timing.measureLength = \lilyvartmpbg :2:32: warning: barcheck failed at: 9/8 \set Timing.measureLength = \lilyvartmpbg Preprocessing graphical objects... Finding the ideal number of pages... Fitting music on 1 page... Drawing systems... Thanks, James \version "2.14.2" \include "english.ly" cadenzaToMusic = #(define-music-function (parser location cadenzaMusic music) (ly:music? ly:music?) "Adjust the length of `music and the measureLength, to fit the length of `cadenzaMusic" (let* ((clen (ly:music-length cadenzaMusic)) (mlen (ly:music-length music)) (factor (ly:moment-div clen mlen)) (compressed (ly:music-compress music factor))) (format #t "factor : ~a\n" factor) #{ \set Timing.measureLength = $clen $compressed \unset Timing.measureLength #})) cadenzaC = \relative c''' { \cadenzaOn b2 ^\markup { \italic "cadenza" } ~ \oneVoice b8 \fermata [a8] ) e'16 ( [a, fs a] \voiceOne b4 \fermata ~ \cadenzaOff \bar "|" } cadenzaD = \relative c''' { \cadenzaOn b4 ~ ^\markup { \italic "cadenza" } b8 \fermata [a8] ) g16 ( [fs e d e fs ] e4 ) \fermata ~ \cadenzaOff \bar "|" } \score { << \new Staff { \key d \major \numericTimeSignature R1 \cadenzaToMusic \cadenzaC R1 R1 \cadenzaToMusic \cadenzaD R1 R1 } \new Staff \relative c''' { \key d \major \numericTimeSignature r2 r4 a4 ( \cadenzaC b1 ~ \cadenzaD e,4. r8 r2 } >> } -- James Harkins /// dewdrop world jamshar...@dewdrop-world.net http://www.dewdrop-world.net "Come said the Muse, Sing me a song no poet has yet chanted, Sing me the universal." -- Whitman blog: http://www.dewdrop-world.net/words audio clips: http://www.dewdrop-world.net/audio more audio: http://soundcloud.com/dewdrop_world/tracks ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Automatic beams
On 08/04/12 18:39, Helge Kruse wrote: Hello, I need to typeset a piece but want to keep the original beaming. The beams that Lilypond uses per default does not match. I know I can add the [] to manually control beaming, but I hope I can do this more declarative as described in notation reference "1.2.4 Beams". In this measure I want to break up the sextuplets in treble to a 3+3 group. The semiquavers should be grouped 2+2. The quavers in the base staff should be grouped 2+2. \version "2.14.2" changeBeaming = \set beamExceptions = #'((end . (((1 . 8) . (2 2 2 2)) ((1 . 16) . (2 2 2 2 2 2 2 2)) ((1 . 24) . (3 3 3 3 3 3 3 3) revertBeaming = \set beamExceptions = #'() \new PianoStaff << \new Staff { \time 4/4 \key g \major \relative c'' { \changeBeaming \set tupletSpannerDuration = #(ly:make-moment 1 8) \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \relative c { \changeBeaming fis8 d' g, d' a d b d | % 24 } } >> ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: musicxml2ly
Hello, On 8 April 2012 17:47, Martin Tarenskeen wrote: ... > Or are many > problems already known? http://code.google.com/p/lilypond/issues/list?can=2&q=musicxml&sort=priority&colspec=ID&x=type&y=priority&mode=grid&cells=tiles There is also this recent - seemingly unfinished patch http://codereview.appspot.com/5697059/ And see http://lists.gnu.org/archive/html/lilypond-devel/2011-12/msg00025.html http://lists.gnu.org/archive/html/lilypond-user/2011-11/msg00280.html This will give you an idea of the current issues and the effort still required. James ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
musicxml2ly
Hi, There have been many requests from several people for Lilypond-to-MusicXML conversion. I am not going to repeat that question. We do have a musicxml2ly script. I have tried it with many example xml and mxl files from here: http://www.makemusic.com/musicxml/music/example-set and here: http://www.wikifonia.org/ And the lilypond results are sometimes not quite perfect - which is acceptable - but sometimes really bad or even useless. The good news is that in many cases only a little editing of the .ly file is required to turn a bad conversion into a good one. For example, all lead sheets from Wikifonia that I have tried have the Chords printed below instead of above the staff. The MakeMusic/Recordare example set reveals some more serious problems like wrong stem directions, duplicated text and dynamic markings, collisions. Is anyone currently actively working on musicxml2ly ? Does it help if I write a more detailed description of errors I encounter when I try to convert real life examples of MusicXML files? Or are many problems already known? -- MT ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Automatic beams
Helge Kruse-4 wrote: > > > In this measure I want to break up the sextuplets in treble to a 3+3 > group. The semiquavers should be grouped 2+2. > The quavers in the base staff should be grouped 2+2. > > > I can change the beaming with beatStructure, but baseMomemt doesn't > change anything. I also tried with Staff and Voice context but got the > same result. > > How can I achieve the described grouping? > I vaguely remember you have to fully override the beamings' settings: \new Staff { \time 4/4 \key g \major \clef bass \set Timing.timeSignatureFraction = #'(4 . 4) \set Timing.beamExceptions = #'() \set Timing.baseMoment = #(ly:make-moment 1 4) \set Timing.beatStructure = #'(1 1 1 1) \relative c {fis8 d' g, d' a d b d | % 24 } } produces the wanted beaming in the 2nd staff. for the first staff you'd need a rule for notes like 16th and shorter - I found this in the NR: \set Timing.beamExceptions = #'( ;start of alist (end . ;entry for end of beams ( ;start of alist of end points ((1 . 16) . (2 2 2 2)) ;rule for 1/32 beams -- end each 1/16 ))) hth Eluze -- View this message in context: http://old.nabble.com/Automatic-beams-tp33651744p33652027.html Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Multimeasure rests over a cadenza
Am 8. April 2012 16:39 schrieb David Nalesnik : > Possibly the following thread will be useful to you: > http://www.mail-archive.com/lilypond-user@gnu.org/msg68492.html > > HTH, > David Hi David, you were faster. :)) -Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Automatic beams
On 8-4-2012 16:26, Hans Aikema wrote: On 8-4-2012 12:50, Helge Kruse wrote: Hello, I need to typeset a piece but want to keep the original beaming. The beams that Lilypond uses per default does not match. I know I can add the [] to manually control beaming, but I hope I can do this more declarative as described in notation reference "1.2.4 Beams". In this measure I want to break up the sextuplets in treble to a 3+3 group. The semiquavers should be grouped 2+2. The quavers in the base staff should be grouped 2+2. \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \set Timing.baseMoment = #(ly:make-moment 1 16) \set Timing.beatStructure = #'(2 2 2 2) \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.baseMoment = #(ly:make-moment 1 8) \set Timing.beatStructure = #'(2 2 2 2) \relative c { fis8 d' g, d' a d b d | % 24 } } >> I can change the beaming with beatStructure, but baseMomemt doesn't change anything. I also tried with Staff and Voice context but got the same result. How can I achieve the described grouping? Regards, Helge ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user . The way to get the desired grouping would be overriding the beamExceptions: (see also NR chapter 1.2.4: http://lilypond.org/doc/v2.14/Documentation/notation/beams#setting-automatic-beam-behavior) ... On second thought it can be done even less complex than my previous mail: Clear out the beamExceptions that are default present in the Timing context due to 4/4 time signature and only set a baseMoment/beatStructure for the treble staff (without exceptions the bass staff is correctly divided into quarters) Oh and of course the beatStructure for a 4/4 measure using 1/16 as baseMoment should be 8 tuplets, not 4, alhough 4 works fine as well): (4/4 == 16/16 == 2/16 * 8) \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \set Staff.baseMoment = #(ly:make-moment 1 16) \set Staff.beatStructure = #'(2 2 2 2 2 2 2 2) \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.beamExceptions = #'() \relative c { fis8 d' g, d' a d b d | % 24 } } >> regards, Hans ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Multimeasure rests over a cadenza
Hi James, On Sun, Apr 8, 2012 at 9:22 AM, James Harkins wrote: > Hi, > > I am perfectly ripping my hair out trying to get multimeasure rests to > display properly in another staff, over a cadenza. Reduced example > illustrates. > Possibly the following thread will be useful to you: http://www.mail-archive.com/lilypond-user@gnu.org/msg68492.html HTH, David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: \cadenzaOn + accidental-style not working
oops, sorry, i put #(set-accidental-style 'forget) in the wrong place. all works npw. 2012/4/8 James > Hello, > > On 8 April 2012 10:36, Wasil Sergejczyk wrote: > > when i set \cadenzaOn, set-accidental-style has no effect. do i use it > > correctly? is it a bug or a feature? are there any workarounds? > > Remember when you set a \cadenzaOn it is like one giant *single* > measure - even if you put in \bar "|", until *after* cadenzaOff, so > you have to manually set your Accidentals. > > Hope that helps. > > James > > > > > > >> \version "2.15.36" > >> \include "italiano.ly" > >> global = { > >> \cadenzaOn > >> \key do \major > >> \autoBeamOff > >> \pointAndClickOff > >> \override Staff.NoteHead #'style = #'altdefault > >> #(set-accidental-style 'forget) > >> } > >> melody = { > >> \global > >> \clef "alto" > >> \transpose do do' { > >> do re mi fa sol la sib do' sib > >> } > >> } > >> \score { > >> << > >> \new Staff { \melody } > >> >> > >> \layout { > >> %indent = 0 > >> \context { > >> \Staff > >> \remove "Time_signature_engraver" > >> } > >> \context { > >> \Score > >> \override BarNumber #'transparent = ##t > >> } > >> } > > > > thanks in advance. > > -- > > Best regards. > > > > ___ > > lilypond-user mailing list > > lilypond-user@gnu.org > > https://lists.gnu.org/mailman/listinfo/lilypond-user > > > -- Best regards. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Automatic beams
On 8-4-2012 12:50, Helge Kruse wrote: Hello, I need to typeset a piece but want to keep the original beaming. The beams that Lilypond uses per default does not match. I know I can add the [] to manually control beaming, but I hope I can do this more declarative as described in notation reference "1.2.4 Beams". In this measure I want to break up the sextuplets in treble to a 3+3 group. The semiquavers should be grouped 2+2. The quavers in the base staff should be grouped 2+2. \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \set Timing.baseMoment = #(ly:make-moment 1 16) \set Timing.beatStructure = #'(2 2 2 2) \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.baseMoment = #(ly:make-moment 1 8) \set Timing.beatStructure = #'(2 2 2 2) \relative c { fis8 d' g, d' a d b d | % 24 } } >> I can change the beaming with beatStructure, but baseMomemt doesn't change anything. I also tried with Staff and Voice context but got the same result. How can I achieve the described grouping? Regards, Helge ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user . The way to get the desired grouping would be overriding the beamExceptions: (see also NR chapter 1.2.4: http://lilypond.org/doc/v2.14/Documentation/notation/beams#setting-automatic-beam-behavior) In this modified source I've set the autobeam exceptions globally on the Timing context to affect both staves. It needs to be after the last \time because \time also sets Timing.beamExceptions. (you could also set Staff.beamExceptions per staff after the \time of that staff) \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.beamExceptions = #'( ;start of alist (end . ;entry for end of beams ( ;start of alist of end points ((1 . 8) . (2 2 2 2)) ;rule for 1/8 beams -- end each 1/4 ((1 . 16) . (2 2 2 2 2 2 2 2)) ;rule for 1/16 beams -- end each 1/8 ))) %close all entries \relative c { fis8 d' g, d' a d b d | % 24 } } >> I found out that this override needs to be present only on the second staff to be effective on both. Not sure if that's intended Lilypond behaviour or a bug, but putting it only on the first staff does absolutely nothing. regards, Hans ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Multimeasure rests over a cadenza
Hi, I am perfectly ripping my hair out trying to get multimeasure rests to display properly in another staff, over a cadenza. Reduced example illustrates. I don't get the barcheck errors if I replace the mm-rests with spacers, but then I don't get the whole-rest symbols in the empty bars, and that also looks wrong. (But if I do a spacer for the cadenza bar, and then go back to R(something), the R gives barcheck errors.) If I use \time 5/4 before R1*5/4 and \time 4/4 after, I *still* get barcheck errors (#6) -- *and* I get time signatures in the cadenza bar, which I don't want. I've also tried #(ly:export (mmrest-of-length aVariableHoldingMyCadenza)) but I get barcheck problems with this too. Any hacks much appreciated. Thanks. James \version "2.14.2" \include "english.ly" \score { << \new Staff \relative c' { c2 r2 %% alternatives (all failed): %% #1 - "barcheck failed" R1*5/4 R1 %% #2 - "barcheck failed" %\cadenzaOn R1*5/4 \cadenzaOff R1 %% #3 - "barcheck failed" %R1*5/4 \bar "|" R1 %% #4 - "barcheck failed" %\cadenzaOn R1*5/4 \cadenzaOff \bar "|" R1 %% #5 - "barcheck failed" %R1*2 %% #6 - "barcheck failed" %\time 5/4 R1*5/4 \time 4/4 R1 } \new Staff \relative c' { c4 d e f \cadenzaOn g a g f e \cadenzaOff \bar "|" d2 g2 } >> } -- James Harkins /// dewdrop world jamshar...@dewdrop-world.net http://www.dewdrop-world.net "Come said the Muse, Sing me a song no poet has yet chanted, Sing me the universal." -- Whitman blog: http://www.dewdrop-world.net/words audio clips: http://www.dewdrop-world.net/audio more audio: http://soundcloud.com/dewdrop_world/tracks ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: \cadenzaOn + accidental-style not working
Hello, On 8 April 2012 10:36, Wasil Sergejczyk wrote: > when i set \cadenzaOn, set-accidental-style has no effect. do i use it > correctly? is it a bug or a feature? are there any workarounds? Remember when you set a \cadenzaOn it is like one giant *single* measure - even if you put in \bar "|", until *after* cadenzaOff, so you have to manually set your Accidentals. Hope that helps. James > > >> \version "2.15.36" >> \include "italiano.ly" >> global = { >> \cadenzaOn >> \key do \major >> \autoBeamOff >> \pointAndClickOff >> \override Staff.NoteHead #'style = #'altdefault >> #(set-accidental-style 'forget) >> } >> melody = { >> \global >> \clef "alto" >> \transpose do do' { >> do re mi fa sol la sib do' sib >> } >> } >> \score { >> << >> \new Staff { \melody } >> >> >> \layout { >> %indent = 0 >> \context { >> \Staff >> \remove "Time_signature_engraver" >> } >> \context { >> \Score >> \override BarNumber #'transparent = ##t >> } >> } > > thanks in advance. > -- > Best regards. > > ___ > 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: Multiple-staff ossia
Greetings, A possible solution using a markup, I guess, although it is a somewhat messy solution requiring a bit of fiddling with the numbers indicated. The numbers chosen depend on the length of the required staff-name in the markup. If the X value doesn't move the markup far enough to the left the Y value has no effect Hope this helps Regards Bill ++ your code ... ... ... ... \override SystemStartBracket #'transparent = ##t \override SystemStartBracket #'X-offset = #0 } << \new Staff \with { \remove "Time_signature_engraver" } { \relative c'{ \clef treble \once \override TextScript #'X-offset =#-10.0 %adjust to suit \once \override TextScript #'Y-offset =#-0.7 %adjust to suit c1^"Violin" \glissando g'1 \glissando c,1 } ... ... ... ++ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
\cadenzaOn + accidental-style not working
when i set \cadenzaOn, set-accidental-style has no effect. do i use it correctly? is it a bug or a feature? are there any workarounds? \version "2.15.36" > \include "italiano.ly" > global = { > \cadenzaOn > \key do \major > \autoBeamOff > \pointAndClickOff > \override Staff.NoteHead #'style = #'altdefault > #(set-accidental-style 'forget) > } > melody = { > \global > \clef "alto" > \transpose do do' { > do re mi fa sol la sib do' sib > } > } > \score { > << > \new Staff { \melody } > >> > \layout { > %indent = 0 > \context { > \Staff > \remove "Time_signature_engraver" > } > \context { > \Score > \override BarNumber #'transparent = ##t > } > } thanks in advance. -- Best regards. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: non-standard mensural clef
yes, they seem like petrucci c-clefs, at least they fit. thank you for your help. 2012/4/8 James > Hello, > > On 7 April 2012 15:57, Wasil Sergejczyk wrote: > > i'm trying to "re-create" this hymn and i've stumbled upon the clef(s) i > didn't > > find in lilypond documentation and anywhere on the Internet. does > anybody know > > what's this and how can i do it in lilypond? > > here's the scan: > > > http://i35.fastpic.ru/big/2012/0407/b2/0d1272c45e5e8c98575c8fa1838c5ab2.png > > it's from "Manvale choricanum ab utriusque sexus choricistis concupitum" > by > > Casoni, Giovanni Agostino (1649). > > I'm absolutely no expert but looks sort of petrucci to me > > > http://lilypond.org/doc/v2.14/Documentation/notation/the-feta-font#petrucci-glyphs > > James > -- Best regards. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Automatic beams
Hello, I need to typeset a piece but want to keep the original beaming. The beams that Lilypond uses per default does not match. I know I can add the [] to manually control beaming, but I hope I can do this more declarative as described in notation reference "1.2.4 Beams". In this measure I want to break up the sextuplets in treble to a 3+3 group. The semiquavers should be grouped 2+2. The quavers in the base staff should be grouped 2+2. \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \set Timing.baseMoment = #(ly:make-moment 1 16) \set Timing.beatStructure = #'(2 2 2 2) \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.baseMoment = #(ly:make-moment 1 8) \set Timing.beatStructure = #'(2 2 2 2) \relative c { fis8 d' g, d' a d b d | % 24 } } >> I can change the beaming with beatStructure, but baseMomemt doesn't change anything. I also tried with Staff and Voice context but got the same result. How can I achieve the described grouping? Regards, Helge ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Automatic beams
Hello, I need to typeset a piece but want to keep the original beaming. The beams that Lilypond uses per default does not match. I know I can add the [] to manually control beaming, but I hope I can do this more declarative as described in notation reference "1.2.4 Beams". In this measure I want to break up the sextuplets in treble to a 3+3 group. The semiquavers should be grouped 2+2. The quavers in the base staff should be grouped 2+2. \version "2.14.2" \new PianoStaff << \new Staff { \time 4/4 \key g \major \set Timing.baseMoment = #(ly:make-moment 1 16) \set Timing.beatStructure = #'(2 2 2 2) \relative c'' { \times 4/6{c'16 a b c b a } \times 4/6{r e fis g fis e } fis16 d fis a r fis a c | % 24 } } \new Staff { \time 4/4 \key g \major \clef bass \set Timing.baseMoment = #(ly:make-moment 1 8) \set Timing.beatStructure = #'(2 2 2 2) \relative c { fis8 d' g, d' a d b d | % 24 } } >> I can change the beaming with beatStructure, but baseMomemt doesn't change anything. I also tried with Staff and Voice context but got the same result. How can I achieve the described grouping? Regards, Helge ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user