Re: GUB on kainhofer: still cross/gcc

2009-06-06 Thread Jan Nieuwenhuizen
Op vrijdag 05-06-2009 om 23:05 uur [tijdzone +0100], schreef Anthony W.
Youngman:

Hi Anthony,

> >> >I think that's a pretty usual setup (most people I know have a 32bit 
> >> >version
> >> >of Linux installed on their laptop even though their CPU is actually 
> >> >64bit).
> >
> >Sometimes it makes sense to "do what most people do", esp. if you do it
> >as a deliberate choice :-)
> 
> Just as long as you're aware of the consequences ... "what most people 
> do" is usually a pretty stupid thing to do. Following the herd is fine 
> if you don't want to stand out, but if you want to make your mark it's 
> not an option.

Yup, that's exactly what I say: consider running 64 bits, even though
running 32 bits is what most people do.  Is it really necessary to
paraphrase that?

> >> Note also, that running 32-bit on a 64-bit system can OFTEN be a
> >> performance WIN, so you DON'T want to upgrade "just because you can".
> >
> >I call BS.  Ref please?
> 
> Are you saying that 64-bit code is *inherently* more efficient than 
> 32-bit on a 64-bit system?

What I'm trying to say is: please do not spread unsupported rumours, 
even if they give you a warm fuzzy feeling.

You state that 

> running 32-bit on a 64-bit system can OFTEN be a performance WIN

but when asked for a reference, you say

> I can't give an actual reference, I'm afraid

...which makes it a rumour.  Please try not to spread rumours,
that does not help anyone :-)

Greetings,
Jan.

-- 
Jan Nieuwenhuizen  | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: mergin web/ with master/

2009-06-06 Thread Jan Nieuwenhuizen
Op vrijdag 05-06-2009 om 11:18 uur [tijdzone -0700], schreef Graham
Percival:

> Do we need a separate branch (or even repository) for web/ stuff?

Branch is not helpful, a separate repo has the advantage of
allowing a simple 'git clone' (like it's meant to be)
to get either one, without getting 'too much'.

Developers do not need to get the web pages, translators
do not need to get all of lily?

> I propose that we merge this with the main branch.
> 
> PRO:
> + one less branch/repo to track

What is it that bothers you tracking an additional repo?
What kind of setup are you using, are you using emacs eg?

> + easier to fix typos in the web pages

I do not understand this.  Why is that?  I "fear" that it's getting
easier to create "tainted" commits, ie, commits that do a bugfix
in lily, typo in web, etc.  Ideally, a commit does exactly one
thing (so it can be backported, or reverted if necessary, with
more predictable consequences).

> + we can direct everybody to look at the CG (no more README in the
> newweb/ branch)

Why cannot README's info be moved to the CG now?

Wouldn't this imply, however, that developers must read/skip through
translator's info and vice versa?

> + allows better integration with the other docs (this is more a
> post-GOP feature)

This may be a deciding argument, however.  Can you elaborate on
this?

> CON:
> - adds 30 megs to the main branch (including the .git dir)

No problem.  However, it adds 1Gb to the translator's download.
Isn't that one of the biggest cons?

> - makes translations harder?  (maybe?  ... I don't know if this is
>   true, but IMO this is the only real reason to avoid doing this)

probably.  moreover, I feel translators need more consideration
than developers, esp. if we want to have real good translators
(ie, not programmers who think they can translate)?

Greetings,
Jan.

-- 
Jan Nieuwenhuizen  | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: development on windows

2009-06-06 Thread Trevor Daniels


Graham Percival wrote Friday, June 05, 2009 11:19 AM



There's a surprising amount of interest in contributing to
LilyPond from Windows machines.  (err, I mean, from people *with*
Windows machines, not from the actual machines themselves)

As I understand it, people with Windows can:
- run GUB


I haven't tried - I didn't realise this was possible.
Has anyone done it?


- get the sources with git


Tick


- compile the docs without examples by running texi2html manually


Tick, but this is often screwed up if the version
number in snippets is bumped by an LSR update, since
this means they can no longer be compiled with the
latest released version.


- compile the docs with GUB


Must try this ...


- write docstrings, fix bugs, and add new features to .scm files


Tick


However, they cannot:
- compile lilypond


Correct


- write bugfixes, new features, and "code janitor" C++ files



Is the above correct?  If so, is there any hope of changing the
cannot-compile status?  In particular,
- does anybody feel like making cygwin packages for the missing
 software?
- does anybody have VMware (commercial version) and feel like
 making a small Linux installation which has all the required
 software?  Potential contributors would be able to run this
 in the free VMware version.
- does anybody feel like making shell accounts available for
 windows users?  (I'm not at all certain how many windows
 contributors would feel comfortable using such a system, but
 I include it here for correctness)


I can't commit to helping with this in the foreseeable
future, I'm afraid.


I suspect that the answer to the above questions is "no", so I'll
write the CG / new website  to make this clear.  But it's worth
checking first.

Cheers,
- Graham


___
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: mergin web/ with master/

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 11:21:39AM +0200, Jan Nieuwenhuizen wrote:
> Op vrijdag 05-06-2009 om 11:18 uur [tijdzone -0700], schreef Graham
> Percival:
> 
> > Do we need a separate branch (or even repository) for web/ stuff?
> 
> Branch is not helpful, a separate repo has the advantage of
> allowing a simple 'git clone' (like it's meant to be)
> to get either one, without getting 'too much'.
> 
> Developers do not need to get the web pages, translators
> do not need to get all of lily?

Translators *do* need to get all of lily.  At least, they need to
get the docs (they translate this after the webpages, right?).
I've toyed with the idea of splitting off the docs into a separate
repo, but then it becomes much harder -- new features and syntax
changes would require patches to both code/ and docs/.  We
definitely don't want to go that way!

I admit that having a tiny repo to clone is a decent way for
translators to get started quicker... but given that they need to
switch repos after 10-20 hours of work anyway, I don't think this
is a great saving.

> > I propose that we merge this with the main branch.
> > 
> > PRO:
> > + one less branch/repo to track
> 
> What is it that bothers you tracking an additional repo?

To be up-to-date, I need to do a "git pull origin" in two separate
directories.  New (or relatively new) contributors need to create
separate directories to get all the source.  Etc.

This isn't a /major/ issue... although twice now, I've forgotten
to update my lilypond-web dir, resulting in me re-creating patches
that other people had already fixed.

Also, we don't always have both dirs set up.  John and I have told
each other "I don't have newweb/ right now, could you make this
change" at least half a dozen times in the past few years -- we
trade it back and forth, depending on who's reinstalled their OS
the most recently.  :)

> > + easier to fix typos in the web pages
> 
> I do not understand this.  Why is that?

People who don't have newweb/ probably won't download the new git
repo just to fix a typo.  People who have never gotten newweb/
definitely won't download it just to fix a typo.

Perfect example: Jonathan.  He's currently the main "small doc
fix" guy, but he doesn't have newweb/ and never has, so any fixes
to the website waits for other people to do.

> I "fear" that it's getting easier to create "tainted" commits,
> ie, commits that do a bugfix in lily, typo in web, etc.
> Ideally, a commit does exactly one thing (so it can be
> backported, or reverted if necessary, with more predictable
> consequences).

If you want, I could crack down on this.  Massively crack down.
...
Come on, tell me to crack down.  You know you want to.  :)


Special warning: Jonathan, we need to talk.

