Patch attached. It has patches for three different files so I just named it
after the one with the most changes, working.itely. Hope there's no
confusion...
Jon
On Tue, May 12, 2009 at 5:04 PM, Jonathan Kulp <[email protected]>wrote:
> Kieren MacMillan wrote:
> IMO, we [in the docs] should *not* be encouraging the use of RehearsalMarks
> for tempo indications -- this is exactly why the \tempo command was
> rewritten [can't remember by whom at the moment, but "thanks!"].
>
> In other words, this example should *also* be changed... maybe something
> like
>
> tempoPadded = #(define-music-function (parser location padding tempotext)
> (number? string?)
> #{
> \once \override Score.MetronomeMark #'padding = $padding
> \tempo \markup { \bold $tempotext }
> #})
>
>> Jon,
>>
>>
>> Yes! I'll change this one accordingly.
>>>
>>
>> Thanks,
>> Kieren.
>>
>>
> I've also changed it in the "scheme tutorial" section of the LM. Thanks for
> writing this snippet, Kieren. A patch will come once I've sorted out the
> "mpdolce" definition.
>
>
> Jon
>
> --
> Jonathan Kulp
> http://www.jonathankulp.com
>
--
Jonathan Kulp
http://www.jonathankulp.com
From fa3e81efee4c74ada3274d5dc35e68e1b64e13f8 Mon Sep 17 00:00:00 2001
From: Jonathan Kulp <j...@bashtop.(none)>
Date: Tue, 12 May 2009 20:24:13 -0500
Subject: [PATCH] DOCS: changed mpdolce and tempoMark macros in LM & NR
---
Documentation/user/programming-interface.itely | 18 ++--
Documentation/user/scheme-tutorial.itely | 20 +++--
Documentation/user/working.itely | 116 ++++++++++++------------
3 files changed, 76 insertions(+), 78 deletions(-)
diff --git a/Documentation/user/programming-interface.itely b/Documentation/user/programming-interface.itely
index 91019af..61b1cfe 100644
--- a/Documentation/user/programming-interface.itely
+++ b/Documentation/user/programming-interface.itely
@@ -132,19 +132,19 @@ custosNote = #(define-music-function (parser location note)
Multiple variables may be used,
@lilypond[quote,verbatim,ragged-right]
-tempoMark = #(define-music-function (parser location padding marktext)
- (number? string?)
+tempoPadded = #(define-music-function (parser location padding tempotext)
+ (number? string?)
#{
- \once \override Score . RehearsalMark #'padding = $padding
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $marktext }
+ \once \override Score.MetronomeMark #'padding = $padding
+ \tempo \markup { \bold $tempotext }
#})
\relative c'' {
-c2 e
-\tempoMark #3.0 #"Allegro"
-g c
-}
+ \tempo \markup { "Low tempo" }
+ c4 d e f g1
+ \tempoPadded #4.0 #"High tempo"
+ g4 f e d c1
+}
@end lilypond
diff --git a/Documentation/user/scheme-tutorial.itely b/Documentation/user/scheme-tutorial.itely
index 6d8f33e..295dff6 100644
--- a/Documentation/user/scheme-tutorial.itely
+++ b/Documentation/user/scheme-tutorial.itely
@@ -252,22 +252,24 @@ We can use it to create new commands:
@c Check this is a valid example with skylining
@c It is - 'padding still works
+
@lilypond[quote,verbatim,ragged-right]
-tempoMark = #(define-music-function (parser location padding marktext)
- (number? string?)
+tempoPadded = #(define-music-function (parser location padding tempotext)
+ (number? string?)
#{
- \once \override Score . RehearsalMark #'padding = $padding
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $marktext }
+ \once \override Score.MetronomeMark #'padding = $padding
+ \tempo \markup { \bold $tempotext }
#})
\relative c'' {
- c2 e
- \tempoMark #3.0 #"Allegro"
- g c
-}
+ \tempo \markup { "Low tempo" }
+ c4 d e f g1
+ \tempoPadded #4.0 #"High tempo"
+ g4 f e d c1
+}
@end lilypond
+
Even music expressions can be passed in:
@lilypond[quote,verbatim,ragged-right]
diff --git a/Documentation/user/working.itely b/Documentation/user/working.itely
index 84acc5f..8c5a382 100644
--- a/Documentation/user/working.itely
+++ b/Documentation/user/working.itely
@@ -329,26 +329,26 @@ the parts with all the @code{#()}. This is explained in
@ref{Advanced tweaks with Scheme}.
@lilypond[quote,verbatim,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line(#:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-#{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $markp }
-#})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
\relative c'' {
\tempo 4=50
a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
- \tempoMark "Poco piu mosso"
+ \inst "Clarinet"
cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
}
@end lilypond
There are some problems with overlapping output; we'll fix those using
the techniques in @ref{Moving objects}. But let's also
-do something about the @code{mpdolce} and @code{tempoMark}
+do something about the @code{mpdolce} and @code{inst}
definitions. They produce the output we desire, but we might want
to use them in another piece. We could simply copy-and-paste them
at the top of every file, but that's an annoyance. It also leaves
@@ -357,14 +357,14 @@ the @code{#()} somewhat ugly. Let's hide them in another file:
@example
%%% save this to a file called "definitions.ly"
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line(#:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-...@{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup @{ \bold $markp @}
-...@})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
@end example
Now let's modify our music (let's save this file as @file{"music.ly"}).
@@ -378,27 +378,25 @@ Now let's modify our music (let's save this file as @file{"music.ly"}).
\relative c'' @{
\tempo 4=50
a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
- \once \override Score.RehearsalMark #'padding = #2.0
- \tempoMark "Poco piu mosso"
+ \inst "Clarinet"
cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
@}
@end example
@lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line(#:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-#{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $markp }
-#})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
\relative c'' {
\tempo 4=50
a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
- \once \override Score.RehearsalMark #'padding = #2.0
- \tempoMark "Poco piu mosso"
+ \inst "Clarinet"
cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
}
@end lilypond
@@ -414,14 +412,14 @@ with this:
@example
%%% definitions.ly
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line( #:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-...@{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup @{ \bold $markp @}
-...@})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
\lay...@{
\context @{ \Score
@@ -439,14 +437,14 @@ tempoMark = #(define-music-function (parser location markp) (string?)
@end example
@lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line( #:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-#{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $markp }
-#})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
\layout{
\context { \Score
@@ -465,8 +463,7 @@ tempoMark = #(define-music-function (parser location markp) (string?)
\relative c'' {
\tempo 4=50
a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
- \once \override Score.RehearsalMark #'padding = #2.0
- \tempoMark "Poco piu mosso"
+ \inst "Clarinet"
cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
}
@end lilypond
@@ -481,14 +478,14 @@ overall size of the output.
@example
%%% definitions.ly
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line( #:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-...@{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup @{ \bold $markp @}
-...@})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
#(set-global-staff-size 23)
\lay...@{
@@ -506,14 +503,14 @@ tempoMark = #(define-music-function (parser location markp) (string?)
@end example
@lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0)
+mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
#:line( #:dynamic "mp" #:text #:italic "dolce" )))
-tempoMark = #(define-music-function (parser location markp) (string?)
-#{
- \once \override Score . RehearsalMark #'self-alignment-X = #left
- \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
- \mark \markup { \bold $markp }
-#})
+
+inst = #(define-music-function (parser location string) (string?)
+ (make-music
+ 'TextScriptEvent
+ 'direction UP
+ 'text (markup #:bold (#:box string))))
#(set-global-staff-size 23)
\layout{
@@ -530,8 +527,7 @@ tempoMark = #(define-music-function (parser location markp) (string?)
\relative c'' {
\tempo 4=50
a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
- \once \override Score.RehearsalMark #'padding = #2.0
- \tempoMark "Poco piu mosso"
+ \inst "Clarinet"
cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
}
@end lilypond
@@ -540,7 +536,7 @@ Now in our music, I simply replace
@code{\include "definitions.ly"} with
@code{\include "web-publish.ly"}. Of course, we could make this
even more convenient. We could make a @file{definitions.ly} file which
-contains only the definitions of @code{mpdolce} and @code{tempoMark}, a
+contains only the definitions of @code{mpdolce} and @code{inst}, a
@file{web-publish.ly} file which contains only the @code{\layout}
section listed above, and a @file{university.ly} file which
contains only the tweaks to produce the output that my professor
--
1.6.0.4
_______________________________________________
lilypond-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-devel