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 glossaryref{NAME}
116 @uref{../music-glossary/\\NAME\\.html,\\NAME\\}
122 @macro glossaryref{NAME}
123 @inforef{\\NAME\\,,music-glossary}
129 @macro internalsref{NAME}
135 @macro inputfileref{DIR,NAME}
136 @uref{../../../../\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c
143 @macro inputfileref{DIR,NAME}
144 @file{\\DIR\\/\\NAME\\}
150 @macro inputfileref{DIR,NAME}@c
151 @file{\\DIR\\/\\NAME\\}@c
158 @omftitle LilyPond internals
159 @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen
160 @omfdescription Programmer's reference of the LilyPond music engraving system
161 @omftype user's guide
163 @omfcategory Applications|Publishing
175 (translation-doc-node)
177 (all-scheme-functions-doc)
181 @unnumbered Concept index
185 @unnumbered Variable index
189 @unnumbered Function index
200 (dump-node top-node out-port 0)
201 (newline (current-error-port))