On Wed, Jun 10, 2015 at 7:17 AM, Víctor <piratabonifa...@gmail.com> wrote:
> Hi all: > > solfa = > #(define-music-function > (parser location framed number note) > (string? string? string?) > #{ > ^\markup{ > \box > \pad-to-box #'(0 . 0) #'(0 . 2.2){ #framed } > #number : > \italic #note > } > #}) > > \relative c' { c4^\solfa "C" "I" "do" } > > I need this function to stop drawing the box when first argument is "" or > stop printing the ":" when second or third argument are "". I'm very new to > Scheme and any help is very much apreciated. > > Regards, > Víctor. > Hi Victor, Here's one way to do it: solfa = #(define-music-function (parser location framed number note) (string? string? string?) (make-music 'TextScriptEvent 'direction 1 'text (markup (if (not (equal? framed "")) (markup #:box #:pad-to-box '(0 . 0) '(0 . 2.2) framed) "") #:simple number (if (not (or (equal? number "") (equal? note ""))) (markup #:simple ":") "") #:italic note))) \relative c' { c1^\solfa "C" "I" "do" c1^\solfa "" "I" "do" c1^\solfa "C" "" "do" c1^\solfa "C" "I" "" } Regards, Nathan
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user