> > + we can direct everybody to look at the CG (no more README in the
> > newweb/ branch)
> 
> Why cannot README's info be moved to the CG now?

I just figured that a repo should have its own instructions.
That's not necessary, though.

> Wouldn't this imply, however, that developers must read/skip through
> translator's info and vice versa?

Developers already need to skip translator info.  Fortunately,
this is already nicely ghettoized in the CG, so it's obvious what
to skip and what not to skip.


> > + allows better integration with the other docs (this is more a
> > post-GOP feature)
> 
> This may be a deciding argument, however.  Can you elaborate on
> this?

It's partly psychological.  Since web is in a separate branch, I
never considered changing it as part of GOP.  This isn't just my
problem; the website contains some truly ancient info (all the
"call for jobs" stuff?), which nobody has fixed.  Granted, for the
past six months I've been telling people not to fix it... but that
still leaves years of neglect.

For the new website, I was going to build as much as possible of
it with texinfo.  This would let us distribute the contents on pdf
and info.  In particular, contents like the first-time use (i.e.
all the "lilypond is like a compiler, not a GUI thing" stuff).
Content like the typographical essay (we currently have two;
that's not optimal).

In general, I wanted to start thinking about the website as part
of the docs -- how easy is it to find information in the combined
web+docs, how do new users progress through it, how can we ensure
that new users already know about the "compiling" nature before
they download the program, etc.

I'm still not certain that it's worth doing it in texinfo.  Many
projects these days distribute html files as docs, so we might go
with a relatively small set of html files, plus the pdf/info/html
"general info" docs (most of the current website), plus the normal
docs.


> > CON:
> > - adds 30 megs to the main branch (including the .git dir)
> 
> No problem.  However, it adds 1Gb to the translator's download.
> Isn't that one of the biggest cons?

I don't believe that 1Gb figure.  My lilypond is 488 megs, with
all code built, and the English docs built.  My guess is that the
so

Re: development on windows

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 11:03:58AM +0100, Trevor Daniels wrote:
>
> Graham Percival wrote Friday, June 05, 2009 11:19 AM
>
>> There's a surprising amount of interest in contributing to
>> LilyPond from Windows machines.  (err, I mean, from people *with*
>> Windows machines, not from the actual machines themselves)
>>
>> As I understand it, people with Windows can:
>> - run GUB
>
> I haven't tried - I didn't realise this was possible.
> Has anyone done it?

Err... by "run GUB", I mean "generate sheet music using the
downloaded .exe".  Even if somebody can't do anything else, with
this they can still contribute a great deal -- creating examples,
sorting/extending LSR stuff, etc.

Frankly, in some ways I wish that we had *more* contributors who
could only run GUB.  There's a lot of tasks that I consider "too
simple" for the git-savvy people to do, so as a result they tend
to remain undone.  :|

>> - compile the docs without examples by running texi2html manually
>
> Tick, but this is often screwed up if the version
> number in snippets is bumped by an LSR update, since
> this means they can no longer be compiled with the
> latest released version.
>
>> - compile the docs with GUB
>
> Must try this ...

Err, if the version number in snippet matters, then you *have*
been compiling with GUB.  In the "compile docs without examples",
I meant something like

- replace @lilypond[...] with @example
- replace @end lilypond with @end example
- compile docs with texi2html, without lilypond-book.


Cheers,
- Graham


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


unexpected \unfoldRepeats behavior

2009-06-06 Thread Mark Polesky

I tried to answer a question on -user but hit a brick wall.
\unfoldRepeats failed to work when the music block was funneled from 2
separate expressions. Can someone explain this to me? Why does the
following code work for voiceA but not for voiceB?

Thanks.
- Mark

_


\version "2.13.1"

voiceA = \new Voice = "A" \relative {
  \time 1/4
  \repeat volta 2 { a' }
  \alternative { { b } { c } }
}


% voiceB is built from 2 separate expressions funneled into one voice,
% but otherwise ought to be identical to voiceA, it seems:
voiceBrepeats = {
  \time 1/4
  \repeat volta 2 { s }
  \alternative { { s } { s } }
}
voiceBnotes = \relative { \time 1/4 a' b c }
voiceB = \new Voice = "B" { << \voiceBrepeats \voiceBnotes >> }


% using \unfoldRepeats produces the expected MIDI output with voiceA,
% but not with voiceB. Why?
\score {
  \unfoldRepeats \voiceA % change to \voiceB to test.
  \midi { }
}


  


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


Re: development on windows

2009-06-06 Thread Francisco Vila
2009/6/6 Graham Percival :
> Err... by "run GUB", I mean "generate sheet music using the
> downloaded .exe".

GUB is the builder, and it builds the released binaries. You run the
builder or the released binary. I propose to call things by their
names.

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org


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


Re: mergin web/ with master/

2009-06-06 Thread Jan Nieuwenhuizen
Op zaterdag 06-06-2009 om 03:14 uur [tijdzone -0700], schreef Graham
Percival:

> Translators *do* need to get all of lily.  At least, they need to
> get the docs (they translate this after the webpages, right?).

That's a good point.  I was thinking, translation of docs is 
an exception, but that's probably less so these days... :-)

> I've toyed with the idea of splitting off the docs into a separate
> repo, but then it becomes much harder -- new features and syntax
> changes would require patches to both code/ and docs/.  We
> definitely don't want to go that way!

No, surely not.

> I admit that having a tiny repo to clone is a decent way for
> translators to get started quicker... but given that they need to
> switch repos after 10-20 hours of work anyway, I don't think this
> is a great saving.

Okay...

> > What is it that bothers you tracking an additional repo?
> 
> To be up-to-date, I need to do a "git pull origin" 

You should only need

   git pull -r

please *do* use -r, otherwise our repo is full of silly "Merged brange
foo from .."

> in two separate directories.  New (or relatively new) contributors need to 
> create
> separate directories to get all the source.  Etc.

Is it so hard to

git config --global url.git+ssh://git.sv.gnu.org/srv/git/.insteadof gnu:

git clone gnu:lilypond
git clone gnu:lilypond-web  # real soon now (unless your proposal :-)

?  Create new directories, I don't understand?

> People who don't have newweb/ probably won't download the new git
> repo just to fix a typo.  People who have never gotten newweb/
> definitely won't download it just to fix a typo.

> Perfect example: Jonathan.  He's currently the main "small doc
> fix" guy, but he doesn't have newweb/ and never has, so any fixes
> to the website waits for other people to do.

Okay, I see.  Well, we agree that the current setup is really
bad.  I suppose Jonathan could be taught how to handle a separate
lilypond-web repo?  Another branch within the main repo, like
we have now, that's really confusing and scary.

> If you want, I could crack down on this.  Massively crack down.
> ...
> Come on, tell me to crack down.  You know you want to.  :)

bring it on!

> Special warning: Jonathan, we need to talk.

> I just figured that a repo should have its own instructions.
> That's not necessary, though.

Indeed, whether we have web/README in a separate repo, branch,
or main repo, it should probably exist, but point to the CG?
Let's do that asaftt (as soon as anyone finds the time).

> It's partly psychological.

> In general, I wanted to start thinking about the website as part
> of the docs 

This makes a lot of sense.  I'm starting to agree with your
proposal.

> I'm still not certain that it's worth doing it in texinfo.  Many
> projects these days distribute html files as docs, so we might go
> with a relatively small set of html files, plus the pdf/info/html
> "general info" docs (most of the current website), plus the normal
> docs.

...but this choice is not necessarily bound to the one/two repo
issue.  One repo would enable us to experiment with using texinfo
here and there...  I'm not sure that would help.  Although having
everything texinfo might be easier for translators, and the new
css seems to show most anything is possible.

> I don't believe that 1Gb figure.  My lilypond is 488 megs, with
> all code built, and the English docs built.  My guess is that the
> source alone clocks in at 150-200 megs.
> 
> Yes, that's still much more than the 30 meg newweb/ by itself, but
> if the translators are going to end up working on the docs
> eventually, they might as well get it all at the beginning.

Looked into this.  Git has now a history horizon.

12:51:09 jann...@peder:~
$ git clone --depth=10 gnu:lilypond
Initialized empty Git repository in /home/janneke/lilypond/.git/
remote: Counting objects: 158432, done.
remote: Compressing objects: 100% (40495/40495), done.
remote: Total 158432 (delta 133195), reused 141201 (delta 117522)
Receiving objects: 100% (158432/158432), 52.62 MiB | 168 KiB/s, done.
Resolving deltas: 100% (133195/133195), done.
12:57:15 jann...@peder:~
$ du -sh lilypond lilypond/.git
84M lilypond
58M lilypond/.git

which means we only need to get 84 MB.  Problem is, pulling from
savannah only goes at ~150KB/s here...

> True.  Although we could make the same argument about doc writers.

Why is that?

Jan.

-- 
Jan Nieuwenhuizen  | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: mergin web/ with master/

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 01:34:42PM +0200, Jan Nieuwenhuizen wrote:
> Op zaterdag 06-06-2009 om 03:14 uur [tijdzone -0700], schreef Graham
> Percival:
> 
> > > What is it that bothers you tracking an additional repo?
> > 
> > To be up-to-date, I need to do a "git pull origin" 
> 
> You should only need
> 
>git pull -r
> 
> please *do* use -r, otherwise our repo is full of silly "Merged brange
> foo from .."

*sigh*

That would have been very useful to know six months ago, when I
wrote the first draft of the CG and asked everybody to check it.

What should we do for pushing?  Is
   git push origin
ok, or should it be
   git push
?  (I just checked, and "git push" works... but is that the _best_
option?)

> > in two separate directories.  New (or relatively new) contributors need to 
> > create
> > separate directories to get all the source.  Etc.
> 
> Is it so hard to
> 
> git config --global url.git+ssh://git.sv.gnu.org/srv/git/.insteadof gnu:
> 
> git clone gnu:lilypond
> git clone gnu:lilypond-web  # real soon now (unless your proposal :-)

The initial setup isn't really a problem; currently I just blindly
copy&paste:
mkdir lilypond; cd lilypond
git init-db
git remote add -f -t master -m master origin 
git://git.sv.gnu.org/lilypond.git/
git checkout -b master origin/master

> ?  Create new directories, I don't understand?

We recommend (and I follow) putting lilypond, web, and
lilypond/translations in separate directories.  It's *much* easier
than messing around with branches.  People -- at least, the people
that are savvy enough to contribute to lilypond -- understand
directories.  A directory that magically contains lilypond source,
website source, or translation source, is an unwelcome
complication.


Basically, the entire CG-git stuff is modeled around the idea that
we want contributors working on lilypond stuff (docs,
translations, bugfixes), *not* working on understanding git stuff.

> > Perfect example: Jonathan.  He's currently the main "small doc
> > fix" guy, but he doesn't have newweb/ and never has, so any fixes
> > to the website waits for other people to do.
> 
> Okay, I see.  Well, we agree that the current setup is really
> bad.  I suppose Jonathan could be taught how to handle a separate
> lilypond-web repo?

Of course he _could_ be... although from a functional standpoint,
that's identical to the current CG-recommended setup.  The problem
is that we very rarely have a website fix that's important enough
to warrant the bother of setting it up and learning how it's
organized.

Unless we specifically say "ok, X, you're now in charge of fixing
typos on the website", X is very likely to say "nah, I'm not going
to bother fixing this typo report; I'll let somebody else handle
it".

I know this very well, since I've been X at least half the time.
:)

> > I'm still not certain that it's worth doing it in texinfo.  Many
> > projects these days distribute html files as docs, so we might go
> > with a relatively small set of html files, plus the pdf/info/html
> > "general info" docs (most of the current website), plus the normal
> > docs.
> 
> ...but this choice is not necessarily bound to the one/two repo
> issue.  One repo would enable us to experiment with using texinfo
> here and there...  I'm not sure that would help.

The actual experiments would be done on a separate branch -- but
only the initial experiments.  Basically, I want to:
- merge web/ and master/
- copy the new master/ into gop/
- work on gop/ for 3-4 weeks
- merge gop/ to master, then delete gop/

In the long term, we would only have a single master/ branch, plus
the various temporary/private development branches.

(yes, something would happen to gub-samco and lilypad-macos).

> > True.  Although we could make the same argument about doc writers.
> 
> Why is that?

Explaining how to use lilypond is no more technically challenging
than translating an explanation into another language.  Yes, to
write good docs, you need to understand the material involved --
but that's quite distinct from being able to figure out texinfo,
git, and the like.

We *have* lost documentation writers due to our choice of texinfo
as the documentation language.  It's confusing, limited, and not
at all friendly to learn.

*shrug*

I'm not saying that the people we lost were absolutely
fantastic... since they never really started, I can't tell,
obviously.  :)   And I'm definitely not saying that there's a
better language that produces good pdf+html (frankly, I couldn't
care less about info).

