Re: problems with learning lilypond

2009-08-13 Thread David Fedoruk
Regarding those questions I didn't know how to word in an
understandable way; my reasons for just simply letting them sit
unasked is that in my experience, it means I've missed something along
the way to the problem.

So just hanging tough and letting the problem sit while I go on with
soe other portion of my project usually results in either finding the
answer to my problem along the way as I proceed, or finding a way to
ask the question.

There are the times when just going back and making sure that every
single render error I get is solved no matter how small, ends up
making the original problem go away. At a time like this, I've very
glad I didn't rush to the list and try to ask that question.

It turns out that no matter how small or insignificant you think the
error is, it has repercussions down the road for something else. So
rather than speaking or asking in haste, I choose to keep working
ahead by going back and making sure that all the little problems I
think are of insignificant are taken care of.

Regarding jazz chords, I can only speak from what I see on this list.
Others have greater insight into the whole Lilypond development
process, so I am not surprised that it was far more complex than what
I saw here.

I knew these were more complex problems than a simple lead sheet since
I've talked with guitar players and compared the exact notes they play
with the ones I know to be associated with any one chord. I learned a
whole lot from that conversation, probably more than the guitar player
thought that I learned. Again, it was a matter of perspective; how
things look from where  you are standing at the moment.

As it happened, the right people spoke up at the right time. They said
things in a concise way where I would have attempted (and probably
failed) to say the same thing in a most awkward and round about way.
There is a great deal of expertise in this group, it doesn't all come
from progammers, but from everyone who uses Lilypond, it comes from
everyone who uses Lillypond.

Also, remember that my time zone is GMT -8, so I am one of the last
people on this list to see anything posted. That affects how I see
things or how I am seen to respond to things.

Scheme: I know beyond a doubt that scheme is important. Understanding
it can make your work much easier and a lack of understanding can make
life with Lilypond a nightmare. I will eventually understand what I
need to know about scheme, it just will not be this very moment

If I had to say one thing that is wrong with documentation is that the
people doing the documentation assume to much about the state of the
reader's knowledge. What may seem obvious to you, may not be to the
person reading your documentation.

Unix/Linux man files are filled with some of the most  information
recorded anywhere. However, their terse style makes them difficult for
many new users to understand.

Lilypond's documentation used to be very similar in style. This is no
longer the case, it has come a long way from that terse man file style
to where it is now. So kudos to those who have contributed, your work
is most appreciated.

Also, to those who have contributed examples to the unofficial
snippets repository, your contributions are high on my list of
valuable contributions  to Lilypond documentation. Many times I   have
found answers to my questions  in the snippets respository when I had
about given up. For me, a picture is worth a several million words.

To sum up, thanks to everyone who has contributed even in a small way
to Lilypond. Lilypond is as impoirtant to me as Open Office  and
Firefox combined. This is  not hyperboly, I'd be lost without it.

cheers,
davidf


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


Re: problems with learning lilypond

2009-08-13 Thread Graham Percival
On Thu, Aug 13, 2009 at 04:54:15PM -0700, David Fedoruk wrote:
 Also, remember that my time zone is GMT -8, so I am one of the last
 people on this list to see anything posted.

Same here, being in Burnaby.

 If I had to say one thing that is wrong with documentation is that the
 people doing the documentation assume to much about the state of the
 reader's knowledge. What may seem obvious to you, may not be to the
 person reading your documentation.

I disagree here.  We spent a lot of time thinking, talking, and
planning out those assumptions.

At the beginning of the Learning Manual, we assume that the reader
knows nothing other than having a slight familiarity with their
operating system.  (i.e. windows users should know what a
double-click is)

In the middle of the LM, we assume that the reader has read (and
understood) the earlier parts** of the LM -- or at least, that the
reader would be willing to go back and review previous material.
I agree this assumption is slightly tenuous, but if we couldn't
make this assumption, the docs could easily be three times as
long.
** if you find any instance where this is not true, please let us
know!  The LM is designed to be read sequentially, explaining each
term and concept as they come... we consider any deviation from
this to be a serious problem.

In the Notation Reference, we assume that the user has read (and
understood) the LM.  Again, maybe this is a flawed assumption, but
again, we could triple the doc lenth (not to mention the doc
writers' workload!) otherwise.

In the Internals Reference, we assume that people know a lot.
Partly because this is advanced stuff, but mostly because we don't
have enough doc writer effort to smooth this over.

Cheers,
- Graham


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


Re: problems with learning lilypond

2009-08-13 Thread Mark Polesky
David Fedoruk wrote:

 So just hanging tough and letting the problem sit while I go on with
 some other portion of my project usually results in either finding the
 answer to my problem along the way as I proceed, or finding a way to
 ask the question.
 
 There are the times when just going back and making sure that every
 single render error I get is solved no matter how small, ends up
 making the original problem go away. At a time like this, I've very
 glad I didn't rush to the list and try to ask that question.

That's a good approach.


 Also, remember that my time zone is GMT -8, so I am one of the last
 people on this list to see anything posted. That affects how I see
 things or how I am seen to respond to things.

At least 3 of the active source-code contributors are GMT -8...


 If I had to say one thing that is wrong with documentation is that the
 people doing the documentation assume to much about the state of the
 reader's knowledge. What may seem obvious to you, may not be to the
 person reading your documentation.

It's a work in progress. Specific suggestions are the most likely to
get addressed.


 To sum up, thanks to everyone who has contributed even in a small way
 to Lilypond. Lilypond is as impoirtant to me as Open Office  and
 Firefox combined. This is  not hyperboly, I'd be lost without it.

Don't hesitate to contribute yourself!
- Mark



  


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


Re: problems with learning lilypond

2009-08-12 Thread Werner LEMBERG

 One other thing, much of the time I have questions, but do not know
 how to ask the question. That is extremely frustrating and I don't
 know if there is anything you can do about it. Sometimes i just
 don't know the correct terminology to use. Many things that are
 assumed when you are playing the music are not assumed when you are
 typesetting the music. I've tripped over that one many times.

In most cases it is extremely helpful to provide a small image which
shows the problem you have.  For example, you could use a paint
program of your choice to mark what you want to change.


Werner


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


Re: problems with learning lilypond

2009-08-12 Thread Simon Mackenzie
Yeah it's proving to be an interesting learning experience trying to  
wrap my head around Lilypond. I feel it is like a multi-headed beast  
with Scheme  Lilypond script intermingled together. It makes for an  
interesting mix to get ones head around. The manuals are helpful but  
there are hugh gaps for any new and inexperienced user such as myself.


As for the output and end result. Every single person to whom I have  
presented printouts have only ever made very positive comments, from  
wood-be musicians to music teachers and choir masters all are amazed  
when I tell them I did this with a free music sheet program under  
linux. I'm no musician but the first time I printed one of the sample  
outputs it was easy to see Lilypond really does stand out amongst the  
rest.


Just wish I could figure out the global variable reassignment  
challenge so I can clean up my code and make it more presentable and  
easier to maintain.


Simon

On 12/08/2009, at 10:51, Werner LEMBERG wrote:




One other thing, much of the time I have questions, but do not know
how to ask the question. That is extremely frustrating and I don't
know if there is anything you can do about it. Sometimes i just
don't know the correct terminology to use. Many things that are
assumed when you are playing the music are not assumed when you are
typesetting the music. I've tripped over that one many times.


In most cases it is extremely helpful to provide a small image which
shows the problem you have.  For example, you could use a paint
program of your choice to mark what you want to change.


   Werner


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




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


Re: problems with learning lilypond

2009-08-12 Thread Carl Sorensen
David,

Thanks for your comments, and for thinking carefully about your LilyPond
use.  I'm not sure exactly what you hoped to have happen as a result of this
post, so it's difficult for me to respond.  However, I do feel like I need
to clear up one point you made:


On 8/11/09 7:37 PM, David Fedoruk david.fedo...@gmail.com wrote:


 
 Lilypond isn't perfect, recently the way Lilypond works with Jazz chords and
 lead sheets has undergone drastic change. This was a matter of those who knew
 something some of the developers did not know or understand taking the time to
 explain how things worked in real life. It is difficult to tell an expert that
 he may be wrong about something. Choosing words carefully gets good results,
 rants almost never get the required results.
 

I disagree that the drastic changes in Jazz chords and lead sheets is due to
those who knew something explaining to the developers.  In my opinion, the
drastic changes in Jazz chords and lead sheets is due to people who wanted
to improve things getting involved in making them happen:

1) Improved FretBoards context:  Carl Sorensen wanted it and went after it,
including transposable fret diagrams and N.C. symbol

2) Good chord-name-exceptions lists:  Rick Hansen and others provided them
to the list

3) Transposable lyric chord names: Tao Cumplido decided to create them

4) Improved tablature: Marc Hohl got it implemented

5) Improved chord namer: Thomas Morgan is working on it, and I expect great
results soon


I expect there are more improvements that I haven't included here, but the
key issue is that *somebody* decided they wanted it badly enough to figure
out a way to do it.  LilyPond progress is not limited by the amount the
developers know; it's limited by the amount of time the developers have
available to work on it.  Every developer has a TODO list that's longer than
they have time to deal with, so developers work on what they're interested
in.  And getting development done in some area you care about really means
getting some developer who cares about it as well.

This doesn't mean that non-developers shouldn't ask for features.  Feature
requests are always helpful.  But the best way to get features implemented
is to try to get working on them yourself and then ask for help.

Thanks,

Carl



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


Re: problems with learning lilypond

2009-08-12 Thread James E. Bailey


On 12.08.2009, at 12:26, Simon Mackenzie wrote:

Yeah it's proving to be an interesting learning experience trying  
to wrap my head around Lilypond. I feel it is like a multi-headed  
beast with Scheme  Lilypond script intermingled together. It makes  
for an interesting mix to get ones head around. The manuals are  
helpful but there are hugh gaps for any new and inexperienced user  
such as myself.



Personally, I think this is an area where knowing too much gets in  
the way. I, for example, have no clue about Scheme. Scheme is, as far  
as I'm concerned, what other people do to save typing. In fact, I'm  
of the opinion that there's no need to use Scheme, it's just there if  
you know how to use it. So, if you take Scheme out of the lilypond  
learning curve, it's actually not that difficult.


James E. Bailey



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


Re: problems with learning lilypond

2009-08-12 Thread Mark Polesky
James E. Bailey wrote:
 Personally, I think this is an area where knowing too much gets in the
 way. I, for example, have no clue about Scheme. Scheme is, as far as
 I'm concerned, what other people do to save typing. In fact, I'm of
 the opinion that there's no need to use Scheme, it's just there if you
 know how to use it. So, if you take Scheme out of the lilypond
 learning curve, it's actually not that difficult.

Maybe it depends on your typesetting needs. Most of
my projects require scheme in one way or another.

- Mark



  


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


Re: problems with learning lilypond

2009-08-12 Thread Mark Polesky
James E. Bailey wrote:
 Really? What can't you do without Scheme?

Algorithmic music.

- Mark



  


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


Re: problems with learning lilypond

2009-08-12 Thread James E. Bailey


On 12.08.2009, at 19:33, Mark Polesky wrote:


James E. Bailey wrote:
Personally, I think this is an area where knowing too much gets in  
the

