1 \input texinfo @c -*-texinfo-*-
2 @setfilename internals.info
3 @settitle LilyPond internals
6 @node Top, , (dir), (dir)
11 @chapter Getting involved
13 Please help us make LilyPond a better program. You can help LilyPond in
14 several ways. Not all tasks requiring programming or understanding the
15 full source code. You can write to the mailing list
16 (@email{gnu-music-discuss@@gnu.org} for more information)
18 @unnumberedsubsec Users
20 Mutopia needs your help. The mutopia project is a collection of public
21 domain sheet music. You can help the project by entering music (either
22 by hand, or by converting from scans or MIDI) and submitting it. Point
23 your browser to the @uref{http://sca.uwaterloo.ca/Mutopia, Mutopia
26 @unnumberedsubsec Font designers
28 Our set of glyphs (the Feta font) is far from complete. We need the
29 following glyphs: segno, coda. The fonts have been coded in MetaFont,
30 so you will need to know MetaFont if you want to contribute a glyph.
32 @unnumberedsubsec Writers
34 The documentation of LilyPond and related utilities needs a lot of
35 work. The documentation is written in
36 @uref{http://www.gnu.org/software/texinfo,texinfo}. The documentation of
37 LilyPond is sorely lacking in terms of completeness, depth and
40 Write if you know how to write english documentation in texinfo, and
41 know about music and music notation. You must also know how to use
42 LilyPond (or be prepared to learn using it). The task is not especially
43 hard, but it is a lot of work, and you must be familiar with LilyPond.
45 @unnumberedsubsec Translators
47 LilyPond is completely ready for internationalized messages, but there
48 are only a few translations so far (dutch, italian, german, japanese,
49 french, russian). Translation involves writing a .po file, which is
50 relatively easy, and does not even require running LilyPond.
52 @unnumberedsubsec Hackers
54 There are lots of possibilities of improving the program itself. There
55 are both small projects and big ones. Most of them are listed in our
56 TODO file, listed on the homepage of Jan and
57 @uref{http://www.cs.uu.nl/~hanwen/lily-devel,Han-Wen}. Modifying
58 LilyPond almost always requires patches to the C++ part.
60 There are also numerous other interesting projects that are more or less
64 @item Writing convertors, eg. from NIFF and MIDI (we tried writing one with
65 limited success: midi2ly, included with lilypond.)
67 We found that writing them in Python is the easiest.
69 @item Writing a GUI frontend to
70 LilyPond. At the moment @uref{denemo,denemo.sourceforge.net} is the most
73 @item Helping write @uref{ http://solfege.sourceforge.net/,solfege
76 @item Helping @uref{primrose.sourceforge.net,primrose}, a tool for
81 @chapter LilyPond internals