X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdocument-translation.scm;h=785d5f89661f2c269a5bc08277c83d88c145a616;hb=75eebcb49e52d296b1da3e1074e0825d2c780db4;hp=a7ce3b993442f69302ad4e675465ff13d5953fdf;hpb=a7f82e4dc22fc6219a9fe0f6874f8c91e3f31f24;p=lilypond.git diff --git a/scm/document-translation.scm b/scm/document-translation.scm index a7ce3b9934..785d5f8966 100644 --- a/scm/document-translation.scm +++ b/scm/document-translation.scm @@ -2,7 +2,7 @@ ;;;; ;;;; source file of the GNU LilyPond music typesetter ;;;; -;;;; (c) 2000--2005 Han-Wen Nienhuys +;;;; (c) 2000--2006 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen (define (engraver-makes-grob? name-symbol grav) @@ -115,31 +115,28 @@ (define (document-property-operation op) (let ((tag (car op)) - (body (cdr op)) - (sym (cadr op))) + (context-sym (cadr op)) + (args (cddr op)) + ) (cond ((equal? tag 'push) + (let* + ((value (car args)) + (path (cdr args))) + (string-append - "@item " - (if (null? (cddr body)) - "Revert " - "Set ") - "grob-property @code{" - (symbol->string (cadr body)) - "} in @ref{" (symbol->string sym) - "}" - (if (not (null? (cddr body))) - (string-append " to @code{" (scm->texi (cadr (cdr body))) "}" )) - "\n")) - ((equal? (object-property sym 'is-grob?) #t) "") - ((equal? (car op) 'assign) - (string-append - "@item Set translator property @code{" - (symbol->string (car body)) - "} to @code{" - (scm->texi (cadr body)) - "}\n"))))) + "@item Set " + (format "grob-property @code{~a} " (string-join (map symbol->string path) " ")) + (format " in @ref{~a} to @code{~a}. " context-sym (scm->texi value)) + "\n"))) + ((equal? (object-property context-sym 'is-grob?) #t) "") + ((equal? tag 'assign) + (format "@item Set translator property @code{~a} to @code{~a}" + context-sym + (scm->texi (car args)))) + ))) + (define (context-doc context-desc) (let* ((name-sym (cdr (assoc 'context-name context-desc)))