way. I, for example, have no clue about Scheme. Scheme is, as far as
I'm concerned, what other people do to save typing. In fact, I'm of
the opinion that there's no need to use Scheme, it's just there if  
you

know how to use it. So, if you take Scheme out of the lilypond
learning curve, it's actually not that difficult.


Maybe it depends on your typesetting needs. Most of
my projects require scheme in one way or another.

- Mark


Really? What can't you do without Scheme?

James E. Bailey



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


Re: problems with learning lilypond

2009-08-12 Thread James E. Bailey


On 12.08.2009, at 20:41, Mark Polesky wrote:


James E. Bailey wrote:

Really? What can't you do without Scheme?


Algorithmic music.

- Mark

Surely the calculations can be performed outside of lilypond, and  
then simply input into lilypond for a score, right? Or am I missing  
something?


James E. Bailey



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


Re: problems with learning lilypond

2009-08-12 Thread Mark Polesky
James E. Bailey wrote:
 Surely the calculations can be performed outside of lilypond,
 and then simply input into lilypond for a score, right? Or am I
 missing something?

Sure, but scheme can greatly facilitate things. I should clarify
that algorithmic music hardly represents the bulk of my LilyPond
work, but I mentioned it as an example of something the benefits
from scheme.

I'll try to respond differently to what you wrote earlier:

 Scheme is, as far as I'm concerned, what other people do to save
 typing. In fact, I'm of the opinion that there's no need to use
 Scheme, it's just there if you know how to use it. So, if you
 take Scheme out of the lilypond learning curve, it's actually
 not that difficult.

