lilypond-user
[Top][All Lists]
Advanced

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

Re: How to increase the distance between systems? (new try) (7)


From: Kaj
Subject: Re: How to increase the distance between systems? (new try) (7)
Date: Thu, 19 Feb 2015 22:31:44 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

Hi Joram!

I would lie if I said that I now understand it all. No, on the contrary, you have made the "learning mountain" even higher and the slope even steeper. After reading your latest e-mail, I went back to the Notation Reference and the Internals Reference to get more information. But there is so much! LilyPond is really not easy to learn. A million of functions with as many properties, yes that is what they seem to. Often, for a non-expert as me, it looks to be different routines for almost the same thing. See e.g. all different text handlers. I am at the beginning to perceive some kind of pattern, not understand, but to accept which unit is connected to which task.

Well, end of complain section. I saw, exactly as you pointed out, that I was wrong in the assumed equity between the two ways of writing the assignments. Just the opposite of what I thought, that the other keys in the a-list were unaffected they are zeroed, or more correct reset to their default-when-unset values, which most often is zero. This is a new learning. Possibly I have come across the text in the manual before, but then I was not ready to assimilate it. At that moment I was searching for more elementary info. And so it will continue until I have learnt enough to feel that I can use the program, and it is a well known tool.

At least one more question remains: If I now has redefined the a-list and assigned a zero to the keys minimum-distance and padding, but put a reasonable value to basic-distance, how can this make the function (grob) to work as if it were another one? VerticalAxisGroup does the job it should not be able to do, but instead StaffGrouper should. Demonstrably I was able to change the distance between the staves inside the system by the means of VerticalAxisGroup while StaffGrouper is the one which actually should do that job. Yes, I know that you tried to give an explanation, but, sorry to say, it was much above my head.

Nevertheless, thank you very much for your try.
Kaj

On 2015-02-19 19:12, Noeck wrote:
Hi Kaj,

These two ways of writing, should be equivalent:
     \override Staff.VerticalAxisGroup.staff-staff-spacing = #'((basic-distance 
.
15))
     \override Staff.VerticalAxisGroup.staff-staff-spacing.basic-distance = #15
but they are not.
No, because in the first line you set the spacing to (basic-distance . 15), i.e.
you remove the function which is there by default and replace it with an alist.
If you replace this function with an alist #'((...)), it works again, but you’ve
lost the flexibility that this function offers.
In the second case you try to override the basic-distance property of the
staff-staff-spacing. But because this is a function, it has no such property.
That’s where the error occurs.

If there was no function involved here, it still is different because in the
first case you have only one spacing setting (basic-distance is 15) and thus you
remove all others (padding and so on). In the second case you keep all the other
settings in the alist and just override the basic-distance.

What is indeed the same (and failing in both cases for the reason above) is:
\override Staff.VerticalAxisGroup #'staff-staff-spacing #'basic-distance = #15
\override Staff.VerticalAxisGroup.staff-staff-spacing.basic-distance = #15

Probably the possibility will be
closed in the future, when someone has corrected the error.
So I would object here. I think this is no error. What I learned from this
conversation is that naming things that are conceptually different in a
consistent way (like the staff-staff-spacing here) is likely to confuse users.

Cheers,
Joram




reply via email to

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