Hallo Eugenio,
Wie kann ich dasselbe haben, indem ich nur \TODO {...} schreibe, ohne \markup?
jedes markup-command oder markup-list-command
muß durch
\markup oder
\markuplist aufgerufen werden.
Was Du suchst ist ein macro welches für den gewünschten output sorgt.
In 2.17. gibt es dafür (und für andere Aufgaben)
define-scheme-function.
define-scheme-function gibt es zwar schon in 2.16, aber mit eingeschränkter, zumindest jedoch anderer Funktionalität.
Der Code unten klappt deshalb nur mit 2.17.
Für 2.16. fällt mir im Moment nichts helfendes ein.
Eingefügt habe ich noch eine leicht veränderte Definition für
\paragraph aus dem
Extending Manual\version "2.17.24"
date = #(strftime "%d-%m-%Y" (localtime (current-time)))
% Slightly modified copy from EM 2.5.4 New markup list command definition
% German translation:
% http://lilypond.org/doc/v2.17/Documentation/extending/new-markup-list-command-definition.de.html
#(define-markup-list-command (paragraph layout props space args)
(number? markup-list?)
(interpret-markup-list layout props
#{\markuplist \justified-lines { \hspace #space #args } #}))
TODO =
#(define-scheme-function (parser location text)(markup-list?)
#{
\markup \column {
\with-color #red {
\line { "TODO: " \date }
%\vspace #1.0
\paragraph #2 { \column #text }
}
}
#})
\TODO
#'(
"1. mach das"
"2. und das"
)Bild im Anhang.
HTH,
Harm