@section move AU 1 here
+ALSO ADD:
+
+- how to make a stable version and development version coexist on
+ your system
+
+- how to build with debug info
+
+
@afourpaper
-@c Keep this here, since it pertains to the direntry below.
-@ignore
-Distributions will want to install lilypond.info in postinstall, doing:
-
- install-info --info-dir=/usr/share/info out[-www]/lilypond.info
-
- * Prepend GNU for dir, must be unique.
-
- * Do not list the `lilypond' node at toplevel, so that `info lilypond'
- goes to Top.
-
- * List all commands in direntry.
-
-@c * lilypond: (lilypond/lilypond)Running LilyPond. Invoking the
-@c LilyPond program.
-@end ignore
-
-
@ifnottex
@node Top
@top GNU LilyPond --- Contributor's Guide
@chapheading The music typesetter
-@c HJJ: Info needs `@top', which is a synonym for `@unnumbered' in TeX.
@end ifnottex
@ifhtml
@ifclear bigpage
This document is also available as a
-@uref{source/Documentation/user/lilypond.pdf,PDF} and as
-@uref{source/Documentation/user/lilypond-big-page.html,one big page}.
+@uref{source/Documentation/devel/contrib-guide.pdf,PDF} and as
+@c FIXME: update @uref{} stuff.
+@uref{source/Documentation/devel/,one big page}.
@end ifclear
@ifset bigpage
This document is also available as a
-@uref{source/Documentation/user/lilypond.pdf,PDF} and as a
-@uref{source/Documentation/user/lilypond/index.html,HTML indexed multiple pages}.
+@uref{source/Documentation/devel/contrib-guide.pdf,PDF} and as a
+@uref{source/Documentation/devel/contrib-guide/index.html,HTML indexed multiple pages}.
@end ifset
@end ifhtml
@end copying
@ifnottex
-This file documents GNU LilyPond.
+This file documents contributing to GNU LilyPond.
Copyright 1999--2008 by the authors
@end ifnottex
@ifnottex
-For more information about how this fits with the other
-
-@cindex web site
-@cindex URL
More information can be found at
-@uref{http://@/www@/.lilypond@/.org/}. The website contains on-line copies
-of this and other documentation.
+@uref{http://@/www@/.lilypond@/.org/}. The website contains
+on-line copies of this and other documentation.
@menu
* Starting with git::
To get the main source code and documentation,
-FIXME: test this!!!
-
@example
mkdir lilypond; cd lilypond
git init-db
To get the website (including translations),
-FIXME: test this!!!
-
@example
mkdir lilypond-web ; cd lilypond-web
git init-db
To translate the documentation (@emph{not} the website),
-FIXME: change!!!
-
+@c TODO this runs off the side of the page in pdf. :(
@example
-mkdir lilypond-translate; cd lilypond-translate
+mkdir lilypond-translation; cd lilypond-translation
git init-db
-git remote add -f -t web -m web origin git://git.sv.gnu.org/lilypond.git/
+git remote add -f -t lilypond/translation -m lilypond/translation origin git://git.sv.gnu.org/lilypond.git/
git checkout -b web origin/web
@end example
@item @code{gub}:
This stores the Grand Unified Binary, our cross-platform building
-tool. For more info, see @uref{http://lilypond.org/gub}. The git
+tool.
+@c TODO: merge the gub stuff with this CG.
+For more info, see @uref{http://lilypond.org/gub}. The git
location is:
@example
listed in earlier sections, try:
@example
-git://git.sv.gnu.org/lilypond.git
http://git.sv.gnu.org/r/lilypond.git
+git://git.sv.gnu.org/lilypond.git
ssh://git.sv.gnu.org/srv/git/lilypond.git
@end example
@warning{The @code{git://} and @code{ssh://} URLs are intended for
advanced git users.}
+
@node Git user configuration
@subsection Git user configuration
@example
git config --global user.name "MYNAME"
-git config --global user.email myemail@@example.net
+git config --global user.email MYEMAIL@@EXAMPLE.NET
@end example
versions.
@example
-TODO
+FIXME: what the mao should people do?!?! Personally, I just break
+down and cry. -gp
@end example
@example
git commit -a
-git-format-patch HEAD
+git format-patch origin
@end example
Send an email to @email{lilypond-devel@@gnu.org} with the diff as
Well-formed git patches should be committed with
@example
-git-am
+git am
@end example
-Patches created without @code{git-format-patch} should be
+Patches created without @code{git format-patch} should be
committed with
@example
-git-apply
+git apply
@end example
if necessary, then produce the patch with
@example
-git-format-patch -n
+git format-patch origin
@end example
-where n an integer, normally 1. This will create a
-patch file for all the locally committed files which differ
-from @w{origin/master}. The patch file can be found in
-[path]/Git and will have a name formed from n and the
-commit message.
+This will create a patch file for all the locally committed files
+which differ from @w{origin/master}. The patch file can be found
+in [path]/Git and will have a name formed from n and the commit
+message.
@subsection Resolving merge conflicts
-@c -*- coding: us-ascii; mode: texinfo; -*
-de
+@c -*- coding: us-ascii; mode: texinfo; -*-
@node Programming work
@chapter Programming work
@menu
-* Introduction to programming::
-* Programming without compiling::
-* Finding functions::
-* Code style::
-* Debugging LilyPond::
+* Introduction to programming::
+* Programming without compiling::
+* Finding functions::
+* Code style::
+* Debugging LilyPond::
+* other stuff::
@end menu
print ly_display_scm($arg0->mutable_property_alist_)
print ly_display_scm($arg0->immutable_property_alist_)
end
-
@end example
+
+
+
+
+
+@node other stuff
+@section other stuff
+
+Copied from an email from Carl. Maybe already included.
+
+- how to use a debugger with lilypond.
+
+- how to get lilypond running and pause at a guile prompt
+
+- brief overview of how lilypond processes a file.