X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdocument-music.scm;h=7d7e2a9942b974169b722eb2ec39b2e33200c390;hb=2383bd3692349e7e124abae4a4f7bb2da694ea28;hp=1491a30cad343f4d7b783afcfb75401cb242ba23;hpb=a6a4b3fc2009f17a1a48cca0c11bfd3f38645937;p=lilypond.git diff --git a/scm/document-music.scm b/scm/document-music.scm index 1491a30cad..7d7e2a9942 100644 --- a/scm/document-music.scm +++ b/scm/document-music.scm @@ -1,26 +1,39 @@ -;;;; document-markup.scm -- part of generated backend documentation +;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; source file of the GNU LilyPond music typesetter -;;;; -;;;; (c) 1998--2008 Han-Wen Nienhuys +;;;; Copyright (C) 1998--2012 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen +;;;; +;;;; LilyPond is free software: you can redistribute it and/or modify +;;;; it under the terms of the GNU General Public License as published by +;;;; the Free Software Foundation, either version 3 of the License, or +;;;; (at your option) any later version. +;;;; +;;;; LilyPond is distributed in the hope that it will be useful, +;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;;; GNU General Public License for more details. +;;;; +;;;; You should have received a copy of the GNU General Public License +;;;; along with LilyPond. If not, see . + +(define doc-context (ly:make-global-context $defaultlayout)) (define (music-props-doc) (make #:name "Music properties" #:desc "All music properties, including descriptions." #:text - (let* ((ps (sort (map symbol->string all-music-properties) stringstring all-music-properties) ly:string-citexi 'music (string->symbol prop))) ps)) (texi (description-list->texi descs #f))) texi))) -(define music-types->names (make-vector 61 '())) +(define music-types->names (make-hash-table 61)) (filter-map (lambda (entry) (let* ((class (ly:camel-case->lisp-identifier (car entry))) - (classes (ly:make-event-class class))) + (classes (ly:make-event-class doc-context class))) (if classes (map (lambda (cl) @@ -53,9 +66,8 @@ (symbol->string (car entry)) "} is in music objects of type " (human-listify - (sort - (map (lambda (x) (ref-ify (symbol->string x))) - (cdr entry)) stringstring (cdr entry)) + ly:string-cialist music-types->names) alistalist music-types->names) ly:alist-cilisp-identifier namesym)) - (classes (ly:make-event-class class)) + (classes (ly:make-event-class doc-context class)) (accept-list (if classes (human-listify (map ref-ify @@ -93,7 +105,8 @@ (string-append "\n\nEvent classes:\n" (human-listify - (map ref-ify (map symbol->string classes))) + (map ref-ify (sort (map symbol->string classes) + ly:string-citexi (map (lambda (x) (property->texi 'music x props)) - (map car props)) + (sort (map car props) ly:symbol-ci