I think what David was saying in his earlier post
(http://lists.gnu.org/archive/html/lilypond-user/2009-08/msg00323.html)
was that he's gotten to the level where he needs scheme to do what
he wants. As one example, if you need your slurs and ties to hide
behind time-signatures, scheme is absolutely required, as far as I
see it:http://lsr.dsi.unimi.it/LSR/Item?id=613

Scheme enables far more functionality than simply saving typing.
So if you find yourself needing scheme in LilyPond, you may very
well find yourself fighting its counterintuitive elements.

Certainly scheme isn't required to produce beautiful scores, but
I typeset a lot of contemporary music, and the demands of the new
notation are simply too great to avoid it. So, as I said, perhaps
it just depends on your typesetting needs.

- Mark


  


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


Re: problems with learning lilypond

2009-08-11 Thread David Fedoruk
The documentation for Lilypond has one problem; it is, as the program is
itself, under development. It is screamingly frustrating for us
non-programmer users. However, that said, it is changing because it is not
nearly finished, it is required to print many different kinds of music.


The Learning Manual was scarcely present when i started using Lilypond. It
has changed and is continuing to change. That is frequently frustrating
because things  you knew were in a certain spot get changed. Sometimes its
like quicksand. The ground changes beneath you as you walk on  it. But that
is life with a program under development.

Even having read the Learning Manual, applying it in  different situations
is not always easy. Personally I have found that asking the question on the
mailing list is not as helpful as spending a little time struggling with the
problem. Most of the time I find solutions.

Unfortunately, what I need Lilypond for isn't small projects. So even If
I've gone through the Learning Manual start to finish, its still like I've
been thrown into the deep end of a swimming pool and told to swim. As you
can see, I haven't drowned yet. There's lots I don't understand yet but I'll
get there.

Since I usually am working with piano music, I have found that working with
a 4 voiced template to begin with is the best way too go. Most piano music
is basically four voiced music despite what you may see on the page. I
learned that by working with it over a period of time. No one told me that.

Because, the improvements being made to Lilypond are occurring in the
development versions I have found that using them has been the best way for
me to use Llilypond. That will not be true for everyone. Everyone's
experience with Lilypond will be different. I know I learn best when I am
working hands on. I don't learn very well from manuals with theoretical
examples. So I've adjusted how I work with Llilypond to account for that. I
use the snippets library a lot. Lots of the time the things I want to do
are  out of the ordinary anyway, but that's life with Western European
Music. It is extremely complex.

Call this a rant if you want, but I do not mean it as such. I'm just stating
that the Lilypond documentation is not perfect, it is changing almost as we
speak and patience with it is required. From the very little I have
encountered with GUI music notation editors, they are not much easier than
Lilypond. At least with Lilypond you can get some quick impressive results
with just an editor and a command line.

Scheme just frustrates me. Everytime I think I've gotten a handle on it
there's a curve ball thrown at. Obviously I haven't grasped it quite yet.
I'm not letting this stop me from completing projects though --- I just keep
going and learning a little more each time. Patience is what is required.
Despite my lack of understanding, I have managed to complete some pretty
complex scores on my own. I'm just stubborn enough to keep at it.

The reason that adult beginners hardly ever do well when learning to play
the piano isn't because their fingers cannot do what is required, they fail
because they  are not patient enough to keep practising simple things until
their fingers  acquire the technique to do what their minds have already
learned. I think Lilypond is something like that. In both cases, patience
and some dogged determination are required to learn the skills  needed to do
what you want.

One other thing, much of the time I have questions, but do not know how to
ask the question. That is extremely frustrating and I don't know if there is
anything you can do about it. Sometimes i just don't know the correct
terminology to use. Many things that are assumed when you are playing the
music are  not assumed when you are typesetting the music. I've tripped over
that one many times.

Lilypond isn't perfect, recently the way Lilypond works with Jazz chords and
lead sheets has undergone drastic change. This was a matter of those who
knew something some of the developers did not know or understand taking the
time to explain how things worked in real life. It is difficult to tell an
expert that he may be wrong about something. Choosing words carefully gets
good results, rants almost never get the required results.

I don't like the quicksand any more than anyone else, but considering the
state of the program, that is the way things are. Enough said.

cheers,
davidf


-- 
David Fedoruk
B.Mus. UBC,1986
Certificate in Internet Systems Administration, UBC, 2003


http://recordjackethistorian.wordpress.com
Music is enough for one's life time, but one life time is not enough for
music Sergei Rachmaninov
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: problems with learning lilypond

2009-08-11 Thread Graham Percival
On Tue, Aug 11, 2009 at 06:37:19PM -0700, David Fedoruk wrote:
 The documentation for Lilypond has one problem; it is, as the program is
 itself, under development.  It is screamingly frustrating for us 
 non-programmer
 users. 

Yes, but nothing forces people to upgrade.  The documentation for
2.12.1 never changes.

 Call this a rant if you want, but I do not mean it as such. I'm just stating
 that the Lilypond documentation is not perfect, it is changing almost as we
 speak and patience with it is required.

Either patience, or work.  The more people who work on the docs,
the more stable they get.

During the Grand Documentation Project, NR 1+2 were *almost*
complete.  NR 2.1 Vocal music -- for some people, the most
important section -- was almost untouched, though.  In the near
future, that will be completely rewritten.

If a few more people had been involved in GDP, this wouldn't be an
issue.  NR 1+2 could have been completed a year ago, and you could
rely on them not changing.  As it is, some of those sections (or
maybe just 2.1 Vocal) /will/ change within the next year.


*shrug*

Just like a democracy receives the government it deserves (where
that be Bush in the US, Obama in the US, Harper in Canada, or
Blair in the UK... somebody bound to hate at least one of those
governments ;), the users of lilypond recieve the documentation
they deserve.

Cheers,
- Graham


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


Re: problems with learning lilypond

2009-08-11 Thread Mark Polesky

David Fedoruk wrote:
 ...

I agree with everything you've said. I used to hate LilyPond; now
I'm a developer... I've experienced some pull-your-hair-out
aggravating confusions, but I've stuck with it. Yes, it's a work-
in-progress. Yes, it comes with no warranty. But it can be
rewarding to be a part of something big. LilyPond is getting
better every day.

One of the ways it gets better is when frustrated users speak
clearly. I was initially surprised when some of my early
complaints were met with enthusiasm -- how can we make it
better? what would you like to see? I think the best thing you
can do is to tell us about your frustrations. Certainly try to
figure things out on your own first, and of course use a
diplomatic tone, but tell us what bugs you.

We all know that the documentation isn't perfect, but we're all so
busy with specifics that we don't have time to imagine what parts
might lead to confusion. The documentation is tweaked every day.

And if you're not sure how to ask the question, just do your best.
Sometimes users confuse slurs and ties, for example... But the
replies are usually gentle. If your question demonstrates a
misconeption, we'll try to clarify it.

And with regard to telling an expert that he may be wrong about
something, just avoid using any tone. Insist on accuracy, from
yourself and others. Choosing your words carefully is a given.
Don't make any claims that you can't prove.

As a word of advice, I would recommend channeling your
frustrations into clearly-worded questions/suggestions. Then
everyone benefits.

- Mark



  


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


Re: problems with learning lilypond

2009-08-09 Thread Simon Mackenzie

Hope this helps to clarity things for you...

I have been looking at ways to tidy up my lilypond scripts. So, I've  
made an attempt to follow the good supply of examples in the various  
lilypond documents.
One adapted suggestion I've sourced from the Lilypond Learning Manual  
(5.1.3) runs as follows...


MUSICBOOK.ly contains the list of all music sheets for the music book.
CHORDSNOTES_###.ly contains the chords and notes for an individual  
music sheet. I may yet separate this into two files, say CHORDS_###;ly  
and NOTES_###.ly.
SHEET_###.ly contains an individual music sheet. And here I may yet  
also separate out the lyrics into an individual file, LYRICS_###.ly.


By taking this approach I feel each individual SHEET_###.ly is clear  
and concise to read. With the music separated into individual files I  
can have a person working on chords / notes and another working on the  
lyrics and yet another linking all the parts together. All in parallel.


By re-assigning the variables lyricsOne to n (where n is the  
maximum number of lyrics appearing in any one music sheet for the  
entire book, so far 5) as well as the notes and chords variables  
for each music sheet I can save myself having to make 1000+ global  
declarations with assignments at the top level scope in my  
MUSICBOOK.ly. Converting 300+ music sheets and an average around 3+  
verses per music sheet. Cumbersome and messy to manage. I should also  
add here that I am reusing the CHORDSNOTES_###.ly with lyrics in  
additional languages, currently two languages (Thai and Lua') but this  
could go as high as 5 languages (Thai, Lua', Akha, Lahu and English).  
Thus saving myself one hugh amount of typing.


So again my question is, how can I assign a new value to a variable so  
I can make all this happen and keep my global declarations /  
assignments to an absolute minimum and meet my goal of ensuring good  
clarity in my lilypond code for whomever inherits my project in the  
future?


=== Start - MUSICBOOK.ly ==
\version blah blah
\include init/init-macros.ly
\include init/init-common.ly
/book {
\bookpart {
\inlcude music/SHEET_061.ly
}
\bookpart {
\include music/SHEET_62.ly
}

...
}
=== End - MUSICBOOK.ly ==

=== Start - SHEET_061.ly ==
\version blah blah
\header { }
\page { }
\include CHORDSNOTES_061.ly % Currently this include will fail  
because I need to declare variables at the top level scope. I.e.  
outside all existing brackets.
lyricsOne = \lyricmode { % will probably also separate out the lyrics  
into a separate file for each sheet to aid clarity.

\set stanza = 1. 
ชี -- วิต
เรา พระ เจ้า ทรง สร้าง
เป็น หน
ทาง ให้ ไป สู่ ส --
วรรค์ ความ กา --

...

ชัย อ -- ภัย พวก
เรา ความ ซึม
เศร้า พวก เรา หาย
ไป
}
lyricsTwo = \lyricmode {
\set stanza = 2. 
จะ มี
ใคร ที่ ไหน กัน เล่า
นำ พวก
เรา ช่วย ประ ชา รอด
พ้น ทำ ความ

...

เอ่ยไม่ เคย เลย ลืม พวก
เรา
}
\score {

\new ChordNames { \chords }
\new Voice = one { \notes }
\new Lyrics \lyricsto one \lyricsOne
\new Lyrics \lyricsto one \lyricsTwo

\layout { }
\midi { }
}
=== End - SHEET_061.ly ==

=== Start - CHORDSNOTES_061.ly ==
\version blah blah
chords = \chordmode {
s8 s8
c4.:m s8 s4 s8 s8
s2. s8 s8
ees4. s8 s4 s8 s8
c2.:m s8 s8

...

f4.:m s8 s4 s8 s8
c2:m s4 s4
f4.:m s8 s4 s8 s8
c1:m
}
notes = \relative c'' {
\key c \minor
\fractionalTime
\time 4/4
\clef treble
\partial 8*2
g8[ b8] |
g4. b8 f4 e8[ e8]( |
c2.) g'8[ b8] |
g4. c8 b4 e,8[ f8] |
g2. c8[ c8] |\break

...

f4. e8 c4 e8[( b8)] |
c2 f4 f4 |
f4. e8 c4 b8[( e8)] |
c1 | \bar |.
}
=== End - CHORDSNOTES_061.ly ==

Cheers
Simon


On 08/08/2009, at 22:30, Tim McNamara wrote:



On Aug 8, 2009, at 8:54 AM, Simon Mackenzie wrote:


Here is my scenario

If I create a variable at the top scope how do I reassign its value  
in a subsequent scope eg.


aVariable = \markup { \bold bananas }

\book {
\bookpart {
\aVariable % bananas
\score {
			aVariable = \markup { \bold now \italic { equals this string } %  
want to be to reassign aVariable a new value so that...

\aVariable % now equals this string
}
}
}


Why do you want to change the value of \aVariable?  That doesn't  
make any sense to me.



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



Re: problems with learning lilypond

2009-08-09 Thread Tim McNamara


On Aug 9, 2009, at 9:05 AM, Simon Mackenzie wrote:

So again my question is, how can I assign a new value to a variable  
so I can make all this happen and keep my global declarations /  
assignments to an absolute minimum and meet my goal of ensuring  
good clarity in my lilypond code for whomever inherits my project  
in the future?



I don't think you can, but there are many here who know LilyPond  
better than I and they may come up with something.



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


Re: problems with learning lilypond

2009-08-09 Thread Graham Percival
On Sun, Aug 09, 2009 at 09:05:41PM +0700, Simon Mackenzie wrote:
 One adapted suggestion I've sourced from the Lilypond Learning Manual (5.1.3)
 runs as follows...
 
 MUSICBOOK.ly contains the list of all music sheets for the music book.

I don't think that was suggested in LM 5.1.3.  This isn't a good
idea.  You should put notes into MUSICBOOK_###.ly

 So again my question is, how can I assign a new value to a variable

You can't.

Cheers,
- Graham


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


Re: problems with learning lilypond

2009-08-08 Thread Mats Bengtsson

Quoting Simon Mackenzie smac...@me.com:


Ok it appears to be a scoping issue.
So I need to declare variables outside the \book scope? Is this correct?
But if my script file is included inside a \book scope how can i then 
 declare new variables inside this scope?


You can't! All variables are declared globally.

  /Mats



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


Re: problems with learning lilypond

2009-08-08 Thread Simon Mackenzie




Simon


On 08/08/2009, at 05:41, Trevor Daniels wrote:



Simon Mackenzie wrote Friday, August 07, 2009 3:55 PM


Eg. What does it mean on page 34 of the Learning Tutorial when it
says...

Variables must be defined before the main music expression.

Does this mean the \score { } or does it mean the expression in which
the declared variable is referenced?


The former, as shown quite clearly in the
template you mention below.



Implied but I feel not so clearly stated. If you declare a \book scope  
which contains \bookpart(s) with \score(s) where are variables to be  
declared? If I understand this all correctly variables must be  
declared outside this/these scope(s)? Correct? (as you have mentioned  
below variables must be declared outside (adding ALL would be helpful  
here) braces.



Because I dutifully declare my variables before the \score { } in my
script file using the example template from A.1.4 Notes, lyrics and
chords on page 143, again of the learning manual.
End result...
This error when I compile my script

Unexpected string  errors for every variable I've declared and no
idea as to why the template example fails to perform as claimed in  
the

documentation.

harmonies = \chordmode {...
melody = \lyricmode {... etc. generate Unexpected string errors


The template in the manual certainly does compile
without errors, as the image just below it is the
direct result of a compilation.  I suggest you
look at the template on the website at
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-learning/Single-staff#Single-staff
From this page you can either copypaste the code
directly, or click on the image of the music to
open the file directly (in the latter case you
will need to delete the first three lines).  These
files will then compile correctly (I've just tried
it).



Agreed, have tested same with complete success which is why I  
mentioned scoping in my last post.



From the error message it looks as if you are
inserting braces round the whole.  Variable
definitions come before any braces.

I'll add a bit to the manual to make that clear.



Will definitely help would-be travelers such as myself, thank you.

Here is my scenario

If I create a variable at the top scope how do I reassign its value in  
a subsequent scope eg.


aVariable = \markup { \bold bananas }

\book {
\bookpart {
\aVariable % bananas
\score {
			aVariable = \markup { \bold now \italic { equals this string } %  
want to be to reassign aVariable a new value so that...

\aVariable % now equals this string
}
}
}


Trevor



Thank you for your comments
Simon


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


Re: problems with learning lilypond

2009-08-08 Thread Simon Mackenzie

Ahhh!
Thank you.

Simon

On 08/08/2009, at 20:04, Mats Bengtsson wrote:


Quoting Simon Mackenzie smac...@me.com:


Ok it appears to be a scoping issue.
So I need to declare variables outside the \book scope? Is this  
correct?
But if my script file is included inside a \book scope how can i  
then  declare new variables inside this scope?


You can't! All variables are declared globally.

 /Mats





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


Re: problems with learning lilypond

2009-08-08 Thread Tim McNamara


On Aug 8, 2009, at 8:54 AM, Simon Mackenzie wrote:


Here is my scenario

If I create a variable at the top scope how do I reassign its value  
in a subsequent scope eg.


aVariable = \markup { \bold bananas }

\book {
\bookpart {
\aVariable % bananas
\score {
			aVariable = \markup { \bold now \italic { equals this string } %  
want to be to reassign aVariable a new value so that...

\aVariable % now equals this string
}
}
}


Why do you want to change the value of \aVariable?  That doesn't  
make any sense to me.



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


Re: problems with learning lilypond

2009-08-08 Thread James E. Bailey


On 08.08.2009, at 17:30, Tim McNamara wrote:



On Aug 8, 2009, at 8:54 AM, Simon Mackenzie wrote:


Here is my scenario

If I create a variable at the top scope how do I reassign its  
value in a subsequent scope eg.


aVariable = \markup { \bold bananas }

\book {
\bookpart {
\aVariable % bananas
\score {
			aVariable = \markup { \bold now \italic { equals this string }  
% want to be to reassign aVariable a new value so that...

\aVariable % now equals this string
}
}
}


Why do you want to change the value of \aVariable?  That doesn't  
make any sense to me.





I think the corollary to this would be, why not simply define two  
variables in the beginning?



James E. Bailey



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


Re: problems with learning lilypond

2009-08-07 Thread Simon Mackenzie

Agreed!!!

Eg. What does it mean on page 34 of the Learning Tutorial when it  
says...


Variables must be defined before the main music expression.

Does this mean the \score { } or does it mean the expression in which  
the declared variable is referenced?


Because I dutifully declare my variables before the \score { } in my  
script file using the example template from A.1.4 Notes, lyrics and  
chords on page 143, again of the learning manual.

End result...
This error when I compile my script

Unexpected string  errors for every variable I've declared and no  
idea as to why the template example fails to perform as claimed in the  
documentation.


harmonies = \chordmode {...
melody = \lyricmode {... etc. generate Unexpected string errors

Simon

On 22/11/2008, at 06:56, John Sellers wrote:

I have no argument with what you say about the documentation  
compared with many kinds of technical documentation, as long as you  
stick close to home.


The Lilypond folks work hard and do a lot of nice stuff, including  
documentation.


However, that doesn't change the facts of what I say.

The origin of the problem is that developers don't have to walk the  
path of the newbies from beginning to end and it is very difficult  
to provide a whole documentation structure that is truly responsive  
to those kind of needs...so most technical documentation the world  
over never does successfully do so.


HOWEVER, MAY I POINT OUT DOING SO IS PROBABLY THE MOST PRODUCTIVE  
THING YOU COULD DO TO LILYPOND TO ASSURE ITS FUTURE GROWTH AND  
SUCCESS!.


Good wishes, John Sellers

Federico Grau wrote:


I've found the lilypond documentation to be quite good (after  
having been
using it now for about a year).  It starts with an introduction,  
has a

friendly gentle tutorial, followed up by a detailed reference.

If you're not able to use it, maybe start with a simple project.   
As you
become more comfortable you can expand and take on more complex  
projects.
There are plenty of example templates to get one started at the  
bottom of the
documenation, and you'll likely end up taking the useful parts to  
create

your own template (mine is
http://www.casagrau.org/~donfede/lily/lilypond_template.ly ).

happy notating,
donfede




On Wed, Nov 19, 2008 at 12:54:39AM -0800, John Sellers wrote:

I am in Silicon Valley.  I've never met and talked to another  
lilypond

user face to face.  It is lonely out here.

I've used lilypond off and on for a few years AND HAVE NEVER BEEN  
ABLE

TO REALLY LEARN IT WELL!

There are five reasons

1) lack of context
2) lack of context
3) lack of context
4) lack of context
5) lack of context
6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!

I'm very tired of having a few hours to do something different,  
going to

lilypond documentation and getting something like

use such and such to do so and so.

fine so far. but how in God's Green Earth am I going to use  
something like:


\paper {}

If I don't know what context it works and what context it does not
work?  If like an idiot I go into my LY file and insert paper and  
put my

between-system-space or anything ELSE on the same page with a lot of
other variables which control things.  Why don't they ALL work  
WHENEVER

I try to use them...the answer is of course LACK OF CONTEXT.  For
correct context, I have to put the \paper {}  in the right part of  
the

program.  I have to tie the variables to whatever they are going to
effect.  Or do I?  I haven't a clue.  Why.here we go  
againLACK

OF CONTEXT.

Here is one way you can solve this problem.

NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that  
LEADS TO

THE CORRECT CONTEXT.

YOU HAVE TO BE SYSTEMATIC!  Consider the following:

Every feature must be documentedright? So are we talking about a
desert of documented sand pebbles in a jar or are there  
relationships

between them?  WOW!  there are DEPENDENCIES --- A dependences are B
depends on C --- oops, C depends on A NOT GOOD.

So what is one to do?  Well, you could use a topological sort of all
capability dependencies using generality as the sort  
discriminant.  Find
all the cycles and BREAK THEM.  Organize things in this way so now  
you

have a structure which has an entry point for the user for every
feature.  Look, dependency is just another way of say CONTEXT.  If
context goes in a circle then you end up defining  A grumpet B   
and then
defining B as anti-grumpet A, which is has no more meaning than  
being a

tautology.

In the best of all worlds, a user coming to the documentation WITH  
NO
KNOWLEDGE OF LILYOND in wanting to do something like control  
vertical
spacing, and if you linked back to more and more general contexts  
with
clear examples and explanations in a systematic way, then at some  
point
you would reach the context that includes the user's context, and  
there

the user can make the connection of how to find the way to apply
vertical spacing to his/her specific situation.


Re: problems with learning lilypond

2009-08-07 Thread Simon Mackenzie

Ok it appears to be a scoping issue.
So I need to declare variables outside the \book scope? Is this correct?
But if my script file is included inside a \book scope how can i then  
declare new variables inside this scope?


Simon

On 07/08/2009, at 21:55, Simon Mackenzie wrote:


Agreed!!!

Eg. What does it mean on page 34 of the Learning Tutorial when it  
says...


Variables must be defined before the main music expression.

Does this mean the \score { } or does it mean the expression in  
which the declared variable is referenced?


Because I dutifully declare my variables before the \score { } in my  
script file using the example template from A.1.4 Notes, lyrics and  
chords on page 143, again of the learning manual.

End result...
This error when I compile my script

Unexpected string  errors for every variable I've declared and no  
idea as to why the template example fails to perform as claimed in  
the documentation.


harmonies = \chordmode {...
melody = \lyricmode {... etc. generate Unexpected string errors

Simon

On 22/11/2008, at 06:56, John Sellers wrote:

I have no argument with what you say about the documentation  
compared with many kinds of technical documentation, as long as you  
stick close to home.


The Lilypond folks work hard and do a lot of nice stuff, including  
documentation.


However, that doesn't change the facts of what I say.

The origin of the problem is that developers don't have to walk the  
path of the newbies from beginning to end and it is very difficult  
to provide a whole documentation structure that is truly responsive  
to those kind of needs...so most technical documentation the world  
over never does successfully do so.


HOWEVER, MAY I POINT OUT DOING SO IS PROBABLY THE MOST PRODUCTIVE  
THING YOU COULD DO TO LILYPOND TO ASSURE ITS FUTURE GROWTH AND  
SUCCESS!.


Good wishes, John Sellers

Federico Grau wrote:


I've found the lilypond documentation to be quite good (after  
having been
using it now for about a year).  It starts with an introduction,  
has a

friendly gentle tutorial, followed up by a detailed reference.

If you're not able to use it, maybe start with a simple project.   
As you
become more comfortable you can expand and take on more complex  
projects.
There are plenty of example templates to get one started at the  
bottom of the
documenation, and you'll likely end up taking the useful parts  
to create

your own template (mine is
http://www.casagrau.org/~donfede/lily/lilypond_template.ly ).

happy notating,
donfede




On Wed, Nov 19, 2008 at 12:54:39AM -0800, John Sellers wrote:

I am in Silicon Valley.  I've never met and talked to another  
lilypond

user face to face.  It is lonely out here.

I've used lilypond off and on for a few years AND HAVE NEVER BEEN  
ABLE

TO REALLY LEARN IT WELL!

There are five reasons

1) lack of context
2) lack of context
3) lack of context
4) lack of context
5) lack of context
6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!

I'm very tired of having a few hours to do something different,  
going to

lilypond documentation and getting something like

use such and such to do so and so.

fine so far. but how in God's Green Earth am I going to use  
something like:


\paper {}

If I don't know what context it works and what context it does not
work?  If like an idiot I go into my LY file and insert paper and  
put my
between-system-space or anything ELSE on the same page with a lot  
of
other variables which control things.  Why don't they ALL work  
WHENEVER

I try to use them...the answer is of course LACK OF CONTEXT.  For
correct context, I have to put the \paper {}  in the right part  
of the

program.  I have to tie the variables to whatever they are going to
effect.  Or do I?  I haven't a clue.  Why.here we go  
againLACK

OF CONTEXT.

Here is one way you can solve this problem.

NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that  
LEADS TO

THE CORRECT CONTEXT.

YOU HAVE TO BE SYSTEMATIC!  Consider the following:

Every feature must be documentedright? So are we talking  
about a
desert of documented sand pebbles in a jar or are there  
relationships

between them?  WOW!  there are DEPENDENCIES --- A dependences are B
depends on C --- oops, C depends on A NOT GOOD.

So what is one to do?  Well, you could use a topological sort of  
all
capability dependencies using generality as the sort  
discriminant.  Find
all the cycles and BREAK THEM.  Organize things in this way so  
now you

have a structure which has an entry point for the user for every
feature.  Look, dependency is just another way of say CONTEXT.  If
context goes in a circle then you end up defining  A grumpet B   
and then
defining B as anti-grumpet A, which is has no more meaning than  
being a

tautology.

In the best of all worlds, a user coming to the documentation  
WITH NO
KNOWLEDGE OF LILYOND in wanting to do something like control  
vertical
spacing, and if you linked back to more and more 

Re: problems with learning lilypond

2009-08-07 Thread Trevor Daniels


Simon Mackenzie wrote Friday, August 07, 2009 3:55 PM


Eg. What does it mean on page 34 of the Learning Tutorial when it
says...

Variables must be defined before the main music expression.

Does this mean the \score { } or does it mean the expression in 
which

the declared variable is referenced?


The former, as shown quite clearly in the
template you mention below.

Because I dutifully declare my variables before the \score { } in 
my
script file using the example template from A.1.4 Notes, lyrics 
and

chords on page 143, again of the learning manual.
End result...
This error when I compile my script

Unexpected string  errors for every variable I've declared and 
no
idea as to why the template example fails to perform as claimed in 
the

documentation.

harmonies = \chordmode {...
melody = \lyricmode {... etc. generate Unexpected string errors


The template in the manual certainly does compile
without errors, as the image just below it is the
direct result of a compilation.  I suggest you
look at the template on the website at
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-learning/Single-staff#Single-staff

From this page you can either copypaste the code

directly, or click on the image of the music to
open the file directly (in the latter case you
will need to delete the first three lines).  These
files will then compile correctly (I've just tried
it).


From the error message it looks as if you are

inserting braces round the whole.  Variable
definitions come before any braces.

I'll add a bit to the manual to make that clear.

Trevor



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


Re: problems with learning lilypond

2008-11-29 Thread John Sellers
Recently my cygwin based lilypond 2.10.33 install starting erroring out 
on all lilypond LY files.


The given error is failed (13568) following a listing of the gs 
command line description.


lilypond is installed correctly, ghostscript seems to be OK, and there 
are no applications which have PDF files open, and rebooting and 
re-installing doesn't fix this.


Any suggestions where to look to fix this?


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


Re: problems with learning lilypond

2008-11-29 Thread Francisco Vila
2008/11/29  [EMAIL PROTECTED]:
 Citeren John Sellers [EMAIL PROTECTED]:

 confronted with multiple choice, none of which are distinguished from each
 other in regard as to the best one to pick.

 If I understood what was said, the 2.11 and later documentation is better
 than 2.10 and earlier.  Why would I look at 2.11

 I suggest to add only one small word to the link on the webpage to the 2.11
 docs: ( Recommended ! )

 That should be enough to make an end to the confusion ?

 Martin

I vote for this. Forwarding to -devel

-- 
Francisco Vila. Badajoz (Spain)
http://www.paconet.org


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


Re: problems with learning lilypond

2008-11-28 Thread John Sellers


Graham Percival wrote:


... umm, WHAT?!

Are you seriously claiming that you couldn't find the Learning
Manual link?  Top-left on the Documentation page?

1) go to lilypond.org
2) click on documentation
3) click on documentation for 2.11
4) click on Learning manual
5) click on 1.2 About the documentation or 2. Tutorial


If you can find the documentation, you can find the tutorial.  And
if you can't find the documentation... well, some programs can be
used without reading the docs; lilypond is not one of them.

  
You misunderstand me.  I am not concerned about myself.  It is the 
umpteen other newbies who come to the front page of lilypond and are 
confronted with multiple choice, none of which are distinguished from 
each other in regard as to the best one to pick.


If I understood what was said, the 2.11 and later documentation is 
better than 2.10 and earlier.  Why would I look at 2.11 when the most 
recent stable version is 2.10 unless something up front says.  The 2.11 
tutorial is important and you should look at it if you want to 
understand lilypond.


Is it important?  You bet.  If you have a blatantly obvious link that in 
effect says here is where to go to get a handle on Lilypond then 99 
out of a 100 who want to get a handle on Lillypond will follow that path 
and most of them will get a handle on Lilypond.  If there is no such 
link, but instead you say something like 2.11 documentation.  Then 
many newbies may well say.  H...2.10 is the newest stable release.  
I'm not going to waste my time on 2.11 because it is not stable yet, and 
thus will never know they missed a tutorial that will save them a lot of 
time.


It is true that if one has enough time, one will look around and 
eventually find that there is a tutorial that one should look at.  But 
this isn't like to happen if one doesn't have a lot of time, which 
happens to be most of those who are technologically involved.


Your comment about are you seriously claiming... comment.  Of course I 
can find it, if I know it is there, if I know there something important 
I should see, if I know that it is better than looking somewhere else.  
You described a drill down to get there.  I suggest you count the number 
of end points for all the drill down paths for the depth of the 
preferred documentation and then calculate the time it would take to 
explore them compared to a doing a single click on an front link that 
says: Learning manual that every person wanting understand Lilypond 
should look at.


You have to remember that the world over, people have different 
experiences and different ways of understanding, and that these are not 
unique or even similar in spite of using the exact same words to 
describe whatever it is.


Let me explain it in another way.  Consider learning manual and 
dog.  You understand both of these perfectly, right?  But wait, then 
what is dogged, dog gone it, dog days, hot dog stand, hot 
dog!, hot dogging?   These are all very different and if you only 
knew the word dog and didn't know these idioms you would have a hard 
time making heads or tails of what they mean.  Here is a news flash.  
Whatever a learning manual is, turns out to be as widely varied as all 
the dog expressions.  A good way to solve this problem is to be specific 
enough that only the right meaning is likely.  This is illustrated by 
doing a google search on, You ain't nothing but a hound dog.  You will 
find that there are few if any false positives in the 12,000+ hits.  If 
you want your documentation to really be useful, then put in enough 
qualification that all other possibilities are eliminated.  This is the 
exact nature of putting something like Choose this link to find the 
best documentation for getting a handle on Lilypond which doesn't leave 
any room for doubt regardless of which part of the world you might be 
from or what your previous experience might have been.


It is the universal tendency of all technical documentation to fail to 
be this unambiguous simply because of the nature of the context that 
documentation is developed.  Assumptions are made based on what is known 
or seen, and unfortunately none of us has the opportunity grow up and 
experience any of the 99.% of the rest of the world, so it is very 
hard for us to take this into account so we do what we already know to 
do instead.


--end of tirade--





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


Re: problems with learning lilypond

2008-11-28 Thread Francisco Vila
2008/11/29 John Sellers [EMAIL PROTECTED]:
If you want your documentation to
 really be useful, then put in enough qualification that all other
 possibilities are eliminated.  This is the exact nature of putting something
 like Choose this link to find the best documentation for getting a handle
 on Lilypond...

Something I can extract from this all is, yes, if we have a very
important thing to say to everybody, eg so-called unstable docs are
way better than old stable docs, then maybe we should put it in the
web page in a prominent place. I mean, not waiting for people to
subscribe to -user and convince them from there that stable does not
mean perfect and that unstable version is not as bad as its name
suggests. Rather the opposite, at least right now, do you agree?

-- 
Francisco Vila. Badajoz (Spain)
http://www.paconet.org


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


Re: problems with learning lilypond

2008-11-28 Thread Neil Thornock
I just have to say that, having been a newbie at one point, with absolutely
no background in script programs, I found LilyPond quite a simple affair to
learn well enough to accomplish something.  After that, it was all about
exploring docs.  Now I have a handful of students who have learned it very
quickly and know how to get solutions.  My real-world experience (I have met
other Lilyponders face to face!!!) is that the program is well-documented
and rather simple to learn.  It's not perfect, but at least it has docs!

I must say that, unless you are willing to dig into the program, do
something useful with/to it, and contribute to the community, then just let
the community be.  Ranting to change people's opinions will accomplish
nothing.  Spend some of your time learning the workings of the program and
less time ranting, and maybe you could contribute something.

My two cents.  I love LilyPond!  Go LilyPond!  I don't contribute much on
the coding/dialoguing side, but I make beautiful scores with it, and, in a
way, that is a contribution!

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


Re: problems with learning lilypond

2008-11-28 Thread m . tarenskeen

Citeren John Sellers [EMAIL PROTECTED]:

confronted with multiple choice, none of which are distinguished from 
each other in regard as to the best one to pick.


If I understood what was said, the 2.11 and later documentation is 
better than 2.10 and earlier.  Why would I look at 2.11


I suggest to add only one small word to the link on the webpage to the 
2.11 docs: ( Recommended ! )


That should be enough to make an end to the confusion ?

Martin


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


Re: problems with learning lilypond

2008-11-27 Thread John Sellers




(sorry to copy the whole thing back, but it seems appropriate some how).

I hear your pain. I'll do what I can, but it may not be much. I'm
currently taking violin lessons from Jeremy Cohen (Grammy nominated
this year), and Julian Smedley (Berkeley Hot Club and others), and
Guitar from Jimmy Luttrell (Entered the Western Swing Hall of Fame this
year.) 

So, needless to say, I am working very hard and am very busy.

But I do have some ideas, and maybe we could have an on going dialog at
such a pace that would not be too much of a burden to either you or me.

My first thought out of the box? Would be to start working on a
low-overhead system for capturing and redirecting stuck and frustrated
users at the point they get stuck or frustrated. Feedback systems are
often too high overhead to your side or the user side to be really
effective. Most attempts to create such a system are also not so easy
to do right because it is really hard to get both sides of the picture
without too much effort, and if the effort isn't spent, then you end up
with something less than successful.

But for starters a carefully constructed "first contact" in-context
link might be a first step on this path. You want to get the feed back
without pigeon holing the user and at the same time, not overburdening
one's organization with umpteen Jillion "feedbacks". One way might be
that the feed back box is fronted with a carefully constructed
explanation about your resource limitations, asking the user to go the
extra mile to boil down and re-boil down their feedback to make it
clear and precise about their problem. One way to do this would be to
use something like the Google Idea Contest template, but boiling it
down to the specific purpose of getting unsticking/frustration fixing
feeback, carefully structuring and limiting the form to a certain size
while explaining to the user exactly why they need to be clear and
precise. Googles form is wonderful guide to structuring ideas in a
constructive form...this same concept could be adapted to your
purposes. What Google's feedback form lacked was immediate feedback on
"size limitation" as the person typed...in other words it wasn't until
the person filled out the whole form and discovered their text was too
wordy. (just like I am now...lazy me...see you don't want this...you
should limit my comments to a clear title, a short explanation of my
idea, a larger description...etcsee the Google form if you can
find it. Google's form would have been perfect if they had had an
automatic character counter on each field to tell the user when the
limit was reachedand perhaps explained even more (in context) why
clarity was needed.

If you were to do this in a way that can be clearly understood, I think
you will be surprised how much work people are willing to put into
making their explanation of their problem clear for you.

Taking this feedback form, if it is structured right, would enable the
lilypond employee/expert/helper quickly recognize exactly what kind of
remediation is needed. I would expect this remediation be simply a
link other already written documentation. 

Step two, after some experience with this kind of feed back, would
likely lead to the "I'm frustrated/stuck" link being replaced with a
SPECIFIC SHORT LIST of ramediation which completely covers the
knowledge presented.

Step three, after a lot of experience with this kind of feed
backtaking from the very outset to plan a systematic way of
presenting the kind of topological sort of dependencies and compiler
and all that other fancy stuffdown the roadwe put together a
world class back end to your documentation which was able to ramediate
anything and everything that is compiledoh yea...minor detail...if
and when you every reach that stage, it means putting in place an
infrastructure for the programmers to enable them to do the programming
and the documentation of the logic of that programming at the same time
so there is a one to one correspondence to what liliypond compiler does
and the documentation which describes that particular part of the
language does. Just as the compiler has to know what the language
means in order to turn it into music, the user has to know that same
thing in order to know what to type in order to turn it into music.
See the parallel??? But that is way down the road, first you have to
understand from experience how the user's needs work, and you aren't
going to get that except from the feedback...thus starting with the
"frustration/stuck" links. Eventually understanding how users get
stuck and frustrated looking at a particular piece of code will tell
you how to use the compiler parser for that particular piece of code to
automate feeding them back to the documentation to get them unstuck,
and in fact, what kind of documentation is needed to get them
unstuck...a long row to hoebut just think...a chance to be the best
in the world.

End of another tiradesoare you stuck or 

Re: problems with learning lilypond

2008-11-27 Thread John Sellers




Understood, and no argumenthere then is another suggestion...if
this tutorial is as good as you say. Make sure it crosses the paths of
newbies enough that they will end up reading before they get in as deep
as I have.

Will I read it? Yes, may the next time I run into a problem. But
would you tell me where to find it, and just which tutorial you are
referring to? I've read tutorial stuff a few times in the long distant
past...and when I do read, I don't always make the associations you
expect me to

Tell you what, I will take a look. I'll even try to go over the a few
of the problems I had in the past to see if it answers to them. There
reason I have never looked at the tutorial in question is that I do not
use anything beyond the current working stable version---actually the
cygwin verison.  Is this learning tutorial going to be part of a
stable version soon or might it be a good idea to patch up a generic
version of the same that lies in the path of very newbie so obviously
that they will get the message and go through it?

---John


Graham Percival wrote:

  On Fri, Nov 21, 2008 at 11:20:23PM -0700, Carl D. Sorensen wrote:
  
  
On 11/21/08 4:56 PM, "John Sellers" [EMAIL PROTECTED] wrote:



  The origin of the problem is that developers don't have to walk the path of
the newbies from beginning to end and it is very difficult to provide a whole
documentation structure that is truly responsive to those kind of needs...so
most technical documentation the world over never does successfully do so.
  

  
  
Given that nobody on the doc team was an original developer, we
most certainly *did* walk the path of newbies.

  
  

  Good wishes, John Sellers
  

  
  
  
  
If I didn't make it clear in my earlier post, I'll try to make it clear now.

I DON'T KNOW HOW TO DO WHAT YOU ARE ASKING ME TO DO!

  
  
Also, John, read the Learning Manual of the 2.11 docs.  I can tell
that you haven't.  Front to back.

  
  
Won't you please help us figure it out?  You seem to have some good ideas.
Why don't you share them in some specific way so that we can get a clue?

  
  
General note for newbies: stop complaining that "we don't listen
to newbies" and then refusing to help with the docs.  If you get
involved, we'll listen.

Cheers,
- Graham

  





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


Re: problems with learning lilypond

2008-11-27 Thread Graham Percival
On Thu, Nov 27, 2008 at 01:24:35AM -0800, John Sellers wrote:
Understood, and no argumenthere then is another suggestion...if this
tutorial is as good as you say.  Make sure it crosses the paths of newbies
enough that they will end up reading before they get in as deep as I have.

... umm, WHAT?!

Are you seriously claiming that you couldn't find the Learning
Manual link?  Top-left on the Documentation page?

1) go to lilypond.org
2) click on documentation
3) click on documentation for 2.11
4) click on Learning manual
5) click on 1.2 About the documentation or 2. Tutorial