I'm also not saying that a certain amount of upfront difficulty is
a *bad* thing.  Somebody could make the argument that if a
potential contributor isn't willing to learn texinfo + git +
making functional diffs + our policies, then they don't have the
dedication to be a good contributor anyway.

I'm *not* making this argument myself.  Rather, I'd say that if
somebody can't figure out the CG -- as long as we make the
repositories, branches,

#lilyp...@irc.freenode.net

2009-06-06 Thread Jan Nieuwenhuizen
I've been present for some months now on #lilypond at freenode.net,
so I've decided to mention the presence of this channel at

http://lilypond.org/web/about/index.html

The channel is owned by Simon Plante [cc], I've just asked him
for OPER so that we can make it a bit more official :-)

Greetings,
Jan.

-- 
Jan Nieuwenhuizen  | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: mergin web/ with master/

2009-06-06 Thread Jan Nieuwenhuizen
Op zaterdag 06-06-2009 om 05:08 uur [tijdzone -0700], schreef Graham
Percival:

> That would have been very useful to know six months ago, when I
> wrote the first draft of the CG and asked everybody to check it.

..didn't know about this then, I'm not much of a git guru.

> What should we do for pushing?  Is
>git push origin
> ok, or should it be
>git push
> ?  (I just checked, and "git push" works... but is that the _best_
> option?)

origin should not be necessary.

> The initial setup isn't really a problem

but it is.  You said it yourself: John and I have told
each other "I don't have newweb/ right now".  If lilypond-web
were a single repo, and git came initialized in a sane way,
ie, with the gnu: alias, then

   git clone --depth=1 gnu:lilypond-web

is less than 10sec away?  It is the facts that cloning
it takes very long and/or has a mantra that you cannot
remember, that make it easier to ask someone else than
getting it.  I think.

> We recommend (and I follow) putting lilypond, web, and
> lilypond/translations in separate directories.

Of course.  Another reason for web to be in a separate
repo (or to make it a simple directory Documentation/web).

