Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread David Kastrup
Matthias Kilian  writes:

> On Tue, Dec 29, 2009 at 08:16:37AM +0100, David Kastrup wrote:
>> > -  find $(outdir)/offline-root -type l -delete
>> > +  find $(outdir)/offline-root -type l | xargs rm -f
>> >  endif # ifeq ($(out),www)
>> 
>> What's the rationale? 
>
> The `-delete' primary isn't very portable, it's a GNU extension.

Please mention this in the commit message.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread David Kastrup
Graham Percival  writes:

>> Then change it to something like this:
>> 
>>  find $(outdir)/offline-root -type l -print0 | xargs -0 rm -f --
>> 
>> Or even this (completely POSIX compliant):
>> 
>>  find $(outdir)/offline-root -type -l -exec rm -f -- '{}' +
>> 
>> (but then I've to patch it again, since find(1) on OpenBSD doesn't yet
>> support the `-exec command {} +' primary).
>
> Well, if that's part of POSIX, then adding it can't be a bad
> thing.  :)

Isn't AFAIK.

> But for the purposes of the lilypond build scripts, I don't think it's
> necessary.  The first version of the patch should be fine.

Ok, if the directory is complete under user control (not world-writable
in general: if it were, you could just put nasties in the Makefiles
anyway).

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


translation files not distributed

2009-12-29 Thread Graham Percival
file from VC not distributed: lilypond-2.13.10/Documentation/hu/web.texi
file from VC not distributed:
lilypond-2.13.10/Documentation/hu/web/download.itexi
file from VC not distributed:
lilypond-2.13.10/Documentation/hu/web/introduction.itexi
file from VC not distributed:
lilypond-2.13.10/Documentation/hu/web/manuals.itexi


Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: remove duplicate anchor generation in texi2html

2009-12-29 Thread Patrick McCarty
On 2009-12-29, Patrick McCarty wrote:
> 
> After an hour digging through the texi2html source, I was not able to
> figure it out, so I'll come back this issue in a couple of days.
> 
> Though, as an experiment, I tried nulling the first return value
> instead of the second, and the second-layer TOC did not disappear.  I
> don't know if this causes problems elsewhere though.  See the diff
> below.
> 
> 
> diff --git a/Documentation/lilypond-texi2html.init 
> b/Documentation/lilypond-texi2html.init
> index 1ff5d8a..2906347 100644
> --- a/Documentation/lilypond-texi2html.init
> +++ b/Documentation/lilypond-texi2html.init
> @@ -733,7 +733,10 @@ sub lilypond_element_target_name($$$)
># TODO: Once texi2html correctly prints out the target and not the id for
>#   the sections, change this back to ($id, $target)
>$target = lc($target);
> -  return ($target, $target);
> +
> +  # remove duplicate anchor generation
> +  return ("", $target);
> +  #return ($target, $target);
>  }

I forgot to mention that with this patch, hyperlinks have a "#"
appended to them instead of a "#" followed by the node name.  So it's
still not satisfactory.

I tried to figure out where the hyperlink names are generated.  I
assume the procedure does a simple concatenation of the filename, #,
and the node name (id), but the location of this code has evaded me so
far.

Thanks,
Patrick


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: remove duplicate anchor generation in texi2html

2009-12-29 Thread Patrick McCarty
On 2009-12-29, Patrick McCarty wrote:
> On Mon, Dec 28, 2009 at 2:26 PM, Graham Percival
>  wrote:
> > The below patch stops texi2html from creating two anchors, making the
> > webpage navigation much more comfortable.  However, it also makes the
> > TOC navbars disappear.
> >
> > diff --git a/Documentation/lilypond-texi2html.init 
> > b/Documentation/lilypond-texi
> > index 1ff5d8a..2ca1a67 100644
> > --- a/Documentation/lilypond-texi2html.init
> > +++ b/Documentation/lilypond-texi2html.init
> > @@ -733,7 +733,10 @@ sub lilypond_element_target_name($$$)
> >   # TODO: Once texi2html correctly prints out the target and not the id for
> >   #       the sections, change this back to ($id, $target)
> >   $target = lc($target);
> > -  return ($target, $target);
> > +
> > +# removes duplicate anchor generation
> > +  return ($target, "");
> > +#  return ($target, $target);
> >  }
> 
> The HTML for the second-layer TOC is missing after applying this
> patch, so the CSS is not broken, just the HTML.  div#tocframe is still
> generated, but only for the top-level TOC.
> 
> Also, it's only an accident that this would make the webpage
> navigation more comfortable, since the real solution is to remove the
> anchors from the hyperlink URLs when the texinfo is split by section
> (I'm working on it).  With this patch, the hyperlink anchors point to
> a non-existent anchors; while harmless, it's still annoying.  :-)

After an hour digging through the texi2html source, I was not able to
figure it out, so I'll come back this issue in a couple of days.

Though, as an experiment, I tried nulling the first return value
instead of the second, and the second-layer TOC did not disappear.  I
don't know if this causes problems elsewhere though.  See the diff
below.

Thanks,
Patrick


diff --git a/Documentation/lilypond-texi2html.init 
b/Documentation/lilypond-texi2html.init
index 1ff5d8a..2906347 100644
--- a/Documentation/lilypond-texi2html.init
+++ b/Documentation/lilypond-texi2html.init
@@ -733,7 +733,10 @@ sub lilypond_element_target_name($$$)
   # TODO: Once texi2html correctly prints out the target and not the id for
   #   the sections, change this back to ($id, $target)
   $target = lc($target);
-  return ($target, $target);
+
+  # remove duplicate anchor generation
+  return ("", $target);
+  #return ($target, $target);
 }
 
 


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


StaffGrouper vs. VerticalAxisGroup: syntax inconsistencies

2009-12-29 Thread Werner LEMBERG

Folks,


why can I say

  \new PianoStaff \with {
\override StaffGrouper
  #'between-staff-spacing #'minimum-distance = #20
  } ...

but not

  \new Staff \with {
\override VerticalAxisGroup
  #'next-staff-spacing #'minimum-distance = #20
  } ...