If you can find the documentation, you can find the tutorial.  And
if you can't find the documentation... well, some programs can be
used without reading the docs; lilypond is not one of them.

I have never looked at the tutorial in question is that I do not use
anything beyond the current working stable version---actually the cygwin
verison.   Is this learning tutorial going to be part of a stable version
soon or might it be a good idea to patch up a generic version of the same
that lies in the path of very newbie so obviously that they will get the
message and go through it?

2.12 will be released soon, and it contains all the latest docs.

- Graham


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


Re: problems with learning lilypond

2008-11-27 Thread Graham Percival
On Thu, Nov 27, 2008 at 01:13:21AM -0800, John Sellers wrote:
(sorry to copy the whole thing back, but it seems appropriate some how).

-snip long rambling rant-

John, please spend a few minutes looking at our web pages.  We
already do virtually everything you mentioned.  You mentioned:

 asking the user to go the extra mile to boil down and re-boil
 down their feedback to make it precise about their problem

?  Well, step 1 of asking the user to boil down their feedback is
to ask them to LOOK AT WHAT WE'RE ALREADY DOING.

- Graham



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


Re: problems with learning lilypond

2008-11-27 Thread Francisco Vila
2008/11/27 John Sellers [EMAIL PROTECTED]:
 Is this learning tutorial going to be part of a stable version soon

