I find myself wishing for an O'Reilly style book "Hacking Lilypond".  The
user guide and the reference are fine as is, but a book with some extended
examples of how to _architect_ solutions in Lilypond would be great.

I already know Scheme the language, and have a basic understanding of the
Lilypond data structures, but advanced knowledge of Lilypond data
structures and knowledge of its many functions escapes me for now.

Quite often I find myself wondering "What _api_ do we use to access _this_
data structure?" In the past I found the answer was often unclear without
asking for assistance.  Some data structures just get manipulated with the
usual list functions, other areas some kind of function/iterator needed
calling.

Things appear to be getting better on the Scheme front, though, with some
of the recent improvements in integration between Lilypond markup and
Scheme code.

On Thu, Nov 29, 2012 at 10:51 AM, David Nalesnik
<david.nales...@gmail.com>wrote:

> Hi Jeffrey,
>
> On Wed, Nov 28, 2012 at 11:52 PM, Paul Morris <p...@paulwmorris.com>
> wrote:
> > On Nov 28, 2012, at 7:02 PM, Jeffrey Trevino <jeffrey.trevi...@gmail.com
> >
> > wrote:
> >
> > It's a long-term goal of mine to learn enough about the Scheme side of
> > Lilypond to be able to design stencils, and custom notational constructs
> > more broadly, like you've just done. It seems like graphic flexibility
> with
> > \markup is documented really well, but I've yet to get the basics of how
> I
> > can use Scheme to control Lilypond at a low-level graphically as you've
> just
> > done. Do you -- or anyone else reading -- have a suggestion about which
> > source code or documentation I should take a look at to start learning
> how?
>
>
> There are plenty of online resources for learning Scheme.  I've
> learned a lot by reading the manual for Guile 1.8 (am still learning!)
>
> The big difficulty for me was not in learning the language, but rather
> learning to work with the various procedures (such as the ones you see
> in the code in this thread), for which there is little documentation.
> There's a list of Scheme functions here:
>
> http://www.lilypond.org/doc/v2.16/Documentation/internals/scheme-functions
>
> but, as you can see, this is by no means a tutorial.  In the absence
> of "how-tos," I've used trial-and-error, searched online for uses of
> particular functions, and searched the code base.
>
> There are plenty of useful procedures in files such as
> scm/lily-library.scm and scm/stencil.scm -- you just need to look
> around.
>
> HTH,
> David
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to