Re: removing unwanted accidentals
> Attatched is a version or act1.ly, act1_.ly, that puts the final movement in > its own score block. I know you may not want to put each movement in its own > score, but lilypond expects this by default and notice how all the problems > associated with doing it as you have it set up disappear. > > Stephen Thanks for the suggestion, the code below will work nice as a workaround. I'll settle with it for engraving, and using the former for midi. \score { << \ss \new GrandStaff << \new Staff { \set Staff.instrument = \markup { "V1" } \set Staff.instr = \markup { "V1" } { \keyAM \clefva \vaAM } } \new Staff { \set Staff.instrument = \markup { "V2" } \set Staff.instr = \markup { "V2" } { \keyAM \clefvb \vbAM } } >> \new Staff { \set Staff.instrument = \markup { "Va" } \set Staff.instr = \markup { "Va" } { \keyAM \clefvc \vcAM } } \new Staff { \set Staff.instrument = \markup { "BC" } \set Staff.instr = \markup { "BC" } { \keyAM \clefvd \vdAM } } \context FiguredBass \fbAM >> \layout { indent = 0.0\mm } } ... > > I don't want them to appear as seperate scores, because they flow into > > each other. > > Except the different acts, of cause. ... > >> >> >*No*, the forget does not work for: > >> >> act 1, aria 13, bar 6 Violin II: the b is shown with natural > >> >> act 1, aria 13, bar 11 Violin I: the f is shown with natural > >> >> Elsewhere yes, but not for theese two notes. ... Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
On 16-Apr-05, at 7:34 AM, Stephen wrote: The problem appears when you put all the movements together **under the same score**. I consider this to be a midi bug. If you put each movement in its own score, all your engraving problems would disapear, the movements would appear as they do in the separate scores. The midi files would overwrite each other as the movements were processed leaving the midi file only representing the final movement. No, IIRC lilypond names them foo.midi foo.midi-1 foo.midi-2 foo.midi-3 Unfortunately foo-midi-1 actually refers to the _second_ excerpt, but at least they're not overwritten. At least, old lilypond did this. If current versions don't, then I'd consider this a bug. Cheers, - Graham ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Attatched is a version or act1.ly, act1_.ly, that puts the final movement in its own score block. I know you may not want to put each movement in its own score, but lilypond expects this by default and notice how all the problems associated with doing it as you have it set up disappear. Stephen - Original Message - From: "Karl Hammar" <[EMAIL PROTECTED]> To: Sent: Saturday, April 16, 2005 3:01 PM Subject: Re: removing unwanted accidentals Karl, The problem appears when you put all the movements together **under the same score**. I consider this to be a midi bug. No, the unwanted accidentals are still there if I remove the midi block. If you put each movement in its own score, all your engraving problems would disapear, the movements would appear as they do in the separate scores. I don't want them to appear as seperate scores, because they flow into each other. Except the different acts, of cause. The midi files would overwrite each other as the movements were processed leaving the midi file only representing the final movement. Yes, that is what happens e.g. in my all.ly, only the last act is in the midi file. It would be nice if midi worked the sames as engraving, just as the separate scores are concatenated into the same book with a default amount of space separating each one, might not the midi files from each score be concatenated into the same midi file with a default amount of silence between each score? Sounds, reasonable, but midi is not my top priority, engraving is. ... In addition, it would be nice if you added different midi instruments to the voices: \set Staff.midiInstrument = "violin" etc. I once did that with another piece, and that voice was silent in timidity. I could easily add that, but I'd rather hear it. Any suggestions? I haven't been very helpful to you so far, but I think this is all useful advice, germane to your project. Stephen - Original Message - From: "Karl Hammar" <[EMAIL PROTECTED]> To: Sent: Friday, April 15, 2005 12:59 PM Subject: Re: removing unwanted accidentals >> >*No*, the forget does not work for: >> act 1, aria 13, bar 6 Violin II: the b is shown with natural >> act 1, aria 13, bar 11 Violin I: the f is shown with natural >> Elsewhere yes, but not for theese two notes.> ... Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel \version "2.4.2" %\include "a3l.ly" \include "a4p.ly" \include "header.ly" \include "global.ly" \include "Music.02.ly" \include "Music.03.ly" \include "Music.04.ly" \include "Music.05.ly" \include "Music.06.ly" \include "Music.07.ly" \include "Music.08.ly" \include "Music.09.ly" \include "Music.10.ly" \include "Music.11.ly" \include "Music.12.ly" \include "Music.13.ly" \score { \header { piece = \pieceAB } << \ss \new ChoirStaff << \new Staff \context Voice = vdiAB { \set Staff.instrument = \markup { "Dido" } \set Staff.instr = \markup { "Di" } { \clefdi \KeyAB \diAB \KeyAC \diAC \KeyAD \diAD \KeyAE \diAE \KeyAF \diAF \KeyAG \diAG \KeyAH \diAH \KeyAI \diAI \KeyAJ \diAJ \KeyAK \diAK \KeyAL \diAL } } \new Lyrics \lyricsto vdiAB { \ldiAB \ldiAC \ldiAD \ldiAE \ldiAF \ldiAG \ldiAH \ldiAI \ldiAJ \ldiAK \ldiAL } \new Staff \context Voice = vbeAB { \set Staff.instrument = \markup { "Belinda" } \set Staff.instr = \markup { "Be" } { \clefbe \KeyAB \beAB \KeyAC \beAC \KeyAD \beAD \KeyAE \beAE \KeyAF \beAF \KeyAG \beAG \KeyAH \beAH \KeyAI \beAI \KeyAJ \beAJ \KeyAK \beAK \KeyAL \beAL } } \new Lyrics \lyricsto vbeAB { \lbeAB \lbeAC \lbeAD \lbeAE \lbeAF \lbeAG \lbeAH \lbeAI \lbeAJ \lbeAK \lbeAL } \new Staff \context Voice = vwoAB { \set Staff.instrument = \markup { "Second woman" } \set Staff.instr = \markup { "Wo" } { \clefwo \KeyAB \woAB \KeyAC \woAC \KeyAD \woAD \KeyAE \woAE \KeyAF \woAF \KeyAG \woAG \KeyAH \woAH \KeyAI \woAI \KeyAJ \woAJ \KeyAK \woAK \KeyAL \woAL } } \new Lyrics \lyricsto vwoAB { \lwoAB \lwoAC \lwoAD \lwoAE \lwoAF \lwoAG \lwoAH \lwoAI \lwoAJ \lwoAK \lwoAL } \new Staff \context Voice = vsoAB { \set Staff.instrument = \markup { "Sorceress" } \set Staff.instr = \markup { "So" } { \clefso \KeyAB \soAB \KeyAC \soAC \KeyAD \soAD \KeyAE \soAE \KeyAF \soAF \KeyAG \soAG \KeyAH \soAH \KeyAI \soAI \KeyAJ \soAJ \KeyAK \soAK \KeyAL \soAL } } \new Lyrics \lyricsto vsoAB { \lsoAB \lsoAC \lsoAD \lsoAE \lsoAF \lsoAG \lsoAH \lsoAI \lsoAJ \lsoAK \lsoAL } \new Staff \context Voice = vfwAB { \set Staff.instrument =
Re: removing unwanted accidentals
I can't think of a situation where anyone except a beginner who didn't understand the philosopy behind lllypond would want to use a "no-accidental" style. OTOH it is useful to have workarounds for bugs. \noAccidental seems ideal for this. It is not as cumbersome as having to change the accidental-style for a single not but is awkward enough (in a way that something like \& is not) to prompt the user to seek an alternative. The documentation for it could say something like: "If you find yourself using \noAccidental frequently the the chances are that you are either using the wrong accidental style or have found a bug in LilyPond." > You could do that like > {cis1~\break #(set-accidental-style 'no-forget) cis2 #(set-accidental-style > 'default) } > but IMHO this would be more logical, & easier to read and write: > {cis1~\break cis2\noAccidental} > > Erik > > > > ___ > lilypond-devel mailing list > lilypond-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-devel > -- Bernard Hurley <[EMAIL PROTECTED]> ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
> Citerar Stephen <[EMAIL PROTECTED]>: > > > I think we want Lilypond to continue to follow standard practive. If we give > > users the ability to violate those rules then total novices will start > > making mistakes. > > We don't have to document the feature in a way such that novices will be able > to > use it. I just htink it's a good idea to have the feature for completeness. If > there is a bug somewhere that makes an unwanted accidental pop up, it's nice > if > there is a possiblilty to just write a quick workaround. > > > I think you know that in the example you gave, a person reading the score > > would just play an f sharp where you want an f natural if you suppressed the > > natural. Why supply a way to suppress that natural if we also have to say > > never actually do if you do not want them to play f sharp? > > What I meant, was related to Karl's example. I don't have lily where I am now, > but imagine a combo of his and my example; something like > > \key d\major fis4 r r r | f2 f | \set Score.barNumber = #1 r2 f | > > Here someone might want to avoid the natural before the last f (there might > exist better examples), and I think it's impossible with current lily due to > the bug Karl found. > > It's just an example, and it's constructed, but shows that there is a > potential > need for this kind of setting. I can recall earlier discussions with similar > content. > > The main reason I want it, however, is the philosophy that if you want to > tweak > something, you often want to express exactly what you are tweaking, no more, > no > less. All Karl wanted to express in his code, was that for a particular note, > the accidental should be turned off. He didn't want to express that this note > belongs to a part of the music which uses an alternative practise for > displaying accidentals. I don't want the singer/instrumentalist to believe that the composer or me demands that this note to have this accidental, since it is not in the original score. And since the 'forget did not work for two notes, it would nice to have something to force it away, so I don't have to delay till the bug hunt is over. > > > Another application of a \noAccidental feature, is a mail that was sent some > days ago to lily-user iirc. There was a sharp before the cis2 in {cis1~\break > cis2}, and this person (Thomas iirc) wanted to suppress this. > You could do that like > {cis1~\break #(set-accidental-style 'no-forget) cis2 #(set-accidental-style > 'default) } > but IMHO this would be more logical, & easier to read and write: > {cis1~\break cis2\noAccidental} > > Erik Regards, /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
> Karl, > > The problem appears when you put all the movements together **under the same > score**. I consider this to be a midi bug. No, the unwanted accidentals are still there if I remove the midi block. > If you put each movement in its > own score, all your engraving problems would disapear, the movements would > appear as they do in the separate scores. I don't want them to appear as seperate scores, because they flow into each other. Except the different acts, of cause. > The midi files would overwrite > each other as the movements were processed leaving the midi file only > representing the final movement. Yes, that is what happens e.g. in my all.ly, only the last act is in the midi file. > > It would be nice if midi worked the sames as engraving, just as the separate > scores are concatenated into the same book with a default amount of space > separating each one, might not the midi files from each score be > concatenated into the same midi file with a default amount of silence > between each score? Sounds, reasonable, but midi is not my top priority, engraving is. ... > In addition, it would be nice if you added different midi instruments to the > voices: > > \set Staff.midiInstrument = "violin" etc. I once did that with another piece, and that voice was silent in timidity. I could easily add that, but I'd rather hear it. Any suggestions? > > I haven't been very helpful to you so far, but I think this is all useful > advice, germane to your project. > > Stephen > > - Original Message ----- > From: "Karl Hammar" <[EMAIL PROTECTED]> > To: > Sent: Friday, April 15, 2005 12:59 PM > Subject: Re: removing unwanted accidentals > > > >> >*No*, the forget does not work for: > >> act 1, aria 13, bar 6 Violin II: the b is shown with natural > >> act 1, aria 13, bar 11 Violin I: the f is shown with natural > >> Elsewhere yes, but not for theese two notes.> ... Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
> Citerar Karl Hammar <[EMAIL PROTECTED]>: ... > > > \version "2.4.0" > > > > > > #(define-public (print-+100-text-callback grob) > > > (let* ( ;(text (ly:grob-property grob 'text)) > > > (text (number->string (+ 100 (string->number (ly:grob-property > > grob > > > 'text) > > > (layout (ly:grob-layout grob)) > > > (defs (ly:output-def-lookup layout 'text-font-defaults)) > > > (props (ly:grob-alist-chain grob defs)) > > > (text-stencil (Text_interface::interpret_markup layout props > > text))) > > > (ly:stencil-add (centered-stencil text-stencil > > > > > > > > > \new Staff { > > > \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1) > > > \override Score.BarNumber #'print-function = > > > #print-+100-text-callback > > > > > > \repeat unfold 9 { c1 \break } \bar "|." > > > } > > > > > > HTH, > > > Erik > > > > I think you misunderstand me, I wanted smallish bar numbers since that > > is easier > > to say at a rehersal, not something that is +100. > > Yes, of course you can substitute -100 for 100 then, or alternatively do > (- (...) 100) iso. (+ 100 (...)) > > Erik I see, since I have trouble with lilyponds barnumbering, I sort of do it myself. Then I have to: . keep track of number of bars per movement (= offset for next movement) . add up the offsets per movements . make sure it woun't print a "1"? Ok, that is a way to do it. Can I in the same time tell the print function to not to align to a breath mark just before the bar line, detect if there is a volta spanner, staff group bracket, note or slur to avoid? Regards, /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Citerar Stephen <[EMAIL PROTECTED]>: > I think we want Lilypond to continue to follow standard practive. If we give > users the ability to violate those rules then total novices will start > making mistakes. We don't have to document the feature in a way such that novices will be able to use it. I just htink it's a good idea to have the feature for completeness. If there is a bug somewhere that makes an unwanted accidental pop up, it's nice if there is a possiblilty to just write a quick workaround. > I think you know that in the example you gave, a person reading the score > would just play an f sharp where you want an f natural if you suppressed the > natural. Why supply a way to suppress that natural if we also have to say > never actually do if you do not want them to play f sharp? What I meant, was related to Karl's example. I don't have lily where I am now, but imagine a combo of his and my example; something like \key d\major fis4 r r r | f2 f | \set Score.barNumber = #1 r2 f | Here someone might want to avoid the natural before the last f (there might exist better examples), and I think it's impossible with current lily due to the bug Karl found. It's just an example, and it's constructed, but shows that there is a potential need for this kind of setting. I can recall earlier discussions with similar content. The main reason I want it, however, is the philosophy that if you want to tweak something, you often want to express exactly what you are tweaking, no more, no less. All Karl wanted to express in his code, was that for a particular note, the accidental should be turned off. He didn't want to express that this note belongs to a part of the music which uses an alternative practise for displaying accidentals. Another application of a \noAccidental feature, is a mail that was sent some days ago to lily-user iirc. There was a sharp before the cis2 in {cis1~\break cis2}, and this person (Thomas iirc) wanted to suppress this. You could do that like {cis1~\break #(set-accidental-style 'no-forget) cis2 #(set-accidental-style 'default) } but IMHO this would be more logical, & easier to read and write: {cis1~\break cis2\noAccidental} Erik ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Citerar Stephen <[EMAIL PROTECTED]>: I'm changing my mind about syntax - I think the best way would be to have a new accidental style called no-accidentals, which would suppress all accidentals except on notes with !. This is probably trivial to implement (but I don't have the src here). Erik > I think we want Lilypond to continue to follow standard practive. If we give > users the ability to violate those rules then total novices will start > making mistakes. > > I think you know that in the example you gave, a person reading the score > would just play an f sharp where you want an f natural if you suppressed the > natural. Why supply a way to suppress that natural if we also have to say > never actually do if you do not want them to play f sharp? Another way of > putting it is that you could suppress the natural in that case, just by > writing fis instead of f, that is what someone reading it would play anyway, > so what's the point? > > I am saying here that automatic control of accidentals is better, given the > number of choices we already have. In this case 'forget' solved the problem. > > Stephen > > - Original Message - > From: "Erik Sandberg" <[EMAIL PROTECTED]> > To: "Stephen" <[EMAIL PROTECTED]> > Cc: <[EMAIL PROTECTED]>; > Sent: Thursday, April 14, 2005 3:49 PM > Subject: Re: removing unwanted accidentals > > > > On Thursday 14 April 2005 21.31, Stephen wrote: > >> Given all the options for automatic accidentals: voice, modern, > >> modern-voice, piano, no-reset, forget, and default, one of them must > >> answer > >> every situation if you take the time to learn them. I find it confusing > >> when there are multiple ways to do the same thing. I'd look carefully at > >> the current options before I wrote a new option. > >> > >> In the example, '\set Score.currentBarNumber = #1' creates the problem. I > >> don't see why the numbering is reset there other than to remove the > >> number > >> from that bar because it collides with the mark "D". There must be > >> another > >> way to suppress the bar number at that bar. > > > > It also changes the numbering of all subsequent bars. I don't know the > > author's intent in this case (I didn't write that snippet), but I guess it > > could be something like an attaca movement. > > > >> However, I fixed it by setting the accidental style to 'forget'. See? > >> there > >> is already a way to do it. > > > > There are situations where this doesn't work. E.g., in > > { \key d\major fis f } > > I can see no way to avoid displaying the natural. > > > > (this example I gave is not realistic, but the below example suggests that > > it > > may happen that you want to tweak accidentals in unexpected ways, e.g. due > > to > > other bugs) > > > > Erik > > > >> - Original Message - > >> From: "Erik Sandberg" <[EMAIL PROTECTED]> > >> To: > >> Sent: Monday, April 11, 2005 3:53 PM > >> Subject: removing unwanted accidentals > >> > >> > Hi, > >> > > >> > There seems to be a need for a way to notate that a single note should > >> > _not_ > >> > have an accidental displayed, something like a 'force-no-accidental' > >> > property. > >> > > >> > I think there was a discussion about this over a year ago, without a > >> > conclusion. Now there have been 2 or 3 (implicit) requests for it in a > >> > short > >> > time, and IMHO it's a reasonable feature. > >> > > >> > Also it looks pretty trivial to implement; may I give it a try? > >> > > >> > Erik > >> > > >> > On Sunday 10 April 2005 14.32, Karl Hammar wrote: > >> >> How do I remove the unwanted explicit flats in the next to last > >> >> measure in: > >> >> > >> >> \version "2.4.2" > >> >> > >> >> \relative c'' { > >> >> \override Score.BarNumber #'break-visibility = > >> >> #end-of-line-invisible > >> >> \mark #03 > >> >> \clef treble > >> >> \key c \minor > >> >> a2 b | > >> >> d1 | > >> >> \mark #04 > >> >> \set Score.currentBarNumber = #1 > >> >> d2 es8. as,16 bes8 c | > >> >> % ^ ^ unwanted explicit flats here > >> >> d1 > >> >> } > >> >> > >> >> Regards > >> >> /Karl > >> >> > >> >> > >> >> > >> >> > >> >> ___ > >> >> lilypond-user mailing list > >> >> lilypond-user@gnu.org > >> >> http://lists.gnu.org/mailman/listinfo/lilypond-user > >> > > >> > ___ > >> > lilypond-devel mailing list > >> > lilypond-devel@gnu.org > >> > http://lists.gnu.org/mailman/listinfo/lilypond-devel > > ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Citerar Karl Hammar <[EMAIL PROTECTED]>: > > > On Friday 15 April 2005 10.56, Karl Hammar wrote: > > > [EMAIL PROTECTED]: > > > > It also changes the numbering of all subsequent bars. I don't know the > > > > author's intent in this case (I didn't write that snippet), but I > guess > > > > it could be something like an attaca movement. > > > > > > Yes. The bigger picture is H. Purcells opera "Dido & Æneas": > > > > > > http://aspodata.se/motett/noter/act* > > > > nice! (will this end up on mutopia?) > > Anyone is welcome to use it (it is still being worked on). > The code is gpl (cc-sa if you insist) and Purcells music is public > domain. > > > > > > I did not like idea of big bar number, like 543. > > > I think it is better with aria/movement 23, bar 25. > > > > You could use something like this (based on print-circled-text-callback in > > > scm/output-lib.scm) to achieve what you want more cleanly. It works with > > 2.5.19, but not with 2.4 for some reason. > > > > \version "2.4.0" > > > > #(define-public (print-+100-text-callback grob) > > (let* ( ;(text (ly:grob-property grob 'text)) > > (text (number->string (+ 100 (string->number (ly:grob-property > grob > > 'text) > > (layout (ly:grob-layout grob)) > > (defs (ly:output-def-lookup layout 'text-font-defaults)) > > (props (ly:grob-alist-chain grob defs)) > > (text-stencil (Text_interface::interpret_markup layout props > text))) > > (ly:stencil-add (centered-stencil text-stencil > > > > > > \new Staff { > > \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1) > > \override Score.BarNumber #'print-function = > > #print-+100-text-callback > > > > \repeat unfold 9 { c1 \break } \bar "|." > > } > > > > HTH, > > Erik > > I think you misunderstand me, I wanted smallish bar numbers since that > is easier > to say at a rehersal, not something that is +100. Yes, of course you can substitute -100 for 100 then, or alternatively do (- (...) 100) iso. (+ 100 (...)) Erik ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Karl, The problem appears when you put all the movements together **under the same score**. I consider this to be a midi bug. If you put each movement in its own score, all your engraving problems would disapear, the movements would appear as they do in the separate scores. The midi files would overwrite each other as the movements were processed leaving the midi file only representing the final movement. It would be nice if midi worked the sames as engraving, just as the separate scores are concatenated into the same book with a default amount of space separating each one, might not the midi files from each score be concatenated into the same midi file with a default amount of silence between each score? This amounts to asking that \midi {} work outside of the score block. Instead of this: \book { \score { \music1 \layout {} \midi {} } \score { \music2 \layout {} \midi {} } \score { \music3 \layout {} \midi {} } \score { \music4 \layout {} \midi {} } } we have: \book { \score { \music1 \layout {} } \score { \music2 \layout {} } \score { \music3 \layout {} } \score { \music4 \layout {} } \midi {} } I don't think this works though. So instead, you should remove the \layout {} from inside your \score {} block to create the midi file and make a new \book {} block for the layout, like this: \score { \music1 \music2 \music3 \music4 \midi {} } or however you already are doing it, but without any \layout {} blocks and: \book { \score { \music1 \layout {} } \score { \music2 \layout {} } \score { \music3 \layout {} } \score { \music4 \layout {} } } with no midi. In addition, it would be nice if you added different midi instruments to the voices: \set Staff.midiInstrument = "violin" etc. I haven't been very helpful to you so far, but I think this is all useful advice, germane to your project. Stephen - Original Message - From: "Karl Hammar" <[EMAIL PROTECTED]> To: Sent: Friday, April 15, 2005 12:59 PM Subject: Re: removing unwanted accidentals >*No*, the forget does not work for: act 1, aria 13, bar 6 Violin II: the b is shown with natural act 1, aria 13, bar 11 Violin I: the f is shown with natural Elsewhere yes, but not for theese two notes.> When I print out Score13, neither of these errors are present, even if I add the line: No one of the ScoreXX has theese problems. I used them to speed up proofreading. The problem appears when I put all the movements together and resets the bar number, as in act1.ly. #(set-accidental-style 'forget), which should suppress it in context of the total score. Don't forget you can set that anywhere in the score and reverse it with: #(set-accidental-style 'default). Stephen Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
> On Friday 15 April 2005 10.56, Karl Hammar wrote: > > [EMAIL PROTECTED]: > > > It also changes the numbering of all subsequent bars. I don't know the > > > author's intent in this case (I didn't write that snippet), but I guess > > > it could be something like an attaca movement. > > > > Yes. The bigger picture is H. Purcells opera "Dido & Æneas": > > > > http://aspodata.se/motett/noter/act* > > nice! (will this end up on mutopia?) Anyone is welcome to use it (it is still being worked on). The code is gpl (cc-sa if you insist) and Purcells music is public domain. > > > I did not like idea of big bar number, like 543. > > I think it is better with aria/movement 23, bar 25. > > You could use something like this (based on print-circled-text-callback in > scm/output-lib.scm) to achieve what you want more cleanly. It works with > 2.5.19, but not with 2.4 for some reason. > > \version "2.4.0" > > #(define-public (print-+100-text-callback grob) > (let* ( ;(text (ly:grob-property grob 'text)) > (text (number->string (+ 100 (string->number (ly:grob-property grob > 'text) > (layout (ly:grob-layout grob)) > (defs (ly:output-def-lookup layout 'text-font-defaults)) > (props (ly:grob-alist-chain grob defs)) > (text-stencil (Text_interface::interpret_markup layout props text))) > (ly:stencil-add (centered-stencil text-stencil > > > \new Staff { > \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1) > \override Score.BarNumber #'print-function = > #print-+100-text-callback > > \repeat unfold 9 { c1 \break } \bar "|." > } > > HTH, > Erik I think you misunderstand me, I wanted smallish bar numbers since that is easier to say at a rehersal, not something that is +100. Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
> >*No*, the forget does not work for: > act 1, aria 13, bar 6 Violin II: the b is shown with natural > act 1, aria 13, bar 11 Violin I: the f is shown with natural > Elsewhere yes, but not for theese two notes.> > > When I print out Score13, neither of these errors are present, even if I add > the line: No one of the ScoreXX has theese problems. I used them to speed up proofreading. The problem appears when I put all the movements together and resets the bar number, as in act1.ly. > > #(set-accidental-style 'forget), which should suppress it in context of the > total score. Don't forget you can set that anywhere in the score and reverse > it with: > > #(set-accidental-style 'default). > > Stephen > Regards /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
*No*, the forget does not work for: act 1, aria 13, bar 6 Violin II: the b is shown with natural act 1, aria 13, bar 11 Violin I: the f is shown with natural Elsewhere yes, but not for theese two notes.> When I print out Score13, neither of these errors are present, even if I add the line: #(set-accidental-style 'forget), which should suppress it in context of the total score. Don't forget you can set that anywhere in the score and reverse it with: #(set-accidental-style 'default). Stephen ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
I think we want Lilypond to continue to follow standard practive. If we give users the ability to violate those rules then total novices will start making mistakes. I think you know that in the example you gave, a person reading the score would just play an f sharp where you want an f natural if you suppressed the natural. Why supply a way to suppress that natural if we also have to say never actually do if you do not want them to play f sharp? Another way of putting it is that you could suppress the natural in that case, just by writing fis instead of f, that is what someone reading it would play anyway, so what's the point? I am saying here that automatic control of accidentals is better, given the number of choices we already have. In this case 'forget' solved the problem. Stephen - Original Message - From: "Erik Sandberg" <[EMAIL PROTECTED]> To: "Stephen" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]>; Sent: Thursday, April 14, 2005 3:49 PM Subject: Re: removing unwanted accidentals On Thursday 14 April 2005 21.31, Stephen wrote: Given all the options for automatic accidentals: voice, modern, modern-voice, piano, no-reset, forget, and default, one of them must answer every situation if you take the time to learn them. I find it confusing when there are multiple ways to do the same thing. I'd look carefully at the current options before I wrote a new option. In the example, '\set Score.currentBarNumber = #1' creates the problem. I don't see why the numbering is reset there other than to remove the number from that bar because it collides with the mark "D". There must be another way to suppress the bar number at that bar. It also changes the numbering of all subsequent bars. I don't know the author's intent in this case (I didn't write that snippet), but I guess it could be something like an attaca movement. However, I fixed it by setting the accidental style to 'forget'. See? there is already a way to do it. There are situations where this doesn't work. E.g., in { \key d\major fis f } I can see no way to avoid displaying the natural. (this example I gave is not realistic, but the below example suggests that it may happen that you want to tweak accidentals in unexpected ways, e.g. due to other bugs) Erik - Original Message - From: "Erik Sandberg" <[EMAIL PROTECTED]> To: Sent: Monday, April 11, 2005 3:53 PM Subject: removing unwanted accidentals > Hi, > > There seems to be a need for a way to notate that a single note should > _not_ > have an accidental displayed, something like a 'force-no-accidental' > property. > > I think there was a discussion about this over a year ago, without a > conclusion. Now there have been 2 or 3 (implicit) requests for it in a > short > time, and IMHO it's a reasonable feature. > > Also it looks pretty trivial to implement; may I give it a try? > > Erik > > On Sunday 10 April 2005 14.32, Karl Hammar wrote: >> How do I remove the unwanted explicit flats in the next to last >> measure in: >> >> \version "2.4.2" >> >> \relative c'' { >> \override Score.BarNumber #'break-visibility = >> #end-of-line-invisible >> \mark #03 >> \clef treble >> \key c \minor >> a2 b | >> d1 | >> \mark #04 >> \set Score.currentBarNumber = #1 >> d2 es8. as,16 bes8 c | >> % ^ ^ unwanted explicit flats here >> d1 >> } >> >> Regards >> /Karl >> >> >> >> >> ___ >> lilypond-user mailing list >> lilypond-user@gnu.org >> http://lists.gnu.org/mailman/listinfo/lilypond-user > > ___ > lilypond-devel mailing list > lilypond-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/lilypond-devel ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
On Friday 15 April 2005 10.56, Karl Hammar wrote: > [EMAIL PROTECTED]: > > It also changes the numbering of all subsequent bars. I don't know the > > author's intent in this case (I didn't write that snippet), but I guess > > it could be something like an attaca movement. > > Yes. The bigger picture is H. Purcells opera "Dido & Æneas": > > http://aspodata.se/motett/noter/act* nice! (will this end up on mutopia?) > I did not like idea of big bar number, like 543. > I think it is better with aria/movement 23, bar 25. You could use something like this (based on print-circled-text-callback in scm/output-lib.scm) to achieve what you want more cleanly. It works with 2.5.19, but not with 2.4 for some reason. \version "2.4.0" #(define-public (print-+100-text-callback grob) (let* ( ;(text (ly:grob-property grob 'text)) (text (number->string (+ 100 (string->number (ly:grob-property grob 'text) (layout (ly:grob-layout grob)) (defs (ly:output-def-lookup layout 'text-font-defaults)) (props (ly:grob-alist-chain grob defs)) (text-stencil (Text_interface::interpret_markup layout props text))) (ly:stencil-add (centered-stencil text-stencil \new Staff { \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1) \override Score.BarNumber #'print-function = #print-+100-text-callback \repeat unfold 9 { c1 \break } \bar "|." } HTH, Erik ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
[EMAIL PROTECTED]: > On Thursday 14 April 2005 21.31, Stephen wrote: ... > > In the example, '\set Score.currentBarNumber = #1' creates the problem. I Correct. > > don't see why the numbering is reset there other than to remove the number > > from that bar because it collides with the mark "D". There must be another > > way to suppress the bar number at that bar. > > It also changes the numbering of all subsequent bars. I don't know the > author's intent in this case (I didn't write that snippet), but I guess it > could be something like an attaca movement. Yes. The bigger picture is H. Purcells opera "Dido & Æneas": http://aspodata.se/motett/noter/act* I did not like idea of big bar number, like 543. I think it is better with aria/movement 23, bar 25. > > > However, I fixed it by setting the accidental style to 'forget'. See? there > > is already a way to do it. *No*, the forget does not work for: act 1, aria 13, bar 6 Violin II: the b is shown with natural act 1, aria 13, bar 11 Violin I: the f is shown with natural Elsewhere yes, but not for theese two notes. I don't know how to solv theese. If I put another f before bar 11 for V1, that f gets the natural. It seems that the first f, in this case, gets the natural, and I tried to insert a \hideNote f \unHideNote, but it was still visible. Btw, I solved the issue for the other places by starting each aria like: \set Score.explicitKeySignatureVisibility = #begin-of-line-visible \set Score.printKeyCancellation = ##f \key c \minor when the previous part already was in c minor. It would be nice if I could write: \key c \minor \music02 \key c \minor \music03 \key c \minor \music04 \key c \minor \music05 and the key-engraver only shows the key signature when it *changes*. I tried hack around in lily/key-engraver.cc and doing things like if (scm_is_eq (last, key)) return, found no solution. ... > > Erik > > > - Original Message - > > From: "Erik Sandberg" <[EMAIL PROTECTED]> > > To: > > Sent: Monday, April 11, 2005 3:53 PM > > Subject: removing unwanted accidentals > > > > > Hi, > > > > > > There seems to be a need for a way to notate that a single note should > > > _not_ > > > have an accidental displayed, something like a 'force-no-accidental' > > > property. Possible, but for this case I would prefer: 1, fixing the bug 2, make key-engraver only show changes The reason for 2, is that I prefer to put the workaround in one place, instead of littering down the .ly with bug-corrections, that must be refound when the bug is removed. > > > > > > I think there was a discussion about this over a year ago, without a > > > conclusion. Now there have been 2 or 3 (implicit) requests for it in a > > > short > > > time, and IMHO it's a reasonable feature. > > > > > > Also it looks pretty trivial to implement; may I give it a try? > > > > > > Erik > > > > > > On Sunday 10 April 2005 14.32, Karl Hammar wrote: > > >> How do I remove the unwanted explicit flats in the next to last > > >> measure in: > > >> > > >> \version "2.4.2" > > >> > > >> \relative c'' { > > >> \override Score.BarNumber #'break-visibility = #end-of-line-invisible > > >> \mark #03 > > >> \clef treble > > >> \key c \minor > > >> a2 b | > > >> d1 | > > >> \mark #04 > > >> \set Score.currentBarNumber = #1 > > >> d2 es8. as,16 bes8 c | > > >> % ^ ^ unwanted explicit flats here > > >> d1 > > >> } > > >> > > >> Regards > > >> /Karl ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
On Thursday 14 April 2005 21.31, Stephen wrote: > Given all the options for automatic accidentals: voice, modern, > modern-voice, piano, no-reset, forget, and default, one of them must answer > every situation if you take the time to learn them. I find it confusing > when there are multiple ways to do the same thing. I'd look carefully at > the current options before I wrote a new option. > > In the example, '\set Score.currentBarNumber = #1' creates the problem. I > don't see why the numbering is reset there other than to remove the number > from that bar because it collides with the mark "D". There must be another > way to suppress the bar number at that bar. It also changes the numbering of all subsequent bars. I don't know the author's intent in this case (I didn't write that snippet), but I guess it could be something like an attaca movement. > However, I fixed it by setting the accidental style to 'forget'. See? there > is already a way to do it. There are situations where this doesn't work. E.g., in { \key d\major fis f } I can see no way to avoid displaying the natural. (this example I gave is not realistic, but the below example suggests that it may happen that you want to tweak accidentals in unexpected ways, e.g. due to other bugs) Erik > - Original Message - > From: "Erik Sandberg" <[EMAIL PROTECTED]> > To: > Sent: Monday, April 11, 2005 3:53 PM > Subject: removing unwanted accidentals > > > Hi, > > > > There seems to be a need for a way to notate that a single note should > > _not_ > > have an accidental displayed, something like a 'force-no-accidental' > > property. > > > > I think there was a discussion about this over a year ago, without a > > conclusion. Now there have been 2 or 3 (implicit) requests for it in a > > short > > time, and IMHO it's a reasonable feature. > > > > Also it looks pretty trivial to implement; may I give it a try? > > > > Erik > > > > On Sunday 10 April 2005 14.32, Karl Hammar wrote: > >> How do I remove the unwanted explicit flats in the next to last > >> measure in: > >> > >> \version "2.4.2" > >> > >> \relative c'' { > >> \override Score.BarNumber #'break-visibility = #end-of-line-invisible > >> \mark #03 > >> \clef treble > >> \key c \minor > >> a2 b | > >> d1 | > >> \mark #04 > >> \set Score.currentBarNumber = #1 > >> d2 es8. as,16 bes8 c | > >> % ^ ^ unwanted explicit flats here > >> d1 > >> } > >> > >> Regards > >> /Karl > >> > >> > >> > >> > >> ___ > >> lilypond-user mailing list > >> lilypond-user@gnu.org > >> http://lists.gnu.org/mailman/listinfo/lilypond-user > > > > ___ > > lilypond-devel mailing list > > lilypond-devel@gnu.org > > http://lists.gnu.org/mailman/listinfo/lilypond-devel ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: removing unwanted accidentals
Given all the options for automatic accidentals: voice, modern, modern-voice, piano, no-reset, forget, and default, one of them must answer every situation if you take the time to learn them. I find it confusing when there are multiple ways to do the same thing. I'd look carefully at the current options before I wrote a new option. In the example, '\set Score.currentBarNumber = #1' creates the problem. I don't see why the numbering is reset there other than to remove the number from that bar because it collides with the mark "D". There must be another way to suppress the bar number at that bar. However, I fixed it by setting the accidental style to 'forget'. See? there is already a way to do it. Stephen - Original Message - From: "Erik Sandberg" <[EMAIL PROTECTED]> To: Sent: Monday, April 11, 2005 3:53 PM Subject: removing unwanted accidentals Hi, There seems to be a need for a way to notate that a single note should _not_ have an accidental displayed, something like a 'force-no-accidental' property. I think there was a discussion about this over a year ago, without a conclusion. Now there have been 2 or 3 (implicit) requests for it in a short time, and IMHO it's a reasonable feature. Also it looks pretty trivial to implement; may I give it a try? Erik On Sunday 10 April 2005 14.32, Karl Hammar wrote: How do I remove the unwanted explicit flats in the next to last measure in: \version "2.4.2" \relative c'' { \override Score.BarNumber #'break-visibility = #end-of-line-invisible \mark #03 \clef treble \key c \minor a2 b | d1 | \mark #04 \set Score.currentBarNumber = #1 d2 es8. as,16 bes8 c | % ^ ^ unwanted explicit flats here d1 } Regards /Karl ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel <>\version "2.4.2" \paper { indent = 0\mm } \relative c'' { #(set-accidental-style 'forget) \override Score.BarNumber #'break-visibility = #end-of-line-invisible \mark #03 \clef treble \key c \minor a2 b | d1 | \mark #04 \set Score.currentBarNumber = #1 d2 es8. as,16 bes8 c | % ^ ^ unwanted explicit flats here d1 } ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel