Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Looking back at the section on Explicitly instantiating voices, I now notice that more or less the same idea is already used, but with different shapes of the note heads instead of using different colors. The example also shows the use of explicit \voiceOne, \voiceTwo and \oneVoice commands. Mark, what do you say? Is the current example in the manual too complex so that the main points are not clear enough? Should we replace that example by Kieren's? (For the record, there are plenty of answers to similar questions in the mailing list archives, that show exactly the same construct. I'm surprised that you didn't find them.) /Mats Mats Bengtsson wrote: Excellent idea! I will add something like this to the manual, extended with yet another example that shows how to manually specify \voiceOne and so on. /Mats Kieren MacMillan wrote: Hi Mark, It looks like there is a solution to the problem Glad it worked! perhaps people in the past just didn't understand the questions of the people asking properly . . . Perhaps... that's why I kept trying to clarify what question you were really asking, so that I could answer the question you were really asking! =) Graham: may I suggest one thing that might help the docs? In 6.3 (especially .4, Explicitly instantiating voices), maybe if the notes in each Voice context were independently (i.e., differently) coloured, the examples (and thus the constructs and internal Lilypond mechanisms) would be even more clear immediately? For an example, see the attached snippet. Best regards, Kieren. ___ \version 2.11.30 \markup \wordwrap { At first it may be difficult to understand why the three C notes are not tied in the following example: } \score { \new Staff \relative c'' { c ~ { c ~ } \\ { a } c } } \markup \wordwrap { By colouring the main Voice red, the problem becomes clear: } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \\ { a } c } } \markup \wordwrap { Within the \typewriter { \\\ } polyphony section, two completely new Voice contexts, independent from the main Voice, have been constructed automatically by Lilypond. There are several ways to compensate for this instantiation, but the easiest is simply to avoid the \typewriter { \\\ } construct entirely — within the construct, any notes before an explicit \typewriter { \\new Voice } command will belong to the main Voice context (i.e., the one “outside” the polyphony): } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \new Voice { a } c } } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
color in the manual (was: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices))
I'm not overly enthusiastic about adding color to the manual: I'm not certain how it will look in a printed pdf (many people print the docs) or in the info files. We obviously need to use color in the doc section about color, and the red staff-lines in Ancient notation will show up as black anyway in print, but I'm worried about adding color to the main manual. Would it be possible to find noteheads that are more easily distinguishable? Or perhaps making the example bigger? ... Actually, I think the best solution is to move the basic explanation about polyphony out of the manual and into the tutorial. I have no problem with using bigger staff sizes in the tutorial, and I have less concerns about using color in there. Also, that's the place for the basic explanations. Anybody feel like writing a wordy explanation about polyphony? It could either replace/add to 2.3.4, or we could add a new subsection after 2.3.5 for this explanation. Feel free to plunder material from 6.3.3. (if you do, please let me know before you start writing) I don't mind doing this myself; I'm just asking in case Kieren is excited about this topic. It would be a nice way to start working on the docs. :) Cheers, - Graham Mats Bengtsson wrote: Excellent idea! I will add something like this to the manual, extended with yet another example that shows how to manually specify \voiceOne and so on. /Mats Kieren MacMillan wrote: Hi Mark, It looks like there is a solution to the problem Glad it worked! perhaps people in the past just didn't understand the questions of the people asking properly . . . Perhaps... that's why I kept trying to clarify what question you were really asking, so that I could answer the question you were really asking! =) Graham: may I suggest one thing that might help the docs? In 6.3 (especially .4, Explicitly instantiating voices), maybe if the notes in each Voice context were independently (i.e., differently) coloured, the examples (and thus the constructs and internal Lilypond mechanisms) would be even more clear immediately? For an example, see the attached snippet. Best regards, Kieren. ___ \version 2.11.30 \markup \wordwrap { At first it may be difficult to understand why the three C notes are not tied in the following example: } \score { \new Staff \relative c'' { c ~ { c ~ } \\ { a } c } } \markup \wordwrap { By colouring the main Voice red, the problem becomes clear: } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \\ { a } c } } \markup \wordwrap { Within the \typewriter { \\\ } polyphony section, two completely new Voice contexts, independent from the main Voice, have been constructed automatically by Lilypond. There are several ways to compensate for this instantiation, but the easiest is simply to avoid the \typewriter { \\\ } construct entirely — within the construct, any notes before an explicit \typewriter { \\new Voice } command will belong to the main Voice context (i.e., the one “outside” the polyphony): } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \new Voice { a } c } } ___ 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: color in the manual (was: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices))
Hi Graham, Anybody feel like writing a wordy explanation about polyphony? I think I can handle that. =) Best, Kieren. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Mats Bengtsson wrote: . . . Mark, what do you say? Is the current example in the manual too complex so that the main points are not clear enough? Should we replace that example by Kieren's? I didn't mean to imply anything about the documentation earlier. But, since you asked . . . Perhaps Kieren's example would be helpful instead. I'm not exactly sure. I'm colorblind, though (slightly), so I don't know how much adding the color would help me specifically. I think hints like color, size, and shape only help some people, and only in some circumstances. For me, in this case, I think a detailed explanation would be better. It's not 'usually' the complexity of the documentation that causes problems for me. It's normally just matters of syntax, what relates to what, and what means what that I need clarification on (i.e. little specific details of how things are implemented). I like details and specifics a lot (so a detailed explanation isn't something I consider complicated, though I'm sure that's not what you meant). A nested explanation might be something I'd consider complicated. For instance, the documentation says this: . . . \upper \\ \lower is equivalent to \new Voice = 1 { \voiceOne \upper} \new Voice = 2 { \voiceTwo \lower} I think the \upper and \lower thing in the documentation is syntactically confusing, without specifically saying they represent the notes there, seeing as \upper and \lower are also used in the piano staff context, as people will actually try to put \upper and \lower in their code (without instantiating them). I would recommend either replacing these with notes directly, or showing their instantiation above the example (and explaining the significance of the voice names 1 and 2; plus, a mention of when/why it is good to leave them out would be nice—maybe it's already mentioned somewhere else, and if so, perhaps I might recommend pointing us there from here). I might recommend adding an example like this somewhere below that: {\voiceOne (upper notes here)} \new Voice {\voiceTwo (lower notes here)} \oneVoice is the preferred way over {(upper notes here)} \\ {(lower notes here)} for polyphonic chords used with lyrics, since the \\ method automatically gives the names 1 and 2 to the voices, which are not the names of the voice the lyrics are following (i.e. sopranos, etc.) Where to look for what, in the documentation generally, is also an issue at times. I might recommend giving us some tips on how to find things (generally speaking), and how to glean information, as it seems to be easier for you. All in all, though, I didn't mean to bring up the documentation, myself. It normally works well for me in connection with the forums—lately, at least. I understand if you don't want to put this in the documentation (that's fine with me)—after all, it is on the forums now in a way people who think like me could find it. (For the record, there are plenty of answers to similar questions in the mailing list archives, that show exactly the same construct. I'm surprised that you didn't find them.) I only found such as the links I included in one of the earlier posts of this thread (but I only made a few different search criteria: i.e. polyphony lyrics, and . . . I forgot what else). I didn't bother to look further since one of the threads I saw made it look like a known issue that we just had to deal with (and that's another reason I didn't look at the manual further; I had no reason to believe I could find anything more on the subject there, because of what I saw in the threads). It's possible that I saw the answers/questions you mentioned, but thought they were talking about something else, or something irrelevant. I mean, it could have been a matter of semantics. People are easy to misunderstand (especially when they talk about familiar things with unfamiliar terminology). As long as I know what I want, though, the clarity of the documentation isn't a 'huge' deal for me, seeing as I don't view documentation in the same light as a tutorial (I mean, it seems more for advanced reference than a teaching aid for new and semi-intermediate users). I'm at a point where things are becoming more clear and using the documentation for reference isn't that bad (understanding how voices works helps a lot for this; I think this is probably one of the most important sections to make clear, and add detail). I mean, the documentation seems to require a certain amount of knowledge about LilyPond in order to learn (some sections more than others) as sometimes answers are given using principles the learner may not have learned yet. Documentation isn't something I generally expect to read through in a linear fashion (usually I use it more on a want/need-to-know basis), while a tutorial or a textbook is. Is one supposed to read the documentation in a linear fashion? I don't know, personally, but the knowledge would be
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Mark Dewey wrote: I think the \upper and \lower thing in the documentation is syntactically confusing, without specifically saying they represent the notes there, I would recommend either replacing these with notes directly, or showing their instantiation above the example (and explaining the significance of the voice names 1 and 2; plus, a mention of when/why it is good to leave them out would be nice—maybe it's already mentioned somewhere else, and if so, perhaps I might recommend pointing us there from here). Let me preface my remarks by stating that the tutorial has been completely rewritten in 2.11; if you haven't seen the 2.11 docs, you'll have missed this. See 2.5.4 Organizing pieces with identifiers. We can't explain all the material in the tutorial throughout the rest of the manual; chapter 3 and onwards (especially chapter 6 and up!) assumes that you are familiar with the material in chapter 2. Where to look for what, in the documentation generally, is also an issue at times. I might recommend giving us some tips on how to find things (generally speaking), and how to glean information, as it seems to be easier for you. 1.6 is a bit out of date, but it's still a good start. I'll update that later tonight. 2.5.6 How to read the manual doesn't discuss where to find things, although such material could be added there. I'm not certain it's worth adding stuff to 2.5.6, though. If people don't notice 1.6, then... All in all, though, I didn't mean to bring up the documentation, myself. It normally works well for me in connection with the forums—lately, at least. I understand if you don't want to put this in the documentation (that's fine with me)—after all, it is on the forums now in a way people who think like me could find it. People don't search the mailist archives. In addition, if everybody has to ask stuff here, we have to explain everything all the time. That's the reason I started working on the docs: I was answering the same questions again and again. I decided that I would never answer a question directly (with anything other than a polite RTFM); instead, I would spend that time improving the docs so that the next person didn't have to ask. Cheers, - Graham ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
I've discovered a number of threads on this topic (how lyrics don't work when you use such as {a' b'} \\ { c' d'}. I didn't seem to have trouble with lyrics in my early days of trying this . . . (but, maybe then I was just focusing on the music, before putting the lyrics in; whatever the case, I ended up not using them for another reason). Anyway, I've come across a situation where I needed to have this (i.e. stem directions pointing different ways on the same note, only a few times). So . . . I looked through the LilyPond discussion and found various things, none of which in and of themselves provided a satisfactory solution (although they helped me come up with what follows). Anyway, I found a way that works better for me (although it requires adjusting if you need to change the system width). I did, however, discover a solution. Basically, I just used underscores to make one word look like two, and I re-aligned the lyrics to make them shift over in the right direction. This makes it look fine (although it would be nice if they made some way to have differing stem directions in the same chord without having multiple voices, on a chord by chord basis, rather than all of them that follow). So, here's the code: In the lyrics area: \once \override Score . LyricText #'self-alignment-X = #-1 Iam \skip 1 (the skip is for the note without lyrics; 'am' overlaps onto it so it looks like it belongs there; the number of underscores may vary significantly, and also the integer assigned with the override up there, depending on the direction it needs to shift: i.e. -1, 1, 0, etc.) Here's the note code I used for the spot to put the lyrics over: {f'4.} \\ {f'4.} It takes a little tweaking, but it works better and faster than anything else I've tried (it's not always practical to have multiple voices, especially when your number of staffs changes in the middle of the song, at least in certain ways, and you only want one midi for the song). Anyway, this is just a tip for those needing a solution to this, since there are many I've seen asking the question. I don't suppose they're planning to make a more standard solution, yet, are they? I would personally suggest just adding a tweak to chords (rather than messings with voices) to add the ability to make the stems go in opposing directions (it's not the durations that matter so much). Something simple like this: \stemUp f' \stemDown f'4 or \stemUp c'' a' \stemDown f' (This would signify that both c'' and a' were up, on the same stem, and only f' was down. Making it so multiple up stems appeared would be bad, I think, in a chord context like this. I don't think the middle notes should be able to go against both the top and the bottom, in this context.) ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Hi Mark: I've discovered a number of threads on this topic (how lyrics don't work when you use such as {a' b'} \\ { c' d'} I'm not sure what you mean by lyrics don't work -- have you tried { a' b' } \new Voice { c' d' } instead of { a' b' } \\ { c' d' } That works perfectly for me in every situation I've run into. In other words, in what circumstance would you *not* want to specifically instantiate the extra Voice context(s)? If this doesn't solve the problem you're talking about, please post a minimal code example, so we (I) can see what you're talking about. Hope this helps, Kieren. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Hi Mark, By saying the lyrics don't work, I mean the lyrics skip the 'polyphonic' notes. Sorry, I must be dense here... =\ Please tell me what behaviour you find unexpected in the attached snippet (note that the lyrics clearly DO NOT skip the 'polyphonic notes') -- that way, I'll know exactly what you're talking about, and might be able to be of more help. Thanks, Kieren. _ \version 2.11.30 theMusic = \relative c' { e4 d c2 | e4 d c2 | { \voiceOne g'4 f8. f16 e2 | g4 f8. f16 e2 } \new Voice { \voiceTwo e4 d c2 | e4 d c2 } \oneVoice } theWords = \lyricmode { Three blind mice, three blind mice, See how they run, see how they run. } \score { \new Voice = singer \theMusic \new Lyrics \lyricsto singer \theWords } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Kieren MacMillan wrote: . . . Please tell me what behaviour you find unexpected in the attached snippet (note that the lyrics clearly DO NOT skip the 'polyphonic notes') -- that way, I'll know exactly what you're talking about, and might be able to be of more help. . . . Your example looks perfectly fine, and I see no unexpected results. At first I thought this would cause problems when used inside of another context, but, you do something new to me I haven't seen suggested with this before (\oneVoice, and no \new Voice before the first voice). I tried it out in my situation, and it works. It looks like there is a solution to the problem, and perhaps people in the past just didn't understand the questions of the people asking properly . . . Anyway, here is the code that works, in the fashion I want it to work (this example isn't one of a situation that would require it, as that would be too complex, but it is one that shows it can work how I want it to): \version 2.10.29 sopWords = \lyricmode { \set stanza = 1. TestOne testTwo } \score { \new Staff \new Voice = sopranos { \voiceOne \time 4/4 \key c \major a'4 {\voiceOne a'} \new Voice {\voiceTwo a'} \oneVoice \bar |. } \new Lyrics = sopranos { s1 } \context Lyrics = sopranos \lyricsto sopranos \sopWords } Thank you for your help! This will help out with quite a lot of other issues, actually, it seems. I suspect the key was using \oneVoice to set it back, since the reason it didn't show up using {} \\ {} was that they produced extra voices or something like that which couldn't be referenced properly. What I tried before, at your first suggestion, was doing what I did on the outer framework in this code (i.e. without \oneVoice). ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Hi Mark, It looks like there is a solution to the problem Glad it worked! perhaps people in the past just didn't understand the questions of the people asking properly . . . Perhaps... that's why I kept trying to clarify what question you were really asking, so that I could answer the question you were really asking! =) Graham: may I suggest one thing that might help the docs? In 6.3 (especially .4, Explicitly instantiating voices), maybe if the notes in each Voice context were independently (i.e., differently) coloured, the examples (and thus the constructs and internal Lilypond mechanisms) would be even more clear immediately? For an example, see the attached snippet. Best regards, Kieren. ___ \version 2.11.30 \markup \wordwrap { At first it may be difficult to understand why the three C notes are not tied in the following example: } \score { \new Staff \relative c'' { c ~ { c ~ } \\ { a } c } } \markup \wordwrap { By colouring the main Voice red, the problem becomes clear: } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \\ { a } c } } \markup \wordwrap { Within the \typewriter { \\\ } polyphony section, two completely new Voice contexts, independent from the main Voice, have been constructed automatically by Lilypond. There are several ways to compensate for this instantiation, but the easiest is simply to avoid the \typewriter { \\\ } construct entirely — within the construct, any notes before an explicit \typewriter { \\new Voice } command will belong to the main Voice context (i.e., the one “outside” the polyphony): } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \new Voice { a } c } } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Tip: lyrics with polyphony / stem directions (without specifically instantiated voices)
Excellent idea! I will add something like this to the manual, extended with yet another example that shows how to manually specify \voiceOne and so on. /Mats Kieren MacMillan wrote: Hi Mark, It looks like there is a solution to the problem Glad it worked! perhaps people in the past just didn't understand the questions of the people asking properly . . . Perhaps... that's why I kept trying to clarify what question you were really asking, so that I could answer the question you were really asking! =) Graham: may I suggest one thing that might help the docs? In 6.3 (especially .4, Explicitly instantiating voices), maybe if the notes in each Voice context were independently (i.e., differently) coloured, the examples (and thus the constructs and internal Lilypond mechanisms) would be even more clear immediately? For an example, see the attached snippet. Best regards, Kieren. ___ \version 2.11.30 \markup \wordwrap { At first it may be difficult to understand why the three C notes are not tied in the following example: } \score { \new Staff \relative c'' { c ~ { c ~ } \\ { a } c } } \markup \wordwrap { By colouring the main Voice red, the problem becomes clear: } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \\ { a } c } } \markup \wordwrap { Within the \typewriter { \\\ } polyphony section, two completely new Voice contexts, independent from the main Voice, have been constructed automatically by Lilypond. There are several ways to compensate for this instantiation, but the easiest is simply to avoid the \typewriter { \\\ } construct entirely — within the construct, any notes before an explicit \typewriter { \\new Voice } command will belong to the main Voice context (i.e., the one “outside” the polyphony): } \score { \new Staff \relative c'' { \override Voice.NoteHead #'color = #red c ~ { c ~ } \new Voice { a } c } } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user -- = Mats Bengtsson Signal Processing Signals, Sensors and Systems Royal Institute of Technology SE-100 44 STOCKHOLM Sweden Phone: (+46) 8 790 8463 Fax: (+46) 8 790 7260 Email: [EMAIL PROTECTED] WWW: http://www.s3.kth.se/~mabe = ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user