lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: doc problems with \paper and \layout keywords


From: Stephen
Subject: Re: doc problems with \paper and \layout keywords
Date: Sat, 18 Mar 2006 08:42:13 -0600

From: "Han-Wen Nienhuys" <address@hidden>
To: "Werner LEMBERG" <address@hidden>
Sent: Wednesday, March 15, 2006 6:32 PM


Werner LEMBERG wrote:
ragged-last: horizontal spacing, like ragged-right.
ragged-last-bottom: vertical spacing.


Han-Wen?

yes, this is correct.

'ragged-last' could be renamed to 'ragged-right-last' in order to clarify what it does and distinguish it from 'ragged-last-bottom'. I think 'ragged-last isn't discriptive enough.


Not really.  AFAIK, \layout has two functions, namely to set up
local layout parameters and to set up contexts (with \context).
While doing the former you can use all (or almost all?) keywords
from \paper.

Hmm.  I'd like to get some info from people who know more about
lilypond here -- I'm not very clear about \paper vs. \layout, which
is one reason why I avoided doing anything to this chapter for so
long.


Me too...

Han-Wen wrote:

I'm also not sure. There are some ways to unify things, but some of them also limit what is possible. For example, we could move all spacing related dimensions to \paper (eg line-width) and have \layout for \context settings only, but then it's no longer possible to tune line-width per \score.


"\paper" could be named "\layout". The rule could be when a \layout block is outside of the score blocks it affects all scores and when it is in a score block it affects only the score. Simple scoping rules would be sufficient. But there will always be some things that cannot be done on a per score basis and vis versa. It is easier to explain to users what can and can't be done inside the \paper and \layout blocks rather than saying you can do this in a \layout block inside a \score block and that i a \layout block outside the \score block. But this is the reason why the \paper keyword was created in the first place.

Werner LEMBERG wrote:

Sent: Thursday, March 16, 2006 12:26 AM
Hmm, I don't think so.  It's quite standard in most programming
languages that a local invocation of a keyword overrides the global
version only temporarily.  Anyway, this is a small detail.

The above explanation applies here as well, it is easier to explain to users what can and cannot be done inside a \paper block and \layout block rather than explain what can be done in a \layout block in a \score block and what can be done in a \layout block only globally. I think Graham Percival may be on the right track in removing the \layout block entirely.

From: "Graham Percival" <address@hidden>
To: "Werner LEMBERG" <address@hidden>
Sent: Wednesday, March 15, 2006 10:37 PM

... although perhaps renamed to \context -- in fact, remove the \layout entirely:
(toplevel)
\context {
  \Staff {
    \override blah
  }
  \Voice {
    \override foo
}}

Cheers,
- Graham

I can see where I am confusing things by trying to respond to multiple postings of this thread with one posting. So I'll send this and respond in separate postings to the rest of the thread if I think of something more to say.

Stephen


I'm not sure what the right solution is.

Ideas?


--

Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen

LilyPond Software Design
 -- Code for Music Notation
http://www.lilypond-design.com



_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel





reply via email to

[Prev in Thread] Current Thread [Next in Thread]