> Basically, the entire CG-git stuff is modeled around the idea that
> we want contributors working on lilypond stuff (docs,
> translations, bugfixes), *not* working on understanding git stuff.

Yes, but that's one of the reasons that the choice for
[the speed of] git still comes with a price.

> Unless we specifically say "ok, X, you're now in charge of fixing
> typos on the website", X is very likely to say "nah, I'm not going
> to bother fixing this typo report; I'll let somebody else handle
> it".
> 
> I know this very well, since I've been X at least half the time.
> :)

Yes, that's unfortunate.  Both the general observation and the
equation graham==X.  I suppose we should work on changing both :-)

> The actual experiments would be done on a separate branch -- but
> only the initial experiments.  Basically, I want to:
> - merge web/ and master/
> - copy the new master/ into gop/

Do I understand these steps to be something like [the just tested
over here]

git checkout -b web-gop origin/web
mkdir -p Documentation/web 
mv .gitignore * Documentation/web/
git add .   # watch out for any crufty in . moved to web/ :-)
git add -u .
git commit -m 'Prepare web for merge, move into Documentation/web.'
git checkout -b gop origin/master
git merge web-gop

?  There's one thing that still bothers me about this, we'd
need to declare Documentation/web 'dead' for branches
other than master, eg, stable/2.12, whereas the rest of
Documentation/ would not be dead in stable/2.12.  Would
this be a problem?
   
> - work on gop/ for 3-4 weeks
> - merge gop/ to master, then delete gop/
> 
> In the long term, we would only have a single master/ branch, plus
> the various temporary/private development branches.

Okay.

> (yes, something would happen to gub-samco and lilypad-macos).

*poof* gub-samco is gone :-)  Han-Wen needs to move lilypad-macos.

> I'm also not saying that a certain amount of upfront difficulty is
> a *bad* thing.  Somebody could make the argument that if a
> potential contributor isn't willing to learn texinfo + git +
> making functional diffs + our policies, then they don't have the
> dedication to be a good contributor anyway.
> 
> I'm *not* making this argument myself.  Rather, I'd say that if
> somebody can't figure out the CG -- as long as we make the
> repositories, branches, and CG as easy to follow as possible --
> then they probably would not be a net contributor.  But if I'm
> going to feel good about rejecting (apparently) sincere offers of
> help, then I want to be maoing certain that the CG (and git repos,
> branches, etc) **are** as easy to follow as possible.

Yes, quite agree.

Greetings,
Jan.

-- 
Jan Nieuwenhuizen  | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: unexpected \unfoldRepeats behavior

2009-06-06 Thread Jay Anderson
On Sat, Jun 6, 2009 at 3:22 AM, Mark Polesky wrote:
>
> I tried to answer a question on -user but hit a brick wall.
> \unfoldRepeats failed to work when the music block was funneled from 2
> separate expressions. Can someone explain this to me? Why does the
> following code work for voiceA but not for voiceB?
>
> Thanks.
> - Mark
>
> _
>
>
> \version "2.13.1"
>
> voiceA = \new Voice = "A" \relative {
>  \time 1/4
>  \repeat volta 2 { a' }
>  \alternative { { b } { c } }
> }
>
>
> % voiceB is built from 2 separate expressions funneled into one voice,
> % but otherwise ought to be identical to voiceA, it seems:
> voiceBrepeats = {
>  \time 1/4
>  \repeat volta 2 { s }
>  \alternative { { s } { s } }
> }
> voiceBnotes = \relative { \time 1/4 a' b c }
> voiceB = \new Voice = "B" { << \voiceBrepeats \voiceBnotes >> }
>
>
> % using \unfoldRepeats produces the expected MIDI output with voiceA,
> % but not with voiceB. Why?
> \score {
>  \unfoldRepeats \voiceA % change to \voiceB to test.
>  \midi { }
> }

This is the expected behavior. Only the spacers will be unfolded in
voiceB. The repeat needs to be around the actual notes. Use
\displayMusic and you'll see why.

If you really do want this to work you're going to need some sort of
flatten function: '\flatten << \voiceBrepeats \voiceBnotes >>' which
would recursively combine the contents of nested parallel sections
into one SequentialMusic section. This would be tricky. It's easiest
to just put the repeats in all voices.

--Jay


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


Re: development on windows

2009-06-06 Thread Paul Scott

Bertalan Fodor (LilyPondTool) wrote:



- does anybody feel like making cygwin packages for the missing
  software?
  
Well, for some time I used to be the cygwin maintainer of lilypond. 
Was quite nightmare.

- does anybody have VMware (commercial version) and feel like
  making a small Linux installation which has all the required
  software?  Potential contributors would be able to run this
  in the free VMware version.
  
Why VMware? There are free alternatives, like MS Virtual PC, Sun 
VirtualBox.


There have been free versions of VMWare for some time now.

www.*vmware*.com/products/server/

Paul Scott





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


Re: development on windows

2009-06-06 Thread Trevor Daniels


Graham Percival wrote Saturday, June 06, 2009 11:18 AM



On Sat, Jun 06, 2009 at 11:03:58AM +0100, Trevor Daniels wrote:


Graham Percival wrote Friday, June 05, 2009 11:19 AM


There's a surprising amount of interest in contributing to
LilyPond from Windows machines.  (err, I mean, from people 
*with*

Windows machines, not from the actual machines themselves)

As I understand it, people with Windows can:
- run GUB


I haven't tried - I didn't realise this was possible.
Has anyone done it?


Err... by "run GUB", I mean "generate sheet music using the
downloaded .exe".


Aah, right.  You mean run the generated binary, not
run the builder.  I thought I must have misunderstood
something.


Even if somebody can't do anything else, with
this they can still contribute a great deal -- creating examples,
sorting/extending LSR stuff, etc.


Indeed.


Frankly, in some ways I wish that we had *more* contributors who
could only run GUB.  There's a lot of tasks that I consider "too
simple" for the git-savvy people to do, so as a result they tend
to remain undone.  :|

- compile the docs without examples by running texi2html 
manually


Tick, but this is often screwed up if the version
number in snippets is bumped by an LSR update, since
this means they can no longer be compiled with the
latest released version.


- compile the docs with GUB


Must try this ...


Err, if the version number in snippet matters, then you *have*
been compiling with GUB.  In the "compile docs without examples",
I meant something like


Yes, now I understand what you mean by GUB.  The
problem is that a too-high version number gives
only a warning in LilyPond, but causes lilypond-book
to terminate.  There are ways round it, but they
can be very messy.  That's one of the reasons I've
done virtually nothing on the docs for some months,
as I have been unable to compile them to check my
work.  Now 2.13.1-2 has been released I can probably
get back to knocking off some of the outstanding
doc TODOs.

Trevor



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


Re: mergin web/ with master/

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 03:09:48PM +0200, Jan Nieuwenhuizen wrote:
> Op zaterdag 06-06-2009 om 05:08 uur [tijdzone -0700], schreef Graham
> Percival:
> 
> > The actual experiments would be done on a separate branch -- but
> > only the initial experiments.  Basically, I want to:
> > - merge web/ and master/
> > - copy the new master/ into gop/
> 
> Do I understand these steps to be something like [the just tested
> over here]
> 
> git checkout -b web-gop origin/web
> mkdir -p Documentation/web 
> mv .gitignore * Documentation/web/
> git add .   # watch out for any crufty in . moved to web/ :-)
> git add -u .
> git commit -m 'Prepare web for merge, move into Documentation/web.'
> git checkout -b gop origin/master
> git merge web-gop

Yes.  (other than web-gop being out of date; I'll deal with this
soon)

> There's one thing that still bothers me about this, we'd
> need to declare Documentation/web 'dead' for branches
> other than master, eg, stable/2.12, whereas the rest of
> Documentation/ would not be dead in stable/2.12.  Would
> this be a problem?

What do you mean by "dead"?  If you mean "not being updated", then
stable/2.12 isn't being updated anyway.

Eventually, I'd like to have
  docs/
  docs/web/
  docs/learning/
  docs/reference/
  docs/devel/
  docs/snippets/
  docs/examples/  (maybe)

with the approporiate translation files in each subdir.  Then
input/regressions/ turns into regressions/ or maybe regtests/, and
everything else in input/ is put into docs/.  That way, we can
tell doc people that everything is in docs/.


John, if you're reading this: don't worry, I'm going to do all the
build system modifications myself.  :)

Cheers,
- Graham


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


Re: mergin web/ with master/

2009-06-06 Thread Jonathan Kulp

Graham Percival wrote:

On Sat, Jun 06, 2009 at 01:34:42PM +0200, Jan Nieuwenhuizen wrote:

Op zaterdag 06-06-2009 om 03:14 uur [tijdzone -0700], schreef Graham
Percival:


What is it that bothers you tracking an additional repo?
To be up-to-date, I need to do a "git pull origin" 

You should only need

   git pull -r

please *do* use -r, otherwise our repo is full of silly "Merged brange
foo from .."


*sigh*



Ah, is this why a "git status" report tells me I'm like 78 commits 
ahead of master?  I just tried git pull -r and it worked well 
although something in "Documentation/po/es.po" caused a merge 
conflict.



Perfect example: Jonathan.  He's currently the main "small doc
fix" guy, but he doesn't have newweb/ and never has, so any fixes
to the website waits for other people to do.

Okay, I see.  Well, we agree that the current setup is really
bad.  I suppose Jonathan could be taught how to handle a separate
lilypond-web repo?




I wasn't really paying much attention to this thread but then I 
saw my name. :) If you need small fixes to the web stuff I could 
probably handle that.  I actually had the web code at one point 
but then I reinstalled my OS and haven't pulled it again.  Hard 
drive space is not at a premium so I don't mind pulling more code 
if it would help the cause.  I don't have great html skills but I 
know enough to go in and fix typos, broken links, and the like.