?

The latter gives this warning:

  warning: type check for `next-staff-spacing' failed;
  value `((minimum-distance . 12) .
  #)'
must be of type `list'

I would like to use former syntax form for the latter too, and it
seems to be a real syntax inconsistency since both the
`between-staff-spacing' and `next-staff-spacing' lists contain the
same elements.


 Werner


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: please do a "make doc-clean; make clean"

2009-12-29 Thread Graham Percival
On Wed, Dec 30, 2009 at 5:13 AM, Carl Sorensen  wrote:
>
> So now make fails, with this error message:

Interesting.  When was the last time you did a fresh "make" ?  Was it
before 21 Dec 2009 ?

> ./include/libc-extension.hh:51: error: declaration does not declare anything
> ./include/libc-extension.hh:51: error: declaration does not declare anything
> lipo: can't open input file:
> /var/folders/Rv/RvqP2cCoEOawyy1FGSxWZU+++TI/-Tmp-//ccyBa9Qz.out (No such
> file or directory)

Silly question: you're not out of HD space, are you?  :)

> Any thoughts?

My first thought is
http://code.google.com/p/lilypond/issues/detail?id=947
which was applied on 21 Dec here:
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=6b78efc2ea0cb064850c264ff225d9930353a178

but I can't see any vector in libc-extension.hh.  So then the question
is "what version of gcc are you using exactly", and we start fishing
around with various low-level issues.

I can't see how the recent texinfo macro games would possibly affect this.

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: please do a "make doc-clean; make clean"

2009-12-29 Thread Carl Sorensen



On 12/29/09 9:32 PM, "Graham Percival"  wrote:

> Oops, relied off-list by accident.
> 
> Please do a new pull, and build from a fresh tree.  This mess was
> fixed in 7b34eac90f81c8123feaf2670fafae236101f14c and I can confirm
> that it's ok in 80ebf95c872dd6afd587ce388e7fa3ca216937aa .
> 
> I don't know if the "make clean" is strictly necessary, but it can't hurt.

So now make fails, with this error message:

cp -p /Users/Carl/lilypond-working/config.hh out/config.hh
rm -f ./out/file-cookie.dep; DEPENDENCIES_OUTPUT="./out/file-cookie.dep
./out/file-cookie.o" g++ -c
-I/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5
-I/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5 -arch
ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk
-fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd
-fno-common -dynamic -DNDEBUG -g -O3 -DHAVE_CONFIG_H  -DNDEBUG -I./include
-I./out -I../flower/include -I../flower/./out  -I/opt/local/include  -O2
-finline-functions -g -pipe -I/opt/local/include -I/opt/local/include
-D_THREAD_SAFE -I/opt/local/include/freetype2 -I/opt/local/include
-I/opt/local/include/pango-1.0 -I/opt/local/include/freetype2
-I/opt/local/include -I/opt/local/include/glib-2.0
-I/opt/local/lib/glib-2.0/include  -W -Wall -Wconversion -o
out/file-cookie.o file-cookie.cc
./include/libc-extension.hh:51: error: declaration does not declare anything
./include/libc-extension.hh:51: error: declaration does not declare anything
lipo: can't open input file:
/var/folders/Rv/RvqP2cCoEOawyy1FGSxWZU+++TI/-Tmp-//ccyBa9Qz.out (No such
file or directory)
make[1]: *** [out/file-cookie.o] Error 1
make: *** [all] Error 2
sorensen2:lilypond-working Carl$

flower/include/libc-extension.hh looks like this:

48 
 49 #if ! HAVE_SNPRINTF /* GNU extension. */
 50 int snprintf (char *str, size_t n, char const *format, ...);
 51  __attribute__ ((format (printf, 3, 4)));
 52 #endif
 53 

Any thoughts?

Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


please do a "make doc-clean; make clean"

2009-12-29 Thread Graham Percival
Oops, relied off-list by accident.

Please do a new pull, and build from a fresh tree.  This mess was
fixed in 7b34eac90f81c8123feaf2670fafae236101f14c and I can confirm
that it's ok in 80ebf95c872dd6afd587ce388e7fa3ca216937aa .

I don't know if the "make clean" is strictly necessary, but it can't hurt.

Cheers,
- Graham


On Wed, Dec 30, 2009 at 3:37 AM, Carl Sorensen  wrote:
> The documentation is broken right now due to the french translation of the
> Notation reference.
>
> A bad index entry is found in Documentation/fr/out-www/notation.cp
>
> Line 2 in this file is:
>
> \entry{\par }{1}{\code {\par }}
>
>
> In the corresponding file Documentation/out-www/notation.cp, line 2 is
>
> \entry{Manuals}{1}{\code {Manuals}}
>
>
> I'm guessing there's something wrong with the translation, and that's beyond
> my expertise, so I'm just reporting it.
>
> Thanks,
>
> Carl
>
>
>
> ___
> lilypond-devel mailing list
> lilypond-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/lilypond-devel
>


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Make doc broken by french translation

2009-12-29 Thread Carl Sorensen
The documentation is broken right now due to the french translation of the
Notation reference.

A bad index entry is found in Documentation/fr/out-www/notation.cp

Line 2 in this file is:

\entry{\par }{1}{\code {\par }}


In the corresponding file Documentation/out-www/notation.cp, line 2 is

\entry{Manuals}{1}{\code {Manuals}}


I'm guessing there's something wrong with the translation, and that's beyond
my expertise, so I'm just reporting it.

Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: remove duplicate anchor generation in texi2html

2009-12-29 Thread Patrick McCarty
On Mon, Dec 28, 2009 at 2:26 PM, Graham Percival
 wrote:
> The below patch stops texi2html from creating two anchors, making the
> webpage navigation much more comfortable.  However, it also makes the
> TOC navbars disappear.
>
> diff --git a/Documentation/lilypond-texi2html.init 
> b/Documentation/lilypond-texi
> index 1ff5d8a..2ca1a67 100644
> --- a/Documentation/lilypond-texi2html.init
> +++ b/Documentation/lilypond-texi2html.init
> @@ -733,7 +733,10 @@ sub lilypond_element_target_name($$$)
>   # TODO: Once texi2html correctly prints out the target and not the id for
>   #       the sections, change this back to ($id, $target)
>   $target = lc($target);
> -  return ($target, $target);
> +
> +# removes duplicate anchor generation
> +  return ($target, "");
> +#  return ($target, $target);
>  }

The HTML for the second-layer TOC is missing after applying this
patch, so the CSS is not broken, just the HTML.  div#tocframe is still
generated, but only for the top-level TOC.

Also, it's only an accident that this would make the webpage
navigation more comfortable, since the real solution is to remove the
anchors from the hyperlink URLs when the texinfo is split by section
(I'm working on it).  With this patch, the hyperlink anchors point to
a non-existent anchors; while harmless, it's still annoying.  :-)

Thanks,
Patrick


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


lilypond mentors

2009-12-29 Thread Graham Percival
The Frogs have been around for a year, and I recently got two new doc
contributors, so I've been thinking about how things have been going
and some of the problems we've had.  I'm thinking about proposing a
(semi-?)formal system of mentors.

One thing I learned from GDP was that things work better if individual
people have individual responsibilities -- for the first four months,
I said "let's all look at {pitches, rhythms, etc} and fix stuff"; not
much happened.  After that, I switched to assigning one person to each
section, and that person took the editing effort a lot more seriously.

The mentors would be a similar thing: instead of having a general
Frogs list and asking experienced developers to help out in general,
we'll try to assign specific contributors (both programming and
non-programming) to specific developer-mentors.  The mentor will help
the contributor -- demystifying git, letting them know which file(s)
to edit, maybe finding problems for them to work on, etc.

Anybody interested in mentoring?  I'll take responsibility for
everybody not doing translations or programming.  At the moment, this
means James and Colin... that said, if anybody wants to take them on,
I can certainly find more work to do.

At the moment, we're not trying to gather more contributors; this is
just to retain the current ones and get them more productive.  GOP
(wherein we _will_ aggressively try to recruit more contributors) is
still slated for after 2.14 is out.  It would be good to test the
mentor system for a few weeks or months before that, anyway.


Here's material to to add to the docs.

in the CG:  (Introduction chapter?)
--

Mentors

We have a semi-formal system of mentorship, similar to the Debian
mentors, Freebsd sponsors, and the medieval "journeyman/master"
training system.  New contributors will have a dedicated mentor to
help them "learn the ropes".

@warning{This is subject to the availability of mentors; certain
jobs have more potential mentors than others.}


Contributor responsibilities:  (FIXME: would a different name be better?)

1. ask your mentor which sections of the CG you should read.

2. if you get stuck for longer than 10 minutes, ask your mentor.
They might not be able to help you with all problems, but we find
that new contributors often get stuck with something that could be
solved/explained with 2 or 3 sentences from a mentor.

3. send patches to your mentor for initial comments

4. inform your mentor if you're going to be away for a month, or
if you leave entirely.  Contributing to lilypond isn't for
everybody; just let your mentor know so that we can reassign that
work to somebody else.


Mentor responsibilities:

1. respond to questions from your contributor(s) promptly, even if
the reponse is just "sorry, I don't know" or "sorry, I'm very busy
for the next 3 days; I'll get back to you then".  Make sure they
feel valued.  :)

2. inform your contributor(s) about the expected turnaround for
your emails -- do you work on lilypond every day, or every
weekend, or what?  Also, if you'll be unavailable for longer than
usual (say, if you normally reply within 24 hours, but you'll be
at a conference for a week), let your contributors know.  Again,
make sure thay feel valued, and that your silence (if they ask a
question during that period) isn't their fault.

3. inform your contributor(s) if they need to do anything unusual
for the builds, such as doing a "make clean / doc-clean" or
switching git branches (not expected, but just in case...)

4. you don't need to be able to completely approve patches.  Make
sure the patch meets whatever you know of the guidelines (for doc
style, code indentation, whatever), and then send it on to the
frog list or -devel for more comments.  If you feel confident
about the patch, you can push it directly (this is mainly intended
for docs and translations; code patches should almost always go to
-devel before being pushed).

5. keep track of patches from your contributor.  If you've sent a
patch to -devel, it's your responsibility to pester people to get
comments for it, or at very least add it to the google tracker.



on the website (help wanted: projects)
--

- "contributor spots": places available for documentation,
  translations (FIXME: check with John, or see if experienced
translators can serve as mentors for new ones), and anything other
than programming.  I don't know if we have any mentors available
for programming at the moment.



Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: G clef changes [was: Re: Alternative music font]

2009-12-29 Thread Carl Sorensen



On 12/29/09 1:54 PM, "Marc Hohl"  wrote:

> Marc Hohl schrieb:
>> Francisco Vila schrieb:
>>> Just to add a bit to the brainstorming:
>>> 
>>> The uppermost lace of our G-clef already was slightly oversized.
>>> I cannot explain why, but latest proposals I've seen are getting it
>>> even greater.
>>> 
>>> Anyone appreciates the same?
>>>  
>> Well spotted. I was not sure whether this is kind of an optical illusion,
>> but I think there are some side effects, caused by (hidden) depencies
>> of the variables which describe the outline of the clef.
>> 
>> I'll investigate further.
> I decided to start from scratch, because tuning a little bit here and there
> seems not to be the best strategy.
> 
> Being aware that there may be some nonlinearities, I would like to follow
> these items:
> 
> 1) finding an optimal angle for the "spine"
> 2) adapting the lower bulb
> 3) adjusting the upper "loop"

In response to Jan's earlier question, I rotated the whole clef, not just
the spine.

IIUC, rotating the spine makes the upper loop larger and unbalances the
split of the lower loop caused by the spine.  Perhaps we ought to consider
just rotating the whole clef.

I find it very hard to compare the clefs on different pages.  I realize that
it's too late for this test, but in the future, if you make your output in
SVG format, then we can copy clefs from one document to the other and get a
good side-by-side comparision.


