2016-03-05 9:55 GMT+01:00 David Kastrup <[email protected]>: > Blöchl Bernhard <[email protected]> writes: > >> I would recommend to add the options a user has to any item in the >> chapter (maybe in other chapters as well) >> 4.1.6 Other \paper variables >> in the actual example that would mean >> print-page-number >> default is ##true. If set to false (##f), page numbers are not >> printed. Example of use: >> print-page-number = ##f > > ##true is not workable as long we are on Guile-1.8: > > dak@lola:/usr/local/tmp/lilypond$ guile-1.8 > guile> #true > #t > ERROR: Unbound variable: rue > ABORT: (unbound-variable) > guile> #false > #f > ERROR: Unbound variable: alse > ABORT: (unbound-variable) > guile> dak@lola:/usr/local/tmp/lilypond$ guile-2.0 > GNU Guile 2.0.11 > Copyright (C) 1995-2014 Free Software Foundation, Inc. > > Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. > This program is free software, and you are welcome to redistribute it > under certain conditions; type `,show c' for details. > > Enter `,help' for help. > scheme@(guile-user)> #true > $1 = #t > scheme@(guile-user)> #false > $2 = #f > scheme@(guile-user)> > > -- > David Kastrup
And if I'm not mistaken that would mean the guilev2-expression #true would need to become ##true to be used in LilyPond-syntax. Aliasing true and #t in LilyPond is not a good idea either. This was discussed already: http://lilypond.1069038.n5.nabble.com/LilyPond-boolean-syntax-true-and-false-td185547.html#none Example: true = ##t false = ##f myListI = #'(false) myListII = #(list false) #(if (car myListI) (display "\n(car myListI) is #t") (display "\n(car myListI) is #f")) #(if (car myListII) (display "\n(car myListI) is #t") (display "\n(car myListI) is #f")) Otoh, it's always nice to improve the docs, but how to? Any guile-expression used in LilyPond _needs_ to be prepended with a hash. And there are more complex things than #t or #f: #(#t #t #f) is a guile-vector, which would be used as ##(#t #t #f) for break-visibility in LilyPond. Well, we do some aliasing there, because it's very unlikely someone uses 'end-of-line-invisible elsewhere. Summarizing, I see no reasonable way to do the _coding_ different. The _description_ in LM: http://www.lilypond.org/doc/v2.19/Documentation/learning/modifying-context-properties is pretty clear I'd say: " where a Boolean is either True (#t) or False (#f), an Integer is a positive whole number, a Real is a positive or negative decimal number, and text is enclosed in double apostrophes. Note the occurrence of hash signs, (#), in two different places – as part of the Boolean value before the t or f, and before value in the \set statement. So when a Boolean is being entered you need to code two hash signs, e.g., ##t. " Well, it's about context-properties, but the LM is recommended to be read entirely (as opposed to the NR). Is there really need to repeat it for grob-properties paper layout etc? Cheers, Harm _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
