1 ;;;; generate-documentation.scm -- Generate documentation
3 ;;;; source file of the GNU LilyPond music typesetter
5 ;;;; (c) 2000--2009 Han-Wen Nienhuys <hanwen@xs4all.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"
21 "document-functions.scm"
22 "document-translation.scm"
24 "document-identifiers.scm"
25 "document-backend.scm"
26 "document-markup.scm"))
28 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
31 (slot-ref (all-scheme-functions-doc) 'text)
32 (open-output-file "scheme-functions.tely"))
35 ;; (markup-doc-string)
36 ;; (open-output-file "markup-commands.tely"))
38 (call-with-output-file "markup-commands.tely"
40 (dump-node (markup-doc-node) port 2)))
42 (call-with-output-file "markup-list-commands.tely"
44 (dump-node (markup-list-doc-node) port 2)))
47 (identifiers-doc-string)
48 (open-output-file "identifiers.tely"))
52 (backend-properties-doc-string all-user-grob-properties)
53 (open-output-file "layout-properties.tely"))
56 (translation-properties-doc-string all-user-translation-properties)
57 (open-output-file "context-properties.tely"))
59 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
61 (define file-name "lilypond-internals")
62 (define outname (string-append file-name ".texi"))
64 (define out-port (open-output-file outname))
70 (texi-file-head "LilyPond program-reference" file-name
71 "(lilypond/lilypond-internals.info)")
77 @omftitle LilyPond internals
78 @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen
79 @omfdescription Programmer's reference of the LilyPond music engraving system
82 @omfcategory Applications|Publishing
87 @c don't replace quotes with directed quotes
89 \\gdef\\SETtxicodequoteundirected{Foo}
90 \\gdef\\SETtxicodequotebacktick{Bla}
98 @subtitle The music typesetter
99 @titlefont{Internals Reference}
100 @author The LilyPond development team
102 Copyright @copyright{} 1999--2009 by the authors
106 For LilyPond version @version{}
116 #:name "GNU LilyPond -- Internals Reference"
118 (string-append "@end ifnottex
122 This document is also available as a
123 @uref{source/Documentation/user/lilypond-internals.pdf,PDF} and as
124 @uref{source/Documentation/user/lilypond-internals-big-page.html,one big page}.
127 This document is also available as a
128 @uref{source/Documentation/user/lilypond-internals.pdf,PDF} and as a
129 @uref{source/Documentation/user/lilypond-internals/index.html,HTML indexed multiple pages}.
133 This is the Internals Reference (IR) for version "
135 " of LilyPond, the GNU music typesetter.")
140 (translation-doc-node)
142 (all-scheme-functions-doc)
147 @appendixsec Concept index
151 @appendixsec Function index
157 (dump-node top-node out-port 0)
158 (newline (current-error-port))