> 
> (perhaps 2 and 3 should go together for overall balance, and finally, 1
> should be adapted to the results of 2 and 3, but ...)
> 
> So I created a batch script which adds 0, 0.5, 1, ... 5 (in arbitrary units)
> to the x coordinate of the "spine vector" (which will then be normalized
> anyway,
> so the only thing that's changing is the angle) in the metafont sources,
> compiles the feta font from scratch and uses this new font to typeset an
> example. This took quite a long time (approximately about 75% of the
> time my daughter needed to watch "twilight" on the same machine while
> metafont was bleeding...)
> 
> I concatenated the pdfs to one file, which is too big for the list, so I
> put it on my website:
> 
> http://www.hohlart.de/marc/gclef-slant.pdf
> 
> I know that there is a spurious error on value 2, but I think that's not the
> main problem. Which value looks best?

I think I prefer 1.5.  Thanks for all this work!

Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: G clef changes [was: Re: Alternative music font]

2009-12-29 Thread Francisco Vila
2009/12/29 Marc Hohl :
> I concatenated the pdfs to one file, which is too big for the list, so I
> put it on my website:
>
> http://www.hohlart.de/marc/gclef-slant.pdf
>
> I know that there is a spurious error on value 2, but I think that's not the
> main problem. Which value looks best?

At a risk of being the "upper loop man" I have to say that starting
from parameter=0 upwards, the upper loop grows continuously.  If this
is what you mean when you say this still has to be normalized, then
forget me.

The width of the vertical seems to be thinner starting at 4.

Several things change at once in the sequence, but my amateurish vote
is for 2 even when it has the error, because it is between 1.5 and 2.5
which I like less.

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com
No le des el mando a distancia a Microsoft.  No utilices Windows 7.
http://windows7sins.org


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 3:06 PM, "Hans Aberg"  wrote:

> 
> 
> On 29 Dec 2009, at 22:00, Carl Sorensen wrote:
> 
 Does this seem like a feasible architecture?
>>> 
>>> I think a system that determines the [meter] from the time signature
>>> is fundamentally flawed. I think in terms of a \meter that can be
>>> used
>>> to define the beaming structure. I substructure of that is summed up,
>>> and written as a time signature. If one has defined a set of such
>>> time
>>> signatures, then one can use that for a lookup.
>> 
>> I believe that is what I am proposing.  Instead of trying to calculate
>> beatLength and measureGrouping from the time signature, we set them,
>> along
>> with intended beamGrouping.  That way, the meter is determined by
>> the user,
>> rather than inferred by the code.
> 
> I find the current LilyPond structure hard to cope with when wanting
> subbeaming. 

Yes, right now there is no sound method for dealing with subbeaming (or beam
subdivision, as I think it's called).  I hope to fix that.

> Also, some beaming wanted for that was discussed on the
> LilyPond lists in the past breaks the simple idea of beaming
> expressing a hierarchy of metric accents - though I do not want
> anything that. My interpretation of it is like this, though I found it
> hard to express formally:
> 
> The smallest units is "in one", where one only has a time segment
> which should be beamed as much as possible - on the time level
> subdivision it expresses.

Ross and Read talk about this smallest unit as a "beat", and it is not
necessarily the denominator of the time signature.  In fact, in what they
refer to as "compound time" or "compound meter", the beat is three times the
denominator of the time signature.

> 
> Then one can repeat that either equally by an integer multiple or a
> "+". For example, 6/8 calls for a "in one" 3+3 division of the time
> unit which is the 1/8th note, which at the same time is the same as 2
> times the dotted 1/4th note. So doing some pseudocode, it might be
> written
>(3+3) x 1/8
> or
>2 x 3/8 = 2 x 1/4. (dotted 1/4th)
> 
> However, in the first one, the 3's should be "in one", and not be
> beamed as "in three", expressing metric subaccents. So perhaps one
> needs to distinguish between these two types of integers, say write
> "in one" as 3'. Then the first one should be written
>(3'+3') x 1/8

So if I understand correctly, you mean that all the notes in each of the 3'
sections should be beamed together, thus avoiding metric subaccents?

> 
> Then take a time signature like 4/4. It has i fact two common
> interpretations:
>(2'+2') x 1/4
>4 x 1/4
> 
> Now one might also use tuplets tied to the metric. For example, in
> Macedonian 7/16, one may normally play as
>(3'+(2'+2')) x 1/16
> But one may shift to using quadruplets on the 3s divided as 2'+2',
> which one might want to express in the subbeaming. So one might want a
> second rule like
>(3:4 (2'+2') + (2'+2')) x 1/16
> So the \meter should have a sequence of such rules.

I believe that these rules are exactly what the current autobeaming rules
can express (although the rules that express this are not in the current
default beam settings).

> 
> When writing a time signature, some may want to just adding it all in
> one number, and other want to write a "+", Bartok style. That might be
> described by replacing some of the (..) with [..] on one of the rules.
> For example
>[3'+(2'+2')] x 1/16
> would be written as
> 7
>16
> But there is a problem already here, as one might want to writ it as
>3+2+2
> 16
> even though the beaming is (3'+(2'+2')). Writing
>[3'+[2'+2']] x 1/16
> would strictly speaking lead to a time signature
>3+(2+2)
>  16
> though it is probably uncommon to have (..) in the time signature.
> 

I believe we currently have the capability of writing compound time
signatures (which governs the display of the time signature).  With the new
properties, we'll be able to set the measure grouping and the beaming
characteristics, so I think the full flexibility will be there.


> I think some may then want to write a different time signature than
> what is strictly implied by the beaming.
> 
> Together with the defined has defined a \meter structure, one needs to
> also specify how it should be rendered. On the top level, it might
> express a meter change between measures, using various dotted bars
> ":", then comes space break, and after that some subbeaming.
> 
> So that is roughly how I think about it. - LilyPond has some of it,
> but I think cannot express that hierarchy properly in a suitable human
> interface.

The human interface in LilyPond is likely to continue to be sub-optimal at
least for the near future.  But I believe that in the near future the
capability to display the appropriate time signatures, measure grouping,
beaming, and subbeaming will be present.

Thanks,

Carl



___
lilypond-devel mailing list
lil

Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 2:14 PM, "Joe Neeman"  wrote:

> On Tue, 2009-12-29 at 11:27 -0700, Carl Sorensen wrote:
>> 
>> 
>> On 12/29/09 8:41 AM, "Carl Sorensen"  wrote:
>> 
>>> 
>>> 
>>> 
>>> 
>>> On 12/29/09 4:48 AM, "Trevor Daniels"  wrote:
>>> 
 Hi Carl
 
 This looks like a much better approach.  It means the
 special \overrideTimeSignatureSettings will be required
 only rarely, and setting autoBeamRules for just the
 current time signature should have a much simpler
 format as the time signature is known - is that right?
>>> 
>>> Sort of.
>>> 
>>> I wouldn't recommend setting autoBeamRules for the current time signature,
>>> because that setting will disappear if the time signature changes.
>>> 
>>> I think that proper way to get new autoBeamRules is to override the
>>> timeSignatureSettings.
>>> 
>>> But if one wants to avoid that complication, one can just set autoBeamRules
>>> for the current time signature.
>>> 
>> 
>> I think I've got a consistent idea now.  I think I can add a property
>> (probably 'details to avoid namespace pollution, but maybe
>> timeSignatureDefaults) to the TimeSignature grob.
> 
> I much prefer leaving it as a context property. Grob properties of the
> TimeSignature grob should be things that affect the appearance of the
> TimeSignature grob, not the creation of beams.
> 
> If you were to use a context property, why would you need the special
> command \overrideTimeSignatureSettings to change it? That is, why
> couldn't people just use \set? If it helps, we could extend \set to
> allow nested properties (the same thing that
> http://codereview.appspot.com/182042/show does for paper-block
> variables).

Because I want to be able to \revert, not just \unset.  I want to be able to
change to some custom behavior, then go back to the default behavior without
having to know what the default behavior is in detail.

IIUC, \override is roughly equivalent to \set value (cons new-value
old-value).  I want to have that functionality, so that old-value is still
available for a \revert.

 But certainly nested properties would help in making this change.

Why have we decided that context properties can only be \set, and grob
properties can only be \overridden?  In version 2.0 we had two kinds of
properties, layout properties and translation properties.  I think that
translation properties in those days are what we now call context
properties, and that what were then called layout properties are now called
grob properties.  Also, in version 2.0 we could either \set (destructively
assign a value) or \override (push a value on the stack).  In fact,
according to the documentation, \override and \revert were the equivalent of
push and pop.

Now I think we have different behavior: context properties get \set and
\unset; grob properties get \override and \revert.  And IIUC, \override
pushes a value on the stack, but \revert doesn't pull a value, instead it
goes back to the default value.  That is, if I do

\override Context.Grob #'my-prop = #'13
\override Context.Grob #'my-prop = #'15
\revert   Context.Grob #'my-prop

the value of #'my-prop will not be 13; instead it will be the value it had
before the first \override.

I'm actually fine with this behavior; that way both \revert and \override
are consistent, regardless of where they come in the file.  \override sets
a new value, and \revert puts me back to the default value.

But for some reason unknown to me, when LilyPond 2.1.22 was released, (see
http://thread.gmane.org/gmane.comp.gnu.lilypond.announce/143), the syntax
changed.

According to what I can read, the syntax changed for two reasons.  First, it
was an attempt to delineate between translator (context) properties, and
layout (grob) properties.  Second, it was to reduce some shift/reduce
conflicts in the parser.

I would actually prefer the terminology of translation and layout
properties, where translation affects the conversion of music expressions to
grobs, and layout affects the appearance of grobs.  This seems to me to be
more logically consistent, and helps me understand the difference between
the two types of properties.

But I wish that both types of properties had \override and \revert
functionality.  In 2.0 they did; in 2.1.22 the \set functionality was
eliminated from layout properties and the \override functionality was
eliminated from translator properties.

When we don't have nested context properties, \override is probably not very
important.  But if we do, I think that \override functionality (regardless
of what it's called) is quite important.

If we could allow nested context properties, and get \set to do the
equivalent of \override, and \unset do the equivalent of \revert, then I'd
be all set to do TimeSignatureDefinitions as a context property.

Thanks,

Carl




Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Hans Aberg


On 29 Dec 2009, at 22:00, Carl Sorensen wrote:


Does this seem like a feasible architecture?


I think a system that determines the [meter] from the time signature
is fundamentally flawed. I think in terms of a \meter that can be  
used

to define the beaming structure. I substructure of that is summed up,
and written as a time signature. If one has defined a set of such  
time

signatures, then one can use that for a lookup.


I believe that is what I am proposing.  Instead of trying to calculate
beatLength and measureGrouping from the time signature, we set them,  
along
with intended beamGrouping.  That way, the meter is determined by  
the user,

rather than inferred by the code.


I find the current LilyPond structure hard to cope with when wanting  
subbeaming. Also, some beaming wanted for that was discussed on the  
LilyPond lists in the past breaks the simple idea of beaming  
expressing a hierarchy of metric accents - though I do not want  
anything that. My interpretation of it is like this, though I found it  
hard to express formally:


The smallest units is "in one", where one only has a time segment  
which should be beamed as much as possible - on the time level  
subdivision it expresses.


Then one can repeat that either equally by an integer multiple or a  
"+". For example, 6/8 calls for a "in one" 3+3 division of the time  
unit which is the 1/8th note, which at the same time is the same as 2  
times the dotted 1/4th note. So doing some pseudocode, it might be  
written

  (3+3) x 1/8
or
  2 x 3/8 = 2 x 1/4. (dotted 1/4th)

However, in the first one, the 3's should be "in one", and not be  
beamed as "in three", expressing metric subaccents. So perhaps one  
needs to distinguish between these two types of integers, say write  
"in one" as 3'. Then the first one should be written

  (3'+3') x 1/8

Then take a time signature like 4/4. It has i fact two common  
interpretations:

  (2'+2') x 1/4
  4 x 1/4

Now one might also use tuplets tied to the metric. For example, in  
Macedonian 7/16, one may normally play as

  (3'+(2'+2')) x 1/16
But one may shift to using quadruplets on the 3s divided as 2'+2',  
which one might want to express in the subbeaming. So one might want a  
second rule like

  (3:4 (2'+2') + (2'+2')) x 1/16
So the \meter should have a sequence of such rules.

When writing a time signature, some may want to just adding it all in  
one number, and other want to write a "+", Bartok style. That might be  
described by replacing some of the (..) with [..] on one of the rules.  
For example

  [3'+(2'+2')] x 1/16
would be written as
   7
  16
But there is a problem already here, as one might want to writ it as
  3+2+2
   16
even though the beaming is (3'+(2'+2')). Writing
  [3'+[2'+2']] x 1/16
would strictly speaking lead to a time signature
  3+(2+2)
16
though it is probably uncommon to have (..) in the time signature.

I think some may then want to write a different time signature than  
what is strictly implied by the beaming.


Together with the defined has defined a \meter structure, one needs to  
also specify how it should be rendered. On the top level, it might  
express a meter change between measures, using various dotted bars  
":", then comes space break, and after that some subbeaming.


So that is roughly how I think about it. - LilyPond has some of it,  
but I think cannot express that hierarchy properly in a suitable human  
interface.


  Hans




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread John Mandereau
Le mardi 29 décembre 2009 à 22:05 +0100, Matthias Kilian a écrit :
> `must' is such a strong word. There are other GNUisms (or non-portable
> extensions) hidden in the build system, like that `grep -L' at some
> places.

This will disappear in some future (when Texinfo has a good enough i18n
support, maybe not before the next major version of Texinfo).


> If you guys hesitate to apply patches like the one I sent (and David
> is right in that my patch introduces a potential risk), that's
> perfectly ok for me. I've two branches on my disk: `mystuff'
> (containing patches I think may be helpful for all systems), and
> `openbsdhacks' (copntaining additional patches I need to get LilyPond
> built on OpenBSD, and that are probably less important for you). I
> could just move the find(1) diff to my `openbsdhacks' branch.

I think we shouldn't hesitate in any case the GNUism is replaced by
something as reliable and not significantly more complicated.


> It's probably an esoteric issue for LilyPond, but someone may copy
> and use this unsafe command for his own project or in some random
> shell script.

Errm, who would be crazy enough to learn good shell programming from
LilyPond makefiles? :-)  More seriously, I agree with Graham about the
security issues; if somebody has good reasons to be picky about building
LilyPond (or any software) in a secure way, she should build in a
visrtual machine or chroot jail.  FWIW building Lily under a dedicated
user account is enough for me.

Best,
John


signature.asc
Description: Ceci est une partie de message numériquement signée
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Joe Neeman
On Tue, 2009-12-29 at 11:27 -0700, Carl Sorensen wrote:
> 
> 
> On 12/29/09 8:41 AM, "Carl Sorensen"  wrote:
> 
> > 
> > 
> > 
> > 
> > On 12/29/09 4:48 AM, "Trevor Daniels"  wrote:
> > 
> >> Hi Carl
> >> 
> >> This looks like a much better approach.  It means the
> >> special \overrideTimeSignatureSettings will be required
> >> only rarely, and setting autoBeamRules for just the
> >> current time signature should have a much simpler
> >> format as the time signature is known - is that right?
> > 
> > Sort of.
> > 
> > I wouldn't recommend setting autoBeamRules for the current time signature,
> > because that setting will disappear if the time signature changes.
> > 
> > I think that proper way to get new autoBeamRules is to override the
> > timeSignatureSettings.
> > 
> > But if one wants to avoid that complication, one can just set autoBeamRules
> > for the current time signature.
> > 
> 
> I think I've got a consistent idea now.  I think I can add a property
> (probably 'details to avoid namespace pollution, but maybe
> timeSignatureDefaults) to the TimeSignature grob.

I much prefer leaving it as a context property. Grob properties of the
TimeSignature grob should be things that affect the appearance of the
TimeSignature grob, not the creation of beams.

If you were to use a context property, why would you need the special
command \overrideTimeSignatureSettings to change it? That is, why
couldn't people just use \set? If it helps, we could extend \set to
allow nested properties (the same thing that
http://codereview.appspot.com/182042/show does for paper-block
variables).

Joe




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread Matthias Kilian
[this is becoming slightly offtopic, but anyway...]

On Tue, Dec 29, 2009 at 08:19:57PM +, Graham Percival wrote:
> > > > -   find $(outdir)/offline-root -type l -delete
> > > > +   find $(outdir)/offline-root -type l | xargs rm -f
[...]
> > The `-delete' primary isn't very portable, it's a GNU extension.
> 
> IMHO, that's all we need to hear.  -delete must be removed.

`must' is such a strong word. There are other GNUisms (or non-portable
extensions) hidden in the build system, like that `grep -L' at some
places.

If you guys hesitate to apply patches like the one I sent (and David
is right in that my patch introduces a potential risk), that's
perfectly ok for me. I've two branches on my disk: `mystuff'
(containing patches I think may be helpful for all systems), and
`openbsdhacks' (copntaining additional patches I need to get LilyPond
built on OpenBSD, and that are probably less important for you). I
could just move the find(1) diff to my `openbsdhacks' branch.

> > > and less secure
> > > (if somebody places files with spaces or newlines into the latter
> > > directory, things may get ugly).
> 
> That's a fairly esoteric concern; I can't imagine anybody having
> the lilypond build tree in a world-writeable location unless they
> also had the source tree in a world-writeable location.  If they
> did that (say, a shared computer where the users trusted each
> other), then there's many other ways to do nasty stuff (like
> changing the makefiles themselves).

Yes, but David is right in that my patch was spreading bad practice.

It's probably an esoteric issue for LilyPond, but someone may copy
and use this unsafe command for his own project or in some random
shell script.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 12:31 PM, "Hans Aberg"  wrote:

> On 29 Dec 2009, at 03:11, Carl Sorensen wrote:
> 
>> Does this seem like a feasible architecture?
> 
> I think a system that determines the measure from the time signature
> is fundamentally flawed. I think n terms of a \meter that can be used
> to define the beaming structure. I substructure of that is summed up,
> and written as a time signature. If one has defined a set of such time
> signatures, then one can use that for a lookup.
> 

I believe that is what I am proposing.  Instead of trying to calculate
beatLength and measureGrouping from the time signature, we set them, along
with intended beamGrouping.  That way, the meter is determined by the user,
rather than inferred by the code.

Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread John Mandereau
Le mardi 29 décembre 2009 à 20:19 +, Graham Percival a écrit :
> On Tue, Dec 29, 2009 at 08:00:46PM +0100, Matthias Kilian wrote: 
> > The `-delete' primary isn't very portable, it's a GNU extension.
> 
> IMHO, that's all we need to hear.  -delete must be removed.

Yes, that's what I figured out in order to decide to apply.  find man
page didn't help me in doing this by not mentioning explicitly which
options are GNU extensions :-P


[snip]
> (I'm not totally certain, though, so I'm not applying it)

What are you not applying?  The patch that started this thread that I
applied yesterday?

Best,
John


signature.asc
Description: Ceci est une partie de message numériquement signée
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


G clef changes [was: Re: Alternative music font]

2009-12-29 Thread Marc Hohl

Marc Hohl schrieb:

Francisco Vila schrieb:

Just to add a bit to the brainstorming:

The uppermost lace of our G-clef already was slightly oversized.
I cannot explain why, but latest proposals I've seen are getting it
even greater.

Anyone appreciates the same?
  

Well spotted. I was not sure whether this is kind of an optical illusion,
but I think there are some side effects, caused by (hidden) depencies
of the variables which describe the outline of the clef.

I'll investigate further.

I decided to start from scratch, because tuning a little bit here and there
seems not to be the best strategy.

Being aware that there may be some nonlinearities, I would like to follow
these items:

1) finding an optimal angle for the "spine"
2) adapting the lower bulb
3) adjusting the upper "loop"

(perhaps 2 and 3 should go together for overall balance, and finally, 1
should be adapted to the results of 2 and 3, but ...)

So I created a batch script which adds 0, 0.5, 1, ... 5 (in arbitrary units)
to the x coordinate of the "spine vector" (which will then be normalized 
anyway,

so the only thing that's changing is the angle) in the metafont sources,
compiles the feta font from scratch and uses this new font to typeset an
example. This took quite a long time (approximately about 75% of the
time my daughter needed to watch "twilight" on the same machine while
metafont was bleeding...)

I concatenated the pdfs to one file, which is too big for the list, so I
put it on my website:

http://www.hohlart.de/marc/gclef-slant.pdf

I know that there is a spurious error on value 2, but I think that's not the
main problem. Which value looks best?

Greetings

Marc


Merry christmas!

Marc


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel





___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread Graham Percival
On Tue, Dec 29, 2009 at 08:00:46PM +0100, Matthias Kilian wrote:
> On Tue, Dec 29, 2009 at 08:16:37AM +0100, David Kastrup wrote:
> > > - find $(outdir)/offline-root -type l -delete
> > > + find $(outdir)/offline-root -type l | xargs rm -f
> > >  endif # ifeq ($(out),www)
> > 
> > What's the rationale? 
> 
> The `-delete' primary isn't very portable, it's a GNU extension.

IMHO, that's all we need to hear.  -delete must be removed.

> > and less secure
> > (if somebody places files with spaces or newlines into the latter
> > directory, things may get ugly).

That's a fairly esoteric concern; I can't imagine anybody having
the lilypond build tree in a world-writeable location unless they
also had the source tree in a world-writeable location.  If they
did that (say, a shared computer where the users trusted each
other), then there's many other ways to do nasty stuff (like
changing the makefiles themselves).

> Then change it to something like this:
> 
>   find $(outdir)/offline-root -type l -print0 | xargs -0 rm -f --
> 
> Or even this (completely POSIX compliant):
> 
>   find $(outdir)/offline-root -type -l -exec rm -f -- '{}' +
> 
> (but then I've to patch it again, since find(1) on OpenBSD doesn't yet
> support the `-exec command {} +' primary).

Well, if that's part of POSIX, then adding it can't be a bad
thing.  :)   But for the purposes of the lilypond build scripts, I
don't think it's necessary.  The first version of the patch should
be fine.

(I'm not totally certain, though, so I'm not applying it)

Cheers,
- Graham


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Hans Aberg

On 29 Dec 2009, at 03:11, Carl Sorensen wrote:


Does this seem like a feasible architecture?


I think a system that determines the measure from the time signature  
is fundamentally flawed. I think n terms of a \meter that can be used  
to define the beaming structure. I substructure of that is summed up,  
and written as a time signature. If one has defined a set of such time  
signatures, then one can use that for a lookup.


  Hans




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread Matthias Kilian
On Tue, Dec 29, 2009 at 08:16:37AM +0100, David Kastrup wrote:
> > -   find $(outdir)/offline-root -type l -delete
> > +   find $(outdir)/offline-root -type l | xargs rm -f
> >  endif # ifeq ($(out),www)
> 
> What's the rationale? 

The `-delete' primary isn't very portable, it's a GNU extension.

> The latter form is less efficient

I doubt it's measurable. Using find ... -exec ... {} ... ; would
be inefficient, but using find and xargs should be fast.

> and less secure
> (if somebody places files with spaces or newlines into the latter
> directory, things may get ugly).

Then change it to something like this:

find $(outdir)/offline-root -type l -print0 | xargs -0 rm -f --

Or even this (completely POSIX compliant):

find $(outdir)/offline-root -type -l -exec rm -f -- '{}' +

(but then I've to patch it again, since find(1) on OpenBSD doesn't yet
support the `-exec command {} +' primary).

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 8:41 AM, "Carl Sorensen"  wrote:

> 
> 
> 
> 
> On 12/29/09 4:48 AM, "Trevor Daniels"  wrote:
> 
>> Hi Carl
>> 
>> This looks like a much better approach.  It means the
>> special \overrideTimeSignatureSettings will be required
>> only rarely, and setting autoBeamRules for just the
>> current time signature should have a much simpler
>> format as the time signature is known - is that right?
> 
> Sort of.
> 
> I wouldn't recommend setting autoBeamRules for the current time signature,
> because that setting will disappear if the time signature changes.
> 
> I think that proper way to get new autoBeamRules is to override the
> timeSignatureSettings.
> 
> But if one wants to avoid that complication, one can just set autoBeamRules
> for the current time signature.
> 

I think I've got a consistent idea now.  I think I can add a property
(probably 'details to avoid namespace pollution, but maybe
timeSignatureDefaults) to the TimeSignature grob.

Then I can use standard /override and /revert to set the autobeaming rules.

What do you think of that idea?

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 1:40 AM, "David Kastrup"  wrote:

> Carl Sorensen  writes:
> 
>> Then, if desired, the user can change the values of beatLength,
>> measureGrouping, or autoBeamRules, they can do so directly by means of
>> the \set command.
>> 
>> If a user wants to change the timeSignatureSettings values for beatLength,
>> measureGrouping, or autoBeamRules, they can do so with an
>> \overrideTimeSignatureSettings or \revertTimeSignatureSettings command.
>> Having done so, a simple change of time signature will implement the new
>> time signature settings.
>> 
>> Does this seem like a feasible architecture?
> 
> I don't like compound contraptions like \overrideTimeSignatureSettings.
> Can't this be made to work with \override timeSignatureSettings (or
> similar) in some manner?

I don't like them either.  But I haven't been able to figure out another way
to do it.

\override requires a grob; timeSignatureSettings is a context property, not
a grob description, so it won't work with \override.

I went through some attempts earlier to try to make \override work, but
wasn't successful.

http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/21942/
http://thread.gmane.org/gmane.comp.gnu.lilypond.devel/20632/
http://thread.gmane.org/gmane.comp.gnu.lilypond.general/41837/focus=20624

If you can figure out how to make it work with \override, I'd be delighted.

But this gets back to your initial question (which probably never got
answered to your satisfaction) as to the difference between context
properties and grob descriptions.

So, since I couldn't figure out a way to make it work, I did a workaround.

Thanks,

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Carl Sorensen



On 12/29/09 4:48 AM, "Trevor Daniels"  wrote:

> Hi Carl
> 
> This looks like a much better approach.  It means the
> special \overrideTimeSignatureSettings will be required
> only rarely, and setting autoBeamRules for just the
> current time signature should have a much simpler
> format as the time signature is known - is that right?

Sort of.

I wouldn't recommend setting autoBeamRules for the current time signature,
because that setting will disappear if the time signature changes.

I think that proper way to get new autoBeamRules is to override the
timeSignatureSettings.

But if one wants to avoid that complication, one can just set autoBeamRules
for the current time signature.

Carl



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [frogs] Corrected patch for Issue #830

2009-12-29 Thread Marc Hohl

Mark Polesky schrieb:

Marc Hohl wrote:
  

By the way, it would be easier for you developers when the
patches go directly to rietveld. How can I archieve this?
Does somebody need to create an account for me?



See CG "Adding or modifying features"; scroll down to
8.7.9 "Post patch for comments".
  

Ah, thanks a lot!

Marc

- Mark


  

  




___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread Trevor Daniels

Hi Carl

This looks like a much better approach.  It means the
special \overrideTimeSignatureSettings will be required
only rarely, and setting autoBeamRules for just the
current time signature should have a much simpler
format as the time signature is known - is that right?

Trevor

- Original Message - 
From: "Carl Sorensen" 

To: "lilypond-devel" 
Sent: Tuesday, December 29, 2009 2:11 AM
Subject: Autobeaming


I've been continuing to work on the logical structure of autobeaming 
rules,
because the rules aren't right yet.  There are still some rules that 
don't
make sense, and in trying to make things make sense, I've run into 
some

philosophical issues.

I'm starting to believe that there should be a context property
timeSignatureSettings that contains the settings that should go with 
a time
signature.  These settings should include beatLength, 
measureGrouping, and
beaming rules (right now, just end rules, but eventually subdivide 
and

potentially begin).

This property stores default values for beatLength, measureGrouping, 
and
autoBeamRules.  Then, when the time signature is changed, the 
context
properties of beatLength, measureGrouping, and autoBeamRules are set 
to the

values from the timeSignatureSettings.

Then, if desired, the user can change the values of beatLength,
measureGrouping, or autoBeamRules, they can do so directly by means 
of

the \set command.

If a user wants to change the timeSignatureSettings values for 
beatLength,

measureGrouping, or autoBeamRules, they can do so with an
\overrideTimeSignatureSettings or \revertTimeSignatureSettings 
command.
Having done so, a simple change of time signature will implement the 
new

time signature settings.

Does this seem like a feasible architecture?

Thanks,

Carl







___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel





___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Autobeaming

2009-12-29 Thread David Kastrup
Carl Sorensen  writes:

> Then, if desired, the user can change the values of beatLength,
> measureGrouping, or autoBeamRules, they can do so directly by means of
> the \set command.
>
> If a user wants to change the timeSignatureSettings values for beatLength,
> measureGrouping, or autoBeamRules, they can do so with an
> \overrideTimeSignatureSettings or \revertTimeSignatureSettings command.
> Having done so, a simple change of time signature will implement the new
> time signature settings.
>
> Does this seem like a feasible architecture?

I don't like compound contraptions like \overrideTimeSignatureSettings.
Can't this be made to work with \override timeSignatureSettings (or
similar) in some manner?

-- 
David Kastrup



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel