From: fred <fred>
Date: Wed, 27 Mar 2002 00:32:55 +0000 (+0000)
Subject: lilypond-1.3.107
X-Git-Tag: release/1.5.59~1125
X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=898af3646fa96e1a36d25fb197cbc317fe3881aa;p=lilypond.git

lilypond-1.3.107
---

diff --git a/scm/backend-documentation-lib.scm b/scm/backend-documentation-lib.scm
index 529bac67e4..e61b2ac07b 100644
--- a/scm/backend-documentation-lib.scm
+++ b/scm/backend-documentation-lib.scm
@@ -9,21 +9,23 @@
 
 ;;; This file generates documentation for the backend of lilypond.
 
-
 ;; alist of property descriptions
+;; when called by First level Interface description, desc == '()
+;; CDR "not set" is only used for Second level Element description
 (define (document-element-property prop desc)
   (let ((handle (assoc (car prop) desc)))
     (cons
-     (string-append
-      "@code{" (symbol->string (car prop)) "} "
-      "(" (type-name (cadr prop)) "):")
-     (string-append
-      (caddr prop)
-      "\ndefault value: @code{"
-      (if (pair? handle)
-	  (scm->string (cdr handle))
-	  "not set" )
-      "}"))))
+     (string-append "@code{" (symbol->string (car prop)) "} "
+		    "(" (type-name (cadr prop)) ")"
+		    (if (equal? desc '()) "" ":"))
+     (string-append (if (equal? desc '())
+			(caddr prop)
+			(if (pair? handle)
+			    (string-append (caddr prop)
+					   "\ndefault value: @code{"
+					   (scm->string (cdr handle))
+					   "}")
+			    "not set"))))))
 
 ;; First level Interface description
 ;; Second level, part of element description
@@ -38,18 +40,25 @@
     (string-append
      (section level (string-append (interface-name (symbol->string name))))
      desc
-     (description-list docs))))
+     
+     (description-list
+      ;; filter-out entries with CDR "not set"
+      (apply append
+	     (map (lambda  (x)
+		    (if (string-match "not set" (cdr x)) '() (list x)))
+		  docs))))))
 
 ;; First level Interface description
 (define (document-separate-interface interface)
   (let ((name (car interface)))
+    (processing name)
     (string-append
      (node (interface-name name))
      (document-interface 2 interface '()))))
 
 ;; First level element description
 (define (document-element iname description)
-  (display (string-append "\nProcessing " iname " ... ") (current-error-port))
+  (processing iname)
   (let* ((metah (assoc 'meta description))
 	 
 	 (meta (if (pair? metah)
@@ -97,14 +106,46 @@
 
 ;; testin.. -- how to do this
 (eval-string (ly-gulp-file "interface.scm"))
-(define interface-description-alist
+(define xinterface-description-alist
   `(
     (general-element . ,general-element-interface)
     (beam . ,beam-interface)
     (clef . ,clef-interface)
     (slur . ,slur-interface)
     ))
-	      
+
+;; burp, need these for running outside of LilyPond
+(if #f
+    (begin
+
+      (debug-enable 'backtrace)
+
+      (define (number-pair?  x)
+	(and (pair? x) (number? (car x)) (number? (cdr x))))
+      
+      (define (ly-gulp-file x) "")
+      (define (ly-element? x) #f)
+      (define (ly-input-location? x) #f)
+      (define (dir? x) #f)
+      (define (moment? x) #f)
+      (load "lily.scm")))
+
+(use-modules (ice-9 string-fun))
+(define (list-interface-names)
+  (let* ((text (string-append (ly-gulp-file "interface.scm") "\n(define "))
+	 (r (make-regexp 
+	     "\n[(](define *([a-z-]*-interface)*)*[^\n]*"))
+	 (t (regexp-substitute/global #f r text 2 " " 'post))
+	 (ugh (regexp-substitute/global #f "#f *" t 'pre 'post))
+	 (l (separate-fields-discarding-char #\  ugh list)))
+    (reverse (cdr (reverse l)))))
+
+(eval (ly-gulp-file "interface.scm"))
+
+(define interface-description-alist
+  (map (lambda (x) (cons (string->symbol x) (eval-string x)))
+	     (list-interface-names)))
+
 (define (document-all-interfaces name)
   (string-append
    (texi-node-menu name (map (lambda (x) (cons (interface-name x) ""))
diff --git a/scm/documentation-lib.scm b/scm/documentation-lib.scm
index b4782af375..7e1648846c 100644
--- a/scm/documentation-lib.scm
+++ b/scm/documentation-lib.scm
@@ -13,6 +13,9 @@
 	  (uniqued-alist (cdr alist) (cons (car alist) acc)
   ))))
 
+(define (processing name)
+  (display (string-append "\nProcessing " name " ... ") (current-error-port)))
+
 (define (self-evaluating? x)
   (or (number? x) (string? x) (procedure? x) (boolean? x)))
 
diff --git a/scm/engraver-documentation-lib.scm b/scm/engraver-documentation-lib.scm
index 7c8442f3a6..1fcc5914b3 100644
--- a/scm/engraver-documentation-lib.scm
+++ b/scm/engraver-documentation-lib.scm
@@ -71,6 +71,7 @@
 ;; First level Engraver description
 (define (document-separate-engraver top description)
   (let ((name (car description)))
+    (processing name)
     (string-append
      (node (engraver-name name))
      (document-engraver 2 description))))
@@ -123,7 +124,7 @@
 (define (document-context top context-desc)
   (let ((name (cdr (assoc 'type-name context-desc)))
 	(doc (context-doc-string context-desc)))
-    
+    (processing name)
     (string-append
      (node (context-name name))
      (section 2 (context-name name))
diff --git a/stepmake/stepmake/texinfo-rules.make b/stepmake/stepmake/texinfo-rules.make
index 2a2dc8d101..032d3a4a38 100644
--- a/stepmake/stepmake/texinfo-rules.make
+++ b/stepmake/stepmake/texinfo-rules.make
@@ -6,7 +6,7 @@ $(outdir)/%.info: $(outdir)/%.texi
 	-$(MAKEINFO) --force --output=$@ $<
 
 $(outdir)/%.html: $(outdir)/%.texi
-	-$(MAKEINFO) --force --output=$@ --html --no-split $<
+	-$(MAKEINFO) --force --output=$@ --html --no-split --no-headers $<
 # we want footers even if website builds (or is built) partly
 	$(footify) $@