1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. For details, see the Contributors'
7 Guide, node Updating translation committishes..
10 @include included/authors.itexi
11 @include included/helpus.itexi
16 @divClass{link-headings}
18 @divClass{column-center-top}
19 @subheading Interacting with the community
24 @ref{Contact}: get help, discuss, and keep in touch!
27 @ref{Tiny examples}: these are @emph{highly} recommended when
31 @ref{Bug reports}: something went wrong.
36 @divClass{column-left-bottom}
37 @subheading Making LilyPond better
42 @ref{Help us}: your assistance is requested.
45 @ref{Sponsoring}: financial contributions.
48 @ref{Development}: for contributors and testers.
51 @ref{GSoC}: list of projects for Google Summer of Code.
54 @ref{Authors}: the people who made LilyPond what it is today.
59 @divClass{column-right-bottom}
60 @subheading Miscellaneous
65 @ref{Publications}: what we wrote, and have had written about us.
68 @ref{Old news}: an archive.
92 @unnumberedsec Contact
95 @divClass{column-left-bottom}
96 @subheading User Discussions and Help
98 @subsubheading User mailing list: @code{lilypond-user@@gnu.org}
100 This mailing list is the main place for users to discuss and help
104 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user,
105 lilypond-user subscribe and info}
107 @uref{http://lists.gnu.org/archive/html/lilypond-user/,
109 @uref{http://www.mail-archive.com/lilypond-user@@gnu.org/,
111 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.general,
114 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.general,
115 send to lilypond-user with gmane}
118 @warning{When asking questions, please use @ref{Tiny examples}!}
120 @subsubheading LilyPond Snippet Repository
122 The LilyPond Snippet Repository is a large collection of
123 user-submitted examples, which can freely be copied and used
124 in your own works. See what other people have written,
128 @uref{http://lsr.dsi.unimi.it}
131 Particularly instructive examples from LSR are included in our
132 official documentation, in @ref{Snippets}.
137 Some level of support is provided on our IRC channel,
140 @uref{irc://irc.freenode.net/lilypond, #lilypond@@irc.freenode.net}
143 This channel has no public archive, so any question that may
144 be useful for others would better be posted to one of the mailing lists.
147 <form action="http://webchat.freenode.net"
151 <input name="nick" type="text" size="15" value="">
153 <input name="channels" type="hidden" value="lilypond">
154 <input type="submit" value="Join #lilypond IRC Chat">
157 <script language="JavaScript" type="text/javascript">
158 var username = "web";
159 var lang = window.navigator.userLanguage ? window.navigator.userLanguage
160 : window.navigator.language;
161 username += '-' + lang.substr(0, 2);
162 username += '-' + navigator.appName.substr(0, 2);
163 username += navigator.appCodeName.replace (" ", "").substr(0, 2);
164 username += navigator.platform.replace (" ", "").replace("nux", "").replace("n32", "");
165 document.forms["f_lily_irc"].nick.value = username;
169 @subsubheading Other languages
172 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-es,
173 Spanish mailing list}
175 @uref{http://www.lilypondforum.de/,
178 @uref{http://groups.google.com/group/lilypond-brasil,
181 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user-fr,
184 @uref{http://www.lilypondforum.nl/,
191 @divClass{column-right-top}
192 @subheading Stay Informed
194 @subsubheading LilyPond Report
196 The easiest way to keep touch is by reading our community
197 newsletter, the LilyPond Report:
200 @uref{http://news.lilynet.net}
203 @subsubheading Releases mailing list: @code{info-lilypond@@gnu.org}
205 This mailing list is a low-volume, read-only list which receives
206 notifications of new releases.
209 @uref{http://lists.gnu.org/mailman/listinfo/info-lilypond,
210 info-lilypond subscribe and info}
212 @uref{http://lists.gnu.org/archive/html/info-lilypond/,
214 @uref{http://www.mail-archive.com/info-lilypond@@gnu.org/,
216 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.announce,
219 @c don't include gmane posting here. -gp
226 @divClass{column-right-bottom}
227 @subheading Developer Discussion
229 @subsubheading Developer mailing list: @code{lilypond-devel@@gnu.org}
231 Most developer discussion takes place on this list. Patches
235 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-devel,
236 lilypond-devel subscribe and info}
238 @uref{http://lists.gnu.org/archive/html/lilypond-devel/,
240 @uref{http://www.mail-archive.com/lilypond-devel@@gnu.org/,
242 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.devel,
245 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.devel,
246 send to lilypond-devel with gmane}
250 @subsubheading Bug mailing list: @code{bug-lilypond@@gnu.org}
252 Bug-specific discussion takes place here.
255 @uref{http://lists.gnu.org/mailman/listinfo/bug-lilypond,
256 bug-lilypond subscribe and info}
258 @uref{http://lists.gnu.org/archive/html/bug-lilypond/,
260 @uref{http://www.mail-archive.com/bug-lilypond@@gnu.org/,
262 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.bugs,
265 @c don't include gmane posting here. -gp
268 @warning{Before sending a message to the bug list, please read our
269 guidelines for @ref{Bug reports}.}
273 @divClass{column-right-bottom}
274 @subheading Sensitive emails
276 Private matters should be sent to Graham Percival (project
277 manager), who will discuss it with those concerned.
283 @unnumberedsec Tiny examples
285 @divClass{column-center-top}
286 @subheading What are @qq{Tiny examples}?
288 A tiny example is an example from which @strong{nothing} can be removed.
291 @divClass{column-left-bottom}
292 @subheading Why create them?
294 @divClass{keep-bullets}
298 The simpler the example is, the quicker potential helpers can
299 understand it and help you.
302 A tiny example demonstrates that you have put effort towards
303 solving the problem yourself. When people send huge portions of
304 input, it looks like they don't care if we help them or not.
307 Creating a tiny example helps you to understand what is
308 happening. Many false problem reports can be avoided by
309 attempting to create a tiny example; if you cannot replicate a
310 @qq{bug} in a tiny example, then the problem was probably an
311 insufficient understanding of LilyPond, not an actual bug!
319 @divClass{column-right-bottom}
320 @subheading How to create them?
322 @divClass{keep-bullets}
326 Include the @code{\version} number.
329 Make it small! Examples about spacing or page layout might
330 require many bars of music, but most issues can be reproduced
331 using less than a single measure.
334 When trying to create an example, try commenting out @w{(@code{%}
335 or @code{%@{ @dots{} %@}})} sections of your file. If you
336 can comment something while still demonstrating the main idea,
337 then remove the commented-material.
340 Avoid using complicated notes, keys or time signatures, unless
341 the bug is about the behavior of those items.
344 Do not use @code{\override} or @code{\set} commands unless the bug
345 is about those specific commands.
348 Optionally, attach an image showing the desired graphical output.
355 @divClass{column-center-bottom}
356 @subheading How tiny should they be?
358 Is the code below a minimal example?
362 \include "english.ly"
367 \numericTimeSignature
369 <cs' d'' b''>16 <cs' d'' b''>8.
370 %% Here: the tie on the D's looks funny
371 %% Too tall? Left-hand endpoint is not aligned with the B tie?
373 <cs' d'' b''>8 [ <b d'' a''> ]
378 Well, it is not very big, but a truly minimal example is here:
383 % middle tie looks funny here:
384 <c' d'' b''>8. ~ <c' d'' b''>8
388 Very few tiny examples exceed 10 lines of code -
389 quite often 4 lines are enough to demonstrate the problem!
395 @unnumberedsec Bug reports
398 @divClass{heading-center}
399 If you have input that results in a crash or wrong output,
403 @divClass{column-center-top}
404 @subheading Step 1: Known bugs
406 We may already know about this bug. Check here:
409 @uref{http://code.google.com/p/lilypond/issues/list}
412 @warning{Please @strong{DO NOT} add bug reports directly to the
413 bug tracker. Once an issue has been added to the tracker, feel
414 free to add more information to that report.}
419 @divClass{column-left-bottom}
420 @subheading Step 2: Creating a bug report
422 If you have discovered a bug which is not listed,
423 please help us by creating a bug report.
425 @warning{We only accept reports in the form of
426 @ref{Tiny examples}. We have very limited resources,
427 so any non-minimal example will be rejected. Almost
428 every bug can be demonstrated in four notes or less!}
430 Here is an example of a good bug report:
433 % Accidentals should be printed for only
434 % the first note in a tie, but this version
435 % prints flats on both notes.
446 @divClass{column-right-bottom}
447 @subheading Step 3: Sending a bug report
449 Once you have verified that the issue is not already known and
450 created a bug report, please send it to us!
452 @divClass{keep-bullets}
456 If you are subscribed to the @uref{mailto:bug-lilypond@@gnu.org,
457 bug-lilypond@@gnu.org} mailing list, send an email like normal.
460 If you are not subscribed, you can still post a bug report with
462 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs,
463 gmane lilypond.bugs web interface}.
465 However, there is a strict @qq{no top-posting} check on the gmane
466 interface, which is often incorrectly triggered by lilypond files.
467 To avoid this, please add:
470 > I'm not top posting.
474 (you @emph{must} include the @code{>} ) to the top of your bug
481 @divClass{column-center-bottom}
482 @subheading Step 4: Wait for a response
484 Once your bug report has been sent to the list, our Bug Squad will
485 examine it; they may ask you for more information. You will be notified
486 when the report will be added to the bug tracker. Please allow up to 4 days,
487 as we have a limited number of volunteers for this task.
489 Once a bug has been added to the tracker, you can comment it to add
490 more information about it.
491 You may also mark the bug so that you automatically receive emails when
492 any activity on the bug occurs. This requires you have a google
496 @divClass{column-center-bottom}
497 @subheading Optional help: show the desired behavior
499 Once an issue has been added to the tracker, it can be very
500 helpful if we can see the desired output. Feel free to add input
501 code and/or images (possibly created with other tools) which
502 demonstrate what you think it should look like!
509 @unnumberedsec Help us
511 @divClass{column-center-top}
516 @divClass{column-left-top}
517 @divClass{keep-bullets}
523 @divClass{column-right-top}
530 @unnumberedsec Sponsoring
532 @divClass{keep-bullets}
533 @divClass{column-left-top}
539 @item some users have paid for new features
540 @item some developers have added new features for hire
543 The LilyPond project does not organize such efforts; we neither
544 endorse nor discourage such agreements. Any contracts between
545 private individuals is the business of those individuals, not
550 @divClass{column-right-top}
551 @subheading Guidelines
553 Any user wanting to offer money in exchange for work should bear
554 in mind the following points:
558 LilyPond developers may advertise their services on the lilypond
559 email lists from time to time.
562 Any agreements between private individuals should include the
563 normal precautions when conducting business: who pays, how much do
564 they pay, with what method of payment, and upon what set of
565 conditions. We suggest that any ambiguity or uncertainty in these
566 questions should be resolved before any work begins.
572 @divClass{column-center-bottom}
573 @subheading Interested developers
575 Here is a list of people who have expressed an interest in
576 bounties. Note that the amount of work done by individuals varies
577 quite a bit throughout the years. We do not guarantee that this
578 list is up-to-date, nor do we guarantee that the people listed
579 here have any ability. The only criteria is "XYZ asked to be
580 listed on this page".
582 Looking at the git history is a good way to determine who the most
583 active and experienced developers are. Statistics up to version
586 @multitable @columnfractions .3 .3 .3
587 @item @uref{http://lilypond.org/~graham/gitstats-all/, overall history}
588 @tab @uref{http://lilypond.org/~graham/gitstats-1year/, past year}
589 @tab @uref{http://lilypond.org/~graham/gitstats-3months/, past three months}
592 Interested developers:
594 @item @email{dak@@gnu.org, David Kastrup}
595 Donations are required to let me continue my current fulltime work on
596 LilyPond. I focus on user and programmer interface design, coherence,
597 implementation, simplification, documentation, and debugging.
600 @c @item @email{name@@adress.domain, Name}
601 @c area of interest (256 chars max)
610 @unnumberedsec Development
612 @divClass{heading-center}
614 @heading Development for LilyPond @version
617 @heading Development for LilyPond @versionDevel
621 @c we normally don't allow named references, but in this case
622 @c it's good to emphasize the "stable" part. -gp
623 @warning{These are @emph{unstable development} versions. If you
624 have the slightest doubt about how to use or install LilyPond, we
625 urge you to use the @ref{Download, stable Download}, and read the
626 @ref{Manuals, stable Manuals}.}
630 @divClass{column-center-top}
631 @subheading Release numbers
633 There are two sets of releases for LilyPond: stable releases, and
634 unstable development releases. Stable versions have an
635 even-numbered @q{minor} version number (e.g., 2.8, 2.10, 2.12).
636 Development versions have an odd-numbered @q{minor} version number
637 (e.g., 2.7, 2.9, 2.11).
642 @divClass{column-left-top}
645 Instructions for git and compiling are in the Contributor's Guide.
648 @uref{http://git.sv.gnu.org/gitweb/?p=lilypond.git, lilypond git repository}
651 Documentation writers and testers will generally want to download
656 @downloadDevelLinuxNormal
658 @downloadDevelLinuxBig
660 @downloadDevelLinuxPPC
662 @downloadDevelFreeBSDNormal
664 @downloadDevelFreeBSDBig
666 @downloadDevelDarwinNormal
668 @downloadDevelDarwinPPC
670 @downloadDevelWindows
679 @divClass{column-right-top}
680 @subheading Contributor's Guide
682 LilyPond development is a fairly complicated matter. In order to
683 help new contributors, and to keep the whole system (mostly)
684 stable, we have written a manual for development tasks.
686 @docLinksBare{Contributor's Guide, contributor,
687 @rcontribnamed{Top,Contributor's Guide},
688 @manualDevelContributorSplit,
689 @manualDevelContributorBig, 500 kB,
690 @manualDevelContributorPdf, 2.8 MB}
695 @divClass{column-center-top}
696 @subheading Regression tests
698 @divClass{keep-bullets}
704 @uref{../../input/regression/collated-files.html, Regression tests}:
705 This release's regtests.
706 (@uref{../../input/regression/collated-files.pdf, pdf version})
709 @uref{../../input/regression/musicxml/collated-files.html, MusicXML tests}:
710 This release's musicXML tests.
711 (@uref{../../input/regression/musicxml/collated-files.pdf, pdf version})
714 @uref{../../input/regression/abc2ly/collated-files.html, abc2ly tests}:
715 This release's abc2ly tests.
716 (@uref{../../input/regression/abc2ly/collated-files.pdf, pdf version})
719 @uref{../../input/regression/lilypond-book/collated-files.html, lilypond-book tests}:
720 This release's lilypond-book tests.
721 (@uref{../../input/regression/lilypond-book/collated-files.pdf, pdf version})
727 @subsubheading Development version
730 @item @regtestDevel (@regtestDevelPdf{})
732 @item @regtestDevelXml (@regtestDevelXmlPdf{})
734 @item @regtestDevelAbc (@regtestDevelAbcPdf{})
736 @item @regtestDevelLilypondBook (@regtestDevelLilypondBookPdf{})
739 @subsubheading Stable version
742 @item @regtestStable (@regtestStablePdf{})
744 @item @regtestStableXml (@regtestStableXmlPdf{})
746 @item @regtestStableAbc (@regtestStableAbcPdf{})
748 @item @regtestStableLilypondBook (@regtestStableLilypondBookPdf{})
753 @subsubheading All versions
756 @item @uref{http://lilypond.org/test, Comparisons between regression tests}
758 @item @uref{http://lilypond.org/download/binaries/test-output/,
759 Archive of all regression tests}
768 @divClass{column-center-bottom}
772 @warning{These manuals are for LilyPond @version{}; the latest
773 manuals can be found at @url{http://lilypond.org}}
776 @divClass{normal-table}
777 @multitable @columnfractions .3 .3 .3
778 @headitem Introduction
780 @docLinkSplit{Learning,learning,@manualDevelLearningSplit}
782 @docLinkBig{Learning,learning,@manualDevelLearningBig}
784 @docLinkPdf{Learning,learning,@manualDevelLearningPdf}
787 @docLinkSplit{Glossary,music-glossary,@manualDevelGlossarySplit}
789 @docLinkBig{Glossary,music-glossary,@manualDevelGlossaryBig}
791 @docLinkPdf{Glossary,music-glossary,@manualDevelGlossaryPdf}
794 @docLinkSplit{Essay,essay,@manualDevelEssaySplit}
796 @docLinkBig{Essay,essay,@manualDevelEssayBig}
798 @docLinkPdf{Essay,essay,@manualDevelEssayPdf}
803 @docLinkSplit{Notation,notation,@manualDevelNotationSplit}
805 @docLinkBig{Notation,notation,@manualDevelNotationBig}
807 @docLinkPdf{Notation,notation,@manualDevelNotationPdf}
810 @docLinkSplit{Usage,usage,@manualDevelUsageSplit}
812 @docLinkBig{Usage,usage,@manualDevelUsageBig}
814 @docLinkPdf{Usage,usage,@manualDevelUsagePdf}
817 @docLinkSplit{Snippets,snippets,@manualDevelSnippetsSplit}
819 @docLinkBig{Snippets,snippets,@manualDevelSnippetsBig}
821 @docLinkPdf{Snippets,snippets,@manualDevelSnippetsPdf}
826 @docLinkSplit{Web,web,@manualDevelWebSplit}
828 @docLinkBig{Web,web,@manualDevelWebBig}
830 @docLinkPdf{Web,web,@manualDevelWebPdf}
833 @docLinkSplit{Changes,changes,@manualDevelChangesSplit}
835 @docLinkBig{Changes,changes,@manualDevelChangesBig}
837 @docLinkPdf{Changes,changes,@manualDevelChangesPdf}
840 @docLinkSplit{Extending,extending,@manualDevelExtendingSplit}
842 @docLinkBig{Extending,extending,@manualDevelExtendingBig}
844 @docLinkPdf{Extending,extending,@manualDevelExtendingPdf}
847 @docLinkSplit{Internals,internals,@manualDevelInternalsSplit}
849 @docLinkBig{Internals,internals,@manualDevelInternalsBig}
851 @docLinkPdf{Internals,internals,@manualDevelInternalsPdf}
854 @headitem Downloadable
871 @divClass{column-center-top}
872 @subheading What is Google Summer of Code?
875 @uref{http://www.google-melange.com/gsoc/homepage/google/gsoc2012, GSoC website},
876 @qq{Google Summer of Code is a global program that offers students
877 stipends to write code for open source projects. Google has worked
878 with the open source community to identify and fund exciting projects
879 for the upcoming summer.}
881 The LilyPond Team decided that this is an excellent opportunity to find
882 new contributors, encourage students already participating in LilyPond
883 development to become more involved, and - last but not least - write some
884 great code for the benefit of all!
886 In addition to getting paid for your work, you'll gain experience in
887 software development, which many of previous GSoC students describe as
888 @emph{invaluable} (and you'll get a t-shirt, too!).
890 If you have any questions, read
891 @uref{http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2012/faqs, GSoC FAQ}
892 or contact us at @code{lilypond-devel@@gnu.org}.
896 @divClass{column-center-bottom}
897 @subheading Our Ideas List
899 Below is a list of projects suggested for GSoC students. If you don't
900 see a project that suits you, feel free to contact us and suggest your own!
901 It's also possible to scale down a project if you feel it's too big.
903 We require that every student has basic @code{git} knowledge, and
904 recommend that everyone applying for projects other than the last one
905 have basic music notation knowledge.
907 @subheading Grace notes
909 Fix problems with synchronization of grace notes,
910 together with all underlying architecture (see
911 @uref{http://code.google.com/p/lilypond/issues/detail?id=34, issue 34 in our tracker}).
912 Grace notes are confusing to LilyPond's timing because they're like
913 going back in time. This causes weird effects, especially when one staff
914 has a grace note and the other doesn't.
916 @strong{Difficulty:} medium
918 @strong{Requirements:} C++, MIDI
920 @strong{Recommended:} familiarity with LilyPond internals
922 @strong{Mentor(s):} Mike Solomon, Carl Sorensen
926 Adding comprehensive MusicXML export and improving import,
927 together with tests checking that it works. Depending on time available,
928 implement some or all of the following:
930 @divClass{keep-bullets}
934 Handle basic musical content export like the MIDI export (i.e. using
935 dedicated exporter classes, derived from the translator class)
938 Build the XML tree of the basic musical content,
939 add a connection from music event to XML tag
942 Let all LilyPond engravers do their job
945 add ability to link each output object
946 (basically each stencil / group of stencils) to the music cause
947 (and thus to the XML tag in the XML tree)
950 Add a XML output backend, which can then add the layout information
951 for each output object to the XML tags
956 The goal will be considered achieved when a (previously chosen) score could be
957 imported from MusicXML and exported back with no unintentional loss of data.
959 @strong{Difficulty:} medium
961 @strong{Requirements:} MusicXML, Python, basic LilyPond knowledge
963 @strong{Mentor(s):} Reinhold Kainhofer, Mike Solomon
965 familiarity with other scorewriters (for cross-testing) would be a nice bonus.
967 @subheading Improve slurs and ties
969 The default shape of slur and tie curves is often unsatisfactory.
970 Ties on enharmonic notes @code{@{ cis'~ des' @}} are not supported,
971 ties "broken" by clef or staff change aren't supported well.
972 The project includes collecting and sorting examples of bad output,
973 deciding on the intended output and writing the actual code.
975 @strong{Difficulty:} hard
977 @strong{Requirements:} C++, experience with writing heuristics
979 @strong{Recommended knowledge:} LilyPond knowledge, aesthetic sense
981 @strong{Mentor(s):} Mike Solomon
983 @subheading Adding special variant of font glyphs
984 Adding on-staff-line, between-staff-line, shorter and narrower variants
985 of some glyphs, for example accidentals, together with a generic
986 infrasctucture to support them. An example is ancient notation breve notehead
987 coming in two variants, with smaller and bigger hole.
989 @strong{Difficulty:} easy
991 @strong{Requirements:} MetaFont, C++, good eye for details
993 @strong{Recommended knowledge:} basic LilyPond knowledge
995 @strong{Mentor(s):} Werner Lemberg
997 @subheading Improve beaming
999 Default positioning of regular, cross-staff, broken and kneed beams
1000 should be improved. Beaming should depend on context and neighbor notes (see
1001 @uref{http://icking-music-archive.org/lists/sottisier/sottieng.pdf, section 2.2 here}).
1002 If possible, reduce beaming computation time.
1004 @strong{Difficulty:} medium
1006 @strong{Requirements:} C++, experience with writing heuristics
1008 @strong{Recommended knowledge:} aesthetic sense
1010 @strong{Mentor(s):} Mike Solomon, Carl Sorensen
1012 @subheading Better tablature support
1014 @divClass{keep-bullets}
1018 non-monotonic string tunings, like Ukulele
1021 create tablature input mode (currently musical information is entered
1022 in western-common-music-notation-terms, i.e. @qq{a quarter f sharp note}
1023 and then converted to tablature) for transcribing medieval lute tablature
1026 implement modern tablature features, such as bends, pull-off, hammer-on
1029 if a fretboard shape is defined for a given chord, use this information when
1030 displaying the chord on the staff (and not just display a default chord shape)
1035 @strong{Difficulty:} easy
1037 @strong{Requirements:} C++
1039 @strong{Recommended knowledge:} tablature notation familiarity
1041 @strong{Mentor(s):} Carl Sorensen
1043 @subheading Clean up various compilation warnings
1045 Clean up compiler warnings, static code analysis, and valgrind warnings.
1046 Automatic code analysis tools (warnings in @code{g++} and @code{clang})
1047 and analysis tools like valgrind memory leak detection and callgrind code
1048 profilers provide valuable information about possible flaws in C++ code.
1049 Cleaning these warnings would allow us to automatically reject any patch
1050 which introduced extra warnings.
1052 @strong{Difficulty:} medium
1054 @strong{Requirements:} C++
1056 @strong{Mentor(s):} Joe Neeman, Reinhold Kainhofer
1064 @unnumberedsec Authors
1066 @divClass{column-left-top}
1067 @subheading Current Development Team
1069 @divClass{keep-bullets}
1074 @divClass{column-right-top}
1075 @subheading Previous Development Team
1077 @divClass{keep-bullets}
1083 @divClass{column-center-top}
1084 @subheading Current Contributors
1086 @divClass{keep-bullets}
1087 @subsubheading Programming
1095 @subsubheading Documentation
1099 @subsubheading Bug squad
1103 @subsubheading Support
1107 @subsubheading Translation
1109 @translationsCurrent
1115 @divClass{column-center-bottom}
1116 @subheading Previous Contributors
1118 @divClass{keep-bullets}
1119 @subsubheading Programming
1127 @subsubheading Documentation
1131 @c uncomment when we have any previous members -gp
1132 @c @subsubheading Bug squad
1136 @subsubheading Support
1140 @subsubheading Translation
1142 @translationsPrevious
1150 @unnumberedsec Publications
1152 @divClass{column-center-top}
1153 @subheading What we wrote about LilyPond
1155 @divClass{keep-bullets}
1157 @include we-wrote.itexi
1162 @divClass{column-center-bottom}
1164 @subheading What people did with LilyPond
1167 @divClass{keep-bullets}
1169 @include others-did.itexi
1174 @contactUsAbout{academic papers}
1178 @unnumberedsec Old news
1180 @include web/news-front.itexi
1182 @include web/news.itexi