The tutorial in the learning manual is a part of the docs of the
current development version.
This version is the next stable. It is recommended to move soon to it,
for many reasons.
-- 
Francisco Vila. Badajoz (Spain)
http://www.paconet.org


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


Re: problems with learning lilypond

2008-11-27 Thread Jonathan Kulp

John Sellers wrote:


Will I read it?  Yes, may the next time I run into a problem.  But would you 


I can't believe I wasted my time reading this email when you STILL 
haven't looked at the current Learning Manual! Geez...


tell me where to find it, and just which tutorial you are referring to?  I've 
read tutorial stuff a few times in the long distant past...and when I do read, I 
don't always make the associations you expect me to


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


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


Re: problems with learning lilypond

2008-11-27 Thread Carl D. Sorensen



On 11/27/08 2:24 AM, John Sellers [EMAIL PROTECTED] wrote:

 Understood, and no argumenthere then is another suggestion...if this
 tutorial is as good as you say.  Make sure it crosses the paths of newbies
 enough that they will end up reading before they get in as deep as I have.

I think we have solved this problem.  When newbies ask questions, we first
say Read the Learning Manual.  And I've already asked you twice to read
the Learning Manual as a starting place for making improvements to the
documentation.

The new Learning Manual is *WAY* better than the old docs.  And everybody,
even veteran users like yourself, should read the LM.  I guarantee that if
you read the LM, you will understand lots of things you currently have
problems with.

 
 Will I read it?  Yes, may the next time I run into a problem.

