|
From: | Flaming Hakama by Elaine |
Subject: | Re: \bookparts and scaling |
Date: | Thu, 28 Jun 2018 12:15:30 -0700 |
On 6/27/2018 4:57 PM, address@hidden wrote:
> It could help if we knew what #(set-global-staff-size) does exactly.
> It's not in the manual or at least I couldn't find it.
I've watched people on the list refer to the source code when manuals
failed them. I'm not as skilled as those people, but here goes. This is
only an attempt to locate the code, with little expectations of
understanding it. I don't know Scheme very well at all.
In my LilyDev VM, I run the command...
git grep set-global-staff-size
...and it finds lots of instances where the command is being used in
documentation and such, instead of where it's defined. But this file
looks promising for the definition:
$LILYPOND_GIT/scm/paper.scm
106 (define-safe-public (set-global-staff-size sz)
107 "Set the default staff size, where SZ is thought to be in PT."
The code following those lines seems to refer to this one:
69 (define-public (layout-set-absolute-staff-size-in-module module staff-height)
That one does not seem to have any comments with explanations for it.
[CAUTION: Now entering cargo-cult mode]
Based on how that layout-set-absolute-staff-size-in-module seems set up,
it does look like adding this to each \bookpart \score block will
change their staff sizes individually.
\layout {
#(layout-set-absolute-staff-size-in-module
(current-module) (* 10 (eval 'pt (current-module))))
}
The value 10 could be set to other values as desired. To show how it's
working, I modified the example posted by Torsten Hämmerle at
<http://lists.gnu.org/archive/html/lilypond-user/2018-06/msg00572.html>
and attached the source code and resulting pdf.
Again, this is total cargo-cult code, awaiting corrections or
contra-advice from LilyPond experts. And I'm sure there's a way to
properly format this code at the beginning of the LY file to pass a
value to it and avoid having to re-enter the whole thing each time.
--
Karlin High
Missouri, USA
\book
block, to be precise), use
set-global-staff-size
layout-set-staff-size
inside that score’s \layout
block:
\score { … \layout { #(layout-set-staff-size 14) } }
[Prev in Thread] | Current Thread | [Next in Thread] |