-;;; generate-documentation.scm -- Generate documentation
-;;;
-;;; source file of the GNU LilyPond music typesetter
-;;;
-;;; (c) 2000--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-;;; Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; generate-documentation.scm -- Generate documentation
+;;;;
+;;;; source file of the GNU LilyPond music typesetter
+;;;;
+;;;; (c) 2000--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;; File entry point for generated documentation
-
;;; Running LilyPond on this file generates the documentation
-(debug-enable 'debug)
-(debug-enable 'backtrace)
-(read-enable 'positions)
+;;(set-debug-cell-accesses! 5000)
;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;; TODO : make modules of these!
;;;;;;;;;;;;;;;;
-; todo: naming: grob vs. layout property
-
-(define load-files '("documentation-lib.scm"
- "document-functions.scm"
- "document-translation.scm"
- "document-music.scm"
- "document-backend.scm"
- "document-markup.scm"
- ))
-(map ly:load load-files)
-
-
-;;(define no-copies #t) ; from 490 to 410K, but doesn't look nice yet
-;;
-;; Also, copies of interfaces use up lots more space, but that's
-;; functional because the default property values of the interfaces
-;; are described...
-(define no-copies #f)
-
-
-
-
-
-
-
-
-
-
+;; todo: naming: grob vs. layout property
+(map ly:load '("documentation-lib.scm"
+ "document-functions.scm"
+ "document-translation.scm"
+ "document-music.scm"
+ "document-backend.scm"
+ "document-markup.scm"))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(dump-node (all-scheme-functions-doc)
- (open-output-file "scheme-functions.tely")
- 2)
+(display
+ (slot-ref (all-scheme-functions-doc) 'text)
+ (open-output-file "scheme-functions.tely"))
(display
(markup-doc-string)
+ (open-output-file "markup-commands.tely"))
- (open-output-file "markup-commands.tely")
- )
-
-(dump-node
- (make <texi-node>
- #:name "Layout property overview"
- #:desc "All user serviceable layout properties"
- #:text (backend-properties-doc-string all-user-grob-properties))
- (open-output-file "layout-properties.tely")
- 2)
+(display
+ (backend-properties-doc-string all-user-grob-properties)
+ (open-output-file "layout-properties.tely"))
-(dump-node
- (make <texi-node>
- #:name "Context property overview"
- #:desc "All user serviceable context properties"
- #:text (translation-properties-doc-string all-user-translation-properties))
-
- (open-output-file "context-properties.tely")
- 2)
+(display
+ (translation-properties-doc-string all-user-translation-properties)
+ (open-output-file "context-properties.tely"))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
(define file-name "lilypond-internals")
(define outname (string-append file-name ".texi"))
-
(define out-port (open-output-file outname))
(writing-wip outname)
-
-
-
-
(display
(string-append
- "@c -*-texinfo-*-"
- (texi-file-head "LilyPond program-reference" outname "(lilypond-internals.info)")
+ (texi-file-head "LilyPond program-reference" file-name
+ "(lilypond-internals.info)")
"
@ifhtml
@ifinfo
@macro usermanref{NAME}
-@inforef{\\NAME\\,,lilypond}
+@ref{\\NAME\\,,,lilypond/lilypond}
@cindex \\NAME\\
@end macro
@end ifinfo
+@iftex
+@macro usermanref{NAME}
+@ref{\\NAME\\}@c
+@end macro
+@end iftex
+
@ifhtml
@macro glossaryref{NAME}
@uref{../music-glossary/\\NAME\\.html,\\NAME\\}
@ifinfo
@macro glossaryref{NAME}
-@inforef{\\NAME\\,,music-glossary}
+@inforef{\\NAME\\,,lilypond/music-glossary}
@cindex \\NAME\\
@end macro
@end ifinfo
@end ignore
-") out-port)
+")
+ out-port)
(define top-node
(make <texi-node>
#:name "Top"
+ #:text
+ (string-append "This is the program reference for LilyPond version " (lilypond-version))
+
#:children
(list
(music-doc-node)
(backend-doc-node)
(all-scheme-functions-doc)
(make <texi-node>
- #:name "Index"
+ #:name "Indexes"
#:text "
@unnumbered Concept index
@printindex fn
-\n@bye"
-
-
- )
- )))
-
+\n@bye"))))
(dump-node top-node out-port 0)
(newline (current-error-port))