From f15725b34a068a137015c45b966f682b10a3b2ad Mon Sep 17 00:00:00 2001 From: Valentin Villenave Date: Thu, 1 May 2008 12:40:05 +0200 Subject: [PATCH] Notes --- definitions/functions.ly | 114 +++++++++++++++-------------------------------- definitions/layout.ly | 5 ++- definitions/mesures.ly | 21 +++++++++ instruments/reduction.ly | 38 ++++++++++++++-- texte/didascalies.ly | 43 +++++++++++++++--- texte/texte.ly | 2 +- vocal_score.ly | 13 ++++-- voix/baryton1.ly | 12 +++-- 8 files changed, 153 insertions(+), 95 deletions(-) diff --git a/definitions/functions.ly b/definitions/functions.ly index 8445134..738a318 100644 --- a/definitions/functions.ly +++ b/definitions/functions.ly @@ -360,57 +360,48 @@ stopTxt = %% Tempo indications ----------------------------------------------% -#(define (string->duration strElt) - ( let*((ptindex (string-index strElt #\. )) (ptnumber 0) - (val (string->number (if ptindex (substring strElt 0 ptindex) strElt))) - (dur (ly:intlog2 val))) -(while ptindex (begin - (set! ptnumber (1+ ptnumber)) - (set! ptindex (string-index strElt #\. (1+ ptindex))))) - (ly:make-duration dur ptnumber 1 1))) - #(define-markup-command (mvt layout props arg) (markup?) (interpret-markup layout props (markup #:huge #:bold arg))) +#(define ((make-format-movement-markup-function text) duration count context) + (markup #:mvt text #:hspace 1 + "(" + #:general-align Y DOWN #:smaller + #:note-by-number (ly:duration-log duration) + (ly:duration-dot-count duration) + 1 + "=" + (number->string count) + ")")) + + +#(define (string->duration duration-string) + "Parse the `duration-string', e.g. ''4..'' or ''breve.'', and return a duration object." + (let* ((length (string-length duration-string)) + (dot-index (or (string-index duration-string #\.) length)) + (len (substring duration-string 0 dot-index)) + (dots (- length dot-index))) + (ly:make-duration (cond ((string=? len "breve") -1) + ((string=? len "longa") -2) + ((string=? len "maxima") -3) + (else (log2 (string->number len)))) + dots 1 1))) + mouv = -#(define-music-function (parser location texte duration count music) -(string? string? integer? ly:music?) -(define (format-movement-markup dur count context) - (make-line-markup - (list - (markup #:mvt texte #:hspace 1) - (make-simple-markup "(") - (make-general-align-markup Y DOWN (make-smaller-markup - (make-note-by-number-markup (ly:duration-log dur) - (ly:duration-dot-count dur) 1))) - (make-simple-markup "=") - (make-simple-markup (number->string count)) - (make-simple-markup ")")))) -(make-music 'SequentialMusic 'elements - (list (make-music 'ContextSpeccedMusic - 'context-type 'Score 'element - (make-music 'PropertySet - 'value format-movement-markup - 'symbol 'metronomeMarkFormatter)) - (make-music 'ContextSpeccedMusic - 'context-type 'Score 'element - (make-music 'SequentialMusic 'elements - (list (make-music 'PropertySet - 'value (ly:duration-length (string->duration duration)) - 'symbol 'tempoWholesPerMinute) - (make-music 'PropertySet - 'value (string->duration duration) - 'symbol 'tempoUnitDuration) - (make-music 'PropertySet - 'value count - 'symbol 'tempoUnitCount)))) - music - (make-music 'ContextSpeccedMusic - 'context-type 'Score 'element - (make-music 'PropertySet - 'value format-metronome-markup - 'symbol 'metronomeMarkFormatter))))) +#(define-music-function (parser location text duration count music) + (string? string? integer? ly:music?) + #{ + \set Score.metronomeMarkFormatter = #(make-format-movement-markup-function $text) + \set Score.tempoWholesPerMinute = #$(ly:moment-mul (ly:make-moment count 1) + (ly:duration-length + (string->duration duration))) + \set Score.tempoUnitDuration = #$(string->duration duration) + \set Score.tempoUnitCount = #$count + $music + \set Score.metronomeMarkFormatter = #format-metronome-markup + #}) + %%%%%%%%%%%%%%%%%%%%%%%%%% Text Functions %%%%%%%%%%%%%%%%%%%%%%%%%% @@ -436,36 +427,6 @@ ital = { %% Scenography formatting ---------------------------------------% -#(define-public (rounded-box-stencil stencil thickness padding blot) - (let* ((xext (interval-widen (ly:stencil-extent stencil 0) padding)) - (yext (interval-widen (ly:stencil-extent stencil 1) padding)) - (min-ext (min (-(cdr xext) (car xext)) (-(cdr yext) (car yext)))) - (ideal-blot (min blot (/ min-ext 2))) - (ideal-thickness (min thickness (/ min-ext 2))) - (outer (ly:round-filled-box - (interval-widen xext ideal-thickness) - (interval-widen yext ideal-thickness) - ideal-blot)) - (inner (ly:make-stencil (list 'color (x11-color 'white) (ly:stencil-expr (ly:round-filled-box - (cons (+ (car xext) ideal-thickness) (- (cdr xext) ideal-thickness)) - (cons (+ (car yext) ideal-thickness) (- (cdr yext) ideal-thickness)) - (- ideal-blot (* ideal-thickness 2)))))))) - (set! stencil (ly:stencil-add outer inner)) - stencil)) - - -#(define-markup-command (rounded-box layout props arg) (markup?) - (let* ((th (* - (ly:output-def-lookup layout 'line-thickness) - (chain-assoc-get 'thickness props 1))) - (rad (chain-assoc-get 'corner-radius props 1)) - (size (chain-assoc-get 'font-size props 0)) - (pad (* (magstep size) - (chain-assoc-get 'box-padding props 0.5))) - (m (interpret-markup layout props arg))) - (ly:stencil-add (rounded-box-stencil m th pad rad) - m))) - #(define-markup-command (did layout props text) (markup?) (interpret-markup layout props (markup #:override '(line-width . 40) @@ -473,7 +434,6 @@ ital = { #:override '(corner-radius . 2) #:rounded-box #:sans #:italic #:small #:justify-string text))) - #(define-markup-command (init-did layout props text) (markup?) (interpret-markup layout props (markup #:override '(line-width . 100) diff --git a/definitions/layout.ly b/definitions/layout.ly index 95dbf93..949eded 100644 --- a/definitions/layout.ly +++ b/definitions/layout.ly @@ -34,6 +34,7 @@ AdditionalLayout ={ \set Score.markFormatter = #format-mark-box-letters \override Score.LyricText #'self-alignment-X = #-0.5 \override Score.PaperColumn #'keep-inside-line = ##t + \override Score.NonMusicalPaperColumn #'keep-inside-line = ##t \override Score.VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 5) \override Score.MetronomeMark #'side-axis = #Y \override Score.MetronomeMark #'direction = #DOWN @@ -45,11 +46,11 @@ AdditionalLayout ={ \override Score.TimeSignature #'style = #'() \override Score.OttavaBracket #'dash-fraction = #0.05 \override Score.OttavaBracket #'dash-period = #0.25 - \override Score.Accidental #'minimum-X-extent = #'(-0.5 . 0 ) + % \override Score.Accidental #'minimum-X-extent = #'(-0.5 . 0 ) \override Score.SystemStartBracket #'collapse-height = #1 \override Score.SystemStartBrace #'collapse-height = #1 \override Score.BarLine #'hair-thickness = #1.2 - #(set-accidental-style 'modern 'Score) + #(set-accidental-style 'neo-modern 'Score) } %% Time Signatures layouts ----------------------------------------% diff --git a/definitions/mesures.ly b/definitions/mesures.ly index e9935f1..eb60ec6 100644 --- a/definitions/mesures.ly +++ b/definitions/mesures.ly @@ -950,6 +950,27 @@ ActeDeuxSceneDeuxMesures = { \time 3/2 R1.*2 \time 3/4 R2. \time 2/2 R1 \bar "||" + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. + \time 4/4 R1 + \time 3/4 R2. \bar "||" } ActeDeuxSceneTroisMesures = { diff --git a/instruments/reduction.ly b/instruments/reduction.ly index 211b51d..7222503 100644 --- a/instruments/reduction.ly +++ b/instruments/reduction.ly @@ -2551,7 +2551,7 @@ ActeDeuxSceneDeuxMainDroite = { sold' sold' la' 8 16 | sold' sold' \t { la'8 } - \tt { \gauche si,16 fad' la \droite do mi!~} + \tt { \gauche si,16 fad' la \droite do mi!} << \voiceTwo 1.\arpeggio \\ \voiceOne {la'4 sol fa mi fa8 mi fa sol}>> la4 sol fa mi fa8 mi fa sol | 4 r1 | 4 r2 | R1 | la'4 sol fa | @@ -2607,6 +2607,31 @@ ActeDeuxSceneDeuxMainDroite = { la4 sol fa mi fa8 mi fa sol \pl 1.\arpeggio {la'4 sol fa mi fa8 mi fa sol} \pl 2 {la'4 mi} r | r2 | + \repeat tremolo 24 la'32 \pl {r8 sol~ sol2. fa2. r8 mi~ mi2. fa4 mi fa sol la2.} { + \repeat tremolo 32 la32 + \repeat tremolo 24 la32 + \repeat tremolo 32 la32 + \repeat tremolo 24 la32 + \repeat tremolo 32 la32 } + \repeat tremolo 24 la32 \pl {fa4 mi fa sol} + \repeat tremolo 32 la32 + \repeat tremolo 12 {sib, la'} \pl { + \repeat tremolo 16 {sib, mi}} la1 + \repeat tremolo 4 {sib,32 la'} + \repeat tremolo 4 {do, la'} + \repeat tremolo 4 {re, la'} \pl {mib2 mi8 red mi fad} + \repeat tremolo 32 la32 + \repeat tremolo 12 {sold la} + \repeat tremolo 16 {sold la} + \repeat tremolo 24 la32 + \repeat tremolo 32 la32 \pl { r4 sol2\laissezVibrer} + \repeat tremolo 24 la32 \pl {r2 fa4 mi} + \repeat tremolo 32 la32 \pl {fa4 sol} + \repeat tremolo 24 la32 + \repeat tremolo 24 la32 + \pl {fa8 mi fa sol fa16 mi fa sol fa mi fa sol} + {la4 la la la} + } } @@ -2659,10 +2684,15 @@ ActeDeuxSceneDeuxMainGauche = { dod16 la'? red si' mi8 \clef treble r4 | 8 4 8 \clef bass dod,,1~ dod4 dod | 2. r4 | dod1~ dod4 dod | + \set tieWaitForNote = ##f 1. \arpeggio ~ 2 r4 | + \set tieWaitForNote = ##t r2 | - + 4\arpeggio r2 R1 R2. R1 R2. R1 \clef treble + mib''4 reb dob sib1 R2. R1 R2. R1 R2. fa'4 mi fa sol \clef bass | + \arpeggio r2 R1 R2. R1 \clef treble r2 fa''4 mi fa sol r | + R2. } } @@ -2875,7 +2905,7 @@ ActeDeuxSceneTroisMainGauche = { fa'2~ fa4. si8~ si2. | fad2~ fad4~ fad16 do8.~ do4~ do8. fad16~ fad2~ fad16 do'8.~ do4~ do4. dod8~ dod2 r8 | - \set Score.tieWaitForNote = ##f + \set tieWaitForNote = ##f \oct { sol2~ sol~ sol~ sol4 mi~ mi2~ mi8 sol4.~ sol16 mi8.~ mi4~ | sol2~ sol4. } 8~ 2~ 4 ~ 8. 16~ 4~ 16 @@ -2884,7 +2914,7 @@ ActeDeuxSceneTroisMainGauche = { 4 ~ 8. 16 8. 16 | la' sol la' | - \set Score.tieWaitForNote = ##t + \set tieWaitForNote = ##t \stemDown s s8 \stemNeutral | sol,16 r sol la' | \stemDown s s8 \stemNeutral | diff --git a/texte/didascalies.ly b/texte/didascalies.ly index 0acb3ba..56d33ec 100644 --- a/texte/didascalies.ly +++ b/texte/didascalies.ly @@ -267,21 +267,54 @@ ActeUnSceneTroisTerG = "Il sort, laissant l'Étranger seul en scène." %%%%%%%%%%%%%%%%%%%%%% Quatrième Tableau %%%%%%%%%%%%%%%%%%%%%%%%%% -XXA = "La lumière monte dans le silence, dévoilant le +ActeUnSceneQuatreA = "La lumière monte dans le silence, dévoilant le Roi, la Reine et l'Étranger attablés et en plein dîner ; immobiles et muets, ils ne se regardent pas." -XXB = "La musique s'interrompt en suspens, dans un +ActeUnSceneQuatreB = "La musique s'interrompt en suspens, dans un silence pesant. Le pianiste arpège un accord de dominante, en une manière d'encouragement ; mais tour à tour, les personnages vont pour chanter, et se ravisent." -XXC = "Même jeu, plusieurs fois ; enfin la +ActeUnSceneQuatreC = "Même jeu, plusieurs fois ; enfin la Reine prend la parole." -XXD = "L'Étranger reste silencieux." +ActeUnSceneQuatreD = "L'Étranger reste silencieux." -XXE = "L'Étranger continue, pour lui-même..." +ActeUnSceneQuatreE = "L'Étranger continue, pour lui-même..." +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% ACTE II % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%%%%%%%%%%%%%%%%%%%%%% Premier Tableau %%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%% Deuxième Tableau %%%%%%%%%%%%%%%%%%%%%%%%% + +ActeDeuxSceneDeuxAAA = "Dans le noir apparaît à nouveau le machine +de l'Étranger. La Reine est toujours à pied +d'oeuvre, en silence, comme si elle n'avait +cessé de s'y affairer pendant la scène +précédente." + +ActeDeuxSceneDeuxA = "Soudain, sous l'effet d'une de ses +manipulations, la machine esquisse un +mouvement, ponctué par l'orchestre." + +ActeDeuxSceneDeuxB = "La lumière diminue sur la Reine, sans +toutefois s'éteindre complètement. Sur scène, +on retrouve l'Étranger, au cachot ; on le voit +soit par une fenêtre ou un soupirail, soit par +un mur absent." + +ActeDeuxSceneDeuxC = "Tout au long de la scène, chacun des +personnages se trouvera ainsi dans un espace +scénique différent, que la lumière délimitera à +chaque fois qu'il prendra la parole." + +ActeDeuxSceneDeuxD = "Le Roi est sur un lit d'hôpital, maintenu par le +Docteur." + diff --git a/texte/texte.ly b/texte/texte.ly index 876e1ea..63bcb77 100644 --- a/texte/texte.ly +++ b/texte/texte.ly @@ -27,7 +27,7 @@ PrologueTenorTexte = \lyricmode { Aah_! __ _ Aah_! __ _ Aaah... __ _ _ Aah_! __ _ Aah_! __ _ Me pu -- nir in -- ce -- ssa -- ment, Ma -- jes -- té_; j'ai dit_: \leftSyl « no -- _ tre châ -- teau » au lieu de_: \leftSyl « vo -- tre châ -- teau » __ _ _ - \dash C'est -- \dash à -- \dash di -- re, Ma -- jes -- té_? + \dash C'est -- \dash à -- di -- re, Ma -- jes -- té_? Non, Ma -- jes -- té. Non, Ma -- jes -- té. Non, Ma -- jes -- té. Non, Ma -- jes -- té. Non, Ma -- jes -- té. Non Ma -- jes -- t... C'est que per -- so -- nne ne le co -- nnaît, Ma -- jes -- té... diff --git a/vocal_score.ly b/vocal_score.ly index d1d995a..f2bbf81 100644 --- a/vocal_score.ly +++ b/vocal_score.ly @@ -380,7 +380,7 @@ ActeDeuxSceneTrois = { \ReductionLayout composer = \OperaPartition tagline = \OperaNotice } -\score { +%{\score { \Prologue \header { tableau = \PrologueTitre @@ -453,10 +453,17 @@ ActeDeuxSceneTrois = { \ReductionLayout piece = \Separateur } }%} -%{\score { +\score { \ActeDeuxSceneDeux \header { - piece = \ActeDeuxSceneDeuxTitre + tableau = \ActeDeuxSceneDeuxTitre + indication = \ActeDeuxSceneDeuxAAA + piece = \markup { \column { + \fill-line { \fromproperty #'header:tableau } + \vspace #4 + % \fill-line { \init-did { \fromproperty #'header:indication } } + } + } } }%} %{\score { diff --git a/voix/baryton1.ly b/voix/baryton1.ly index e0d22f7..a3127ea 100644 --- a/voix/baryton1.ly +++ b/voix/baryton1.ly @@ -241,10 +241,16 @@ ActeDeuxSceneUnBisBarytonUn = { \BarytonUn ActeDeuxSceneDeuxBarytonUn = { \BarytonUn \relative { R1.*5 r2 r4 fa, dod'2~ | dod4 r r dod | - r8 dod dod dod do do si si | fa'2 r4 | R2.*4 + r8 dod dod dod do do si si | fa'2 r4 | R2.*4 R1.*2 r2 r4 fa, dod'2~ | dod4 r r dod | - r8 dod dod dod re re dod dod | fad2 r4| R1 R4. | - R1*6 + r8 dod dod dod re re dod dod | fad2 r4| R1 R4. R1*6 R2. + r1 r4 la,8 la do2 r8 la la la re2. r4 | + r4 r8 do, la' re | do sib sol la re,4 | + do r8 do la' re | do si sold4 | + r8 si sold4 la8 do | mi2. | do2 r4 | R2 R4. R1*5 R2*6 R1 R2. R1. R1 + r1 r8 la la la | re2. r4 \t{re mi do} | + la2 r4 | r2 r8 r16 lab sib fa do re | la4 r2 + \repeat unfold 10 {R1 R2. } } } -- 2.11.4.GIT