]> git.donarmstrong.com Git - lilypond.git/commitdiff
Second phase of LSR adding.
authorGraham Percival <graham@percival-music.ca>
Thu, 8 Feb 2007 04:33:41 +0000 (20:33 -0800)
committerGraham Percival <graham@percival-music.ca>
Thu, 8 Feb 2007 04:33:41 +0000 (20:33 -0800)
39 files changed:
buildscripts/makelsr.py
input/lsr/LSR.ly
input/lsr/chords/AA-intro-chords.ly [deleted file]
input/lsr/chords/AAA-intro-chords.ly [new file with mode: 0644]
input/lsr/guitar/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/guitar/GNUmakefile [new file with mode: 0644]
input/lsr/guitar/SConscript [new file with mode: 0644]
input/lsr/guitar/guitar-string-number.ly [new file with mode: 0644]
input/lsr/parts/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/parts/GNUmakefile [new file with mode: 0644]
input/lsr/parts/Rehearsal-mark-numbers.ly [new file with mode: 0644]
input/lsr/parts/SConscript [new file with mode: 0644]
input/lsr/parts/Tag-filter.ly [new file with mode: 0644]
input/lsr/repeats/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/repeats/GNUmakefile [new file with mode: 0644]
input/lsr/repeats/SConscript [new file with mode: 0644]
input/lsr/repeats/Volta-multi-staff.ly [new file with mode: 0644]
input/lsr/spacing/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/spacing/GNUmakefile [new file with mode: 0644]
input/lsr/spacing/Page-layout-twopass.ly [new file with mode: 0644]
input/lsr/spacing/Page-spacing.ly [new file with mode: 0644]
input/lsr/spacing/Proportional-spacing.ly [new file with mode: 0644]
input/lsr/spacing/Proportional-strict-grace-notes.ly [new file with mode: 0644]
input/lsr/spacing/Proportional-strict-notespacing.ly [new file with mode: 0644]
input/lsr/spacing/SConscript [new file with mode: 0644]
input/lsr/spacing/alignment-vertical-spacing.ly [new file with mode: 0644]
input/lsr/staff/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/staff/GNUmakefile [new file with mode: 0644]
input/lsr/staff/SConscript [new file with mode: 0644]
input/lsr/staff/Staff-line-positions.ly [new file with mode: 0644]
input/lsr/text/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/text/GNUmakefile [new file with mode: 0644]
input/lsr/text/SConscript [new file with mode: 0644]
input/lsr/text/font-family-override.ly [new file with mode: 0644]
input/lsr/vocal/AAA-intro-advanced.ly [new file with mode: 0644]
input/lsr/vocal/Ambitus.ly [new file with mode: 0644]
input/lsr/vocal/GNUmakefile [new file with mode: 0644]
input/lsr/vocal/SConscript [new file with mode: 0644]
input/lsr/vocal/lyric-combine.ly [new file with mode: 0644]

index a2ccaa1deb2fa94c54c68515eb5e0ae58d54e41c..c88f24323b9b2a5d13e891975a2077c5ed5372da 100755 (executable)
@@ -4,7 +4,8 @@ import os
 import os.path
 import shutil
 
-dirs = ['ancient','chords','connecting','contemporary']
+# 'expressive' not available yet
+dirs = ['ancient','chords','connecting','contemporary','guitar','parts','repeats','spacing','staff','text','vocal']
 
 try:
        in_dir = sys.argv[1]
index 9aa73f0c0f3077804eb2b5960cb94dc4dde6eb15..892c9f628ac51da71f7c3b9f2a6a95844db60622 100644 (file)
@@ -16,6 +16,22 @@ These snippets are fazzle snap.
 
 @strong{@uref{contemporary/collated-files.html,Contemporary notation}}:
 These snippets are fazzle snap.
