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)
32 ;;(define no-copies #t) ; from 490 to 410K, but doesn't look nice yet
34 ;; Also, copies of interfaces use up lots more space, but that's
35 ;; functional because the default property values of the interfaces
50 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
52 (dump-node (all-scheme-functions-doc)
53 (open-output-file "scheme-functions.tely")
59 (open-output-file "markup-commands.tely")
64 #:name "Layout property overview"
65 #:desc "All user serviceable layout properties"
66 #:text (backend-properties-doc-string all-user-grob-properties))
68 (open-output-file "layout-properties.tely")
73 #:name "Context property overview"
74 #:desc "All user serviceable context properties"
75 #:text (translation-properties-doc-string all-user-translation-properties))
77 (open-output-file "context-properties.tely")
80 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
83 (define file-name "lilypond-internals")
84 (define outname (string-append file-name ".texi"))
87 (define out-port (open-output-file outname))
97 (texi-file-head "LilyPond program-reference" outname "(lilypond-internals.info)")
101 @macro usermanref{NAME}
102 @uref{../lilypond/\\NAME\\.html,\\NAME\\}
108 @macro usermanref{NAME}
109 @inforef{\\NAME\\,,lilypond}
115 @macro usermanref{NAME}
121 @macro glossaryref{NAME}
122 @uref{../music-glossary/\\NAME\\.html,\\NAME\\}
128 @macro glossaryref{NAME}
129 @inforef{\\NAME\\,,music-glossary}
135 @macro internalsref{NAME}
141 @macro inputfileref{DIR,NAME}
142 @uref{../../../../\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c
149 @macro inputfileref{DIR,NAME}
150 @file{\\DIR\\/\\NAME\\}
156 @macro inputfileref{DIR,NAME}@c
157 @file{\\DIR\\/\\NAME\\}@c
164 @omftitle LilyPond internals
165 @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen
166 @omfdescription Programmer's reference of the LilyPond music engraving system
167 @omftype user's guide
169 @omfcategory Applications|Publishing
181 (translation-doc-node)
183 (all-scheme-functions-doc)
187 @unnumbered Concept index
191 @unnumbered Variable index
195 @unnumbered Function index
206 (dump-node top-node out-port 0)
207 (newline (current-error-port))