Don't wait until you run into a problem.  The Learning Manual is not a good
resource for *solving* problems.  That's what the Notation Reference is for.
The Learning Manual is an *excellent* resource for *avoiding* problems.  So
read it, from cover to cover, before the next time you work on LilyPond.  As
an experienced user, you can just read it; you don't need to try the
tutorial stuff if you don't want to.  But it will give you a *great*
overview of most of the stuff that is confusing in LilyPond, if you're
anything like me.

 But would you 
 tell me where to find it, and just which tutorial you are referring to?  I've
 read tutorial stuff a few times in the long distant past...and when I do read,
 I don't always make the associations you expect me to
 
 Tell you what, I will take a look. I'll even try to go over the a few of the
 problems I had in the past to see if it answers to them.  There reason I have
 never looked at the tutorial in question is that I do not use anything beyond
 the current working stable version---actually the cygwin verison.   Is this
 learning tutorial going to be part of a stable version soon or might it be a
 good idea to patch up a generic version of the same that lies in the path of
 very newbie so obviously that they will get the message and go through it?


The development version is currently more stable (read: bug free) than the
stable version.  You should download the 2.11.65 development version, and
use it.  This advice has been given consistently over the last three months
on -user.

 
Thanks,

Carl



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


Re: problems with learning lilypond

2008-11-27 Thread Carl D. Sorensen



On 11/27/08 2:13 AM, John Sellers [EMAIL PROTECTED] wrote:
 
 I hear your pain.  I'll do what I can, but it may not be much.  I'm currently
 taking violin lessons from Jeremy Cohen (Grammy nominated this year), and
 Julian Smedley (Berkeley Hot Club and others), and Guitar from Jimmy Luttrell
 (Entered the Western Swing Hall of Fame this year.)

John, I'm going to try say this gently, so as not to cause hard feelings.
If I do things wrong, please consider that I'm not trying to be offensive.

I'm always happy to hear a bit about the musical lives of people using
LilyPond, but your first paragraph sounds a bit like name dropping with the
intent of establishing you as an expert, perhaps superior to the rest of us
peons.  I'll give you the benefit of the doubt, and believe that you didn't
intend that, so just consider this a bit of feedback about a perhaps
unintended effect of your writing style.

 
 So, needless to say, I am working very hard and am very busy.

There's a potential implication that none of the rest of us are working very
hard or are very busy.  Again, I'll give you the benefit of the doubt.  If
we can keep from getting sidetracked by this type of issue, it'll be much
more helpful for moving LilyPond forward.

 
 But I do have some ideas, and maybe we could have an on going dialog at such a
 pace that would not be too much of a burden to either you or me.

I'm fine to have an ongoing dialog.  And we'd love to have suggestions about
improving LilyPond.  The more specific, the better.

 
 My first thought out of the box?  Would be to start working on a low-overhead
 system for capturing and redirecting stuck and frustrated users at the point
 they get stuck or frustrated.  Feedback systems are often too high overhead to
 your side or the user side to be really effective.  Most attempts to create
 such a system are also not so easy to do right because it is really hard to
 get both sides of the picture without too much effort, and if the effort isn't
 spent, then you end up with something less than successful.
 
 But for starters a carefully constructed first contact in-context link might
 be a first step on this path.  You want to get the feed back without pigeon
 holing the user and at the same time, not overburdening one's organization
 with umpteen Jillion feedbacks.  One way might be that the feed back box is
 fronted with a carefully constructed explanation about your resource
 limitations, asking the user to go the extra mile to boil down and re-boil
 down their feedback to make it clear and precise about their problem.  One way
 to do this would be to use something like the Google Idea Contest template,
 but boiling it down to the specific purpose of getting unsticking/frustration
 fixing feeback, carefully structuring and limiting the form to a certain size
 while explaining to the user exactly why they need to be clear and precise.
 Googles form is wonderful  guide to structuring ideas in a constructive
 form...this same concept could be adapted to your purposes.  What Google's
 feedback form lacked was immediate feedback on size limitation as the person
 typed...in other words it wasn't until the person filled out the whole form
 and discovered their text was too wordy. (just like I am now...lazy me...see
 you don't want this...you should limit my comments to a clear title, a short
 explanation of my idea,  a larger  description...etcsee the Google form if
 you can find it.  Google's form would have been perfect if they had had an
 automatic character counter on each field to tell the user when the limit was
 reachedand perhaps explained even more (in context) why clarity was
 needed.

I like the fact that you got to a specific idea of using the Google Idea
Contest template.  Unfortunately, the Google Idea Contest template appears
to have been taken down with the end of the submission period, so I can't
use it to help us.

Until we have somebody whose itch is to have a web-based, form-driven
feedback system, we're going to just have to live with email based systems.
I have proposed a Getting Help webpage as part of the LilyPond website (it's
on the -devel list, but hasn't yet posted to the archives.  When it does
post, you can find it at
http://lists.gnu.org/archive/html/lilypond-devel/2008-11/threads.html).
The page would have a link to a good resource on forming a clear question to
ask from mailing lists.
 
 If you were to do this in a way that can be clearly understood, I think you
 will be surprised how much work people are willing to put into making their
 explanation of their problem clear for you.

No, I'm not surprised.  Most of the requests on -user are clear and concise.
The primary exception to this rule is the requests from brand-new users, who
need some help getting started.  That's why Trevor wrote the new Learning
Manual.

 
 Taking this feedback form, if it is structured right, would enable the
 lilypond employee/expert/helper quickly recognize exactly what 

Re: problems with learning lilypond

2008-11-23 Thread Werner LEMBERG

 o) Each page is layed out separately, so that the staff for one
instrument continues at a completely different position on
the next page.  This makes reading full scores (and trying to
follow one instrument) while conducting almost impossible

I disagree.  This is the *normal* situation for traditional full
scores.  Just take, for example, an opera from Richard Strauss.
Facing pages virtually *never* have the same vertical positions of
staff lines, even if the used instruments are the same.

However, such an option would be useful in some situations.


Werner


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


Re: problems with learning lilypond

2008-11-23 Thread Han-Wen Nienhuys
On Sat, Nov 22, 2008 at 10:36 AM, Reinhold Kainhofer
[EMAIL PROTECTED] wrote:

 - -) partcombine in general: It's very aggressive and as such noch suitable 
 for
 full scores: it combines even single notes so that at worst each note in a
 measure will get a2, Solo, a2, Solo, for example if you do
{ \partcombine \relative c'{ d4 r d r } \relative c'{d4 g d g } }
 partcombine will also never create a note with two stems, but rather always
 combine it to one note. Also, in printed scores, part-combination is mostly
 done on a measure-base rather than per note.

the partcombiner is severely limited and should probably be written
from scratch again.



-- 
Han-Wen Nienhuys - [EMAIL PROTECTED] - http://www.xs4all.nl/~hanwen


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


Re: problems with learning lilypond

2008-11-22 Thread Johan Vromans
I must admit...

That I do share some feelings with John. I've been using LilyPond
infrequently for many years, and frequently for a year now. I often
get surprised by its behaviour, and I often have to puzzle how to
achieve certain results.

But...

The documentation has improved enormously. The current 2.11 version
can hardly be compared to the older versions. It is *great* and
getting even better.

And...

Support from lilypond-users is also *great*.

Moreover...

Every piece of music is different. Very often I am surprised that
LilyPond *can* actually achieve something wierd that I had in mind.
I'm pretty sure many of the 'user friendly' point-n-click tools are
quire limited, I have yet to find one of LP's limits[1].

Yes...

It takes some time and effort to learn LilyPond. It is worth it.

-- Johan

[1] Maybe how to add lyrics to a partcombined section?


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


Re: problems with learning lilypond

2008-11-22 Thread Reinhold Kainhofer
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Am Samstag, 22. November 2008 schrieb Johan Vromans:
 Every piece of music is different. Very often I am surprised that
 LilyPond *can* actually achieve something wierd that I had in mind.
 I'm pretty sure many of the 'user friendly' point-n-click tools are
 quire limited, I have yet to find one of LP's limits[1].
[...]
 [1] Maybe how to add lyrics to a partcombined section?

I agree.
However, I've run into some of LilyPond's limits while trying to typeset 
full-orchestra scores with choir/soloists. Here's my list of showstoppers for 
full orchestral scores, sorted in decending order of importance to me:

- -) You can't attach lyrics to cue notes!!!

- -) The vertical page layout:
o) The page is not filled (even with stretching) if there is only 1 system
o) Each page is layed out separately, so that the staff for one instrument
continues at a completely different position on the next page. This 
makes reading full scores (and trying to follow one instrument) while
conducting almost impossible

- -) partcombine in general: It's very aggressive and as such noch suitable for 
full scores: it combines even single notes so that at worst each note in a 
measure will get a2, Solo, a2, Solo, for example if you do 
{ \partcombine \relative c'{ d4 r d r } \relative c'{d4 g d g } }
partcombine will also never create a note with two stems, but rather always 
combine it to one note. Also, in printed scores, part-combination is mostly 
done on a measure-base rather than per note.

- -) You can't have different stretching for the different groups (in 
particular, the staves inside the group will be spaced equally to the spacing 
between the groups).

- -) Moving dynamics inside the staff can only be done via some nasty hacks

- -) Two-column layout for text (preface, notes, etc.) and automatic hyphenation

- -) partcombine does not work with lyrics

- -) Cross-staff chorded notes (important for the piano reduction and organ 
scores like Vierne's Messe Solenelle!)

If these are solved/implemented, then I think LilyPond is also perfect for 
typesetting full orchestral scores in print quality. Of course I might miss 
something, but so far I haven't been able to fix any of those (without some 
large coding in LilyPond's source code.

Cheers,
Reinhold
- -- 
- --
Reinhold Kainhofer, Vienna University of Technology, Austria
email: [EMAIL PROTECTED], http://reinhold.kainhofer.com/
 * Financial and Actuarial Mathematics, TU Wien, http://www.fam.tuwien.ac.at/
 * K Desktop Environment, http://www.kde.org, KOrganizer maintainer
 * Chorvereinigung Jung-Wien, http://www.jung-wien.at/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFJJ/zLTqjEwhXvPN0RAkaCAJ9rW6GDGi4O6oPQhqIog/WWWzbn2QCgjQXo
291YaX0EKud0PN0KCWWVX7w=
=ivje
-END PGP SIGNATURE-


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


Re: problems with learning lilypond

2008-11-21 Thread John Sellers




I have no argument with what you say about the documentation compared
with many kinds of technical documentation, as long as you stick close
to home.

The Lilypond folks work hard and do a lot of nice stuff, including
documentation.

However, that doesn't change the facts of what I say. 

The origin of the problem is that developers don't have to walk the
path of the newbies from beginning to end and it is very difficult to
provide a whole documentation structure that is truly responsive to
those kind of needs...so most technical documentation the world over
never does successfully do so.

HOWEVER, MAY I POINT OUT DOING SO IS PROBABLY THE MOST PRODUCTIVE THING
YOU COULD DO TO LILYPOND TO ASSURE ITS FUTURE GROWTH AND SUCCESS!.

Good wishes, John Sellers

Federico Grau wrote:

  I've found the lilypond documentation to be quite good (after having been
using it now for about a year).  It starts with an introduction, has a
friendly gentle tutorial, followed up by a detailed reference.

