From fa3e81efee4c74ada3274d5dc35e68e1b64e13f8 Mon Sep 17 00:00:00 2001 From: Jonathan Kulp 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?) address@hidden - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} address@hidden) + +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?) address@hidden - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} address@hidden) + +inst = #(define-music-function (parser location string) (string?) + (make-music + 'TextScriptEvent + 'direction UP + 'text (markup #:bold (#:box string)))) address@hidden \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?) address@hidden - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} address@hidden) + +inst = #(define-music-function (parser location string) (string?) + (make-music + 'TextScriptEvent + 'direction UP + 'text (markup #:bold (#:box string)))) #(set-global-staff-size 23) address@hidden @@ -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