X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=scm%2Fdocumentation-lib.scm;h=da7d29665855095e98d75ac2704848c7d9377de2;hb=476687b992c1c0d551b0d425e5ece78c39cfc3ef;hp=49a251720d4f78c7df5cb6125372e930110871ed;hpb=cf137655b7aee9988ef536d6fa5e38d279ee73cf;p=lilypond.git diff --git a/scm/documentation-lib.scm b/scm/documentation-lib.scm index 49a251720d..da7d296658 100644 --- a/scm/documentation-lib.scm +++ b/scm/documentation-lib.scm @@ -1,6 +1,6 @@ ;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; Copyright (C) 2000--2012 Han-Wen Nienhuys +;;;; Copyright (C) 2000--2014 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen ;;;; ;;;; LilyPond is free software: you can redistribute it and/or modify @@ -52,22 +52,21 @@ (node-children node))) "")) port) - (map (lambda (x) (dump-node x port (+ 1 level))) - (node-children node))) + (for-each (lambda (x) (dump-node x port (+ 1 level))) + (node-children node))) (define (processing name) (ly:basic-progress (_ "Processing ~S...") name)) -(define (self-evaluating? x) - (or (number? x) (string? x) (procedure? x) (boolean? x))) - -(define (texify x) - x) - -(define (scm->texi x) - (string-append "@code{" (texify (scm->string x)) "}")) - - +(define (scm->texi val) + (let* (; always start on a new line + (open-texi (if (pretty-printable? val) + "\n@verbatim\n" + "\n@code{")) + (close-texi (if (pretty-printable? val) + "@end verbatim" + "}"))) + (string-append open-texi (scm->string val) close-texi))) (define (texi-section-command level) (assoc-get level '( @@ -91,7 +90,7 @@ "Document one (LABEL . DESC); return empty string if LABEL is empty string." (if (eq? (car label-desc-pair) "") "" - (string-append "\n@item " (car label-desc-pair) "\n" (cdr label-desc-pair)))) + (string-append "\n\n@item " (car label-desc-pair) "\n" (cdr label-desc-pair)))) (define (description-list->texi items-alist quote?) @@ -100,9 +99,9 @@ string-to-use). If QUOTE? is #t, embed table in a @quotation environment." (string-append "\n" (if quote? "@quotation\n" "") - "@table @asis\n" - (apply string-append (map one-item->texi items-alist)) - "\n" + "@table @asis" + (string-concatenate (map one-item->texi items-alist)) + "\n\n" "@end table\n" (if quote? "@end quotation\n" ""))) @@ -113,14 +112,14 @@ string-to-use). If QUOTE? is #t, embed table in a @quotation environment." (string-append "\n@menu" - (apply string-append - (map (lambda (x) - (string-append - (string-pad-right - (string-append "\n* " (car x) ":: ") - (+ maxwid 8)) - (cdr x))) - items-alist)) + (string-concatenate + (map (lambda (x) + (string-append + (string-pad-right + (string-append "\n* " (car x) ":: ") + (+ maxwid 8)) + (cdr x))) + items-alist)) "\n@end menu\n" ;; Menus don't appear in html, so we make a list ourselves "\n@ignore\n" @@ -209,12 +208,8 @@ with init values from ALIST (1st optional argument) (ly:error (_ "cannot find description for property ~S (~S)") sym where)) (cons - (string-append "@code{" name "} " - "(" typename ")" + (string-append "@code{" name "} (" typename ")" (if init-value - (string-append - ":\n\n" - (scm->texi init-value) - "\n\n") - "")) + (string-append ":" (scm->texi init-value) "\n") + "")) desc)))