1 ;;; generate-documentation.scm -- Generate documentation
3 ;;; source file of the GNU LilyPond music typesetter
5 ;;; (c) 2000--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
6 ;;; Jan Nieuwenhuizen <janneke@gnu.org>
8 ;;; File entry point for generated documentation
10 ;;; Running LilyPond on this file generates the documentation
13 (debug-enable 'backtrace)
14 (read-enable 'positions)
17 ;;;;;;;;;;;;;;;; TODO : make modules of these!
20 ; todo: naming: grob vs. layout property
22 (define load-files '("documentation-lib.scm"
23 "document-functions.scm"
24 "document-translation.scm"
26 "document-backend.scm"
29 (map ly:load load-files)
31 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
34 (slot-ref (all-scheme-functions-doc) 'text)
35 (open-output-file "scheme-functions.tely"))
39 (open-output-file "markup-commands.tely"))
43 (backend-properties-doc-string all-user-grob-properties)
44 (open-output-file "layout-properties.tely") )
47 (translation-properties-doc-string all-user-translation-properties)
48 (open-output-file "context-properties.tely") )
49 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
52 (define file-name "lilypond-internals")
53 (define outname (string-append file-name ".texi"))
56 (define out-port (open-output-file outname))
66 (texi-file-head "LilyPond program-reference" outname "(lilypond-internals.info)")
70 @macro usermanref{NAME}
71 @uref{../lilypond/\\NAME\\.html,\\NAME\\}
77 @macro usermanref{NAME}
78 @ref{\\NAME\\,,,lilypond/lilypond}
84 @macro usermanref{NAME}
90 @macro glossaryref{NAME}
91 @uref{../music-glossary/\\NAME\\.html,\\NAME\\}
97 @macro glossaryref{NAME}
98 @inforef{\\NAME\\,,lilypond/music-glossary}
104 @macro internalsref{NAME}
110 @macro inputfileref{DIR,NAME}
111 @uref{../../../../\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c
118 @macro inputfileref{DIR,NAME}
119 @file{\\DIR\\/\\NAME\\}
125 @macro inputfileref{DIR,NAME}@c
126 @file{\\DIR\\/\\NAME\\}@c
133 @omftitle LilyPond internals
134 @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen
135 @omfdescription Programmer's reference of the LilyPond music engraving system
136 @omftype user's guide
138 @omfcategory Applications|Publishing
150 (translation-doc-node)
152 (all-scheme-functions-doc)
156 @unnumbered Concept index
160 @unnumbered Variable index
164 @unnumbered Function index
175 (dump-node top-node out-port 0)
176 (newline (current-error-port))