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
9 ;;; Running LilyPond on this file generates the documentation
11 ;;(set-debug-cell-accesses! 5000)
14 ;;;;;;;;;;;;;;;; TODO : make modules of these!
17 ;; todo: naming: grob vs. layout property
19 (map ly:load '("documentation-lib.scm"
20 "document-functions.scm"
21 "document-translation.scm"
23 "document-backend.scm"
24 "document-markup.scm"))
26 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29 (slot-ref (all-scheme-functions-doc) 'text)
30 (open-output-file "scheme-functions.tely"))
34 (open-output-file "markup-commands.tely"))
38 (backend-properties-doc-string all-user-grob-properties)
39 (open-output-file "layout-properties.tely"))
42 (translation-properties-doc-string all-user-translation-properties)
43 (open-output-file "context-properties.tely"))
45 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
47 (define file-name "lilypond-internals")
48 (define outname (string-append file-name ".texi"))
50 (define out-port (open-output-file outname))
56 (texi-file-head "LilyPond program-reference" file-name
57 "(lilypond-internals.info)")
61 @macro usermanref{NAME}
62 @uref{../lilypond/\\NAME\\.html,\\NAME\\}
68 @macro usermanref{NAME}
69 @ref{\\NAME\\,,,lilypond/lilypond}
75 @macro usermanref{NAME}
81 @macro glossaryref{NAME}
82 @uref{../music-glossary/\\NAME\\.html,\\NAME\\}
88 @macro glossaryref{NAME}
89 @inforef{\\NAME\\,,lilypond/music-glossary}
95 @macro internalsref{NAME}
101 @macro inputfileref{DIR,NAME}
102 @uref{../../../../\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c
109 @macro inputfileref{DIR,NAME}
110 @file{\\DIR\\/\\NAME\\}
116 @macro inputfileref{DIR,NAME}@c
117 @file{\\DIR\\/\\NAME\\}@c
124 @omftitle LilyPond internals
125 @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen
126 @omfdescription Programmer's reference of the LilyPond music engraving system
127 @omftype user's guide
129 @omfcategory Applications|Publishing
140 (string-append "This is the program reference for LilyPond version " (lilypond-version))
145 (translation-doc-node)
147 (all-scheme-functions-doc)
151 @unnumbered Concept index
155 @unnumbered Variable index
159 @unnumbered Function index
165 (dump-node top-node out-port 0)
166 (newline (current-error-port))