Re: unterminated tie?
Thanks for your fast help. I don't quite understand why its important to disambuigate. One of the following would have helped me: - nicer error message - hint in documentation such as ties only connect notes of same pitch Marc Weber ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Hi Mark, 2014-06-20 8:27 GMT+02:00 Marc Weber marco-owe...@gmx.de: Thanks for your fast help. I don't quite understand why its important to disambuigate. One of the following would have helped me: - nicer error message - hint in documentation such as ties only connect notes of same pitch Another trick to help you : carefully read and understand the tuto manual (not very long): http://lilypond.org/doc/v2.18/Documentation/learning/ties-and-slurs Cheers, Pierre ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: How to indicate a set of measures should not be played?
Hello Pierre, Thanks, I had overlooked the Measure in the name! JM Le 20 juin 2014 à 07:07:07, Pierre Perol-Schneider pierre.schneider.pa...@gmail.com a écrit : Hi Jacques, 2014-06-19 21:48 GMT+02:00 Jacques Menu imj-muz...@bluewin.ch: I didn’t find an equivalent of a MultiRest.color property, they show up in black, maybe that exists under some other name? See : http://www.lilypond.org/doc/v2.18/Documentation/internals/multimeasurerest \temporary\override MultiMeasureRest.color = #(rgb-color 0.5 0.5 0.5) \temporary\override MultiMeasureRestNumber.color = #(rgb-color 0.5 0.5 0.5) HTH, Pierre ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: [Frescobaldi] Mac testers needed for Frescobaldi! (again)
Hi, I'm on mac and I'm a frescobaldi user. I installed the brew port. If it helps I'm here. I can try to use the app from dmg but I don't know if something conflicts with the previous brew version. Enrico Il giorno mercoledì 18 giugno 2014 05:23:04 UTC+2, Paul Morris ha scritto: Dear Davide, I am glad to report that everything has gone well so far with testing the new app bundle. I was able to successfully play midi, run convert-ly, and convert musicxml files with musicxml2ly. I will keep using it and let you know if I notice any problems. (I am running osx 10.9.3, operating system info from About Frescobaldi: Darwin-13.2.0-x86_64-i386-64bit) Thank you for all your work on this, and thanks to Wilbert and the other Frescobaldi contributors for the newest 2.0.16 version! All the best, -Paul ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
2014-06-20 8:27 GMT+02:00 Marc Weber marco-owe...@gmx.de: Thanks for your fast help. I don't quite understand why its important to disambuigate. As a musician I know different curves with different meanings. LilyPond mirrors this with the possibility to write Ties, Slurs and PhrasingSlurs. The printed output for a single curve of each kind is (very) slightly different. The broadest diffference can be watched typesetting some chords with Ties as opposed to using the same chords with Slurs. Look at the output from: \relative c'' { c e g1~ q ~q } \relative c'' { c e g1( q q) } Every note of each chord _needs_ a Tie to the corresponding note of the next chord. Though it does not make sense to print more than _one_ Slur (as long as the chord is in one voice). Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Marc Weber marco-owe...@gmx.de writes: Thanks for your fast help. I don't quite understand why its important to disambuigate. A tie is basic notation, meaning that there is only a single note and a single attack. A slur is not a notational element but rather an instruction for execution. As an example, if I write { c8 d8( e4) c2 | c8 d8( d4) c2 } for a single-manual instrument (like piano or accordion), the intent is to play the second phrase with comparable articulation to the first phrase. Usually you will try to use the same fingering, consequently doing a finger switch on the d4. In contrast, with { c8 d8( e4) c2 | c8 d8~ d4 c2 } the second measure basically has a d4. in the middle. That's quite an important distinction. Since the tie is a notational instrument for indicating a single note, it does not make sense to write it for connecting different pitches (the special case of a single note ending at a different pitch than it started from is called glissando and notated differently). One of the following would have helped me: - nicer error message - hint in documentation such as ties only connect notes of same pitch The learning manual directly references the glossary which states 1.311 tie = ES: ligadura de unión (o de prolongación), I: legatura (di valore), F: liaison (de tenue), D: Haltebogen, Bindebogen, NL: overbinding, bindingsboog, DK: bindebue, S: bindebåge, överbindning, FI: sitominen. A curved line, identical in appearance with the *note slur::, which connects two succesive notes of the same pitch, and which has the function of uniting them into a single sound (tone) equal to the combined durations. Ties and slurs are followed by a section Warnings: slurs vs. ties Music Glossary: *note (music-glossary)articulation::, *note (music-glossary)slur::, *note (music-glossary)tie::. A slur looks like a tie, but it has a different meaning. A tie simply makes the first note longer, and can only be used on pairs of notes with the same pitch. Slurs indicate the articulation of notes, and can be used on larger groups of notes. Slurs and ties can be nested. c4~( c8 d~ 4 e) [image src=lilypond/47/lily-e3ec48f4.png alt=[image of music] text=image of music] So let's look at the notational manual now. It starts with Ties A tie connects two adjacent note heads of the same pitch. The tie in effect extends the duration of a note. Note: Ties should not be confused with _slurs_, which indicate articulation, or _phrasing slurs_, which indicate musical phrasing. A tie is just a way of extending a note duration, similar to the augmentation dot. So how do you suggest improving this, and where? -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Mac testers needed for Frescobaldi! (again)
2014-06-17 17:17 GMT+02:00 Davide Liessi davide.lie...@gmail.com: I uploaded a new version of Frescobaldi.app, based on the newly released 2.0.16, at https://www.dropbox.com/s/whu5qnn5pys81ix/Frescobaldi-2.0.16-devapp-20140616.dmg The application contains some 64 bit code, so it won't run on machines with 32 bit CPU (I'll try to solve this in the next iteration). You can find a 32 bit Frescobaldi.app, based on 2.0.16, at https://www.dropbox.com/s/3ymhwrgdzv9jbsp/Frescobaldi-2.0.16-devapp-20140620-i386.dmg If you have a 32 bit machine [1], I would be grateful if you could test it and report. The contents of the first message in this thread apply also to the 32 bit application bundle. Best wishes. Davide [1] http://support.apple.com/kb/HT3696?viewlocale=en_US ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Excerpts from Pierre Perol-Schneider's message of Fri Jun 20 07:01:58 + 2014: [..] carefully read and understand [..] manual Eventually the error message could still be changed from: unterminated tie to unterminated tie, note/chord of same pitch expected I agree I had a RTFM problem. Thanks for helping. Is it correct to say that every tie is also a slur? Maybe I only expected slurs to exist for that reason. Marc Weber ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Am 20.06.2014 11:04, schrieb Marc Weber: Excerpts from Pierre Perol-Schneider's message of Fri Jun 20 07:01:58 + 2014: [..] carefully read and understand [..] manual Eventually the error message could still be changed from: unterminated tie to unterminated tie, note/chord of same pitch expected I agree I had a RTFM problem. Thanks for helping. Is it correct to say that every tie is also a slur? Maybe I only expected slurs to exist for that reason. Not really. A tie is a tie and a slur is a slur. They are only engraved with a very similar (or sometimes identical) shape. Urs Marc Weber ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user -- Urs Liska www.openlilylib.org ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Am 20.06.2014 10:00, schrieb David Kastrup: it does not make sense to write it for connecting different pitches (the special case of a single note ending at a different pitch than it started from is called glissando and notated differently). There is another special case which isn't handled appropriately by LilyPond yet: a tied note followed by the same note in another clef, another staff (in piano notation) or enharmonically exchanged. All three are rather rare cases but valid notation. To achieve that I have to use a slur, which is semantically incorrect (and would produce wrong MIDI if I'd use that). Urs -- Urs Liska www.openlilylib.org ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
figured bass: how to use scheme-function in event-chord?
Hi, for the first time since I use LilyPond I have to deal with figured bass notation and noticed some problems. Here the first: The following works as expected: \figures { 6 42 } \figures { a b2 } \figures { \markup \with-color #red a \markup \with-color #green b } even this works: one = \markup \with-color #red a two = \markup \with-color #green b \figures { \one \two2 } Though using a scheme-function to create mrkups returns an error: foo = #(define-scheme-function (parser location strg)(markup?) strg) \figures { \foo a \foo b2 } - syntax error, unexpected SCM_FUNCTION \figures { \foo a \foo b2 } Well, I can make it work with: #(define (make-bass-figure-event fig dur) (make-music 'BassFigureEvent 'duration dur (if (markup? fig) 'text 'figure) fig)) #(define (make-bass-figure-ev-chrd lst dur) (make-event-chord (map (lambda (e) (make-bass-figure-event e dur)) lst))) buzz = #(define-music-function (parser location lst duration)(list? ly:duration?) (make-bass-figure-ev-chrd lst duration)) \figures { \buzz #'(a b) 1 } \figures { \buzz #`(,one ,two) 1 } \figures { \buzz #`(,#{ \foo a #} ,#{ \foo b #}) 1 } Probably the syntax could be simplified, though I assume it will stay not very nice. Is there a better way to use a scheme-function here? or Can \figures { \foo a \foo b2 } be made work? Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Excerpts from David Kastrup's message of Fri Jun 20 08:00:47 + 2014: So how do you suggest improving this, and where? http://lilypond.org/doc/v2.18/Documentation/learning/ties-and-slurs I'd add this information here, too: A tie connects two notes (or chords) having the same pitch. It's created by putting a ~ in between. Eventually adding c e g ~ e g b case to illustrate that this is also allowed. Another hint about how to recognize the difference: Ties usually touch the note heads wheras slurs don't) I still don't understand how a violin or brass player would play c~c any different from c(c). (glossary says same stroke/breath). So I'm still interested in understanding whether a tie exists for any instrument which is not played like a slur. I agree that the problem was me. Marc Weber ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Am 20.06.2014 11:19, schrieb Marc Weber: I still don't understand how a violin or brass player would play c~c any different from c(c). (glossary says same stroke/breath). c4~ c is _exactly the same as c2, the tie is usually used to clarify something (meter, voicing ...). c4( c) will probably not be used that way (because there practically is no way to differentiate visually). Slurs are used like that for example: c4( c c c) or c4-.( c-.) The second one is clearly an articulation, while the first one _could_ (depending on the personal style of the composer) be interpreted as four notes on one bow, with some stress at the following notes. HTH Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: unterminated tie?
Marc Weber marco-owe...@gmx.de writes: Excerpts from David Kastrup's message of Fri Jun 20 08:00:47 + 2014: So how do you suggest improving this, and where? http://lilypond.org/doc/v2.18/Documentation/learning/ties-and-slurs I'd add this information here, too: A tie connects two notes (or chords) having the same pitch. It's created by putting a ~ in between. Eventually adding c e g ~ e g b case to illustrate that this is also allowed. Another hint about how to recognize the difference: Ties usually touch the note heads wheras slurs don't) I still don't understand how a violin or brass player would play c~c any different from c(c). (glossary says same stroke/breath). With a violin player, simple enough: c(c) is often executed by playing the same note but on a different string. Take a look at the Ciaconne in the violin solo partita 2 from Bach. The last page of it has a number of these bowings IIRC. There are also a number of three or four string arpeggios in there that end up, in the course of the modulation/progression, with several identical notes on different strings right after another on a single bow. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
changing global staff size on the fly
Hi, on Fri, 20 Jun 2014 07:19:15 +0200, Pierre Perol-Schneider wrote No easy way. See also http://lsr.di.unimi.it/LSR/Item?id=862 (just in case...) Thanks, I was aware of that and had tried something like this: \version 2.19.5 staffSize = #(define-music-function (parser location new-size) (number?) #{ \set fontSize = #new-size \override StaffSymbol.staff-space = #(magstep new-size) \override StaffSymbol.thickness = #(magstep new-size) #}) musik = { \relative c' \repeat unfold 100 {c' d e f} } \score { \new Staff { \musik \pageBreak \stopStaff \staffSize #-3 \startStaff \musik \pageBreak \stopStaff \staffSize #0 \startStaff \musik } } The font size changes but the staffsymbol properties don't seem to be changeable from within the staff content (in addition the parameters for the vertical spacing might have to get adjusted as well). I don't understand lilyponds pageBreaking and rendering mechanism and don't even know whether it is possible to change global parameters like staff size between subsequent pageBreaks in a single score/book. It might just become too messy to deal with it. I'm on 2.9.15. :o... I thought that one's fossilzed ! sorry: 2.19.5 -- Orm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Determine event at the same time in other voice
Hi all, how could I determine if at any given point in time there is another event in another voice or not. Concretely: If I have a certain rest, can I know if another rest of the same length is in another voice? I would like to explore the idea of having a command like \mergeSimultaneousRests which would take care of setting \voiceOne in one voice and \once\omit in the other voice(s) to make that typical kind of notation more straightforward to use. I find it slightly embarassing that we have to do that manually for each instance. Best Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Determine event at the same time in other voice
Urs Liska u...@openlilylib.org writes: how could I determine if at any given point in time there is another event in another voice or not. Concretely: If I have a certain rest, can I know if another rest of the same length is in another voice? Put an engraver in the enclosing Staff context which listens to rest events. That does not help with actually reducing the number of rests: for that you need to have an acknowledger for those rest grobs and possibly kill one of the grobs manually. I would like to explore the idea of having a command like \mergeSimultaneousRests which would take care of setting \voiceOne in one voice and \once\omit in the other voice(s) to make that typical kind of notation more straightforward to use. I find it slightly embarassing that we have to do that manually for each instance. I'm skeptical that this will be easy to get working smoothly. -- David Kastrup ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Determine event at the same time in other voice
On Fri, Jun 20, 2014 at 6:12 AM, David Kastrup d...@gnu.org wrote: Urs Liska u...@openlilylib.org writes: how could I determine if at any given point in time there is another event in another voice or not. Concretely: If I have a certain rest, can I know if another rest of the same length is in another voice? Put an engraver in the enclosing Staff context which listens to rest events. That does not help with actually reducing the number of rests: for that you need to have an acknowledger for those rest grobs and possibly kill one of the grobs manually. There's already an engraver on the lists which should help. The thread begins here: http://www.mail-archive.com/lilypond-user%40gnu.org/msg69608.html HTH, David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Determine event at the same time in other voice
Hi Urs, as David mentioned, there are solutions on the list. And in LSR you find: http://lsr.di.unimi.it/LSR/Item?id=336 And some time ago somebody posted the solution for multi-measure-rests ... I am ashamed, that I forgot to note the name - I use it quite often. You can either use \layout { \mergeRests } or { \mergeRestsOn \music \mergeRestsOff } HTH Best, Jan-Peter Am 20.06.14 12:08, schrieb Urs Liska: Hi all, how could I determine if at any given point in time there is another event in another voice or not. Concretely: If I have a certain rest, can I know if another rest of the same length is in another voice? I would like to explore the idea of having a command like \mergeSimultaneousRests which would take care of setting \voiceOne in one voice and \once\omit in the other voice(s) to make that typical kind of notation more straightforward to use. I find it slightly embarassing that we have to do that manually for each instance. Best Urs ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user \version 2.18.2 #(define (rest-score r) (let ((score 0) (yoff (ly:grob-property-data r 'Y-offset)) (sp (ly:grob-property-data r 'staff-position))) (if (number? yoff) (set! score (+ score 2)) (if (eq? yoff 'calculation-in-progress) (set! score (- score 3 (and (number? sp) (= 0 2 sp) (set! score (+ score 2)) (set! score (- score (abs (- 1 sp) score)) #(define (merge-rests-on-positioning grob) (let* ((can-merge #f) (elts (ly:grob-object grob 'elements)) (num-elts (and (ly:grob-array? elts) (ly:grob-array-length elts))) (two-voice? (= num-elts 2))) (if two-voice? (let* ((v1-grob (ly:grob-array-ref elts 0)) (v2-grob (ly:grob-array-ref elts 1)) (v1-rest (ly:grob-object v1-grob 'rest)) (v2-rest (ly:grob-object v2-grob 'rest))) (and (ly:grob? v1-rest) (ly:grob? v2-rest) (let* ((v1-duration-log (ly:grob-property v1-rest 'duration-log)) (v2-duration-log (ly:grob-property v2-rest 'duration-log)) (v1-dot (ly:grob-object v1-rest 'dot)) (v2-dot (ly:grob-object v2-rest 'dot)) (v1-dot-count (and (ly:grob? v1-dot) (ly:grob-property v1-dot 'dot-count -1))) (v2-dot-count (and (ly:grob? v2-dot) (ly:grob-property v2-dot 'dot-count -1 (set! can-merge (and (number? v1-duration-log) (number? v2-duration-log) (= v1-duration-log v2-duration-log) (eq? v1-dot-count v2-dot-count))) (if can-merge ;; keep the rest that looks best: (let* ((keep-v1? (= (rest-score v1-rest) (rest-score v2-rest))) (rest-to-keep (if keep-v1? v1-rest v2-rest)) (dot-to-kill (if keep-v1? v2-dot v1-dot))) ;; uncomment if you're curious of which rest was chosen: ;;(ly:grob-set-property! v1-rest 'color green) ;;(ly:grob-set-property! v2-rest 'color blue) (ly:grob-suicide! (if keep-v1? v2-rest v1-rest)) (if (ly:grob? dot-to-kill) (ly:grob-suicide! dot-to-kill)) (ly:grob-set-property! rest-to-keep 'direction 0) (ly:rest::y-offset-callback rest-to-keep))) (if can-merge #t (ly:rest-collision::calc-positioning-done grob #(define merge-multi-measure-rests-on-Y-offset ;; Call this to get the 'Y-offset of a MultiMeasureRest. ;; It keeps track of other MultiMeasureRests in the same NonMusicalPaperColumn ;; and StaffSymbol. If two are found, delete one and return 1 for Y-offset of ;; the other one. (let ((table (make-weak-key-hash-table))) (lambda (grob) (let* ((ssymb (ly:grob-object grob 'staff-symbol)) (nmcol (ly:grob-parent grob X)) (ssymb-hash (or (hash-ref table ssymb) (hash-set! table ssymb (make-hash-table (othergrob (hash-ref ssymb-hash nmcol))) (if (ly:grob? othergrob) (begin ;; Found the other grob in this staff/column, ;; delete it and move ours. (ly:grob-suicide! othergrob) (hash-remove! ssymb-hash nmcol) 1) ; was 0 (begin ;; Just save this grob and return the default value. (hash-set! ssymb-hash nmcol grob) (ly:staff-symbol-referencer::callback grob))) #(define-public mergeRestsOn #{ \override
Re: Determine event at the same time in other voice
I have the merge-rests-engraver from the above referenced message ready to submit to the snippets GitHub. There is also a merge-mmrests-engraver that merges whole and multi-measure rests. Is it good practice to post an example to the LSR too? Knute Snortum (via Gmail) On Fri, Jun 20, 2014 at 5:55 AM, Jan-Peter Voigt jp.vo...@gmx.de wrote: Hi Urs, as David mentioned, there are solutions on the list. And in LSR you find: http://lsr.di.unimi.it/LSR/Item?id=336 And some time ago somebody posted the solution for multi-measure-rests ... I am ashamed, that I forgot to note the name - I use it quite often. You can either use \layout { \mergeRests } or { \mergeRestsOn \music \mergeRestsOff } HTH Best, Jan-Peter Am 20.06.14 12:08, schrieb Urs Liska: Hi all, how could I determine if at any given point in time there is another event in another voice or not. Concretely: If I have a certain rest, can I know if another rest of the same length is in another voice? I would like to explore the idea of having a command like \mergeSimultaneousRests which would take care of setting \voiceOne in one voice and \once\omit in the other voice(s) to make that typical kind of notation more straightforward to use. I find it slightly embarassing that we have to do that manually for each instance. Best Urs ___ 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 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user