Jon

--
Jonathan Kulp
http://www.jonathankulp.com


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


Re: LSR update policies, and WTM is input/new/revised/ ?

2009-06-06 Thread Jonathan Kulp
On Fri, Jun 5, 2009 at 6:12 AM, Graham Percival wrote:

> On Thu, Jun 04, 2009 at 07:46:10PM -0500, Jonathan Kulp wrote:
> > I read the diff for CG when it came in this morning and the LSR stuff
> > looks good to me. If you want, we could also include the script I wrote
> > for checking all the snippets at once. Carl suggested that it go in the
> > docs somewhere.
>
> Yes, please.  In that new subsection would be great.
>

Graham, here's a patch with the script for running and checking all of the
lsr snippets. Also fixed a typo (Uptating > Updating). BTW there are a bunch
of warnings when I run "make doc":

 ** `Fixing snippets in LilyPond sources' is up for `Updating LSR to a new
version', but has no menu entry for this node
WARNING: Node 'Compiling from source' was NOT found in the map
WARNING: Node 'Downloading source code' was NOT found in the map
WARNING: Node 'Requirements' was NOT found in the map
WARNING: Node 'Requirements' was NOT found in the map
WARNING: Node 'Requirements' was NOT found in the map
WARNING: Node 'Requirements' was NOT found in the map
WARNING: Node 'Building LilyPond' was NOT found in the map
WARNING: Node 'Building LilyPond' was NOT found in the map
WARNING: Node 'Building LilyPond' was NOT found in the map
WARNING: Node 'Building LilyPond' was NOT found in the map
WARNING: Node 'Building LilyPond' was NOT found in the map
WARNING: Node 'Building documentation' was NOT found in the map
WARNING: Node 'Commands for building documentation' was NOT found in the map
WARNING: Node 'Building documentation without compiling LilyPond' was NOT
found in the map
WARNING: Node 'Testing LilyPond' was NOT found in the map
WARNING: Node 'Problems' was NOT found in the map
WARNING: Node 'Problems' was NOT found in the map
WARNING: Node 'Problems' was NOT found in the map
WARNING: Node 'Problems' was NOT found in the map
WARNING: Node 'Problems' was NOT found in the map
cp /home/jon/lilypond/Documentation/lilypond*.css out-www/contrib-guide/
texi2html -I /home/jon/lilypond/Documentation/user
--I=/home/jon/lilypond/out/xref-maps  --I=. --I=./out-www -D bigpage
--output=out-www/contrib-guide-big-page.html
--init-file=/home/jon/lilypond/lilypond-texi2html.init
out-www/contrib-guide.texi
** `Fixing snippets in LilyPond sources' is up for `Updating LSR to a new
version', but has no menu entry for this node


The pdf output seems to be o.k. but the warnings aren't normal.

Jon

-- 
Jonathan Kulp
http://www.jonathankulp.com
From 506869c397825df0f2a6a16df6135b01d7f250e9 Mon Sep 17 00:00:00 2001
From: Jonathan Kulp 
Date: Sat, 6 Jun 2009 14:49:24 -0500
Subject: [PATCH] CG: add script for testing LSR snippets

---
 Documentation/devel/lsr-work.itexi |   30 --
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/Documentation/devel/lsr-work.itexi b/Documentation/devel/lsr-work.itexi
index 033cc98..083ee64 100644
--- a/Documentation/devel/lsr-work.itexi
+++ b/Documentation/devel/lsr-work.itexi
@@ -200,7 +200,7 @@ In any case, commit all changes to Git.
 
 
 @node Updating LSR to a new version
-...@subsection Uptating LSR to a new version
+...@subsection Updating LSR to a new version
 
 To update LSR,
 
@@ -208,7 +208,8 @@ To update LSR,
 
 @item
 Download the latest snippet tarball, extract it, and run