If you're not able to use it, maybe start with a simple project.  As you
become more comfortable you can expand and take on more complex projects.
There are plenty of example templates to get one started at the bottom of the
documenation, and you'll likely end up taking the "useful" parts to create
your own template (mine is
http://www.casagrau.org/~donfede/lily/lilypond_template.ly ).

happy notating,
donfede




On Wed, Nov 19, 2008 at 12:54:39AM -0800, John Sellers wrote:
  
  
I am in Silicon Valley.  I've never met and talked to another lilypond 
user face to face.  It is lonely out here.

I've used lilypond off and on for a few years AND HAVE NEVER BEEN ABLE 
TO REALLY LEARN IT WELL!

There are five reasons

1) lack of context
2) lack of context
3) lack of context
4) lack of context
5) lack of context
6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!

I'm very tired of having a few hours to do something different, going to 
lilypond documentation and getting something like

"use such and such to do so and so".

fine so far. but how in God's Green Earth am I going to use something like:

\paper {}

If I don't know what context it works and what context it does not 
work?  If like an idiot I go into my LY file and insert paper and put my 
between-system-space or anything ELSE on the same page with a lot of 
other variables which control things.  Why don't they ALL work WHENEVER 
I try to use them...the answer is of course LACK OF CONTEXT.  For 
correct context, I have to put the \paper {}  in the right part of the 
program.  I have to tie the variables to whatever they are going to 
effect.  Or do I?  I haven't a clue.  Why.here we go againLACK 
OF CONTEXT.

Here is one way you can solve this problem.

NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that LEADS TO 
THE CORRECT CONTEXT.

YOU HAVE TO BE SYSTEMATIC!  Consider the following:

Every feature must be documentedright? So are we talking about a 
desert of documented sand pebbles in a jar or are there relationships 
between them?  WOW!  there are DEPENDENCIES --- A dependences are B 
depends on C --- oops, C depends on A NOT GOOD.

So what is one to do?  Well, you could use a topological sort of all 
capability dependencies using generality as the sort discriminant.  Find 
all the cycles and BREAK THEM.  Organize things in this way so now you 
have a structure which has an entry point for the user for every 
feature.  Look, dependency is just another way of say CONTEXT.  If 
context goes in a circle then you end up defining  A grumpet B  and then 
defining B as anti-grumpet A, which is has no more meaning than being a 
tautology. 

In the best of all worlds, a user coming to the documentation WITH NO 
KNOWLEDGE OF LILYOND in wanting to do something like control vertical 
spacing, and if you linked back to more and more general contexts with 
clear examples and explanations in a systematic way, then at some point 
you would reach the context that includes the user's context, and there 
the user can make the connection of how to find the way to apply 
vertical spacing to his/her specific situation.

Here is a hint.  You run lilypond executable and makes those 
connections, so the relationships already exist and are documented in an 
executable form.  Here is another hint.  The nature of MEANING is the 
one to one correspondence between two different systems.  So we have a 
system to compile which we know to be complete, and we want a system to 
provide meaning to the user...could it be that we could parse the code 
to provide CONTEXT to the user?  yes, yes, yes, yes, yes, YES---Each 
individual thing has meaning if we have CONTEXT of each thing.  Each and 
every thing we wish to document is carried out and executed by the compiler.

As for additional documentation, such as you already have in abundance.  
If you had a truly complete general to specific dependency tree of all 
features, there you could ALWAYS link every reference to 

Re: problems with learning lilypond

2008-11-21 Thread Carl D. Sorensen



On 11/21/08 4:56 PM, John Sellers [EMAIL PROTECTED] wrote:

 I have no argument with what you say about the documentation compared with
 many kinds of technical documentation, as long as you stick close to home.
 
 The Lilypond folks work hard and do a lot of nice stuff, including
 documentation.
 
 However, that doesn't change the facts of what I say.
 
 The origin of the problem is that developers don't have to walk the path of
 the newbies from beginning to end and it is very difficult to provide a whole
 documentation structure that is truly responsive to those kind of needs...so
 most technical documentation the world over never does successfully do so.
 
 HOWEVER, MAY I POINT OUT DOING SO IS PROBABLY THE MOST PRODUCTIVE THING YOU
 COULD DO TO LILYPOND TO ASSURE ITS FUTURE GROWTH AND SUCCESS!.
 
 Good wishes, John Sellers

John,

If I didn't make it clear in my earlier post, I'll try to make it clear now.

I DON'T KNOW HOW TO DO WHAT YOU ARE ASKING ME TO DO!

(to the rest of you, I'm sorry about the shouting, but I felt the need to
respond in a way that John seems to understand).

Won't you please help us figure it out?  You seem to have some good ideas.
Why don't you share them in some specific way so that we can get a clue?

Thanks,

Carl



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


Re: problems with learning lilypond

2008-11-21 Thread Graham Percival
On Fri, Nov 21, 2008 at 11:20:23PM -0700, Carl D. Sorensen wrote:
 
 On 11/21/08 4:56 PM, John Sellers [EMAIL PROTECTED] wrote:
 
  The origin of the problem is that developers don't have to walk the path of
  the newbies from beginning to end and it is very difficult to provide a 
  whole
  documentation structure that is truly responsive to those kind of needs...so
  most technical documentation the world over never does successfully do so.

Given that nobody on the doc team was an original developer, we
most certainly *did* walk the path of newbies.

  Good wishes, John Sellers

 If I didn't make it clear in my earlier post, I'll try to make it clear now.
 
 I DON'T KNOW HOW TO DO WHAT YOU ARE ASKING ME TO DO!

Also, John, read the Learning Manual of the 2.11 docs.  I can tell
that you haven't.  Front to back.

 Won't you please help us figure it out?  You seem to have some good ideas.
 Why don't you share them in some specific way so that we can get a clue?

General note for newbies: stop complaining that we don't listen
to newbies and then refusing to help with the docs.  If you get
involved, we'll listen.

Cheers,
- Graham


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


Re: problems with learning lilypond

2008-11-20 Thread lilypondtool

I had the same problem. Then I started to develop LilyPondTool for jEdit.
Using that I managed to understand LilyPond much better.

Do you use LilyPondTool? See the Demos at http://lilypondtool.organum.hu

Bert



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


Re: problems with learning lilypond

2008-11-20 Thread Eyolf Østrem
On 20.11.2008 (09:49), [EMAIL PROTECTED] wrote:
 I had the same problem. Then I started to develop LilyPondTool for jEdit.
 Using that I managed to understand LilyPond much better.

Talking of which: when will there be a new version? :)


Eyolf

-- 
You're all clear now, kid.  Now blow this thing so we can all go home.
-- Han Solo


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


Re: problems with learning lilypond

2008-11-20 Thread lilypondtool
Well, uh, I was quite busy in these weeks. And I wanted to finish a new 
feature but it seems that I won't have time for that.
So, as there is a new JEdit version out, I must check that everything 
works with that.
If that's ok, I'll make a release, I hope that bundling the 
documentation will work.

Let's say 1 December on SourceForge for manual install.

Bert

Quoting Eyolf Østrem [EMAIL PROTECTED]:


On 20.11.2008 (09:49), [EMAIL PROTECTED] wrote:

I had the same problem. Then I started to develop LilyPondTool for jEdit.
Using that I managed to understand LilyPond much better.


Talking of which: when will there be a new version? :)


Eyolf

--
You're all clear now, kid.  Now blow this thing so we can all go home.
-- Han Solo


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








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


problems with learning lilypond

2008-11-19 Thread John Sellers
I am in Silicon Valley.  I've never met and talked to another lilypond 
user face to face.  It is lonely out here.


I've used lilypond off and on for a few years AND HAVE NEVER BEEN ABLE 
TO REALLY LEARN IT WELL!


There are five reasons

1) lack of context
2) lack of context
3) lack of context
4) lack of context
5) lack of context
6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!

I'm very tired of having a few hours to do something different, going to 
lilypond documentation and getting something like


use such and such to do so and so.

fine so far. but how in God's Green Earth am I going to use something like:

\paper {}

If I don't know what context it works and what context it does not 
work?  If like an idiot I go into my LY file and insert paper and put my 
between-system-space or anything ELSE on the same page with a lot of 
other variables which control things.  Why don't they ALL work WHENEVER 
I try to use them...the answer is of course LACK OF CONTEXT.  For 
correct context, I have to put the \paper {}  in the right part of the 
program.  I have to tie the variables to whatever they are going to 
effect.  Or do I?  I haven't a clue.  Why.here we go againLACK 
OF CONTEXT.


Here is one way you can solve this problem.

NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that LEADS TO 
THE CORRECT CONTEXT.


YOU HAVE TO BE SYSTEMATIC!  Consider the following:

Every feature must be documentedright? So are we talking about a 
desert of documented sand pebbles in a jar or are there relationships 
between them?  WOW!  there are DEPENDENCIES --- A dependences are B 
depends on C --- oops, C depends on A NOT GOOD.


So what is one to do?  Well, you could use a topological sort of all 
capability dependencies using generality as the sort discriminant.  Find 
all the cycles and BREAK THEM.  Organize things in this way so now you 
have a structure which has an entry point for the user for every 
feature.  Look, dependency is just another way of say CONTEXT.  If 
context goes in a circle then you end up defining  A grumpet B  and then 
defining B as anti-grumpet A, which is has no more meaning than being a 
tautology. 

In the best of all worlds, a user coming to the documentation WITH NO 
KNOWLEDGE OF LILYOND in wanting to do something like control vertical 
spacing, and if you linked back to more and more general contexts with 
clear examples and explanations in a systematic way, then at some point 
you would reach the context that includes the user's context, and there 
the user can make the connection of how to find the way to apply 
vertical spacing to his/her specific situation.


Here is a hint.  You run lilypond executable and makes those 
connections, so the relationships already exist and are documented in an 
executable form.  Here is another hint.  The nature of MEANING is the 
one to one correspondence between two different systems.  So we have a 
system to compile which we know to be complete, and we want a system to 
provide meaning to the user...could it be that we could parse the code 
to provide CONTEXT to the user?  yes, yes, yes, yes, yes, YES---Each 
individual thing has meaning if we have CONTEXT of each thing.  Each and 
every thing we wish to document is carried out and executed by the compiler.


As for additional documentation, such as you already have in abundance.  
If you had a truly complete general to specific dependency tree of all 
features, there you could ALWAYS link every reference to its proper 
place in the dependency tree.  This would mean that someone reading your 
GDP would ALWAYS have a path back to context of the currently examined 
feature.


Now one really slick way to do this would be hyperlink ALL compilable 
code in the documentation, automatically generated through a link 
compiler that would establish a link to point to the right place in your 
dependency tree (e.g. right context) for learning about the particular 
feature.  This linked structure is nothing more than a remediation tool 
which all users, new and experienced could use to quickly brush up on 
how to use any feature in lilypond.  There IS a way to do this.  
Really!  So why not?   I guarantee that when all is said and done, it is 
a shorter path for the user AND to YOU to provide good communication 
than what you are doing nowbecause once done, it can be maintained 
in parallel with development since it reflects the structure of 
compiling and therefore development.


---end of tirade--


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


Re: problems with learning lilypond

