]> git.donarmstrong.com Git - lilypond.git/blobdiff - input/test/improv.ly
*** empty log message ***
[lilypond.git] / input / test / improv.ly
index 0cf2940b47e10e684ed511bd45b206ccededc495..1f3e201f1c18eb2b337bd8c8480fce24c52f2068 100644 (file)
@@ -1,54 +1,51 @@
-\version "1.7.18"
-\header { texidoc = "@cindex Improv
-Noteheads for improvisation have a different shape. " }
+\version "2.2.0"
+\header {
 
-%{ TODO: the construct with separet SquashVoice context is a little
- gory. FIXME.  %}
+    texidoc =
+"
 
+In improvisation, noteheads do not have a pitch, and have different
+shapes. In this example, this is achieved by adding
+@code{Pitch_squash_engraver} and setting @code{squashedPosition} when the
+improvisation is active.
 
-improOn = \notes {\translator Voice = impro }
-improOff = \notes {\translator SquashVoice = melo }
+"
+
+}
+
+
+improOn = \notes {
+    \set squashedPosition = #0
+    \override NoteHead  #'style = #'slash
+}
+
+improOff = \notes {
+    \unset squashedPosition 
+    \revert NoteHead #'style
+}
 
 global = \notes { s1*3 \bar "|." }
 
 \score {
-  <
-    \context ChordNames \chords {e8*7:m7 a2.:m7 bes4:m7 b1:m7 e8:m }
-    \context Staff \notes <
-      \context SquashVoice = impro { \global }
-      \context Voice = melo \transpose c c' {
-       e8 e g a a16(bes-)(a8-) g \improOn e8
-       ~e2~e8 f4 fis8
-       ~fis2 \improOff a16(bes-) a8 g e
-      }
-    >
-  >
-  \paper { 
-    \translator {
-      \VoiceContext
-      \name SquashVoice
-      \alias Voice
-      \consists Pitch_squash_engraver
-      \consists "Accidental_engraver"
-      squashedPosition = #0
-      NoteHead \override #'style = #'slash
-      Accidental \override #'transparent = ##t
-    }
-    \translator {
-      \VoiceContext
-      \alias SquashVoice
-      \consists "Accidental_engraver"
-    }
-    \translator {
-      \ScoreContext
-      \accepts SquashVoice
+    <<
+       \context ChordNames \chords {
+           e8*7:m7 a2.:m7 bes4:m7 b1:m7 e8:m
+       }
+       \notes <<
+           \context Voice = melo \transpose c c' {
+               e8 e g a a16(bes)(a8) g \improOn
+               e8
+               ~e2~e8 f4 fis8
+               ~fis2 \improOff a16(bes) a8 g e
+           }
+       >>
+    >>
+    \paper { 
+       \context {
+           \VoiceContext
+           \consists Pitch_squash_engraver
+       }
+       raggedright = ##t
     }
-    \translator {
-      \StaffContext
-      \remove "Accidental_engraver"
-      \accepts SquashVoice
-    }
-    raggedright = ##t
-  }
 }
-%% new-chords-done %%
+