-convert-ly on all files.
+convert-ly on all files. To ease the process, you may use the
+shell script that appears after this list.
 
 @item
 Copy relevant snippets (i.e. snippets whose version is equal to or
@@ -239,3 +240,28 @@ included, then delete those snippets from @file{input/new/}.
 @end enumerate
 
 
+Here is a shell script to run all @code{.ly} files in a directory
+and redirect terminal output to text files, which are then
+searched for the word "failed" to see which snippets do not compile.
+
+...@example
+#!/bin/bash
+
+# Mac or Linux?
+OS=$(uname)
+
+# set Lilypond PATH if OS is Darwin
+if [ "$OS" == "Darwin" ] ; then
+   export PATH="$PATH:/Applications/LilyPond.app/Contents/Resources/bin/"
+fi
+
+for LILYFILE in *.ly
+do
+  STEM=$(basename "$LILYFILE" .ly)
+  echo "running $LILYFILE..."
+  lilypond --format=png "$LILYFILE" >& "$STEM".txt
+  rm "$STEM".ps
+done
+
+grep failed *.txt
+...@end example
-- 
1.6.0.4

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


Re: Numbered musical notation (Jianpu)

2009-06-06 Thread Silas Brown
Continuing the thread from November 2007:
(see http://www.mail-archive.com/lilypond-u...@gnu.org/msg32740.html )

Here is a Python hack that can add numbered notation (Chinese jianpu) to a line
of music.  The numbered notation is added as ^\markup commands that include
appropriate EPS files.  These EPS files are generated using pslatex (you need
the PostScript fonts for LaTeX, although you could substitute Computer Modern
fonts by replacing pslatex with latex but then the jianpu numbers will not match
Lilypond's other text).  The music parser is extremely basic, so don't try it on
anything too complicated.  Octaves must be absolute, and must be in the range c'
to b'''.  However it is OK not to specify length on every note.  Numbering with
1=C is assumed (although the script can easily be adapted to other numberings).

The script works well for me in Lilypond 2.10.33.  However it does not work so
well in 2.12.2 because the ^\markup commands are re-positioned so much (which is
a good attempt to avoid collisions, but it often results in the jianpu numbers
being printed at different heights just because they are a little close to each
other).  Does anybody know how to do it better in 2.12.2?

def makeEPS(epsFile,texString):
try: return open(epsFile) # does it exist already?
except: pass
texFile=epsFile[:-3]+"tex"
dviFile=epsFile[:-3]+"dvi"
psFile=epsFile[:-3]+"ps"
open(texFile,"w").write(r"""\documentclass{article}
% we must put our title at the bottom left of
% the paper.  (BoundingBox can correct for
% positioning elsewhere, but Lilypond doesn't
% seem to take the left and bottom parts of the
% boundingbox into account when doing its spacing.)
\usepackage[a4paper,lmargin=0mm,rmargin=0mm,tmargin=0mm,bmargin=0mm]{geometry}
\usepackage{color}

% \def\dash{--}  % this is a bit too long
\def\dash{\footnotesize --}

\begin{document}
\pagestyle{empty}
~ \vfill \par \noindent
\textcolor{white}{\rule{0.1pt}{0.8em}} % so -E'd eps is at least that high
"""+texString+r"\end{document}"+"\n")
r=os.system("pslatex "+texFile+" && dvips -E "+dviFile+' && mv '+psFile+'
'+epsFile)
assert not r, "Something went wrong with TeX"

import os,string,re

# ensure all notes above c' have lengths, plus rests
# (but try not to add lengths in wrong places - this is very basic)
def addLengths(dat):
ret=[] ; i=0
while ihttp://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: LSR update policies, and WTM is input/new/revised/ ?

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 02:54:46PM -0500, Jonathan Kulp wrote:
> Graham, here's a patch with the script for running and checking
> all of the lsr snippets. 

ok.  IMO, osx users should set up a "lilypond" shell script, as
suggested in AU 2.something.  Then you wouldn't need that special
path-to-binary thing.  But adding this as-is certainly can't hurt
the next person doing the update, so that's fine.

> Also fixed a typo (Uptating > Updating). BTW there are a bunch of
> warnings when I run "make doc":

yeah, caused from that @include compile.texi.  I've taken that
out; we'll revisit this after 2.14.  (when AU dies and compiling
will only be in this dir)

Cheers,
- Graham


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


tagging 2.13.1

2009-06-06 Thread Graham Percival
Does anybody remember which commit was used for 2.13.1?  We should
tag that.

Cheers,
- Graham


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


Re: mergin web/ with master/

2009-06-06 Thread Carl D. Sorensen



On 6/5/09 12:18 PM, "Graham Percival"  wrote:

> Do we need a separate branch (or even repository) for web/ stuff?
> I propose that we merge this with the main branch.

I thought that the previous discussion was actually to separate the web from
the source, i.e., more, rather than less, separation.

But I'm OK to move in this direction; I'm ambivalent, personally.
> 
> PRO:
> + one less branch/repo to track
> + easier to fix typos in the web pages
> + we can direct everybody to look at the CG (no more README in the
> newweb/ branch)
> + allows better integration with the other docs (this is more a
> post-GOP feature)
> 
> CON:
> - adds 30 megs to the main branch (including the .git dir)
> - makes translations harder?  (maybe?  ... I don't know if this is
>   true, but IMO this is the only real reason to avoid doing this)
> 

Another con might be that those who might be willing to work on the web but
who don't have a git repo of the source would need a much bigger git repo
(i.e. all of LilyPond, instead of just the web).

> 
> 
> If we agree with this proposal, then we'll be left with:
> lilypond repo
> . master branch
>. individual testing branches

Do we need all of the individual testing branches?  I'm fairly certain that
the csorensen branch is useless.  I think the original idea behind the
csorensen branch was that I would make changes and push them to that branch,
then somebody else would cherry-pick the changes.  I think that that model
for fixing things has been replaced.  We now have the git-cl means of having
patches reviewed and then pushed; perhaps we don't need the individual
branches?

Thanks,

Carl



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


Re: tagging 2.13.1

2009-06-06 Thread Mark Polesky

> Does anybody remember which commit was used for 2.13.1?  We should

> tag that.

Isn't it this one?

http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=e49c69e6d1e507f60348fa168332175ec6d42b0a



  


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


Re: LSR update policies, and WTM is input/new/revised/ ?

2009-06-06 Thread Jonathan Kulp

Graham Percival wrote:

On Sat, Jun 06, 2009 at 02:54:46PM -0500, Jonathan Kulp wrote:

Graham, here's a patch with the script for running and checking
all of the lsr snippets. 


ok.  IMO, osx users should set up a "lilypond" shell script, as
suggested in AU 2.something.  Then you wouldn't need that special
path-to-binary thing.  But adding this as-is certainly can't hurt
the next person doing the update, so that's fine.


Yeah, I almost took the OSX PATH out. I used to put it in all of 
my lily shell scripts before I figured out that it's better to set 
things up as described in AU. Since you lean that direction I 
wouldn't mind removing it. Do you want me to make a patch or would 
you rather do it yourself?





Also fixed a typo (Uptating > Updating). BTW there are a bunch of
warnings when I run "make doc":


yeah, caused from that @include compile.texi.  I've taken that
out; we'll revisit this after 2.14.  (when AU dies and compiling
will only be in this dir)



OK.

Jon

--
Jonathan Kulp
http://www.jonathankulp.com


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


GUB failing tests

2009-06-06 Thread Graham Percival
I've done
make -f lilypond.make bootstrap
without problems, and
make lilypond
builds all the arches.  The test output tarball is created, but it
fails the rsync test (?)


-  (output from "make lilypond")
make[3]: Entering directory `/home/lilypond/gub'
PYTHONPATH=/home/lilypond/gub/target/linux-x86/build/lilypond-git.sv.gnu.org--lilypond.git-master/python/out
\
python test-lily/rsync-test.py \

--version-file=/home/lilypond/gub/target/linux-x86/build/lilypond-git.sv.gnu.org--lilypond.git-master/out/VERSION
\

--output-distance=/home/lilypond/gub/target/linux-x86/src/lilypond-git.sv.gnu.org--lilypond.git-master/scripts/build/output-distance.py
\
--test-dir=uploads/webtest
uploads/lilypond-2.13.2-HEAD.test-output.tar.bz2
Traceback (most recent call last):
  File "test-lily/rsync-test.py", line 199, in 
main ()
  File "test-lily/rsync-test.py", line 193, in main
compare_test_info (options)
  File "test-lily/rsync-test.py", line 154, in compare_test_info
assert 0
AssertionError
make[3]: *** [unlocked-test-export] Error 1
make[3]: Leaving directory `/home/lilypond/gub'
-


The relevant lines of python are:
-
def compare_test_info (options):
...
for f in outputs:
m = re.search ('lilypond-([.0-9]+)-([0-9]+).test-output.tar.bz2', f)
if not m:
printf (f)
assert 0
-

which makes sense, since there aren't any previous test outputs on
the system.  However, I can't see any special mention of this in
the README, or in "make help".  What should I do?

Cheers,
- Graham




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


Re: mergin web/ with master/

2009-06-06 Thread John Mandereau

Hi guys,
Graham Percival a écrit :

Eventually, I'd like to have
  docs/
  docs/web/
  docs/learning/
  docs/reference/
  docs/devel/
  docs/snippets/
  docs/examples/  (maybe)

with the approporiate translation files in each subdir.  
  
John, if you're reading this: don't worry, I'm going to do all the

build system modifications myself.  :)
  
If you want to see the plan you described done before August, then it's 
a very good idea :-) ; fortunately, the involved changes in makefiles 
should not be too tricky... except for modifying "dist" target: it is 
problematic to release Lily sources with the website, so docs/web/ 
should be excluded from this target.


Best,
John


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


Re: development on windows

2009-06-06 Thread John Mandereau

Francisco Vila a écrit :

2009/6/6 Graham Percival :
  

Err... by "run GUB", I mean "generate sheet music using the
downloaded .exe".



GUB is the builder, and it builds the released binaries. You run the
builder or the released binary. I propose to call things by their
names.
  
Agreed. We should call binaries by Lily dev team "GUB binaries" or 
whatever you like that sounds correct, but not just

GUB, which is the building framework.

John


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


[PATCH] should it be @code{\\addInstrumentDefinition} ?

2009-06-06 Thread Mark Polesky
In a patch I submitted some days ago...
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=blobdiff;f=ly/music-functions-init.ly;h=1910975f7fdc81ff7e3632d766f396a631f62f06;hp=2dded22e3d77acd2b2dbcab500d6a01a5f893be9;hb=269248a11ada074066deb061d64df70ee7b4deec;hpb=53c3276a6d56cf8866f7f813d8b53f639bd6b073

I made this change in music-functions-init.ly:

-...@var{\addinstrumentdefinition}.")
+...@code{\addinstrumentdefinition}.")

Though the lilypond.org docs haven't been updated since, I see
now that the change has made it to Reinhold's docs:
http://kainhofer.com/~lilypond/Documentation/user/lilypond/Overview-of-available-music-functions.html#index-instrumentSwitch-2

However, the \a is still showing up as a control character 0x07,
which I'm assuming means "alarm"? It's listed as "bell" here:
http://www.fileformat.info/info/unicode/char/0007/index.htm

The html source also reads (with character 0x07 after ):
  ddInstrumentDefinition


So, I'm sorry for the misstep, but I don't see why this happens.
By comparison, I grepped for @code{\a and found this example in
user/vocal.itely, line 168:

by the keyword @code{\lyricmode}, or by using @code{\addlyrics} or

which looks fine in the docs:
http://kainhofer.com/~lilypond/Documentation/user/lilypond/Entering-lyrics.html#Lyrics-explained

Can someone explain why it works in one file but not in the other?
I can patch a fix, but I'm not sure the right way to do it. I'm
guessing it's as simple as this:

-...@code{\addinstrumentdefinition}.")
-...@code{\\addinstrumentdefinition}.")

And if it is, here's the patch.

Thanks.
- Mark


  

0001-code-addInstrumentDefinition-code-addInstrumentDefin.patch
Description: Binary data
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: unexpected \unfoldRepeats behavior

2009-06-06 Thread Paul Scott

Jay Anderson wrote:

On Sat, Jun 6, 2009 at 3:22 AM, Mark Polesky wrote:
  

I tried to answer a question on -user but hit a brick wall.
\unfoldRepeats failed to work when the music block was funneled from 2
separate expressions. Can someone explain this to me? Why does the
following code work for voiceA but not for voiceB?

Thanks.
- Mark

_


\version "2.13.1"

voiceA = \new Voice = "A" \relative {
 \time 1/4
 \repeat volta 2 { a' }
 \alternative { { b } { c } }
}


% voiceB is built from 2 separate expressions funneled into one voice,
% but otherwise ought to be identical to voiceA, it seems:
voiceBrepeats = {
 \time 1/4
 \repeat volta 2 { s }
 \alternative { { s } { s } }
}
voiceBnotes = \relative { \time 1/4 a' b c }
voiceB = \new Voice = "B" { << \voiceBrepeats \voiceBnotes >> }


% using \unfoldRepeats produces the expected MIDI output with voiceA,
% but not with voiceB. Why?
\score {
 \unfoldRepeats \voiceA % change to \voiceB to test.
 \midi { }
}



This is the expected behavior. Only the spacers will be unfolded in
voiceB. The repeat needs to be around the actual notes. Use
\displayMusic and you'll see why.

If you really do want this to work you're going to need some sort of
flatten function: '\flatten << \voiceBrepeats \voiceBnotes >>' which
would recursively combine the contents of nested parallel sections
into one SequentialMusic section. This would be tricky. It's easiest
to just put the repeats in all voices.
  


Which is kind of ridiculous if you're writing an ensemble piece with 
many (even more than one) voices/parts.  How can a midi of a multi-voice 
work with any repeats be done?  

I don't mind having a separate file for the midi output but not being 
able to factor out the common timing and dynamics costs a lot of input 
time and makes it a lot harder to make sure I haven't dropped a bar 
somewhere.


Paul Scott





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


Re: tagging 2.13.1

2009-06-06 Thread Patrick McCarty
On Sat, Jun 6, 2009 at 3:47 PM, Mark Polesky wrote:
>
>> Does anybody remember which commit was used for 2.13.1?  We should
>
>> tag that.
>
> Isn't it this one?
>
> http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=e49c69e6d1e507f60348fa168332175ec6d42b0a

That is the commit that bumped the VERSION file.

Graham wants to know which commit 2.13.1 is based on.

For example, 2.13.0 was based on this commit:

http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=37a38d4a18943041e4d3623fb3996279f40df290


-Patrick


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


Re: development on windows

2009-06-06 Thread Graham Percival
On Sun, Jun 07, 2009 at 01:23:22AM +0200, John Mandereau wrote:
> Francisco Vila a écrit :
>> 2009/6/6 Graham Percival :
>>   
>>> Err... by "run GUB", I mean "generate sheet music using the
>>> downloaded .exe".
>>
>> GUB is the builder, and it builds the released binaries. You run the
>> builder or the released binary. I propose to call things by their
>> names.
>>   
> Agreed. We should call binaries by Lily dev team "GUB binaries" or  
> whatever you like that sounds correct, but not just
> GUB, which is the building framework.

Err... "GUB" stands for "Grand Unified Binary".  It was a play on
the GUT (Grand Unified Theory) of physics.
http://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=GUB&submit=Search!&idxname=lilypond-devel&max=10&result=normal&sort=date%3Aearly

Cheers,
- Graham


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


Re: mergin web/ with master/

2009-06-06 Thread Graham Percival
On Sun, Jun 07, 2009 at 01:18:41AM +0200, John Mandereau wrote:
> fortunately, the involved changes in makefiles  should not be
> too tricky... except for modifying "dist" target: it is
> problematic to release Lily sources with the website, so
> docs/web/  should be excluded from this target.

What's the problem with distributing the website source?  I can't
imagine this being technically challenging, and I don't think
there's any security issues...?

Cheers,
- Graham


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


Re: [PATCH] should it be @code{\\addInstrumentDefinition} ?

2009-06-06 Thread Graham Percival
On Sat, Jun 06, 2009 at 04:41:21PM -0700, Mark Polesky wrote:
> So, I'm sorry for the misstep, but I don't see why this happens.
> By comparison, I grepped for @code{\a and found this example in
> user/vocal.itely, line 168:
> 
> Can someone explain why it works in one file but not in the other?

Scheme docstring vs. non-macro in .itely files.  I don't know
exactly how the scheme stuff is treated, but you need the extra
backslash.

grep 'code{\\' scm/*

> -...@code{\addinstrumentdefinition}.")
> -...@code{\\addinstrumentdefinition}.")

That's it.  (with a + for the second line)

> And if it is, here's the patch.

Thanks, applied.

Cheers,
- Graham


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


Re: unexpected \unfoldRepeats behavior

2009-06-06 Thread Jay Anderson
On Sat, Jun 6, 2009 at 4:53 PM, Paul Scott wrote:
> Which is kind of ridiculous if you're writing an ensemble piece with many
> (even more than one) voices/parts.  How can a midi of a multi-voice work
> with any repeats be done?

I was working on a large score and originally kept the repeat
structure separate from the individual parts and ran into the same
unfold-not-working problem. I thought about this a bit and decided it
was best just to have the repeats in each part. If you're going to
make a change to the repeat structure you're almost always going to
have to change each part/voice to match. Since this is the case it
makes sense to have the repeat structure in each part. If for nothing
else it makes it easy to find the beginnings and ends of repeats in
each part.

> I don't mind having a separate file for the midi output but not being able
> to factor out the common timing and dynamics costs a lot of input time and
> makes it a lot harder to make sure I haven't dropped a bar somewhere.

Actually I found that having the repeats in each part made it easier
to notice that bars were off. Lilypond throws errors where it thinks
the repeat timing problem is without having to look too much at the
pdf output.

-Jay


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


Re: [PATCH] should it be @code{\\addInstrumentDefinition} ?

2009-06-06 Thread Werner LEMBERG

> I made this change in music-functions-init.ly:
> 
> -...@var{\addinstrumentdefinition}.")
> +...@code{\addinstrumentdefinition}.")
> 
> However, the \a is still showing up as a control character 0x07,
> [...]
> 
> Can someone explain why it works in one file but not in the other?

Documentation in .ly files are handled by lilypond itself, this is,
the `lilypond' binary is called to produce files included by the
texinfo system.  And `lilypond' needs two backslashes which are then
reduced to a single one.  The same is true for Scheme files.


Werner


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


Re: Numbered musical notation (Jianpu)

2009-06-06 Thread Andrew Hawryluk
On Sat, Jun 6, 2009 at 1:59 PM, Silas Brown wrote:
> Continuing the thread from November 2007:
> (see http://www.mail-archive.com/lilypond-u...@gnu.org/msg32740.html )
>
> Here is a Python hack that can add numbered notation (Chinese jianpu) to a 
> line
> of music.  The numbered notation is added as ^\markup commands that include
> appropriate EPS files.  These EPS files are generated using pslatex (you need
> the PostScript fonts for LaTeX, although you could substitute Computer Modern
> fonts by replacing pslatex with latex but then the jianpu numbers will not 
> match
> Lilypond's other text).  The music parser is extremely basic, so don't try it 
> on
> anything too complicated.  Octaves must be absolute, and must be in the range 
> c'
> to b'''.  However it is OK not to specify length on every note.  Numbering 
> with
> 1=C is assumed (although the script can easily be adapted to other 
> numberings).
>
> The script works well for me in Lilypond 2.10.33.  However it does not work so
> well in 2.12.2 because the ^\markup commands are re-positioned so much (which 
> is
> a good attempt to avoid collisions, but it often results in the jianpu numbers
> being printed at different heights just because they are a little close to 
> each
> other).  Does anybody know how to do it better in 2.12.2?

Have you tried \textLengthOn? See Notation Reference 1.8.1

Andrew


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


Re: tagging 2.13.1

2009-06-06 Thread Mark Polesky

Patrick McCarty wrote:

> That is the commit that bumped the VERSION file.
> Graham wants to know which commit 2.13.1 is based on.
> For example, 2.13.0 was based on this commit:
> http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=37a38d4a18943041e4d3623fb3996279f40df290

Ah, I see. Well, in that case I'm pretty sure I've
narrowed it down to these two:

Reinhold Kainhofer
Better detection which characters need to be quoted... 
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=0ac32e91fab38b860ad951b8f0cd4700f79ba86a


Mark Polesky
Change wording of paper-column-interface docstring.
http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=53c3276a6d56cf8866f7f813d8b53f639bd6b073


I've deduced this because the changes listed in Reinhold's
"Better detection..." patch show up in my 2.13.1 release,
and the changes listed in the next patch in the series, my
"Typo: @var{} -> @code{}." patch, do *not* appear in my
2.13.1 release. Ironically, since the "Change wording..."
patch only affected a C++ file, I can't tell if that made
it to 2.13.1 just by looking at the release, because the 
lily folder doesn't come with the download.

If it's any help, I have an e-mail dated Monday, May 25, 
2009 1:02:39 PM (GMT)from Carl Sorensen saying that he
appliedthe patch named "Change wording..."

Hope this helps.
- Mark



  


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


Re: development on windows

2009-06-06 Thread Patrick McCarty
On Sat, Jun 6, 2009 at 7:06 PM, Graham Percival wrote:
> On Sun, Jun 07, 2009 at 01:23:22AM +0200, John Mandereau wrote:
>> Francisco Vila a écrit :
>>> 2009/6/6 Graham Percival :
>>>
 Err... by "run GUB", I mean "generate sheet music using the
 downloaded .exe".
>>>
>>> GUB is the builder, and it builds the released binaries. You run the
>>> builder or the released binary. I propose to call things by their
>>> names.
>>>
>> Agreed. We should call binaries by Lily dev team "GUB binaries" or
>> whatever you like that sounds correct, but not just
>> GUB, which is the building framework.
>
> Err... "GUB" stands for "Grand Unified Binary".  It was a play on
> the GUT (Grand Unified Theory) of physics.
> http://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=GUB&submit=Search!&idxname=lilypond-devel&max=10&result=normal&sort=date%3Aearly

Interesting.  So did the name evolve over time?  Now it appears to be
called the Grand Unified Builder:

http://lilypond.org/gub/

-Patrick


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


Re: development on windows

2009-06-06 Thread Francisco Vila
2009/6/7 Graham Percival :
> Err... "GUB" stands for "Grand Unified Binary".  It was a play on
> the GUT (Grand Unified Theory) of physics.
> http://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=GUB&submit=Search!&idxname=lilypond-devel&max=10&result=normal&sort=date%3Aearly
>
> Cheers,
> - Graham

I hate to be annoying again, but

   http://lilypond.org/gub/

whete BTW it also says

   bin/gub   - the Gub Universal Builder

but also

   GUB starts as an effort to unify the Windows and MacOS builders...

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org


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


Re: development on windows

2009-06-06 Thread Francisco Vila
2009/6/7 Patrick McCarty :
> Interesting.  So did the name evolve over time?  Now it appears to be
> called the Grand Unified Builder:
>
> http://lilypond.org/gub/
>
> -Patrick

see also

  http://github.com/janneke/gub

or

  http://lilypond.org/~janneke/vc/gub.git/


-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org


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