2008-11-19 Thread Federico Grau
I've found the lilypond documentation to be quite good (after having been
using it now for about a year).  It starts with an introduction, has a
friendly gentle tutorial, followed up by a detailed reference.

If you're not able to use it, maybe start with a simple project.  As you
become more comfortable you can expand and take on more complex projects.
There are plenty of example templates to get one started at the bottom of the
documenation, and you'll likely end up taking the useful parts to create
your own template (mine is
http://www.casagrau.org/~donfede/lily/lilypond_template.ly ).

happy notating,
donfede




On Wed, Nov 19, 2008 at 12:54:39AM -0800, John Sellers wrote:
 I am in Silicon Valley.  I've never met and talked to another lilypond 
 user face to face.  It is lonely out here.
 
 I've used lilypond off and on for a few years AND HAVE NEVER BEEN ABLE 
 TO REALLY LEARN IT WELL!
 
 There are five reasons
 
 1) lack of context
 2) lack of context
 3) lack of context
 4) lack of context
 5) lack of context
 6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!
 
 I'm very tired of having a few hours to do something different, going to 
 lilypond documentation and getting something like
 
 use such and such to do so and so.
 
 fine so far. but how in God's Green Earth am I going to use something like:
 
 \paper {}
 
 If I don't know what context it works and what context it does not 
 work?  If like an idiot I go into my LY file and insert paper and put my 
 between-system-space or anything ELSE on the same page with a lot of 
 other variables which control things.  Why don't they ALL work WHENEVER 
 I try to use them...the answer is of course LACK OF CONTEXT.  For 
 correct context, I have to put the \paper {}  in the right part of the 
 program.  I have to tie the variables to whatever they are going to 
 effect.  Or do I?  I haven't a clue.  Why.here we go againLACK 
 OF CONTEXT.
 
 Here is one way you can solve this problem.
 
 NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that LEADS TO 
 THE CORRECT CONTEXT.
 
 YOU HAVE TO BE SYSTEMATIC!  Consider the following:
 
 Every feature must be documentedright? So are we talking about a 
 desert of documented sand pebbles in a jar or are there relationships 
 between them?  WOW!  there are DEPENDENCIES --- A dependences are B 
 depends on C --- oops, C depends on A NOT GOOD.
 
 So what is one to do?  Well, you could use a topological sort of all 
 capability dependencies using generality as the sort discriminant.  Find 
 all the cycles and BREAK THEM.  Organize things in this way so now you 
 have a structure which has an entry point for the user for every 
 feature.  Look, dependency is just another way of say CONTEXT.  If 
 context goes in a circle then you end up defining  A grumpet B  and then 
 defining B as anti-grumpet A, which is has no more meaning than being a 
 tautology. 
 
 In the best of all worlds, a user coming to the documentation WITH NO 
 KNOWLEDGE OF LILYOND in wanting to do something like control vertical 
 spacing, and if you linked back to more and more general contexts with 
 clear examples and explanations in a systematic way, then at some point 
 you would reach the context that includes the user's context, and there 
 the user can make the connection of how to find the way to apply 
 vertical spacing to his/her specific situation.
 
 Here is a hint.  You run lilypond executable and makes those 
 connections, so the relationships already exist and are documented in an 
 executable form.  Here is another hint.  The nature of MEANING is the 
 one to one correspondence between two different systems.  So we have a 
 system to compile which we know to be complete, and we want a system to 
 provide meaning to the user...could it be that we could parse the code 
 to provide CONTEXT to the user?  yes, yes, yes, yes, yes, YES---Each 
 individual thing has meaning if we have CONTEXT of each thing.  Each and 
 every thing we wish to document is carried out and executed by the compiler.
 
 As for additional documentation, such as you already have in abundance.  
 If you had a truly complete general to specific dependency tree of all 
 features, there you could ALWAYS link every reference to its proper 
 place in the dependency tree.  This would mean that someone reading your 
 GDP would ALWAYS have a path back to context of the currently examined 
 feature.
 
 Now one really slick way to do this would be hyperlink ALL compilable 
 code in the documentation, automatically generated through a link 
 compiler that would establish a link to point to the right place in your 
 dependency tree (e.g. right context) for learning about the particular 
 feature.  This linked structure is nothing more than a remediation tool 
 which all users, new and experienced could use to quickly brush up on 
 how to use any feature in lilypond.  There IS a way to do this.  
 Really!  So why not?   I guarantee that when all is said 

Re: problems with learning lilypond

2008-11-19 Thread Carl D. Sorensen



On 11/19/08 1:54 AM, John Sellers [EMAIL PROTECTED] wrote:

 I am in Silicon Valley.  I've never met and talked to another lilypond
 user face to face.  It is lonely out here.
 
 I've used lilypond off and on for a few years AND HAVE NEVER BEEN ABLE
 TO REALLY LEARN IT WELL!

I think that those who have used lilypond off and on for a few years are
actually at a disadvantage, because they (including me until late last year)
never bothered to read the Learning Manual.

The Learning Manual is an excellent resource to give the context that was
missing in my previous attempts.

 
 There are five reasons
 
 1) lack of context
 2) lack of context
 3) lack of context
 4) lack of context
 5) lack of context
 6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!
 
 I'm very tired of having a few hours to do something different, going to
 lilypond documentation and getting something like
 
 use such and such to do so and so.
 
 fine so far. but how in God's Green Earth am I going to use something like:
 
 \paper {}

Have you tried the 2.11 documentation?  I find it to be a dramatic
improvement over the 2.10 documentation.  You really should try it.  Since I
started using the 2.11 documentation I have been able to everything I have
tried to do.  (This wasn't the case previously).

 
 If I don't know what context it works and what context it does not
 work?  If like an idiot I go into my LY file and insert paper and put my
 between-system-space or anything ELSE on the same page with a lot of
 other variables which control things.  Why don't they ALL work WHENEVER
 I try to use them...the answer is of course LACK OF CONTEXT.  For
 correct context, I have to put the \paper {}  in the right part of the
 program.  I have to tie the variables to whatever they are going to
 effect.  Or do I?  I haven't a clue.  Why.here we go againLACK
 OF CONTEXT.

This specific question (about where the \paper{} block goes) is now covered
nicely in the documentation.  See Notation Reference 3.1.3. File structure.
However **NOTE TO DOCUMENTATION TEAM** that section of the manual should
probably include both a \paper{} and a \midi{} in an example.
 
 
 Here is one way you can solve this problem.
 
 NEVER DOCUMENT ANYTHING OUT OF CONTEXT except with a link that LEADS TO
 THE CORRECT CONTEXT.
 
 YOU HAVE TO BE SYSTEMATIC!  Consider the following:
 
 Every feature must be documentedright? So are we talking about a
 desert of documented sand pebbles in a jar or are there relationships
 between them?  WOW!  there are DEPENDENCIES --- A dependences are B
 depends on C --- oops, C depends on A NOT GOOD.
 
 So what is one to do?  Well, you could use a topological sort of all
 capability dependencies using generality as the sort discriminant.  Find
 all the cycles and BREAK THEM.  Organize things in this way so now you
 have a structure which has an entry point for the user for every
 feature.  Look, dependency is just another way of say CONTEXT.  If
 context goes in a circle then you end up defining  A grumpet B  and then
 defining B as anti-grumpet A, which is has no more meaning than being a
 tautology.

You would be doing a great service to LilyPond by identifying the cycles you
find in the documentation.  Even better, you could propose alternate wording
or alternate organization.  The best place to make such recommendations is
on the -devel list, rather than on the -user list.  I have personally found
the LilyPond development team to be very receptive to specific suggestions
for change and not very responsive to rants that just say you're doing it
all wrong.  If you have a better idea, share it and it's likely to get
implemented.

 
 In the best of all worlds, a user coming to the documentation WITH NO
 KNOWLEDGE OF LILYOND in wanting to do something like control vertical
 spacing, and if you linked back to more and more general contexts with
 clear examples and explanations in a systematic way, then at some point
 you would reach the context that includes the user's context, and there
 the user can make the connection of how to find the way to apply
 vertical spacing to his/her specific situation.

A simple example of your proposal would greatly strengthen your argument,
because you would have to wrestle with the specifics of what you mean.  It's
easy to make broad generalizations, and much more difficult to make specific
suggestions for improvement.  Perhaps you could either make such an example,
or provide us with the path you tried in the 2.11 documentation only to be
stymied by the lack of context.

 
 Here is a hint.  You run lilypond executable and makes those
 connections, so the relationships already exist and are documented in an
 executable form.  Here is another hint.  The nature of MEANING is the
 one to one correspondence between two different systems.  So we have a
 system to compile which we know to be complete, and we want a system to
 provide meaning to the user...could it be that we could parse the code
 to 

RE: problems with learning lilypond

2008-11-19 Thread Ed Ardzinski

I don't know how applicable this is since everyone is different, but my tack 
was to start small, then work up.  I can't honestly say that I'm expert or even 
very good at using LP, but it is allowing me to score out my ideas and create 
some decent sounding demos of my songs.  I started scoring out a bass solo I 
wrote as a kid, then I discovered how to add a drum part and made a midi 
file...soon I was finding all sorts of things out how make my scores look 
better.
 
But I know I'm not nearly exploiting what this program can do...I've only 
recently begun to try and add dynamic marks, and as a composer (using the term 
loosely) I still struggle to understand how exactly to score out what I do on 
the piano...but using LP has made a far better arranger.
 
Being in Silicon Valley I can only presume that the OP is computer savvy, and 
sometimes that might be a bit of a barrier.  Maybe you have to try and remember 
the first halting steps you made programming and how difficult it was to get 
help from the help files.  I know for myself I can look at the LP documentation 
now and get more out of it quicker than I could in the beginning days of my 
experience (not quite 3 years now).  Of course hindsight and experience tend to 
make vision far better than 20/20...
 
And I also have never met another LP user face to face.  Most people who might 
have any inkling of using a computer to score music are lost when I describe 
it.  Heck, most people who play instruments these days can't even read standard 
notation, and many musicians who can read music are not strong enough with 
their computer skills to use a system like this.
 
Again, I'm not sure what help this might be, but maybe I can add a little 
perspective...
_
Windows Live Hotmail now works up to 70% faster.
http://windowslive.com/Explore/Hotmail?ocid=TXT_TAGLM_WL_hotmail_acq_faster_112008___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: problems with learning lilypond

2008-11-19 Thread Ari Torhamo
ke, 2008-11-19 kello 00:54 -0800, John Sellers kirjoitti:

[...]

 I've used lilypond off and on for a few years AND HAVE NEVER BEEN ABLE 
 TO REALLY LEARN IT WELL!
 
 There are five reasons
 
 1) lack of context
 2) lack of context
 3) lack of context
 4) lack of context
 5) lack of context
 6) NOTHING HAS MEANING WITHOUT CONTEXT --- EVER!

[...]

This is exactly what has frustrated me so many times - thanks for
putting it into words so elegantly ;-) 2.11 documentation makes a large
step into right direction in this respect (I whish I was told earlier to
use 2.11 instead of 2.10), and I hope the documenters will have the
patience to cover the contexts even more widely in the future versions.
I must add that in my eyes the Lilypond documentation (especially 2.11)
is generally exellent, and you can really see that those who are doing
it want to get it right in every way.

Unfortunately I can't say much about your idea on depencies, as I'm not
a developer.

Cheers,

Ari Torhamo





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