Le 9 sept. 09 à 15:58, Kieren MacMillan a écrit :
The problem is, something like
\markup \uppercase \fromproperty #'header:title
fails. In general, I'd rather have the syntax be
\markup \uppercase { "test }
instead of
\markup \uppercase #"test"
There is currently no workaround to this issue.
If all pure string markups were interpreted through the `simple'
command, (which would require modifying the parser and the `markup'
scheme macro), it would possible to do eg:
#(define-markup-command (uppercase paper props markup-argument)
(markup?)
"Make the markup uppercase.
Syntax: \\uppercase \"string\""
(interpret-markup paper (prepend-alist-chain 'case 'up props)
markup-argument))
#(define-markup-command (simple paper props str) (string?)
"Depending on the `case' property, may change the case
of the string before interpreting it."
(let ((text-case (chain-assoc-get 'case props 'normal)))
(interpret-markup paper props
(case text-case
((up) (string-upcase str))
((down) (string-downcase str))
;; TODO: small caps, capitalized text, etc
(else str)))))
%%\markup { \uppercase { toto \bold titi } tata }
\markup { \uppercase { \simple #"toto" \bold \simple #"titi" } \simple
#"tata" }
==> TOTO *TITI* tata
nicolas
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel