On Wed, 2006-05-17 at 13:48 +0100, [EMAIL PROTECTED] wrote:
I've upgraded to mingw 2.8.2 ... Firstly, thanks for the tip about page-spacing.ly. This looks exactly like what I want ... except I can't find any docu except the example itself, and cut-n-pasting seems to have no effect :-( (I've looked in the manual index, and in the html internal thingy which I used IE's search on) And I still can't get my "DS al Coda" and coda symbols to come out where/how I want them. It's all very well saying "attach them to the note before/after", but (a) imho they belong attached to the barline, and (b) last time I attached something like that to a R1*8 it looked rather silly ...
For controlling the positions:
- Always use rehearsal marks, for things like DS, To Coda and the actual Coda mark.
- Put in a separate variable for the mark and the position control. You do this so that you can define a different value for the position control for each instrument when you print the parts.
- Define the position control using some syntax like:
positionDS = { % Set the anchor at the bar line. depending on what you need, you can also align to things like % clefs, time signatures, etc. \once \set Score.rehearsalMarkAlignSymbol = #'staff-bar % Put the mark to the left of the bar line (or on the preceding line if there is a break) % Use -1 and end-of-line-invisible to position right of the bar or following the break. % Use 0 to center on the bar and end-of-line-invisible to center on the bar or follow the break. \once \override Score.RehearsalMark #'self-alignment-X = #1 \once \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible % position the mark up 6.6 lines. This can cause a change in the space between systems. \once \override Score.RehearsalMark #'padding = #6.6 % adjust the position of the mark one staff unit right from where it would otherwise be. \once \override Score.RehearsalMark #'extra-offset = #'(1.0 . 0.0) }By doing the above you can print the parts or the whole score and completely control the position of the mark. Sometimes you will find that you want to position rehearsal marks on both sides of the bar, for example "To Coda" preceding and a section mark following. Under those circumstances, you set up one of the marks at either the preceding or following bar. Then you have to heavily adjust the X location in extra-offset to get the mark where you want it.
(Actually, I think it was effectively << {s2 s s1*3} {R1*4} >> with the s's and R in different voices on the same staff, but it was a mess The s2 stuff was a deliberate (and failed) attempt to get it to go to the left.) Oh - and with my current part the coda will collide with a fermata :-(
See above for how to move the mark away from the articulations.
The problem (from my point of view) is that I'm in the habit of putting all the structure in a separate voice from the notes, and codas etc are structure. So I can't attach them to a genuine note or fine-tune their left/right alignment, because I re-use the same structure voice across multiple parts, hence stuff like that getting attached to a R1*8! So basically, in the below code I want (1) to push the last system down and leave a bigger gap (2) to have "DS al Coda" appear right-justified at the end of the penultimate system (3) to have the Coda symbol appear left justified at the beginning of the last system
I usually have short Codas that are separated from the main music by a little bit of space. To do that I insert an invisible measure. Typically that means that you put:
\stopStaff s \startStaff in between the main music and the coda. You may or may not want to prevent line breaks before or after the blank measure. If you want you can also coerce the measure count after the blank. I usually don't find that necessary because the codas are short and don't end up displaying a number.
For your situation, it sounds like the codas are longer. In that case, you might just put a very large padding on the Coda mark and force it back down with a negative number in the Y value in extra-offset. What that will do is to create enough space between the measures for the Coda mark to be way above the staff. But then you push it back down with extra-offset, WHICH DOES NOT AFFECT THE POSTIONS OF NEIGHBORING OBJECTS. You might also be able to directly tweak the spacing on the last system. I have seen hints in the docs that that works but haven't actually tried it.
imho this is a perfectly normal layout and I just cannot see how to achieve it ... \version "2.8.2" allegro = { \once \override Score.RehearsalMark #'self-alignment-X = #left \mark "Allegro" } coda = { \mark \markup { \musicglyph #"scripts.coda" } } dalsegno = { \once \override Score.RehearsalMark #'self-alignment-X = #right \mark "DS al Coda" } segno = { \mark \markup { \musicglyph #"scripts.segno" } } voiceTimeSig = { \time 2/4 \key df \major s2*2 s2*8 s2*8 s2*8 s2*2 s2*8 s2*8 s2*8 \key bf \major \repeat volta 2 { s2*15 } \alternative { { s2 } { s2 } } s2*3 \key df \major s2*4 } voiceMarkup = { s2*2 \bar "||" \segno s2*8 \bar "||" \allegro s2*8 \bar "||" s2*8 \bar "||" \coda s2*2 \bar "||" s2*8 \bar "||" \allegro s2*8 \bar "||" s2*8 % Trio \break \mark "TRIO Presto" \repeat volta 2 { s2*15 } \alternative { { s2 } { s2 } } s2*3 \bar "||" \dalsegno \overrideProperty #"Score.NonMusicalPaperColumn" #'line-break-system-details #'((next-space . 20)) \break \once \override Score.RehearsalMark #'self-alignment-X = #left \coda s2*4 }
-- Dick Schoeller mailto:[EMAIL PROTECTED] http://schoeller.hsd1.ma.comcast.net/ 781.449.5476 |
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user