]> git.donarmstrong.com Git - lilypond.git/commitdiff
* lily/staff-symbol-referencer.cc (get_position): emergency
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sat, 31 Jul 2004 18:48:01 +0000 (18:48 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sat, 31 Jul 2004 18:48:01 +0000 (18:48 +0000)
fallback: use coordinate * 2.

* input/no-notation/midi-scales.ly: move from test/

* scm/define-markup-commands.scm (score): remove debugging code.

* input/test/incipit.ly (violin): remove.

* lily/system-start-delimiter.cc (print): only draw system
delimiter to staves that reach up to left bound of the delimiter.

* input/no-notation/embedded-scm.ly: move from test/

* input/test/follow-voice.ly: remove

* input/no-notation/dynamic-absolute-volume.ly: move from test/.

* input/test/count-systems.ly: remove.

* input/regression/baerenreiter-sarabande.ly: move file.

* scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
encoding for accidental.

* Documentation/user/notation.itely (Educational use): new section

33 files changed:
ChangeLog
Documentation/user/notation.itely
input/mutopia/J.S.Bach/baerenreiter-sarabande.ly [deleted file]
input/no-notation/dynamic-absolute-volume.ly [new file with mode: 0644]
input/no-notation/embedded-scm.ly [new file with mode: 0644]
input/no-notation/midi-scales.ly [new file with mode: 0644]
input/regression/accidental-cautionary.ly
input/regression/baerenreiter-sarabande.ly [new file with mode: 0644]
input/test/blank-paper.ly [deleted file]
input/test/cautionaries.ly [deleted file]
input/test/chord-names-german.ly
input/test/chords-without-melody.ly
input/test/count-systems.ly [deleted file]
input/test/divisiones.ly
input/test/drarn-slurs.ly [deleted file]
input/test/drarn.ly [deleted file]
input/test/dynamic-absolute-volume.ly [deleted file]
input/test/embedded-scm.ly [deleted file]
input/test/embedded-tex.ly
input/test/feathered-beam.ly
input/test/follow-voice.ly [deleted file]
input/test/header-ifelse.ly
input/test/incipit.ly [deleted file]
input/test/lilypond-testpage.ly
input/test/lyrics-skip-notes.ly
input/test/markup-score.ly
input/test/midi-scales.ly [deleted file]
input/test/music-box.ly
input/test/title.ly [deleted file]
lily/staff-symbol-referencer.cc
lily/system-start-delimiter.cc
scm/define-grobs.scm
scm/define-markup-commands.scm

index ce203337e35b7fe6e2d4c8fff6029138c3ff6829..bbdbe6d6010b38886a1f0b97e59f758b9164395f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,38 @@
 2004-07-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * lily/staff-symbol-referencer.cc (get_position): emergency
+       fallback: use coordinate * 2.
+
+       * input/no-notation/midi-scales.ly: move from test/
+
+       * scm/define-markup-commands.scm (score): remove debugging code.
+
+       * input/test/incipit.ly (violin): remove. 
+
+       * lily/system-start-delimiter.cc (print): only draw system
+       delimiter to staves that reach up to left bound of the delimiter.
+
+       * input/no-notation/embedded-scm.ly: move from test/
+
+       * input/test/follow-voice.ly: remove
+
+       * input/no-notation/dynamic-absolute-volume.ly: move from test/.
+
+       * input/test/drarn*: remove
+       
+       * input/test/count-systems.ly: remove.
+
+       * input/regression/baerenreiter-sarabande.ly: move file.
+       
+       * lily/bar-line.cc (compound_barline): fix : for staff without
+       lines.
+
+       * lily/accidental.cc (print): use music_font_alist_chain(). This
+       fixes smaller cautionaries.
+
+       * scm/define-grobs.scm (all-grob-descriptions): use fetaMusic
+       encoding for accidental.
+
        * Documentation/user/notation.itely (Educational use): new section
 
        * input/test/*.ly: clean up directory: move examples into manual
index ee13e3fe0c21f64c180f095bc3079df9597bb316..142bcb576bce65e2e1058a2b65cfaabea18088aa 100644 (file)
@@ -4122,7 +4122,9 @@ chart}.  Turning on these styles is described in the input file
 Examples: @inputfileref{input/regression,chord-name-major7.ly},
 @inputfileref{input/regression,chord-name-exceptions.ly},
 @inputfileref{input/test,chord-names-jazz.ly},
-@inputfileref{input/test,chord-names-german.ly}.
+@inputfileref{input/test,chord-names-german.ly},
+@inputfileref{input/test,chords-without-melody.ly}.
+
 
 Init files: @file{scm/chords-ignatzek.scm}, and @file{scm/chord-entry.scm}.
 
diff --git a/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly b/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
deleted file mode 100644 (file)
index 0e42c30..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-\version "2.3.4"
-
-% #(ly:set-point-and-click 'line-column)
-
-forcedLastBreak =  { \break }
-
-%% We want this to perfectly match the Baerenreiter spacing.
-%% If we're not using 6 systems, there's definately a problem.
-#(define (assert-system-count smob n)
-  (let ((systems (length (ly:spanner-broken-into
-                         (ly:grob-original
-                          (ly:grob-system smob))))))
-    (if (not (equal? n systems))
-       (error
-       ;;(warn
-       (string-append "Got " (number->string systems)
-                            " systems (expecting " (number->string n))))))
-            
-
-\header {
-  title = "Solo Cello Suite II"
-  piece ="Sarabande"
-  composer = "J.S. Bach"
-  editor = "August Wenzinger"
-  source= "B\\\"arenreiter Urtext"
-
-  texidoc = "The B\\\"arenreiter edition of the Cello Suites is the
-most beautifully typeset piece of music in our collection of music (we
-both own one. It is also lovely on French Horn). This piece does not
-include articulation, but it does follows the same beaming and
-linebreaking as the printed edition. This is done in order to
-benchmark the quality of the LilyPond output.
-
-As of lilypond 1.5.42, the spacing and beam quanting is almost
-identical.
-
-There are two tweaks in this file: a line-break was forced before
-measure 25, we get back the linebreaking of Baerenreiter.  The stem
-direction is forced in measure 24. The last beam of that measure is up
-in Baerenreiter because of context. We don't detect that yet.
-
-Note that the Barenreiter edition contains a few engraving
-mistakes. The second line begins with measure 6 (but prints 5). The |:
-half way in measure 13 has been forgotten.
- "
-}
-
-
-sarabandeA =  \context Voice  \relative c {
-  \override Staff.NoteCollision  #'merge-differently-dotted = ##t
-
-  
-  << { d8. e16 e4.\trill d16 e } \\
-    { d4 a2 } >>
-  <d, a' f'>4.  e'8[ d c] |
-  bes[ g'] f[ e16(f] g[ a bes d,)] |
-  cis4.\trill b8[ a g] |
-
-  %% check spacing without accs: 
-  %%   c4.\trill bes8[ a g] |
-  
-  << { d'8. e16 e4.\trill d16 e |
-      f4. d8[ e f] }
-    \\
-    { <a, f>4 a2 <a d,>4.  } >> |
-
-  %%7
-  g'8 bes16(a) c(bes) a(g) d'8 f, |
-  <<  e4.\trill
-    \\ <c, g'>4 >>
-  d'8[ c bes]
-
-  %%9
-  << { f'8 g16(a) a4. g16(f)  |
-      g8 a16(bes) bes4. c16(d) }
-    \\
-    { a,4 <bes d >4. r8 bes4 <g f'>2  }
-  >> |
-
-  %% 11
-  e'8[ f] c,[ g'] f'[ e] |
-  f4 f,2 |
-  << {  a'4 a4.\trill bes8 
-       c bes16 a } \\
-    { f8[ es] es4. r8 d4 } >>
-
-  fis8.\trill es16 d8 c |
-  bes[ g']
-  a,[ fis']
-  es'[ d] |
-  
-  %%16
-  < bes d, g, >4.\trill a8[ g f!] |
-  e bes a f' g a |
-  d, as g es' f g |
-  cis,[ bes'] a[ g16 f] e!8[ f16 d] |
-  cis8 e16 a a,8. g'16 f8(e) |
-  
-  %%21
-  << { d e16(f) f4. e16(d) |
-      e8 f16(g) g4. a16(bes) |
-      a8 cis16 d d,8 e16 f32 g f8\trill e16(d) } \\
-    { bes4 g2 |
-      g4 <bes cis,>4. s8 |
-      <d a f>8 r r g, a4 } >>
-  |
-  \stemUp
-  d4 d,16 a'( b cis d e f g) |
-  \stemBoth
-  \forcedLastBreak
-  %%25
-  << { a16(b c b) c4. b16(a) |
-      b cis d cis d4. e16(f) | }
-    \\
-    { f,4 fis4. s8 |
-      <d g,>4 gis4.   } >>
-  \voiceOne
-  d'16(cis  d) f,
-  a,8[ e']
-  \oneVoice
-  d'[ cis] |
-  %%  d4 d,,2 |
-  d4
-  \override NoteHead
-    #'after-line-breaking-callback
- = #(lambda (smob) (assert-system-count smob 6))
-  d,,2 |
-}
-
-
-sarabandeCelloGlobal = {
-  \time 3/4
-  \key f \major
-  \clef bass
-  \repeat "volta" 2 {
-    s2.*12
-  } \repeat "volta" 2 {
-    s2.*16
-  }
-}
-
-sarabandeCelloScripts = {
-}
-
-sarabandeCelloStaff = \context Staff <<
-  \sarabandeA
-  \sarabandeCelloGlobal
-  \sarabandeCelloScripts
->>
-
-% size perversions
-smallerPaper = \paper {
-    \context { \Staff
-                 fontSize = #-1
-                 \override StaffSymbol  #'staff-space = #0.8
-                 }
-    \context { \Score
-                  \override SpacingSpanner #'spacing-increment = #0.96
-               }
-       
-    indent = 5.6 \mm
-    linewidth = 146.8 \mm
-}
-
-baerPaper = \paper {
-    indent = 7. \mm
-    linewidth =183.5 \mm
-%    interscoreline=4.0\mm
-    \context {
-            \Score
-%           \override System #'print-function = #box-grob-stencil
-    }
-}
-
-\bookpaper {
-  raggedbottom = ##t
-}
-\score{
-  \sarabandeCelloStaff
-  \paper{
-    \baerPaper
-  }
-  \midi{ \tempo 4 = 40 }
-  \header{
-    opus= "" 
-    piece ="Sarabande" }
-}
-
-%%% Local variables:
-%%% LilyPond-indent-level:2
-%%% End:
-
diff --git a/input/no-notation/dynamic-absolute-volume.ly b/input/no-notation/dynamic-absolute-volume.ly
new file mode 100644 (file)
index 0000000..0e38917
--- /dev/null
@@ -0,0 +1,28 @@
+
+\version "2.3.8"
+\header {
+    texidoc = "@cindex Dynamic Absolute Volume
+Absolute dynamics have an effect on MIDI files.
+"
+}
+
+
+\score{
+\relative c''{
+%segfault in engraver
+a1\ppp 
+a1\pp
+a\p
+a\mp
+a\mf
+a\f
+a\ff
+a\fff
+a\sf
+}
+\paper{ raggedright = ##t }
+\midi{
+\tempo 1 = 60
+}
+}
+
diff --git a/input/no-notation/embedded-scm.ly b/input/no-notation/embedded-scm.ly
new file mode 100644 (file)
index 0000000..82e938e
--- /dev/null
@@ -0,0 +1,22 @@
+\version "2.3.8"
+\header {
+    
+    texidoc = "@cindex Embedded scm
+
+You can embed scheme functions in your scores.  While generating the
+output, ``hello world'' is printed to the console.
+"
+     % see also: --safe-mode
+}
+
+#(begin
+  (newline)
+  (display "hello world")
+  (newline))
+
+\score {
+       \relative c' { c }
+       \paper {raggedright = ##t}
+}
+
+
diff --git a/input/no-notation/midi-scales.ly b/input/no-notation/midi-scales.ly
new file mode 100644 (file)
index 0000000..bb732bc
--- /dev/null
@@ -0,0 +1,159 @@
+
+\version "2.3.8"
+% candidate for regression.  -gp
+\header {
+  texidoc="Converting LilyPond input to MIDI and then again back with
+  @code{midi2ly.py} is a reversible procedure in some simple cases,
+  which mean that the original @code{.ly} -file and the one converted 
+  back from the generated @code{.midi} -file do not differ.
+  Here are produced some scales.
+  
+  "
+}
+
+%{
+  This means, doing:
+
+    lilypond input/test/midi-scales.ly
+    midi2ly midi-scales.midi
+    diff -u input/test/midi-scales.ly midi-scales-midi.ly
+
+  should show no differences at all in \key commands or notes.
+
+  Therefore, do not reformat this file unless midi2ly changes.
+
+  1.7.30 reformatted, because
+  midi2ly now outpts 1 bar per line and adds bar checks and numbers.
+
+%}
+
+scales =  \relative c {
+
+  % [INSTRUMENT_NAME] bright acoustic
+  \key c \major  % sharp-major
+  c'4 d e f |
+  g a b c |
+
+  \key g \major
+  g a b c |
+  d e fis g |
+
+  \key d \major
+  d, e fis g |
+  a b cis d |
+
+  \key a \major
+  a b cis d |
+  e fis gis a |
+
+  \key e \major
+  e, fis gis a |
+  b cis dis e |
+
+  \key b \major
+  b cis dis e |
+  fis gis ais b |
+
+  \key fis \major
+  fis, gis ais b |
+  cis dis eis fis |
+
+  \key cis \major
+  cis, dis eis fis |
+  gis ais bis cis |
+
+  \key a \minor  % sharp-minor
+  a b c d |
+  e f gis a |
+
+  \key e \minor
+  e, fis g a |
+  b c dis e |
+
+  \key b \minor
+  b cis d e |
+  fis g ais b |
+
+  \key fis \minor
+  fis, gis a b |
+  cis d eis fis |
+
+  \key cis \minor
+  cis, dis e fis |
+  gis a bis cis |
+
+  \key gis \minor
+  gis ais b cis |
+  dis e fisis gis |
+
+  \key dis \minor
+  dis, eis fis gis |
+  ais b cisis dis |
+
+  \key ais \minor
+  ais bis cis dis |
+  eis fis gisis ais |
+
+  \key f \major  % flat-major
+  f, g a bes |
+  c d e f |
+
+  \key bes \major
+  bes c d ees |
+  f g a bes |
+
+  \key ees \major
+  ees,, f g aes |
+  bes c d ees |
+
+  \key aes \major
+  aes, bes c des |
+  ees f g aes |
+
+  \key des \major
+  des,, ees f ges |
+  aes bes c des |
+
+  \key ges \major
+  ges, aes bes ces |
+  des ees f ges |
+
+  \key ces \major
+  ces,, des ees fes |
+  ges aes bes ces |
+
+  \key d \minor  % flat-minor
+  d, e f g |
+  a bes cis d |
+
+  \key g \minor
+  g, a bes c |
+  d ees fis g |
+
+  \key c \minor
+  c,, d ees f |
+  g aes b c |
+
+  \key f \minor
+  f, g aes bes |
+  c des e f |
+
+  \key bes \minor
+  bes,, c des ees |
+  f ges a bes |
+
+  \key ees \minor
+  ees, f ges aes |
+  bes ces d ees |
+
+  \key aes \minor
+  aes, bes ces des |
+  ees fes g aes |
+}
+
+\score {
+  \context Voice \scales
+  \paper { }
+  \midi { }
+}
+
index c98bd362b49ec0e0b4d81cf3776916d9ccc500bc..e8bd66233cf0ea3e5760ac82526778a376a25a98 100644 (file)
@@ -8,16 +8,14 @@ parentheses (default) or smaller accidentals.
 
 }
 
-\score {
-     {
+\paper { raggedright = ##t }
+
+{
     c''4
     cis''?4
     \override Staff.Accidental  #'cautionary-style = #'smaller
     cis''?4
     \override Staff.Accidental  #'cautionary-style = #'parentheses
     cis''?4
-    }
-
-\paper { raggedright = ##t }
 }
 
diff --git a/input/regression/baerenreiter-sarabande.ly b/input/regression/baerenreiter-sarabande.ly
new file mode 100644 (file)
index 0000000..0e42c30
--- /dev/null
@@ -0,0 +1,192 @@
+\version "2.3.4"
+
+% #(ly:set-point-and-click 'line-column)
+
+forcedLastBreak =  { \break }
+
+%% We want this to perfectly match the Baerenreiter spacing.
+%% If we're not using 6 systems, there's definately a problem.
+#(define (assert-system-count smob n)
+  (let ((systems (length (ly:spanner-broken-into
+                         (ly:grob-original
+                          (ly:grob-system smob))))))
+    (if (not (equal? n systems))
+       (error
+       ;;(warn
+       (string-append "Got " (number->string systems)
+                            " systems (expecting " (number->string n))))))
+            
+
+\header {
+  title = "Solo Cello Suite II"
+  piece ="Sarabande"
+  composer = "J.S. Bach"
+  editor = "August Wenzinger"
+  source= "B\\\"arenreiter Urtext"
+
+  texidoc = "The B\\\"arenreiter edition of the Cello Suites is the
+most beautifully typeset piece of music in our collection of music (we
+both own one. It is also lovely on French Horn). This piece does not
+include articulation, but it does follows the same beaming and
+linebreaking as the printed edition. This is done in order to
+benchmark the quality of the LilyPond output.
+
+As of lilypond 1.5.42, the spacing and beam quanting is almost
+identical.
+
+There are two tweaks in this file: a line-break was forced before
+measure 25, we get back the linebreaking of Baerenreiter.  The stem
+direction is forced in measure 24. The last beam of that measure is up
+in Baerenreiter because of context. We don't detect that yet.
+
+Note that the Barenreiter edition contains a few engraving
+mistakes. The second line begins with measure 6 (but prints 5). The |:
+half way in measure 13 has been forgotten.
+ "
+}
+
+
+sarabandeA =  \context Voice  \relative c {
+  \override Staff.NoteCollision  #'merge-differently-dotted = ##t
+
+  
+  << { d8. e16 e4.\trill d16 e } \\
+    { d4 a2 } >>
+  <d, a' f'>4.  e'8[ d c] |
+  bes[ g'] f[ e16(f] g[ a bes d,)] |
+  cis4.\trill b8[ a g] |
+
+  %% check spacing without accs: 
+  %%   c4.\trill bes8[ a g] |
+  
+  << { d'8. e16 e4.\trill d16 e |
+      f4. d8[ e f] }
+    \\
+    { <a, f>4 a2 <a d,>4.  } >> |
+
+  %%7
+  g'8 bes16(a) c(bes) a(g) d'8 f, |
+  <<  e4.\trill
+    \\ <c, g'>4 >>
+  d'8[ c bes]
+
+  %%9
+  << { f'8 g16(a) a4. g16(f)  |
+      g8 a16(bes) bes4. c16(d) }
+    \\
+    { a,4 <bes d >4. r8 bes4 <g f'>2  }
+  >> |
+
+  %% 11
+  e'8[ f] c,[ g'] f'[ e] |
+  f4 f,2 |
+  << {  a'4 a4.\trill bes8 
+       c bes16 a } \\
+    { f8[ es] es4. r8 d4 } >>
+
+  fis8.\trill es16 d8 c |
+  bes[ g']
+  a,[ fis']
+  es'[ d] |
+  
+  %%16
+  < bes d, g, >4.\trill a8[ g f!] |
+  e bes a f' g a |
+  d, as g es' f g |
+  cis,[ bes'] a[ g16 f] e!8[ f16 d] |
+  cis8 e16 a a,8. g'16 f8(e) |
+  
+  %%21
+  << { d e16(f) f4. e16(d) |
+      e8 f16(g) g4. a16(bes) |
+      a8 cis16 d d,8 e16 f32 g f8\trill e16(d) } \\
+    { bes4 g2 |
+      g4 <bes cis,>4. s8 |
+      <d a f>8 r r g, a4 } >>
+  |
+  \stemUp
+  d4 d,16 a'( b cis d e f g) |
+  \stemBoth
+  \forcedLastBreak
+  %%25
+  << { a16(b c b) c4. b16(a) |
+      b cis d cis d4. e16(f) | }
+    \\
+    { f,4 fis4. s8 |
+      <d g,>4 gis4.   } >>
+  \voiceOne
+  d'16(cis  d) f,
+  a,8[ e']
+  \oneVoice
+  d'[ cis] |
+  %%  d4 d,,2 |
+  d4
+  \override NoteHead
+    #'after-line-breaking-callback
+ = #(lambda (smob) (assert-system-count smob 6))
+  d,,2 |
+}
+
+
+sarabandeCelloGlobal = {
+  \time 3/4
+  \key f \major
+  \clef bass
+  \repeat "volta" 2 {
+    s2.*12
+  } \repeat "volta" 2 {
+    s2.*16
+  }
+}
+
+sarabandeCelloScripts = {
+}
+
+sarabandeCelloStaff = \context Staff <<
+  \sarabandeA
+  \sarabandeCelloGlobal
+  \sarabandeCelloScripts
+>>
+
+% size perversions
+smallerPaper = \paper {
+    \context { \Staff
+                 fontSize = #-1
+                 \override StaffSymbol  #'staff-space = #0.8
+                 }
+    \context { \Score
+                  \override SpacingSpanner #'spacing-increment = #0.96
+               }
+       
+    indent = 5.6 \mm
+    linewidth = 146.8 \mm
+}
+
+baerPaper = \paper {
+    indent = 7. \mm
+    linewidth =183.5 \mm
+%    interscoreline=4.0\mm
+    \context {
+            \Score
+%           \override System #'print-function = #box-grob-stencil
+    }
+}
+
+\bookpaper {
+  raggedbottom = ##t
+}
+\score{
+  \sarabandeCelloStaff
+  \paper{
+    \baerPaper
+  }
+  \midi{ \tempo 4 = 40 }
+  \header{
+    opus= "" 
+    piece ="Sarabande" }
+}
+
+%%% Local variables:
+%%% LilyPond-indent-level:2
+%%% End:
+
diff --git a/input/test/blank-paper.ly b/input/test/blank-paper.ly
deleted file mode 100644 (file)
index 2ca793a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-\version "2.3.8"
-\header {
-  texidoc="@cindex Blank Paper
-
-A blank music paper can be produced also by using invisible notes, and removing
-@code{Bar_number_engraver}.
-
-" }
-
-
-\new Score \with {
-    \override TimeSignature #'transparent = ##t
-    \override NoteHead #'transparent = ##t
-    defaultBarType = #""
-    \remove Bar_number_engraver
-} {
-    %% \clef treble
-    \clef bass 
-    \repeat unfold 3 { c1 \break }
-}
-
-
diff --git a/input/test/cautionaries.ly b/input/test/cautionaries.ly
deleted file mode 100644 (file)
index 7018440..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-\version "2.3.8"
-\header{
-       texidoc="@cindex Cautionary Accidentals
-Cautinary accidentals are displayed in slurs by default. They can be 
-shown also with accidentals of smaller size.
-" }
-\score {  \context Staff \transpose c c'' {
-  \key d \major
-%  \set Staff.autoReminders = #'cautionary
-  \override Staff.Accidental  #'font-size = #0
-  <dis c>1 cis?2 d?
-  \override Staff.Accidental  #'cautionary-style = #'smaller
-  <dis c>1 cis?2 d?
-  \override Staff.Accidental  #'cautionary-style = #'parentheses
-  <dis c>1 cis?2 d?
-
-}
-\paper{raggedright = ##t}
-}
-
-
index 6370fee7864ed17bcda8405db5d78d1140af160c..8647409d3fae56a64a3474ee39437ed574543a88 100644 (file)
@@ -15,18 +15,23 @@ scm = \chords {
     b/b bis/bis bes/bes
     % beses/beses
 } 
-\score {
- <<
-    \context ChordNames { \scm }
+
+
+\paper {
+    raggedright = ##t 
+    \context {\ChordNames \consists Instrument_name_engraver }
+}
+
+<<
+    \new ChordNames {
+       \set instrument = #"default"
+       \scm
+    }
     \new ChordNames {
        \set instrument = #"german"
        \germanChords \scm }
     \new ChordNames {
        \set instrument = #"semi-german"
        \semiGermanChords \scm }
-    \context Voice {  \scm } >>
-\paper {
-    raggedright = ##t 
-    \context {\ChordNames \consists Instrument_name_engraver }}
-
-}
+    \context Voice { \scm }
+>>
index f80965d0206423a0993cd96b62961c6cd9f481c0..1c92c7f2e529a344491e230f0c7a09a5472a9845 100644 (file)
@@ -1,29 +1,25 @@
 \version "2.3.8"
 \header {
-texidoc = "Jazz chord names can also be printed without notes."
+    texidoc = "Jazz chord names can also be printed without notes."
 }
+\paper{
+    \context{
+       \ChordNames
 
-\score{
-       \context ChordNames \chords{
+       \override BarLine #'bar-size = #4
 
-               \repeat volta 2 {
-                       f1:maj f:7 bes:7
-                       c:maj  es
-               }
-       }
-       \paper{
-               \context{
-                       \ChordNames
-
-                       \override BarLine #'bar-size = #4
-
-                       
-                       \consists Bar_engraver
-                       \consists "Volta_engraver"
-               }
-       raggedright = ##t
-       }
+       
+       \consists Bar_engraver
+       \consists "Volta_engraver"
+    }
+    raggedright = ##t
 }
 
 
+\context ChordNames \chords {
+    \repeat volta 2 {
+       f1:maj f:7 bes:7
+       c:maj  es
+    }
+}
 
diff --git a/input/test/count-systems.ly b/input/test/count-systems.ly
deleted file mode 100644 (file)
index 94e4dc8..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-
-\version "2.3.8"
-\header{
-    
-    texidoc="@cindex Count Systems
-After a line break, some function may called by overriding 
-@code{after-line-breaking-callback}. This can be most useful to assertain 
-that a piece uses a specified number of lines; typically the number of
-lines (or systems) is not engraved, but it can be printed to console when 
-generating the output. The number of lines may be associated either
-to the number of systems or the system number of a grob.
-" }
-
-%% -- jcn:
-%% See, e.g., input/mutopia/J.S.Bach/baerenreiter-sarabande.ly for
-%% an application:
-
-%% We want this to perfectly match the Baerenreiter spacing.
-%% If we're not using 6 systems, there's definately a problem.
-%% #(define (assert-system-count smob n) ...
-
-#(define (display-systemno smob)
-  (let* ((this-system (ly:grob-system smob))
-        (systems (ly:spanner-broken-into
-                  (ly:grob-original this-system))))
-   (display smob)
-   (display systems)
-   (display this-system)
-   
-   (display (list-index systems this-system))
-   (newline)))
-  
-
-#(define (display-system-count smob)
-  (display (length
-           (ly:spanner-broken-into
-            (ly:grob-original
-             (ly:grob-system smob))))))
-
-  
-  
-\score{
-    \relative c''{
-       \override NoteHead  #'after-line-breaking-callback
-        = #display-system-count
-%      = #display-systemno
-       c1
-       d
-    }
-    \paper{ indent = 0.0\mm
-           linewidth = 10.0\mm
-               raggedright = ##t
-       }
-}
-
index 3f328bcb4f37017f091dec96677d0c1ff0e5ad87..ca268a71ebbf7b652f6f8f50b167ddf7d65306dc 100644 (file)
@@ -1,10 +1,12 @@
 % possible rename to ancient- or gregorian- ?
 \header {
     texidoc = "@cindex Divisiones
+
 Divisiones are gregorian variants of breathing signs.
 Choices are @code{divisioMinima}, @code{divisioMaior},
 @code{divisioMaxima} and @code{finalis}, @code{virgula} and
 @code{caesura}.
+
 " }
 
 \version "2.3.8"
@@ -19,35 +21,27 @@ Choices are @code{divisioMinima}, @code{divisioMaior},
            \override TextScript  #'padding = #3
            \override Staff.BarLine  #'transparent = ##t
            \override Stem  #'transparent = ##t
-            g4( a) g e( f) e
-            ^\markup { "divisio minima" }
+            g4( a) g^\markup { "divisio minima" }
            \divisioMinima
-            g4( a) g e( f) e
-            ^\markup { "divisio maior" }
+            g4( a) g^\markup { "divisio maior" }
            \divisioMaior
-            g4( a) g e( f) e
-            ^\markup { "divisio maxima" }
+            g4( a) g^\markup { "divisio maxima" }
            \divisioMaxima
-            g4( a) g e( f) e
-            ^\markup { "finalis" }
+            g4( a) g^\markup { "  finalis" }
            \finalis
-            g4( a) g e( f) e
-
+            g4( a) g
             ^\markup { "virgula" }
            \virgula
-            g4( a) g e( f) e
+            g4( a) g
             ^\markup { "caesura" }
            \caesura
-            g4( a) g e( f) e
+            g4( a) g
        }
        \lyricsto "" \new  Lyrics \lyrics {
            Blah blub, blah blam.
            Blah blub, blah blam.
            Blah blub, blah blam.
-           Blah blub, blah blam.
-           Blah blub, blah blam.
-           Blah blub, blah blam.
-           Blah blub, blah blam.
+           Blah blub.
        }
     >>
 }
diff --git a/input/test/drarn-slurs.ly b/input/test/drarn-slurs.ly
deleted file mode 100644 (file)
index 0fbd305..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-\version "2.3.8"
-% possible rename to slurs-?
-% TODO: find out what drarn means, and if there's an overlap with drarn.ly
-\header{
-texidoc="@cindex Drarn Slurs
-Slurs can be forced to always attach to note heads.
-"
-}
-
-fragment =  {
-  \override Slur  #'direction = #1
-  \override Slur  #'attachment = #'(head . head)
-  g''16(g)(g)(g)(d')(d)(d)(d)
-}
-
-\paper { raggedright = ##t} 
-
-\score {
-  \relative c \fragment
-  \paper { raggedright = ##t}  
-}
-
diff --git a/input/test/drarn.ly b/input/test/drarn.ly
deleted file mode 100644 (file)
index 8c983ee..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-
-\version "2.3.8"
-\header{texidoc="@cindex Drarn
-You can attach slurs and ties to noteheads.
-" }
-
-\score {
-  \context Staff  <<
-    
-     \relative c'' {
-\time 3/8       
-      \override Stem  #'direction = #1
-      \override Tie  #'direction = #1
-      \override Slur  #'direction = #1
-      \override Slur  #'attachment = #'(head . head)
-      c8~c(c)  
-    }\\
-     \relative c'' {
-      \override Stem  #'direction = #-1
-      \override Tie  #'direction = #-1
-      \override Slur  #'direction = #-1
-      \override Slur  #'attachment = #'(head . head)
-      a8(a)~a  
-    }
-  >>
-  \paper { linewidth = 40*\staffspace
-               raggedright = ##t } 
-}
-
diff --git a/input/test/dynamic-absolute-volume.ly b/input/test/dynamic-absolute-volume.ly
deleted file mode 100644 (file)
index 0e38917..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-
-\version "2.3.8"
-\header {
-    texidoc = "@cindex Dynamic Absolute Volume
-Absolute dynamics have an effect on MIDI files.
-"
-}
-
-
-\score{
-\relative c''{
-%segfault in engraver
-a1\ppp 
-a1\pp
-a\p
-a\mp
-a\mf
-a\f
-a\ff
-a\fff
-a\sf
-}
-\paper{ raggedright = ##t }
-\midi{
-\tempo 1 = 60
-}
-}
-
diff --git a/input/test/embedded-scm.ly b/input/test/embedded-scm.ly
deleted file mode 100644 (file)
index 82e938e..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-\version "2.3.8"
-\header {
-    
-    texidoc = "@cindex Embedded scm
-
-You can embed scheme functions in your scores.  While generating the
-output, ``hello world'' is printed to the console.
-"
-     % see also: --safe-mode
-}
-
-#(begin
-  (newline)
-  (display "hello world")
-  (newline))
-
-\score {
-       \relative c' { c }
-       \paper {raggedright = ##t}
-}
-
-
index 1ea30a42f1a7287eedd77f6a4779d39870201e82..fee8f475a51d90037e72808ac88d555667721b1e 100644 (file)
@@ -3,14 +3,13 @@
 \header{ texidoc="@cindex Embedded Tex
 You can embed Tex commands in your score. "}
 
-fragment =  {
-  a''^"3 $\\times$ \\`a deux"
-}
-
 \paper { raggedright = ##t} 
 
-\score {
-  \relative c \fragment
-  \paper { raggedright = ##t }  
-}
 
+\paper {
+    raggedright = ##t
+    inputencoding = "TeX"
+}
+\relative c {
+    a''^"$\\int_0^\infty e^{-x^2} dx$" 
+}
index d0bfd39e9a70dd64fa1e57a533132fbc0150bb98..ef3c1341461506aaf7e749b58cd1406de11ee908 100644 (file)
@@ -5,16 +5,22 @@ beams: manually make two beams overlap. This uses tuplets to
 condense the spacing."
 
     }
+\paper { raggedright = ##t }
 
-\score {
-      \relative c' {
-       \context Voice {  << { \stemUp \once \override Voice.Beam #'positions = #'(0 . 0.5)
-                              \once \override Voice.TupletBracket #'number-visibility = ##f 
-                              \times 1/2 { c8[ c c c c c c c]} } \\
-                            { \stemUp \once \override Voice.Beam #'positions = #'(0 . -0.5) 
-                              \once \override Voice.TupletBracket #'number-visibility = ##f 
-                              \times 1/2 { c[ c c c c c c c] }} >> } r2
-    } 
-    \paper { raggedright = ##t }
+\relative \new Staff <<
+    \new Voice
+    {
+       \stemUp
+       \once \override Voice.Beam #'positions = #'(0 . 0.5)
+       \once \override Voice.TupletBracket #'number-visibility = ##f 
+       \times 1/2 { c8[ c c c c c c c]
+                }
+    }
+    \new Voice {
+       \stemUp
+       \once \override Voice.Beam #'positions = #'(0 . -0.5) 
+       \once \override Voice.TupletBracket #'number-visibility = ##f 
+       \times 1/2 { c[ c c c c c c c] }
+    }
+>>
 
-}
diff --git a/input/test/follow-voice.ly b/input/test/follow-voice.ly
deleted file mode 100644 (file)
index f1fc702..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-\version "2.3.8"
-% MERGED: stuff from follow-break.ly to follow-thread.ly
-
-% followVoice: connect note heads with line when thread switches staff 
-\header{ texidoc="@cindex followVoice Voice
-Voices can be traced automatically when they switch staves by setting
-@code{followVoice}. " }
-
-
-\score {
-       \relative c {
-       \new PianoStaff <<
-               \set PianoStaff.followVoice = ##t
-               \context Staff=one \context Voice {
-                       \override VoiceFollower  #'style = #'dashed-line
-                       c'1
-                       \change Staff=two
-                       b2 a
-% these lines from follow-break.ly:
-                       \change Staff=one
-                       a1
-                   }
-               \context Staff=two {\clef bass \skip 1*3 }
-               >>
-       }
-
-  \paper { raggedright = ##t }  
-}
-
index 98b4a9e0e44cc5b55b018616b1861133b7f41078..3f0a95c59512b2c2b8394914f332cc89f840322c 100644 (file)
@@ -2,23 +2,20 @@
 
 
 #(if (not (defined? 'pieceTagLine))
-  (define pieceTagLine (string-append "Jeremie " (lilypond-version) " was here")))
+  (define pieceTagLine (string-append "Title has version " (lilypond-version))))
 
 \header{
-
-    tagline = \pieceTagLine
+    title = \pieceTagLine
     texidoc = "
 
-High level functionality (eg. conditional defines),
-can be accomplished with GUILE.
+High level functionality (eg. conditional defines), can be
+accomplished with GUILE.
 
-This example puts the current version in the tagline via Scheme,
-however, the tagline is not printed to the collated webpage snippets.
+This example puts the current version in the title via Scheme.
 
 " 
 }
 
-\score{ { c'4 }
 \paper {raggedright=##t}
-}
+{ c'4 }
 
diff --git a/input/test/incipit.ly b/input/test/incipit.ly
deleted file mode 100644 (file)
index 4a6c96b..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-\version "2.3.8"
-\header { texidoc = "@cindex Incipit
-This example shows how to make an ``incipit'' to indicate 
-scordatora tuning of a violin part, by overriding the @code{style} of
-a @code{TimeSignature}.
-Here are the two first bars of Biber's Rosary sonata III. " }
-
-
-
-
-violinincipit = \relative c''{
-  \clef "french"
-  \time 2/2
-  \override Staff.TimeSignature  #'style = #'old
-  a4. b8 c4 fis |
-%  <b fis' b d>1
-  \override Staff.TimeSignature  #'style = #'C
-}
-
-bcincipit = \relative c{
-  \clef bass
-  \override Staff.TimeSignature  #'style = #'old
-  b2. cis4 | 
-  \override Staff.TimeSignature  #'style = #'C
-}
-
-violin = \relative c''{
-% Key signatures with different alterations in different octaves
-% are broken since 1.3.58!
-%  \specialkey \keysignature f' fis'' g' gis''
-  \key d \major
-  \time 2/2
-  \clef treble
-
-  a4. b8 c4 fis |
-  gis~ gis8 fis16^\trill (e) b8 c
-  <<{ a d}\\ { es,4}>>|
-}
-
-BC = \relative c{
-  \key d \major
-  \time 2/2
-  \clef "bass"
-
- \key \default
-  b2. cis4 | 
-  d e fis g |
-}
-
-\score{
-  <<
-    \context Staff = violin {{
-      \override Staff.Clef  #'transparent = ##t
-      \violinincipit \bar ".|" 
-      \revert Staff.Clef #'transparent 
-      \endincipit
-      \violin
-    }}
-    \new Staff {{
-      \override Staff.Clef  #'transparent = ##t
-      \bcincipit \bar ".|" 
-      \revert Staff.Clef #'transparent 
-      \endincipit
-      \BC
-    }}
-  >>
-       \paper { raggedright = ##t }
-}  
-
-
index 974d24e76b6ad5ed3b783f0d6364e50b4d0b3889..e53a976d01a9238fceb65ac31d8f64f564453a51 100644 (file)
@@ -17,11 +17,11 @@ metre = "metre"
 opus = "opus"
 piece = "piece"
 poet = "poet"
-texidoc = "In the generated output for printing, there are several titles which do not appear in the web pages. "
+texidoc = "All header fields with special meanings."
+  copyright = "public domain"
+  enteredby = "jcn"
+  source = "urtext"
 
-%
-% todo: check whether title.ly does the same. --hwn
-%
 }
 
 
index 27460a6ebfba40a47fcc2278fd9a0cf17a3858fd..2fea413130ed0df0966cb0857741556dec7292c4 100644 (file)
@@ -1,7 +1,7 @@
 
 \header
 {
-texidoc ="
+    texidoc ="
 
 By inserting @code{\\skip} statements into lyric lines, one can attach
 less lyric syllables to a melody. 
@@ -10,15 +10,15 @@ less lyric syllables to a melody.
 }
 
 
-% shorthand for Skip Lyric
+                               % shorthand for Skip Lyric
 sl =  { \skip 4 }
 
 \version "2.3.8"
 \score {
-  <<
-  \context Voice = "A"    {c4 c c c}
-  \lyricsto "A" \context Lyrics=A \lyrics { foo __ \sl \sl bar }
-  \lyricsto "A" \context Lyrics=B \lyrics { foo -- \sl baz bar }
-  \lyricsto "A" \context Lyrics=C \lyrics { foo -- baz -- baaz bar }
-  >>
+    <<
+       \context Voice = "A" \relative { c4 c c c }
+       \lyricsto "A" \new Lyrics { foo __ \sl \sl bar }
+       \lyricsto "A" \new Lyrics { foo -- \sl baz bar }
+       \lyricsto "A" \new Lyrics { foo -- baz -- baaz bar }
+    >>
 }
index d2e510b744ad31f885cdc8611e44ab3f75f2572d..64998db3d4725b4a4396c56f305a4a03d1efa238 100644 (file)
@@ -1,4 +1,3 @@
-
 \header {
     texidoc = "Use \\score block as markup command."
 }
@@ -26,10 +25,8 @@ tuning = \markup {
 \relative {
     \time 4/8
     \times 2/3 { c'8 d e } \times 2/3 {c d e}
-    \time 4/8
-
-                               % todo: tempo change example.
-    
-    g8 a8 g8 a \break
+    \times 2/3 { c8 d e } \times 2/3 {c d e}
+    g8 a8 g8 a 
+    g8 a8 g8 a 
 }
 
diff --git a/input/test/midi-scales.ly b/input/test/midi-scales.ly
deleted file mode 100644 (file)
index bb732bc..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-
-\version "2.3.8"
-% candidate for regression.  -gp
-\header {
-  texidoc="Converting LilyPond input to MIDI and then again back with
-  @code{midi2ly.py} is a reversible procedure in some simple cases,
-  which mean that the original @code{.ly} -file and the one converted 
-  back from the generated @code{.midi} -file do not differ.
-  Here are produced some scales.
-  
-  "
-}
-
-%{
-  This means, doing:
-
-    lilypond input/test/midi-scales.ly
-    midi2ly midi-scales.midi
-    diff -u input/test/midi-scales.ly midi-scales-midi.ly
-
-  should show no differences at all in \key commands or notes.
-
-  Therefore, do not reformat this file unless midi2ly changes.
-
-  1.7.30 reformatted, because
-  midi2ly now outpts 1 bar per line and adds bar checks and numbers.
-
-%}
-
-scales =  \relative c {
-
-  % [INSTRUMENT_NAME] bright acoustic
-  \key c \major  % sharp-major
-  c'4 d e f |
-  g a b c |
-
-  \key g \major
-  g a b c |
-  d e fis g |
-
-  \key d \major
-  d, e fis g |
-  a b cis d |
-
-  \key a \major
-  a b cis d |
-  e fis gis a |
-
-  \key e \major
-  e, fis gis a |
-  b cis dis e |
-
-  \key b \major
-  b cis dis e |
-  fis gis ais b |
-
-  \key fis \major
-  fis, gis ais b |
-  cis dis eis fis |
-
-  \key cis \major
-  cis, dis eis fis |
-  gis ais bis cis |
-
-  \key a \minor  % sharp-minor
-  a b c d |
-  e f gis a |
-
-  \key e \minor
-  e, fis g a |
-  b c dis e |
-
-  \key b \minor
-  b cis d e |
-  fis g ais b |
-
-  \key fis \minor
-  fis, gis a b |
-  cis d eis fis |
-
-  \key cis \minor
-  cis, dis e fis |
-  gis a bis cis |
-
-  \key gis \minor
-  gis ais b cis |
-  dis e fisis gis |
-
-  \key dis \minor
-  dis, eis fis gis |
-  ais b cisis dis |
-
-  \key ais \minor
-  ais bis cis dis |
-  eis fis gisis ais |
-
-  \key f \major  % flat-major
-  f, g a bes |
-  c d e f |
-
-  \key bes \major
-  bes c d ees |
-  f g a bes |
-
-  \key ees \major
-  ees,, f g aes |
-  bes c d ees |
-
-  \key aes \major
-  aes, bes c des |
-  ees f g aes |
-
-  \key des \major
-  des,, ees f ges |
-  aes bes c des |
-
-  \key ges \major
-  ges, aes bes ces |
-  des ees f ges |
-
-  \key ces \major
-  ces,, des ees fes |
-  ges aes bes ces |
-
-  \key d \minor  % flat-minor
-  d, e f g |
-  a bes cis d |
-
-  \key g \minor
-  g, a bes c |
-  d ees fis g |
-
-  \key c \minor
-  c,, d ees f |
-  g aes b c |
-
-  \key f \minor
-  f, g aes bes |
-  c des e f |
-
-  \key bes \minor
-  bes,, c des ees |
-  f ges a bes |
-
-  \key ees \minor
-  ees, f ges aes |
-  bes ces d ees |
-
-  \key aes \minor
-  aes, bes ces des |
-  ees fes g aes |
-}
-
-\score {
-  \context Voice \scales
-  \paper { }
-  \midi { }
-}
-
index 662f357433d2bd9bc6792356b53f36dfcf652548..908fc02a1316c20aaf442673cfc3ae38a5842f32 100644 (file)
@@ -9,8 +9,7 @@ using Scheme functions to avoid typing work. " }
 
 #(define (transform music)
   (let* ((es (ly:music-property music 'elements))
-         (n  (ly:music-name music))
-        )
+         (n  (ly:music-name music)))
    (if (not (equal? n "Sequential_music"))
      (ly:warn "transform needs sequential music!")
      (begin
@@ -20,14 +19,9 @@ using Scheme functions to avoid typing work. " }
            ((trans (ly:music-property (cadr elts) 'elements)) (car elts))
           (set-cdr! elts (cddr elts))
           (recurse (cdr elts))
-        )
-       )
-      )
-     )
-   )
+        )))))
    music
-  )
- )
+  )) 
 
 #(define ((trans pitches) music)
   (let* ((es (ly:music-property music 'elements))
@@ -52,11 +46,8 @@ using Scheme functions to avoid typing work. " }
              (pnew (ly:music-property (car pes) 'pitch))
              )
           (ly:music-set-property! music 'pitch pnew)
-       )
-    )
-    music
-  )
- )
+       ))
+    music))
 
 
 
@@ -82,63 +73,65 @@ endc =  {\stemDown \tieDown c,,2~c,, c,,~c,, c,,1_\fermata }
 
 \score {
    \transpose c c' \context PianoStaff <<
-    \context Staff=up   { \clef "G"  }
-    \context Staff=down { \clef "F" }
-    { \applymusic #transform {\pat {c e g c' e' }
-                         \pat {c d a d' f' }
-                        \pat {h, d g d' f' }
-                        \pat {c e g c' e' }
-                    }
-      
-      %{
-      %Etc.
-
-      %we get the idea now.
-
-
-      
-                        \pat {c e a e' a' }
-                        \pat {c d fis a d'  }
-                        \pat {h, d g d' g' }
-                        \pat {h, c e g c' }
-                        \pat {a, c e g c'  }
-                        \pat {d, a, d fis c' }
-                        \pat {g, h, d g h }
-                        \pat {g, b, e g cis'  }
-                        \pat {f, a, d a d' }
-                        \pat {f, as, d f h }
-                        \pat {e, g, c g c' }
-                        \pat {e, f, a, c f }
-                        \pat {d, f, a, c f }
-
-                        \pat {g,, d, g, h, f }
-                        \pat {c, e, g, c e }
-                        \pat {c, g, b, c e }
-                        \pat {f,, f, a, c e  }
-                        \pat {fis,, c, a, c es }
-                        \pat {as,, f, h, c d }
-                        \pat {g,, f, g, h, d }
-                        \pat {g,, e, g, c e }
-                        \pat {g,, d, g, c f }
-                        \pat {g,, d, g, h, f }
-                        \pat {g,, es, a, c fis }
-                        \pat {g,, e, g, c g }
-                        \pat {g,, d, g, c f }
-                        \pat {g,, d, g, h, f }
-                        \pat {c,, c, g, b, e }
-                       %}
-    }
-  >>
-  \paper {
-    \context {
-      \PianoStaff
-      \override VerticalAlignment #'forced-distance = #10
-    }
-
-    linewidth = 18.0 \cm
-  }
-  \midi {
-      \tempo 4 = 80
-  }
+       \context Staff=up   { \clef "G"  }
+       \context Staff=down { \clef "F" }
+       { \applymusic #transform {
+          \pat {c e g c' e' }
+          \pat {c d a d' f' }
+       }
+        
+%{
+                               %Etc.
+
+                               %we get the idea now.
+
+
+        \pat {h, d g d' f' }
+        \pat {c e g c' e' }
+
+        \pat {c e a e' a' }
+        \pat {c d fis a d'  }
+        \pat {h, d g d' g' }
+        \pat {h, c e g c' }
+        \pat {a, c e g c'  }
+        \pat {d, a, d fis c' }
+        \pat {g, h, d g h }
+        \pat {g, b, e g cis'  }
+        \pat {f, a, d a d' }
+        \pat {f, as, d f h }
+        \pat {e, g, c g c' }
+        \pat {e, f, a, c f }
+        \pat {d, f, a, c f }
+
+        \pat {g,, d, g, h, f }
+        \pat {c, e, g, c e }
+        \pat {c, g, b, c e }
+        \pat {f,, f, a, c e  }
+        \pat {fis,, c, a, c es }
+        \pat {as,, f, h, c d }
+        \pat {g,, f, g, h, d }
+        \pat {g,, e, g, c e }
+        \pat {g,, d, g, c f }
+        \pat {g,, d, g, h, f }
+        \pat {g,, es, a, c fis }
+        \pat {g,, e, g, c g }
+        \pat {g,, d, g, c f }
+        \pat {g,, d, g, h, f }
+        \pat {c,, c, g, b, e }
+%}
+     }
+   >>
+   
+   \paper {
+       \context {
+          \PianoStaff
+          \override VerticalAlignment #'forced-distance = #10
+       }
+       linewidth = 18.0 \cm
+   }
+   
+   \midi {
+       \tempo 4 = 80
+   }
 }
 
diff --git a/input/test/title.ly b/input/test/title.ly
deleted file mode 100644 (file)
index 4478db4..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-\version "2.3.8"
-% MERGE with lilypond-
-\header {
-  filename = "title.ly"
-  dedication = "dedication"
-  title = "Title"
-  subtitle = "Subtitle"
-  subsubtitle = "Subsubtitle"
-  composer = "Composer (xxxx-yyyy)"
-  instrument = "Instrument"
-  arranger = "Arranger"
-  poet = "Poet"
-  % ugr: warning: Identifier name is a keyword: `translator'
-  % translator = "Translator"
-  texttranslator = "Translator"
-  copyright = "public domain"
-  enteredby = "jcn"
-  source = "urtext"
-
-  texidoc ="This example tests titling. By processing with @code{lilypond} 
-  (not @code{lilypond-book}), you will see all the titles." 
-}
-
-\score {
-  \context Staff  \relative c' {
-     \repeat unfold 10 {
-       c d e f f e d c \break
-       c d e f f e d c
-     }
-  }
-  \header {
-    opus = "Opus 0"
-    piece = "Piece I"
-  }
-}
-
-\score {
-   \relative c' {
-     f e d c c d e f \break
-     f e d c c d e f
-  }
-  \header { 
-    opus = "Opus 1"
-    piece = "Piece II" 
-  }
-}
-
-
index 629d796ceedb79b4fe5c9ae37a5c54744159b829..9fbe6f8b4387c9f8838f4bcea2006447d9d9bd54 100644 (file)
@@ -80,7 +80,10 @@ Staff_symbol_referencer::get_position (Grob *me)
       p += 2.0 * y / Staff_symbol::staff_space (st);
       return p;
     }
-
+  else if (!st)
+    {
+      return me->relative_coordinate (me->get_parent (Y_AXIS), Y_AXIS) * 2;
+    }
   return robust_scm2double (me->get_property ("staff-position"), p);
 }
 
index 4977fa0ddce6ca27dc5ced3a3aefe75a04d1e5f4..aec3166bb4108894909d8de54556993ecf8844cc 100644 (file)
@@ -8,6 +8,7 @@
  */
 #include <math.h>
 
+#include "spanner.hh"
 #include "axis-group-interface.hh"
 #include "system-start-delimiter.hh"
 #include "output-def.hh"
@@ -106,16 +107,35 @@ MAKE_SCHEME_CALLBACK (System_start_delimiter,print,1);
 SCM
 System_start_delimiter::print (SCM smob)
 {
-  Grob * me = unsmob_grob (smob);
-
+  Spanner * me = unsmob_spanner (smob);
+  if (!me)
+    return SCM_EOL;
+  
   SCM s = me->get_property ("glyph");
   if (!ly_c_string_p (s))
     return SCM_EOL;
   SCM gsym = scm_string_to_symbol (s) ;
   
   Real staff_space = Staff_symbol_referencer::staff_space (me);
-  Interval ext = ly_scm2interval (Axis_group_interface::group_extent_callback
- (me->self_scm (), scm_int2num (Y_AXIS)));
+
+  SCM elts = me->get_property ("elements");
+  Grob * common = common_refpoint_of_list (elts, me, Y_AXIS);
+
+  Interval ext;
+  for (SCM s = elts; ly_c_pair_p (s); s = ly_cdr (s))
+    {
+      Spanner * sp = unsmob_spanner (ly_car (s));
+      if (sp &&
+         sp->get_bound (LEFT) == me->get_bound (LEFT))
+       {
+         Interval dims = sp->extent (common, Y_AXIS);
+         if (!dims.is_empty ())
+           ext.unite (dims);
+       }
+    }
+
+  ext -= me->relative_coordinate (common, Y_AXIS);
+  
   Real l = ext.length () / staff_space;
   
   if (ext.is_empty ()
index 1c028c320c94c13a137fad0b566147f3f8e3769f..eba1fe7d4a884681275ceeac0e15fe54dd4e1858 100644 (file)
@@ -17,7 +17,6 @@
     (Accidental
      . (
        (print-function . ,Accidental_interface::print)
-       (font-family . music)
        (cautionary-style . parentheses)
        (after-line-breaking-callback . ,Accidental_interface::after_line_breaking)             (meta . ((interfaces . (item-interface accidental-interface font-interface))))
        ))
        (meta . ((interfaces . (font-interface staff-symbol-referencer-interface dots-interface item-interface ))))
        ))
 
-    (DoublePercentRepeat .
-                        (
-                         (print-function . ,Percent_repeat_item_interface::double_percent)
-                         (breakable . #t)
-                         (slope . 1.0)
-                         (font-encoding . fetaMusic)
-                         (width . 2.0)
-                         (thickness . 0.48)
-                         (break-align-symbol . staff-bar)
-                         (break-visibility . ,begin-of-line-invisible)
-                         (meta . ((interfaces . (font-interface
-                                                 break-aligned-interface
-                                                 percent-repeat-interface item-interface ))))
-                        ))
-
+    (DoublePercentRepeat
+     . (
+       (print-function . ,Percent_repeat_item_interface::double_percent)
+       (breakable . #t)
+       (slope . 1.0)
+       (font-encoding . fetaMusic)
+       (width . 2.0)
+       (thickness . 0.48)
+       (break-align-symbol . staff-bar)
+       (break-visibility . ,begin-of-line-invisible)
+       (meta . ((interfaces . (font-interface
+                               break-aligned-interface
+                               percent-repeat-interface item-interface ))))
+       ))
     (DynamicText
      . (
        (Y-offset-callbacks . (,Self_alignment_interface::aligned_on_self))
        (thick-thickness . 6.6)
        (hair-thickness . 2.0)
        (padding . 1)
-       (font-encoding . fetaMusic)
        (meta . ((interfaces . (multi-measure-rest-interface multi-measure-interface rest-interface font-interface staff-symbol-referencer-interface))))
        ))
     
index 637c76055e4d69d1c6ed63ff79a59edf1321ac1b..abcb7e33135eb47c529da350096308b9201a3982 100644 (file)
        (stencil (ly:paper-system-stencil 1st)) )
 
     (ly:stencil-align-to! stencil Y CENTER)
-    (display (ly:stencil-extent stencil X))
-    (display (ly:stencil-extent stencil Y))
-;    (set! stencil (ly:stencil-translate-axis stencil -20 X))
-;    (set! stencil (ly:stencil-translate-axis stencil 20 Y))
     stencil))
 
 (def-markup-command (simple paper props str) (string?)