Hello everyone, No less than 10 minutes after, I discovered I skipped the section on cond. That solves everything!
Many thanks, mattfong On Sat, Oct 17, 2020 at 9:27 AM Matthew Fong <oxen...@gmail.com> wrote: > Hello everyone, > > I've been digging into guile/scheme and LilyPond, and it doesn't appear > that else-statements can be empty. Any pointers would be appreciated in > advance. > > For the example below, I would prefer the else-statement here to do > nothing, rather than print an empty markup: \markup { "" }, as doing so > creates a small, but observable change in vertical spacing. > > % Print markup if a symbol is defined > #(define-markup-command (PrintIfDefined layout props sym text) (symbol? > markup?) > (if (defined? sym) > ;; Do this if true > (interpret-markup layout props > #{ \markup \with-color #'(0.8 0.2 0.2) #text #}) > ;; How do I do nothing here? (empty statement preferred) > (interpret-markup layout props > #{ \markup "" #}) > ) > ) > > printInfo = 1 > \markup \PrintIfDefined #'printInfo "Print this if symbol printInfo is > defined" > > > Many thanks, > mattfong > >