+
+@strong{@uref{parts/collated-files.html,Preparing parts}}:
+These snippets are blah blah.
+
+@strong{@uref{repeats/collated-files.html,Repeats}}:
+These snippets are blah blah.
+
+@strong{@uref{spacing/collated-files.html,Spacing issues}}:
+These snippets are blah blah.
+
+@strong{@uref{text/collated-files.html,Text}}:
+These snippets are blah blah.
+
+@strong{@uref{vocal/collated-files.html,Vocal music}}:
+These snippets are blah blah.
+
 "
 }
 
diff --git a/input/lsr/chords/AA-intro-chords.ly b/input/lsr/chords/AA-intro-chords.ly
deleted file mode 100644 (file)
index b907dd0..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-\version "2.10.0"
-%% +.ly: Be the first .ly file for lys-to-tely.py.
-%% Better to make lys-to-tely.py include "introduction.texi" or
-%% other .texi documents too?
-
-\header{
-texidoc = #(string-append "
-@unnumbered Introduction
-
-This document shows examples from the
-@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
-
-In the web version of this document, you can click on the file name
-or figure for each example to see the corresponding input file.
-
-This document is for LilyPond version 
-" (lilypond-version) "." )
-}
-
-% make sure .png  is generated.
-\lyrics {  " " }
diff --git a/input/lsr/chords/AAA-intro-chords.ly b/input/lsr/chords/AAA-intro-chords.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/guitar/AAA-intro-advanced.ly b/input/lsr/guitar/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/guitar/GNUmakefile b/input/lsr/guitar/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/guitar/SConscript b/input/lsr/guitar/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/guitar/guitar-string-number.ly b/input/lsr/guitar/guitar-string-number.ly
new file mode 100644 (file)
index 0000000..85d9e6b
--- /dev/null
@@ -0,0 +1,18 @@
+\version "2.10.12"
+
+\header { texidoc = "
+String numbers can be added to chords. They use the same positioning mechanism as finger instructions.
+" }
+
+\paper {
+  ragged-right = ##t
+}
+
+\relative {
+  <c\1 e\2 g\3>
+  c4
+  \set fingeringOrientations = #'(down left up)
+  \set stringNumberOrientations = #'(down right up)
+  <c\1 e\2 g\3>
+  <c-1\1 e-2\2 g-3\3>
+}
diff --git a/input/lsr/parts/AAA-intro-advanced.ly b/input/lsr/parts/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/parts/GNUmakefile b/input/lsr/parts/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/parts/Rehearsal-mark-numbers.ly b/input/lsr/parts/Rehearsal-mark-numbers.ly
new file mode 100644 (file)
index 0000000..b1deb78
--- /dev/null
@@ -0,0 +1,23 @@
+\version "2.10.12"
+
+\header { texidoc = "
+Marks can be printed as numbers.  
+By setting {markFormatter} we may choose a different style of mark printing. Also, marks can be specified manually, with a markup argument.
+" }
+
+\paper { ragged-right = ##t } 
+
+\relative c''{
+  \set Score.markFormatter = #format-mark-numbers 
+  c1 | \mark \markup { \musicglyph #"scripts.coda" }
+  c1 | \mark \default
+  c1 | \mark \default
+  \set Score.markFormatter
+  = #(lambda (mark  context)
+      (make-box-markup (format-mark-numbers mark context)))
+  c1 | \mark \default
+  \set Score.markFormatter
+  = #(lambda (mark  context)
+      (make-circle-markup (format-mark-numbers mark context)))
+  c1 | \mark \default
+}
diff --git a/input/lsr/parts/SConscript b/input/lsr/parts/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/parts/Tag-filter.ly b/input/lsr/parts/Tag-filter.ly
new file mode 100644 (file)
index 0000000..c3f438a
--- /dev/null
@@ -0,0 +1,42 @@
+\version "2.10.12"
+
+\header { texidoc = "
+The {\tag} command marks music expressions with a name. These tagged expressions can be filtered out later. This mechanism can be used to make different versions of the same music. In this example, the top stave displays the music expression with all tags included. The bottom two staves are filtered: the part has cue notes and fingerings, but the score has not.
+" }
+
+\layout { ragged-right= ##t }
+
+common =
+\relative c''  {
+
+  c1
+  \relative c' <<
+    \tag #'part <<
+      R1 \\
+      {
+       \set fontSize = #-1
+       c4_"cue" f2 g4 } 
+    >>
+    \tag #'score R1
+  >>
+  c1-\tag #'part ^4
+}
+
+
+
+\simultaneous { 
+  \new Staff {
+    \set Staff.instrumentName = #"both"
+    \common
+  }
+  \new Staff {
+    \set Staff.instrumentName = #"part"
+    \keepWithTag #'part \common
+  }
+  \new Staff {
+    \set Staff.instrumentName = #"score"
+    \keepWithTag #'score \common
+  }
+}
+
+
diff --git a/input/lsr/repeats/AAA-intro-advanced.ly b/input/lsr/repeats/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/repeats/GNUmakefile b/input/lsr/repeats/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/repeats/SConscript b/input/lsr/repeats/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/repeats/Volta-multi-staff.ly b/input/lsr/repeats/Volta-multi-staff.ly
new file mode 100644 (file)
index 0000000..0a070e4
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.12"
+
+\header { texidoc = "
+By setting {voltaOnThisStaff}, repeats can be put also over other staves than the topmost one in a score.
+" }
+
+\layout { ragged-right = ##t }
+vmus =  { \repeat volta 2 c1 \alternative { d e } } 
+
+\relative c'' <<
+  \new StaffGroup <<
+    \context Staff \vmus
+    \new Staff \vmus
+  >>
+  \new StaffGroup <<
+    \new Staff <<
+      \set Staff.voltaOnThisStaff = ##t
+      \vmus >>
+    \new Staff \vmus
+  >>
+>>
diff --git a/input/lsr/spacing/AAA-intro-advanced.ly b/input/lsr/spacing/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/spacing/GNUmakefile b/input/lsr/spacing/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/spacing/Page-layout-twopass.ly b/input/lsr/spacing/Page-layout-twopass.ly
new file mode 100644 (file)
index 0000000..2812a66
--- /dev/null
@@ -0,0 +1,34 @@
+\version "2.10.12"
+
+\header { texidoc = "
+Page breaking details can be stored for later reference.
+
+(you should run this snippet on your own computer; we cannot compute the two-pass layout here)
+" }
+
+\paper  {
+  #(define write-page-layout #t)
+}
+bla = \new Staff {
+  c1 c1
+  \break
+  \grace { c16 } c1\break
+  \repeat unfold 5 \relative { c1 c1 c1 }
+}
+
+
+\book {
+  \score {
+    \bla
+    \layout {
+      #(define tweak-key "blabla")
+    }
+  }
+}
+
+tweakFileName = #(format "~a-page-layout.ly" (ly:parser-output-name parser))
+
+#(newline)
+
+#(ly:progress "Contents of: '~a'" (ly:gulp-file tweakFileName))
+
diff --git a/input/lsr/spacing/Page-spacing.ly b/input/lsr/spacing/Page-spacing.ly
new file mode 100644 (file)
index 0000000..59ddc8c
--- /dev/null
@@ -0,0 +1,73 @@
+\version "2.10.12"
+
+\header { texidoc = "
+By setting properties in {NonMusicalPaperColumn}, vertical spacing of page layout can be adjusted.
+
+For technical reasons, {overrideProperty} has to be used for setting properties on individual object. {\override} may still be used for global overrides.
+
+By setting {annotate-spacing}, we can see the effect of each property.
+" }
+
+#(set-global-staff-size 11)
+
+\book {
+  \score {
+    \relative c'' \new PianoStaff <<
+      \new Voice  {
+       c1_"followed by default spacing"\break
+       c\break
+
+       \overrideProperty
+       #"Score.NonMusicalPaperColumn"
+       #'line-break-system-details
+       #'((Y-extent . (-30 . 10)))
+       c_"Big bounding box (property Y-extent)"\break
+
+       \overrideProperty
+       #"Score.NonMusicalPaperColumn"
+       #'line-break-system-details
+       #'((refpoint-Y-extent . (-37 . -10)))
+       c_\markup {
+         \column {
+           "Refpoints further apart (property refpoint-Y-extent)."
+           "Stretchable space runs between refpoints"
+         }
+       }
+       
+       \break
+       
+       \overrideProperty
+       #"Score.NonMusicalPaperColumn"
+       #'line-break-system-details
+       #'((next-padding . 10))
+
+       c_"Followed by padding, ie unstretchable space. (property next-padding)" \break
+       \overrideProperty
+       #"Score.NonMusicalPaperColumn"
+       #'line-break-system-details
+       #'((next-space . 20))
+       c_"Followed by stretchable space (property next-space)"\break
+       c\break
+       \overrideProperty
+       #"Score.NonMusicalPaperColumn" #'line-break-system-details
+       #'((bottom-space . 25.0)) 
+       c_"25 staff space to the bottom of the page. (property bottom-space)"\break
+
+
+      }
+      { c1 c c c c c c c }
+    >>
+  }
+  \paper {
+    ragged-last-bottom = ##f
+    annotate-spacing = ##t
+    between-system-space = 1.0
+    #(set! text-font-defaults
+      (acons
+       'font-size 6
+       text-font-defaults)
+      
+    )
+  }
+}
+
diff --git a/input/lsr/spacing/Proportional-spacing.ly b/input/lsr/spacing/Proportional-spacing.ly
new file mode 100644 (file)
index 0000000..4c8679d
--- /dev/null
@@ -0,0 +1,15 @@
+\version "2.10.12"
+
+\header { texidoc = "
+Proportional notation can be created by setting {proportionalNotationDuration}. Notes will be spaced proportional to the distance for the given duration.
+" }
+
+\paper { ragged-right = ##t }
+
+\relative c''
+<<
+  \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
+  \new Staff { c8[ c c c c c]  c4 c2 r2 }
+  \new Staff { c2  \times 2/3 { c8 c c } c4 c1 }
+>>
+
diff --git a/input/lsr/spacing/Proportional-strict-grace-notes.ly b/input/lsr/spacing/Proportional-strict-grace-notes.ly
new file mode 100644 (file)
index 0000000..2e4817e
--- /dev/null
@@ -0,0 +1,18 @@
+\version "2.10.12"
+
+\header { texidoc = "
+With {strict-note-spacing} spacing for grace notes (even multiple ones), is floating as well.
+" }
+
+\paper {
+  ragged-right = ##t
+  indent = 0
+}
+
+\relative c''
+{
+  \override Score.SpacingSpanner #'strict-note-spacing = ##t 
+  \set Score.proportionalNotationDuration = #(ly:make-moment 1 12)
+  c8[ \grace { c16[ c] } c8 c8 c8] 
+  c2 
+}  
diff --git a/input/lsr/spacing/Proportional-strict-notespacing.ly b/input/lsr/spacing/Proportional-strict-notespacing.ly
new file mode 100644 (file)
index 0000000..664ef4c
--- /dev/null
@@ -0,0 +1,29 @@
+\version "2.10.12"
+
+\header { texidoc = "
+If @code{strict-note-spacing} is set, then spacing of notes is not influenced by bars and clefs half-way on the system.  Rather, they are put just before the note that occurs at the same time.  This may cause collisions.
+" }
+
+\paper {
+  ragged-right = ##t
+  indent = 0
+}
+\layout {
+  \context {
+    \Score
+  }
+}
+
+\relative c'' <<
+  \override Score.SpacingSpanner #'strict-note-spacing = ##t 
+  \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
+  \new Staff {
+    c8[ c \clef alto c c \grace { d16 }  c8 c]  c4 c2
+    \grace { c16[ c16] }
+    c2 }
+  \new Staff {
+    c2  \times 2/3 { c8 \clef bass cis,, c } 
+    c4
+    c1
+  }
+>>
diff --git a/input/lsr/spacing/SConscript b/input/lsr/spacing/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/spacing/alignment-vertical-spacing.ly b/input/lsr/spacing/alignment-vertical-spacing.ly
new file mode 100644 (file)
index 0000000..8eee674
--- /dev/null
@@ -0,0 +1,42 @@
+\version "2.10.12"
+
+\header { texidoc = "
+By setting properties in {NonMusicalPaperColumn}, vertical spacing of alignments can be adjusted per system.
+
+By setting {alignment-extra-space} or {fixed-alignment-extra-space} an individual system may be stretched vertically.
+
+For technical reasons, {overrideProperty} has to be used for setting properties on individual object. {override} in a {\context} block may still be used for global overrides
+" }
+
+#(set-global-staff-size 13)
+
+\relative c''
+\new StaffGroup <<
+  \new Staff {
+    c1\break 
+    c\break c\break
+  }
+  \new Staff { c1 c c }
+  \new PianoStaff <<
+    \new Voice  {
+      \set PianoStaff.instrumentName = #"piano"
+      \set PianoStaff.shortInstrumentName = #"pn"
+      c1_"normal"
+      
+      \overrideProperty
+      #"Score.NonMusicalPaperColumn"
+      #'line-break-system-details
+      #'((fixed-alignment-extra-space . 15))
+      c_"fixed-aligment-extra-space"
+
+      \overrideProperty
+      #"Score.NonMusicalPaperColumn"
+      #'line-break-system-details
+      #'((alignment-extra-space . 15))
+      c_"aligment-extra-space"
+    }
+    { c1 c c }
+  >>
+>>
+
+
diff --git a/input/lsr/staff/AAA-intro-advanced.ly b/input/lsr/staff/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/staff/GNUmakefile b/input/lsr/staff/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/staff/SConscript b/input/lsr/staff/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/staff/Staff-line-positions.ly b/input/lsr/staff/Staff-line-positions.ly
new file mode 100644 (file)
index 0000000..0e211ff
--- /dev/null
@@ -0,0 +1,10 @@
+\version "2.10.12"
+
+\header { texidoc = "
+The vertical positions of staff lines may be specified individually, by setting the {line-positions} property of the StaffSymbol.
+" }
+
+\new Staff \relative c'  {
+  \override Staff.StaffSymbol #'line-positions = #'(-7 -2 0 3 9)
+  g c f b e a
+}
diff --git a/input/lsr/text/AAA-intro-advanced.ly b/input/lsr/text/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/text/GNUmakefile b/input/lsr/text/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/text/SConscript b/input/lsr/text/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/text/font-family-override.ly b/input/lsr/text/font-family-override.ly
new file mode 100644 (file)
index 0000000..c8b0db8
--- /dev/null
@@ -0,0 +1,40 @@
+\version "2.10.12"
+
+\header { texidoc = "
+The default font families for text can be overridden with {make-pango-font-tree}
+" }
+
+\paper  {
+  % change for other default global staff size. 
+  myStaffSize = #20
+  %{
+  run
+      lilypond -dshow-available-fonts blabla
+  to show all fonts available in the process log.  
+    %}
+
+    #(define fonts
+    (make-pango-font-tree "Times New Roman"
+                          "Nimbus Sans"
+                          "Luxi Mono"
+;;     "Helvetica"
+;;     "Courier"
+     (/ myStaffSize 20)))
+}
+
+\relative {
+  c'^\markup { roman: foo \bold bla \italic bar \italic \bold baz }
+  c'_\markup {
+    \override #'(font-family . sans)
+    {
+      sans: foo \bold bla \italic bar \italic \bold baz
+    }
+  }
+  c'^\markup {
+    \override #'(font-family . typewriter)
+    {
+      mono: foo \bold bla \italic bar \italic \bold baz
+    }
+  }
+}  
+
diff --git a/input/lsr/vocal/AAA-intro-advanced.ly b/input/lsr/vocal/AAA-intro-advanced.ly
new file mode 100644 (file)
index 0000000..b907dd0
--- /dev/null
@@ -0,0 +1,21 @@
+\version "2.10.0"
+%% +.ly: Be the first .ly file for lys-to-tely.py.
+%% Better to make lys-to-tely.py include "introduction.texi" or
+%% other .texi documents too?
+
+\header{
+texidoc = #(string-append "
+@unnumbered Introduction
+
+This document shows examples from the
+@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}.
+
+In the web version of this document, you can click on the file name
+or figure for each example to see the corresponding input file.
+
+This document is for LilyPond version 
+" (lilypond-version) "." )
+}
+
+% make sure .png  is generated.
+\lyrics {  " " }
diff --git a/input/lsr/vocal/Ambitus.ly b/input/lsr/vocal/Ambitus.ly
new file mode 100644 (file)
index 0000000..412dfeb
--- /dev/null
@@ -0,0 +1,26 @@
+\version "2.10.12"
+
+\header { texidoc = "
+Ambituses indicate pitch ranges for voices.
+
+Accidentals only show up if they're not part of key signature.  {AmbitusNoteHead} grobs also have ledger lines.
+" }
+
+\layout {
+    ragged-right = ##t
+    \context {
+       \Voice
+       \consists Ambitus_engraver
+    }
+}
+
+\relative
+<<
+    \new Staff {  \time  2/4 c4 f' }
+    \new Staff \relative {
+       \time  2/4
+       \key d \major
+       cis as'
+    }
+>>
+
diff --git a/input/lsr/vocal/GNUmakefile b/input/lsr/vocal/GNUmakefile
new file mode 100644 (file)
index 0000000..43325ab
--- /dev/null
@@ -0,0 +1,16 @@
+
+depth = ../../../
+
+STEPMAKE_TEMPLATES=documentation texinfo tex
+LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc
+
+## Hmm, would this work?  No -- if we really want examples, move
+## to other dir (input/) comes to mind.
+## examples = font20 ancient-font
+## LOCALSTEPMAKE_TEMPLATES += ly mutopia
+
+EXTRA_DIST_FILES= 
+
+include $(depth)/make/stepmake.make
+
+TITLE=Advanced snippets
diff --git a/input/lsr/vocal/SConscript b/input/lsr/vocal/SConscript
new file mode 100644 (file)
index 0000000..f72bfff
--- /dev/null
@@ -0,0 +1,4 @@
+# -*-python-*-
+
+Import ('env', 'collate')
+collate (title = 'Advanced snippets')
diff --git a/input/lsr/vocal/lyric-combine.ly b/input/lsr/vocal/lyric-combine.ly
new file mode 100644 (file)
index 0000000..702691a
--- /dev/null
@@ -0,0 +1,32 @@
+\version "2.10.12"
+
+\header { texidoc = "
+With the {\lyricsto} mechanism, individual lyric lines can be associated with one melody line. For each lyric line, they can be tuned whether to follow melismata or not.
+" }
+
+<<
+  \new Voice = "bla" \relative c'' {
+    \autoBeamOff
+    c2( d4) e8[ c b c] f4
+  }
+  \lyricsto "bla"  \new Lyrics  { bla ab blob blob }
+  \lyricsto "bla"  \new Lyrics  {
+    bla 
+
+    \set ignoreMelismata = ##t
+    
+    blob
+
+    %% note: effect of ignoreMelismata delayed one time step.
+    \unset ignoreMelismata 
+    blob
+    
+    blob
+  }
+  
+  \lyricsto "bla"  \new Lyrics  {
+    nes ted lyrics voice with more words than no tes
+  }
+>>
+  
+