From: Jan Nieuwenhuizen Date: Mon, 13 Aug 2001 21:22:44 +0000 (+0200) Subject: patch::: 1.5.5.jcn2 X-Git-Tag: release/1.5.6~2 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=e27eb8bc58a6503a5a6099c246331ce36676d1bb;p=lilypond.git patch::: 1.5.5.jcn2 1.5.5.jcn2 --- diff --git a/CHANGES b/CHANGES index 8bece14e4e..4606292e68 100644 --- a/CHANGES +++ b/CHANGES @@ -1,7 +1,12 @@ -1.5.5.jcn1 +1.5.5.jcn2 ========== -* Updated input/bugs. +* input/bugs: + - Autogenerate bugs document from all .ly's. + - Add texidoc to lots of examples. + - Junk or move fixed examples to regression test. + - Move examples that crash lilypond to input/no-notation. + - Update examples. 1.5.5 ===== diff --git a/Documentation/index.texi b/Documentation/index.texi index d67c4ef2fd..3a78e88b82 100644 --- a/Documentation/index.texi +++ b/Documentation/index.texi @@ -116,9 +116,12 @@ want to fine-tune output, you need the information in this document. @c Jan's site? @itemize @bullet -@item @uref{../out-www/regression-test.html,regression-test} -A large document that tests all kinds of features (in +@item @uref{../out-www/regression-test.html,Regression Test} +A large document that tests all kinds of features (also as @uref{../out-www/regression-test.ps.gz,Postscript}). +@item @uref{../../input/bugs/out-www/bugs.html,Bugs} +A document that shows bugs (also as +@uref{../../input/bugs/out-www/bugs.ps.gz,Postscript}). @item @uref{http://www2.iro.umontreal.ca/~pinard/po/registry.cgi?domain=lilypond">Translations,lilypond textual domain diff --git a/Documentation/regression-test.tely b/Documentation/regression-test.tely index e6114b6f1c..608a7be1cb 100644 --- a/Documentation/regression-test.tely +++ b/Documentation/regression-test.tely @@ -12,10 +12,10 @@ @section Introduction -This document tries give a brief overview of LilyPond features. When -the text correspond with the shown notation, we consider LilyPond -Officially BugFree (tm). This document is intended for finding bugs, -and documenting bugfixes. +This document presents a brief overview of LilyPond features. When the +text correspond with the shown notation, we consider LilyPond Officially +BugFree (tm). This document is intended for finding bugs, and +documenting bugfixes. @section Notes and rests diff --git a/VERSION b/VERSION index 70100ec7bf..afeaf46b96 100644 --- a/VERSION +++ b/VERSION @@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=5 PATCH_LEVEL=5 -MY_PATCH_LEVEL=jcn1 +MY_PATCH_LEVEL=jcn2 # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/buildscripts/lys-to-tely.py b/buildscripts/lys-to-tely.py new file mode 100644 index 0000000000..eac92934e8 --- /dev/null +++ b/buildscripts/lys-to-tely.py @@ -0,0 +1,79 @@ +#!@PYTHON@ + +import sys +import os +import string +import getopt + +program_name = 'lys-to-tely' + +def help (): + sys.stdout.write (r"""Usage: lys-to-tely [OPTION]... LY-FILE... +Construct tely doc from LY-FILEs. + +Options: + -h, --help print this help + -o,output=NAME write tely doc to NAME + -t,title=TITLE set tely tely doc title TITLE +""") + sys.exit (0) + +(options, files) = getopt.getopt(sys.argv[1:], 'hn:t:', [ + 'help', 'name=', 'title=']) + +name="ly-doc" +title="Ly Doc" +for opt in options: + o = opt[0] + a = opt[1] + if o == '-h' or o == '--help': + help () + elif o == '-n' or o == '--name': + name = a + elif o == '-t' or o == '--title': + title = a + else: + raise 'unknown opt ', o + +def strip_extension (f, ext): + (p, e) = os.path.splitext (f) + if e == ext: + e = '' + return p + e + +if files: + dir = os.path.dirname (name) + if not dir: + dir = "." + name = strip_extension (os.path.basename (name), ".tely") + + s = '''\input texinfo +@setfilename %s.info +@settitle %s + +@c fool ls-latex +@ignore +@author Han-Wen Nienhuys and Jan Nieuwenhuizen +@title %s +@end ignore + +@node Top, , , (dir) +''' % (name, title, title) + + def name2line (n): + # UGR + if string.find (n, '+') >= 0: + s = "@lilypondfile{%s}" % n + else: + s = "@lilypondfile[printfilename]{%s}" % n + return s + + s = s + string.join (map (lambda x: name2line (x), files), "\n") + s = s + '\n@bye\n' + f = "%s/%s.tely" % (dir, name) + sys.stderr.write ("%s: writing %s..." % (program_name, f)) + h = open (f, "w") + h.write (s) + h.close () + sys.stderr.write ('\n') + diff --git a/input/bugs/1st-note-spacing.ly b/input/bugs/1st-note-spacing.ly index 1760135b6c..e69de29bb2 100644 --- a/input/bugs/1st-note-spacing.ly +++ b/input/bugs/1st-note-spacing.ly @@ -1,9 +0,0 @@ -\version "1.3.148" - -\score {\notes \relative c'' < -\context Staff = SA { \times 6/7 { [c8 c c c c c c] } } -\context Staff = SB { \times 6/6 { [c c c c c c] } } -> - -\paper { linewidth = -1. } -} diff --git a/input/bugs/GNUmakefile b/input/bugs/GNUmakefile index 9c2b9f48fe..51c90c814c 100644 --- a/input/bugs/GNUmakefile +++ b/input/bugs/GNUmakefile @@ -1,8 +1,9 @@ -# input/bugs/Makefile - depth = ../.. -LOCALSTEPMAKE_TEMPLATES=ly mutopia -include $(depth)/make/stepmake.make +STEPMAKE_TEMPLATES=documentation texinfo tex +LOCALSTEPMAKE_TEMPLATES=lilypond ly lysdoc +EXTRA_DIST_FILES=README +include $(depth)/make/stepmake.make +TITLE=Assorted Possible Bugs diff --git a/input/bugs/README b/input/bugs/README new file mode 100644 index 0000000000..2865bdf333 --- /dev/null +++ b/input/bugs/README @@ -0,0 +1,7 @@ +This directory holds a collection of examples that show all simple +notation bugs known to exist in LilyPond. + +Bugs that make lilypond crash, or don't generate notation should go in + + input/no-notation + diff --git a/input/bugs/abe.ly b/input/bugs/abe.ly index 74d6625004..e69de29bb2 100644 --- a/input/bugs/abe.ly +++ b/input/bugs/abe.ly @@ -1,20 +0,0 @@ -\version "1.3.148" - - -% Generated by mudela-book.py options are -\include "paper16.ly" -\paper { linewidth = 390.000000 \pt } - -\score { - \notes \relative c'' { - a\longa a\breve - a1 a2 a4 a8 a16 a32 a64 a64 - } - \paper { - \translator { - \StaffContext - \remove "Clef_engraver" - \remove "Staff_symbol_engraver" - } - } -} diff --git a/input/bugs/ac-clash.ly b/input/bugs/ac-clash.ly index 7e58fd47c0..e69de29bb2 100644 --- a/input/bugs/ac-clash.ly +++ b/input/bugs/ac-clash.ly @@ -1,8 +0,0 @@ -\version "1.3.148" -% accidentals clash -\score { - \context Staff \notes\relative c' < - % koord: c1 e g bes dis - bes'1 dis - > -} \ No newline at end of file diff --git a/input/bugs/accents.ly b/input/bugs/accents.ly index 6d26098115..e69de29bb2 100644 --- a/input/bugs/accents.ly +++ b/input/bugs/accents.ly @@ -1,13 +0,0 @@ -\version "1.3.148" -\score { - \context Staff \notes\relative c''< - \context Voice=one { - \voiceOne - e2-> - } - \context Voice=two { - \voiceTwo - f,2-> - } - > -} \ No newline at end of file diff --git a/input/bugs/accid.ly b/input/bugs/accid.ly index 4783c013fb..e69de29bb2 100644 --- a/input/bugs/accid.ly +++ b/input/bugs/accid.ly @@ -1,10 +0,0 @@ -%The sharp is printet too far to the left. - - -\version "1.4.0" -\score { -\notes \context Staff < - \context Voice = up {\stemUp gis''4} - \context Voice = dwn {\stemDown } -> -} diff --git a/input/bugs/accidental-collision.ly b/input/bugs/accidental-collision.ly index 503eff45a0..e69de29bb2 100644 --- a/input/bugs/accidental-collision.ly +++ b/input/bugs/accidental-collision.ly @@ -1,15 +0,0 @@ -\version "1.3.148" - - - -\include "paper16.ly" -\score { - \notes { - \relative c'' \context Voice \sequential { - - } - } - \paper{ - linewidth = 5.0\cm - } -} diff --git a/input/bugs/ancient-font.ly b/input/bugs/ancient-font.ly index 6aef817e6b..e69de29bb2 100644 --- a/input/bugs/ancient-font.ly +++ b/input/bugs/ancient-font.ly @@ -1,132 +0,0 @@ -\version "1.3.148" -\header { -texidoc="setting staff symbol properties the normal way is broken" - title = "ancient font test" - date = "2000" -} - - - -\include "paper26.ly" - -global = \notes { - \property Score.timing = ##f -% \property Staff.TimeSignature \override #'style = #'old -} - -upperVoice = \context Staff = upperVoice < - \global - \property Staff.StaffSymbol \override #'line-count = #4 - \notes \transpose c' { - \property Voice.NoteHead \override #'style = #'mensural - \property Voice.Stem \override #'stem-centered = ##t - \property Staff.Custos \override #'style = #'vaticana - \clef "vaticana_fa2" - c2 d e f g - -% \property Staff.clefGlyph = #"clefs-vaticana_do" -% \property Staff.clefPosition = #1 -% \property Staff.clefOctavation = #0 - \clef "vaticana_do2" - - a b c' - b a g f - \clef "vaticana_fa1" - e d c1 \bar "|" - - \property Staff.Custos \override #'style = #'medicaea - \clef "medicaea_fa2" - c2 d e f g - \clef "medicaea_do2" - a b c' - b a g f - \clef "medicaea_fa1" - e d c1 \bar "|" - - \property Staff.Custos \override #'style = #'hufnagel - \clef "hufnagel_fa2" - c2 d e f g - \clef "hufnagel_do2" - a b c' - b a g f - \clef "hufnagel_fa1" - e d c1 \bar "||" - } -> - -lowerVoice = \context Staff = lowerNotes < - \global - \property Staff.StaffSymbol \override #'line-count = #5 - \notes \transpose c' { - \property Voice.NoteHead \override #'style = #'mensural - \property Voice.Stem \override #'stem-centered = ##t - \property Staff.Custos \override #'style = #'mensural - \clef "mensural1_c2" - c2 d e f g - \property Staff.forceClef = ##t - \clef "mensural1_c2" - a b c' - b a g f - \clef "mensural2_c2" - e d c1 \bar "|" - - \clef "mensural2_c2" - c2 d e f g - \property Staff.forceClef = ##t - \clef "mensural3_c2" - a b c' - b a g f - \clef "mensural3_c2" - e d c1 \bar "|" - - \clef "mensural1_f" - c2 d e f g - \property Staff.forceClef = ##t - \clef "mensural1_f" - a b c' - b a g f - \clef "mensural2_f" - e d c1 \bar "|" - - \property Staff.forceClef = ##t - \clef "mensural2_f" - c2 d e f g - \clef "mensural_g" - a' b' c'' - b' a' g' f' - \property Staff.forceClef = ##t - \clef "mensural_g" - e' d' c'1 \bar "|" - - \property Staff.forceClef = ##t - \clef "mensural_g" - c'2 d' e' f' g' - \clef "hufnagel_do_fa" - a b c' - b a g f - \property Staff.forceClef = ##t - \clef "hufnagel_do_fa" - e d c1 \bar "||" - } -> - -\score { - \context ChoirStaff < - \upperVoice - \lowerVoice - > - \paper { -% \paperTwentysix - linewidth = 17.25\cm - textheight = 26.0\cm - indent = 0.0 - \translator { - \StaffContext - \consists Custos_engraver -% Custos \override #'style = #'mensural - \remove Time_signature_engraver -% StaffSymbol \override #'line-count = #4 - } - } -} - diff --git a/input/bugs/auto-beam-tuplets.ly b/input/bugs/auto-beam-tuplets.ly index 9c6a0c4c96..e69de29bb2 100644 --- a/input/bugs/auto-beam-tuplets.ly +++ b/input/bugs/auto-beam-tuplets.ly @@ -1,12 +0,0 @@ -\version "1.3.148" - -\header { texidoc = "tuplet-spanner should not put visible brackets on -beams even if they're auto generated." } - -\score { \notes \relative c' { - \property Voice.tupletSpannerDuration = #(make-moment 1 4) - \property Voice.TupletBracket \override #'tuplet-bracket-visibility = #'if-no-beam - \times 2/3 { - [f8 f f ][f8 f f ] f f f f f f - } -}} diff --git a/input/bugs/auto-beam.ly b/input/bugs/auto-beam.ly index b2120ee7bc..e69de29bb2 100644 --- a/input/bugs/auto-beam.ly +++ b/input/bugs/auto-beam.ly @@ -1,9 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "Auto beam can not be put on the final notes of a score " -} - -\score { \notes { - c8 c8 -}} diff --git a/input/bugs/barline.ly b/input/bugs/barline.ly index 73fb3631c0..e69de29bb2 100644 --- a/input/bugs/barline.ly +++ b/input/bugs/barline.ly @@ -1,27 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "Staves that end half way a system should end at the bar line." -} - -melody = \notes \relative c' { - \partial 8 - g8 | - \bar "|."\clef bass -} - - - -accompaniment = \chords \sequential { - r8 - r2 r2 -} - -\score { - \simultaneous { - \context ChordNames \accompaniment - \context Staff { - \melody } - } - \paper { } -} diff --git a/input/bugs/beam.ly b/input/bugs/beam.ly index a2eb18c82b..e69de29bb2 100644 --- a/input/bugs/beam.ly +++ b/input/bugs/beam.ly @@ -1,16 +0,0 @@ -\version "1.3.148" -\header { - texidoc="beam-stem attachment test" -} - -\score { - \context RhythmicStaff \notes { - \stemUp [c8 c] - \stemDown [c8 c] - \stemUp [c8. c16] - } - \paper { - linewidth = -1.0 - magnification = 64 - } -} \ No newline at end of file diff --git a/input/bugs/beamed-chord.ly b/input/bugs/beamed-chord.ly index 51b1fbdb93..e69de29bb2 100644 --- a/input/bugs/beamed-chord.ly +++ b/input/bugs/beamed-chord.ly @@ -1,14 +0,0 @@ -\version "1.3.148" - -\header{ -texidoc = "Beam thinks that first two notes should be stem down. Can be fixed by uncommenting \stemUp" -} - -\score{ - \notes\relative c'{ - %\stemUp - \clef alto - \time 3/4 - r8 ) bes' d g, c, c,> r | - } -} diff --git a/input/bugs/beaming.ly b/input/bugs/beaming.ly index e8e153dc9a..e69de29bb2 100644 --- a/input/bugs/beaming.ly +++ b/input/bugs/beaming.ly @@ -1,6 +0,0 @@ -\version "1.3.148" - -\score { \notes { - - [\times 2/3 {c16 c c} c8] - [\times 2/3 {c16 c c} c8]}} diff --git a/input/bugs/braces.ly b/input/bugs/braces.ly index 9340d04aaa..e69de29bb2 100644 --- a/input/bugs/braces.ly +++ b/input/bugs/braces.ly @@ -1,81 +0,0 @@ -\version "1.3.148" -% this bug apparently caused by dvips + mf rounding. - - -\header { -texidoc = "Run this through ly2dvi to show differerent brace sizes" -} - -\include "paper11.ly" -\paper { linewidth = -1.0 } - -\score { - \context GrandStaff < - \context Staff = a \notes c''1 - \context Staff = b \notes c''1 - > -} - - -\include "paper13.ly" -\paper { linewidth = -1.0 } - -\score { - \context GrandStaff < - \context Staff = a \notes c''1 - \context Staff = b \notes c''1 - > - \paper { - \translator { - \GrandStaffContext - SystemStartDelimiter \override #'weird = #-5 - } - } -} - - -\include "paper16.ly" -\paper { linewidth = -1.0 } - -\score { - \context GrandStaff < - \context Staff = a \notes c''1 - \context Staff = b \notes c''1 - > - \paper { - \translator { - \GrandStaffContext - SystemStartDelimiter \override #'weird = #5 - } - } -} - - -\include "paper20.ly" -\paper { linewidth = -1.0 } - -\score { - \context GrandStaff < - \context Staff = a \notes c''1 - \context Staff = b \notes c''1 - > - \paper { - \translator { - \GrandStaffContext - SystemStartDelimiter \override #'weird = #-7 - } - } -} - - -\include "paper26.ly" -\paper { linewidth = -1.0 } - -\score { - \context GrandStaff < - \context Staff = a \notes c''1 - \context Staff = b \notes c''1 - \context Staff = c \notes c''1 - \context Staff = d \notes c''1 - > -} diff --git a/input/bugs/broken-tuplet.ly b/input/bugs/broken-tuplet.ly index 5008c4aff2..e69de29bb2 100644 --- a/input/bugs/broken-tuplet.ly +++ b/input/bugs/broken-tuplet.ly @@ -1,18 +0,0 @@ -\version "1.3.148" - -\header { - -texidoc = "tuplet bracket doesn't behave properly at line break. Not a real problem." -} - -\score{ - \notes\relative c''< - { % broken cresc dumps core - c2 c4*2/3 \times 2/3 { c( c c } - c4 c c c - } > - \paper{ - indent = 0. - linewidth=30.\mm - } -} diff --git a/input/bugs/context-weirdness.ly b/input/bugs/context-weirdness.ly index 1ad6232f85..e69de29bb2 100644 --- a/input/bugs/context-weirdness.ly +++ b/input/bugs/context-weirdness.ly @@ -1,53 +0,0 @@ -\version "1.3.148" -\header { -texidoc = "context level weirdness. after some commands, explicit - \context Voice commands must be inserted otherwise subsequent property - settings fail silently" -} - -% from les-nereides.ly - - #(define (make-text-checker text) - (lambda (elt) (equal? text (ly-get-grob-property elt 'text)))) - -\score { - \context PianoStaff < - \context Staff=upper \notes\relative c' { - \property Score.timing = ##f - - output = property #(make-text-checker "foe") #'extra-offset = #'(-2 . 4) - c-"foe" - - \translator Staff=lower - - % staff switch moves us - % implicitely to staff level: text-checker won't see "foe" - output = property #(make-text-checker "foe") #'extra-offset = #'(-2 . 4) - c-"foe" - - % get back to Voice level: it works again - \context Voice - output = property #(make-text-checker "foe") #'extra-offset = #'(-2 . 4) - c-"foe" - - \clef treble - - % clef change moves us - % implicitely to staff level: text-checker won't see "foe" - output = property #(make-text-checker "foe") #'extra-offset = #'(-2 . 4) - c-"foe" - - % get back to Voice level: it works again - \context Voice - output = property #(make-text-checker "foe") #'extra-offset = #'(-2 . 4) - c-"foe" - - } - \context Staff=lower \notes\relative c' { - s - } - > - \paper { - linewidth = -1.0 - } -} \ No newline at end of file diff --git a/input/bugs/denneboom.ly b/input/bugs/denneboom.ly index 9b72cf4fe6..e69de29bb2 100644 --- a/input/bugs/denneboom.ly +++ b/input/bugs/denneboom.ly @@ -1,116 +0,0 @@ -\version "1.3.148" -\header{ -filename = "denneboom.ly" -enteredby = "jcn" -copyright = "public domain" -} -%{ file tests silly line shapes %} - -\include "paper20.ly" - - - -oden = \lyrics{ - O | - den- ne- boom, o | - den- ne- boom Wat | - zijn uw tak- ken | - won- der- schoon -} - -ikheb = \lyrics{ - Ik | - heb u laatst in_'t | - bos zien staan toen | - zat- en er geen | - kaars- jes aan -} - -ugloeit = \lyrics{ - U | - gloeit in bar- re | - win- ter- tijd, als | - sneeuw op aar- de | - licht ge- spreid -} - -oboom = \notes\transpose c''{ - g,8 | - c8. c16 c4. d8 | - e8. e16 e4. e8 | - d e f4 b, | - d8. c16 c4 r8 -} - -bos = \notes\transpose c''{ - g8 | - g e a4. g8 | - g8. f16 f4 r8 f8 | - f d g4. f8 | - f8. e16 e4 r8 -} - - -melody = \notes{ - \oboom - \oboom - \bos - \oboom -} - - -verseOne = \notes{ - \oden - \oden - \ikheb - \oden -} - -verseOneStaff = \context Lyrics = one - \verseOne - - -verseTwo = \notes{ - \oden - \oden - \ugloeit - \oden -} - -verseTwoStaff = \context Lyrics = two - \verseTwo - - -denneboomShape = \paper{ - \paperTwenty - indent = 20. \mm - - % UGH -- THIS IS HAIRY - #'margin-shape = #(map - (lambda (x) (cons-map mm-to-pt x)) - '((70.0 . 20.) - (65.0 . 30.0) - (57.5 . 45.0) - (50.0 . 60.0) - (42.5 . 75.) - (35.0 . 90.) - (27.5 . 105.) - (20.0 . 120.0) - (10.0 . 140.0) - (65.0 . 30.0)) - ) - - gourlay_maxmeasures = 30. - arithmetic_basicspace = 3.8 - arithmetic_multiplier = 8.\pt -} - -\score{ - \addlyrics - \context Staff { \time 3/4 \melody } - \context Lyrics \verseOne - \paper{ - \denneboomShape - } - \midi{ \tempo 4 = 90 } -} diff --git a/input/bugs/die-staff.ly b/input/bugs/die-staff.ly index 1f3b94174a..e69de29bb2 100644 --- a/input/bugs/die-staff.ly +++ b/input/bugs/die-staff.ly @@ -1,23 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "a staff should really die, if no one's referencing it." -} -\score { - { - \context Staff = q { - \notes { a' b' c' d' } - } - - \break - - \context PianoStaff < - \context Staff = i { - \notes { a' b' c' d' } - } - \context Staff = ii { - \notes { \clef "bass" a b c d } - } - > - } -} diff --git a/input/bugs/different-time.ly b/input/bugs/different-time.ly index 2db2460f2b..e69de29bb2 100644 --- a/input/bugs/different-time.ly +++ b/input/bugs/different-time.ly @@ -1,33 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = " Spacing for one staff in polymetric music should -be not hampered by a staff in another time signature." -} - -\score{ - \context PianoStaff < - \context Staff = upper \notes\relative c''{ - \property Staff.timeSignatureFraction = #'(3 . 4) - c4 c c - c2. - - } - \context Staff = lower \notes\relative c' { - \property Staff.timeSignatureFraction = #'(4 . 4) - c4 c c c - c1 - } - > - \paper{ - linewidth=-1.0 - \translator { - \ScoreContext - \remove Timing_engraver - } - \translator { - \StaffContext - \consists Timing_engraver - } - } -} diff --git a/input/bugs/dots.ly b/input/bugs/dots.ly index b279b4c06d..e69de29bb2 100644 --- a/input/bugs/dots.ly +++ b/input/bugs/dots.ly @@ -1,11 +0,0 @@ -\version "1.3.148" - -\header { - texidoc = "Dots should remain close to the heads they belong to, but should not overlap." -} - - -\score { - \notes - \context Voice { } -} diff --git a/input/bugs/drarn.ly b/input/bugs/drarn.ly index 7fcadb6cc1..e69de29bb2 100644 --- a/input/bugs/drarn.ly +++ b/input/bugs/drarn.ly @@ -1,24 +0,0 @@ -\version "1.3.148" -%% oops, weird small ties - -\score { - \context Staff \notes < - \time 3/8 - \context Voice=one \relative c'' { - \property Voice.Stem \set #'direction = #1 - \property Voice.Tie \set #'direction = #1 - \property Voice.Slur \set #'direction = #1 - \property Voice.Slur \set #'attachment = #'(head . head) - c8 c()c - } - \context Voice=two \relative c'' { - \property Voice.Stem \set #'direction = #-1 - \property Voice.Tie \set #'direction = #-1 - \property Voice.Slur \set #'direction = #-1 - \property Voice.Slur \set #'attachment = #'(head . head) - a8()a~a - } - > ~ - \paper { linewidth = -1. } -% \paper { linewidth = 40*\staffspace } -} diff --git a/input/bugs/dynamic-switch.ly b/input/bugs/dynamic-switch.ly index a4902efe5e..e69de29bb2 100644 --- a/input/bugs/dynamic-switch.ly +++ b/input/bugs/dynamic-switch.ly @@ -1,23 +0,0 @@ -\version "1.3.148" - -% what's the problem? -\score{ - \context Staff < - \context Voice=one \skip 1 - \context Voice=two \skip 1 - \context Voice=one \partcombine Voice - \context Thread=one \notes\relative c'' { - c2 \clef bass c2 - c2 c2 - } - \context Thread=two \notes\relative c'' { - b2 \< a4 () \! a - a2 \> a4 () \! a - } - > - \paper{ - linewidth=140.\mm - } -} - - diff --git a/input/bugs/grace-dynamic.ly b/input/bugs/grace-dynamic.ly index 68f0c4daf1..e69de29bb2 100644 --- a/input/bugs/grace-dynamic.ly +++ b/input/bugs/grace-dynamic.ly @@ -1,5 +0,0 @@ -\version "1.3.148" - - % ? - - \score { \notes \context Voice {\grace {c'_\f} d e f g}} diff --git a/input/bugs/grace-finger.ly b/input/bugs/grace-finger.ly index d5552b1f76..e69de29bb2 100644 --- a/input/bugs/grace-finger.ly +++ b/input/bugs/grace-finger.ly @@ -1,10 +0,0 @@ -\version "1.3.148" - - - % ? - -\score { -\notes \context Voice = VA \relative c'' { - \grace {[b8^1 c^2]} d4^3 -} -\paper {linewidth = -1. ; }} diff --git a/input/bugs/grace-gets-slur.ly b/input/bugs/grace-gets-slur.ly index 91c43c3229..e69de29bb2 100644 --- a/input/bugs/grace-gets-slur.ly +++ b/input/bugs/grace-gets-slur.ly @@ -1,2 +0,0 @@ -\version "1.3.148" - diff --git a/input/bugs/grace-staff-length.ly b/input/bugs/grace-staff-length.ly index 1b2713f821..e69de29bb2 100644 --- a/input/bugs/grace-staff-length.ly +++ b/input/bugs/grace-staff-length.ly @@ -1,20 +0,0 @@ -\version "1.3.148" -\header{ -texidoc = "stripped version of trip.ly. upper staff is too short, lower too long" -} -\score{ - \context PianoStaff \notes < - \context Staff = treble { - r1 - r1 - \bar "|." - } - \context Staff = bass { - r1 - \context Staff { - \grace { c16 } c1 - } - } - > - \paper { } -} diff --git a/input/bugs/grace-stems.ly b/input/bugs/grace-stems.ly index 1b8c6a3c2e..e69de29bb2 100644 --- a/input/bugs/grace-stems.ly +++ b/input/bugs/grace-stems.ly @@ -1,24 +0,0 @@ -\version "1.3.148" -\header{ -texidoc = "startGraceMusic should no-stem-extend to true, but there's no effect: -the two grace beams should be the same here. -" -} - - -\score { - \context Voice \notes\relative c { - \grace { - [f8 e8] - \property Voice.Stem \override #'no-stem-extend = ##t - [f8 e8] - \property Voice.Stem \revert #'no-stem-extend - } - a4 - - } - \paper { - linewidth=-1.0 - } - \midi { } -} diff --git a/input/bugs/hinterfleisch-gone.ly b/input/bugs/hinterfleisch-gone.ly index d46bae81a5..e69de29bb2 100644 --- a/input/bugs/hinterfleisch-gone.ly +++ b/input/bugs/hinterfleisch-gone.ly @@ -1,14 +0,0 @@ -\version "1.3.148" - -% jij had zoon mooi tight spacing example, -% kan zo'n harde space ook niet voor en na maatstreep! -\score { - \notes \relative c'' { - \time 2/4 - \property Voice.noAutoBeaming=##t - a4 a8 - a32 a a a -} -%set bit wide -\paper {linewidth = 100.\mm} -} diff --git a/input/bugs/l.ly b/input/bugs/l.ly index 3c8902ad23..e69de29bb2 100644 --- a/input/bugs/l.ly +++ b/input/bugs/l.ly @@ -1,4 +0,0 @@ -\version "1.3.148" - -\score { \notes { c^#`(columns "" (lines "1" (bold "2") "3"))}} - diff --git a/input/bugs/lyrics-bar.ly b/input/bugs/lyrics-bar.ly index 3ebafb9b1a..e69de29bb2 100644 --- a/input/bugs/lyrics-bar.ly +++ b/input/bugs/lyrics-bar.ly @@ -1,46 +0,0 @@ -\version "1.3.148" - -% -% Lyrics with barline colliding is fine now, BUT -% There's an horizontal gap between staff and end bar -% - -\header{ -texidoc = " -Adding a @code{Bar_engraver} to the LyricsVoice context makes sure that -lyrics don't collide with barlines. -" -} - -\score { - \context StaffGroup < - \notes \context Staff { - b1 \bar "|:" b1 \bar ":|" - } - \lyrics\context Lyrics < - \context LyricsVoiceWithBars { -% thisContextHasBarEngraver1 added - ThisContextCertainlyHasBarEngraverAddedButThereHasBeenSomethingFunnyBefore1. Here. - } - \context LyricsVoice { - this4 one has no BarEngraverAddedToContext1 - } - > - \notes \context Staff = SB { b1 b1 } - > - \paper { - linewidth = -1.0\cm - \translator { - \LyricsContext - \accepts "LyricsVoiceWithBars" - } - \translator { - \LyricsVoiceContext - \consists "Bar_engraver" - \name "LyricsVoiceWithBars" - } - \translator { - \LyricsVoiceContext - } - } -} diff --git a/input/bugs/lyrics-spacing.ly b/input/bugs/lyrics-spacing.ly index 623016d37b..e69de29bb2 100644 --- a/input/bugs/lyrics-spacing.ly +++ b/input/bugs/lyrics-spacing.ly @@ -1,27 +0,0 @@ -\include "norsk.ly" - -\header { -texidoc ="``baz'' should be centered on the a (tenor voice), but it is -not." -} - -\version "1.3.148" - -sop = \notes \transpose c'' {e2 e fis1 } -alt = \notes \relative c' {cis2 e e d } -ten = \notes \relative c' {a2 a a1 } -txt = \lyrics {foo2 bar baz jazz } - -\score { - < - \context Staff = up \notes < - \context Voice=sopv {\stemUp \sop} - \context Voice=altv {\stemDown \alt} - > - \context Staff = down \notes < \clef "F" - \context Voice=tenv {\stemUp \ten} - > - \context Lyrics = la { \txt } - > - \paper { linewidth = -1 } -} diff --git a/input/bugs/markup-definition.ly b/input/bugs/markup-definition.ly index 6daf2bd719..e69de29bb2 100644 --- a/input/bugs/markup-definition.ly +++ b/input/bugs/markup-definition.ly @@ -1,21 +0,0 @@ -\version "1.3.148" -%{ - -The definition of markup is incomplete. - -Ideally, either the input is valid, and all information therein is -used, or it is invalid, and an error message is produced. - -%} - - -\score { \notes \relative c' { - f_#'(lines "one" ( "tow")) - - % three ignored - f_#'(lines "one" ( "two" "three" )) - - % italic ignored. - f_#'(lines "one" (bold italic "towo")) - - }} diff --git a/input/bugs/markup.ly b/input/bugs/markup.ly index 3c8902ad23..e69de29bb2 100644 --- a/input/bugs/markup.ly +++ b/input/bugs/markup.ly @@ -1,4 +0,0 @@ -\version "1.3.148" - -\score { \notes { c^#`(columns "" (lines "1" (bold "2") "3"))}} - diff --git a/input/bugs/mmrest-collide.ly b/input/bugs/mmrest-collide.ly index c2a57ae775..e69de29bb2 100644 --- a/input/bugs/mmrest-collide.ly +++ b/input/bugs/mmrest-collide.ly @@ -1,16 +0,0 @@ -\version "1.3.148" -% -% multi-measure-rests should collide with notes, just as normal rests. -% -\score { - \notes\context Staff < - \context Voice=one \relative c''{ - d d d d - d d d d - } - \context Voice=two { - r1 - R - } - > -} \ No newline at end of file diff --git a/input/bugs/multiply.ly b/input/bugs/multiply.ly index 0c2ba18271..e69de29bb2 100644 --- a/input/bugs/multiply.ly +++ b/input/bugs/multiply.ly @@ -1,31 +0,0 @@ -\version "1.3.148" - - - -% ugh: strange order of things, this: -% a16 * 1/2 ( -% must be -% a16 ( * 1/2 - -%{ -?? is this a bug? --hwn -%} - -\score { - \context Voice \notes\relative c { - % to see the magic: uncomment size stuff in init/paper20.ly - - c'4 c4 - - \property Voice.fontSize= -2 - % ugh ugh - b16 * 1 / 2 ( - \property Voice.fontSize= 0 ) - g4 *31/32 - - a a g2 - - } - \paper { } - \midi { } -} diff --git a/input/bugs/partial-beam.ly b/input/bugs/partial-beam.ly index 670780c46b..e69de29bb2 100644 --- a/input/bugs/partial-beam.ly +++ b/input/bugs/partial-beam.ly @@ -1,27 +0,0 @@ -\version "1.3.148" - -\include "paper20.ly" -Sopnotes = \notes { - \time 4/4 - \key g \major - \clef treble - \partial 8 * 3 - e'8 f'8 g'8 | - d'8 d'16 d'16 e'8. e'16 g'8 g'8 f'8 f'8 -} - -\score { - \notes - < - \context Staff="sop" - < - \Sopnotes - > - > - \paper { - \translator { - \StaffContext - autoBeamSettings \override #'(end * * * * ) = #(make-moment 1 8) - } - } -} diff --git a/input/bugs/pc-direction.ly b/input/bugs/pc-direction.ly index 948f43716f..e69de29bb2 100644 --- a/input/bugs/pc-direction.ly +++ b/input/bugs/pc-direction.ly @@ -1,138 +0,0 @@ -\version "1.3.148" - -% move to regtest once it works? - - -% still not workign ? --hwn. - -\header { -texidoc = " -On their own staff, staffcombined voices should be stemboth (not up/down) -while voicecombined threads should get their direction set (up/down)" -} - - -End = { \skip 1*8 } - -violaI = \notes\relative c'' { - c c e4. e8 -} -violaII = \notes\relative c'' { - c4 b a a -} - - -violoncello = \notes\relative c' { - c8 c c c c8 c c c\break - a1 -} - -contrabasso = \notes\relative c { - a4 a8 a a8 a a a\break - a1 -} - -violeStaff = \notes \context Staff = viole < - \context Voice=oneViole < - \property Staff.instrument = #"Viola" - \property Staff.instr = #"Vla." - - \End - > - \context Voice=twoViole < - \property Staff.instrument = #"Viola II" - \property Staff.instr = #"Vla. II" - \End - > - \context Voice=oneViole \partcombine Voice - \context Thread=oneViole \violaI - \context Thread=twoViole \violaII -> - -staffCombinePianoStaffProperties = { - \property PianoStaff.devNullThread = #'() - \property PianoStaff.soloADue = ##t - \property PianoStaff.soloText = #"" - \property PianoStaff.soloIIText = #"" - % This is non-conventional, but currently it is - % the only way to tell the difference. - \property PianoStaff.aDueText = #"\\`a2" - \property PianoStaff.splitInterval = #'(1 . 0) - \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1)) - \property PianoStaff.noDirection = ##t -} - - -\score { - < - \context StaffGroup < - \violeStaff - - \context PianoStaff = bassi_group \notes < - \staffCombinePianoStaffProperties - \context Staff=oneBassi < \clef bass - \property Staff.instrument = #'(lines - "Violoncello" " e" "Contrabasso") - - \property Staff.instr = #"Vc." - \End > - \context Staff=twoBassi < \clef bass - \property Staff.instrument = #"Contrabasso" - \property Staff.instr = #"Cb." - - \End > - - \context Staff=oneBassi \partcombine Staff - \context Voice=oneBassi { \violoncello } - \context Voice=twoBassi { \contrabasso } - > -> - > - \paper { - % \paperSixteen - linewidth = 80 * \staffspace - textheight = 200 * \staffspace - \translator{ - \ThreadContext - \consists "Rest_engraver" - - % Set value for engraver at thread level, - % to override the default that is set in ScoreContext - % for added engraver at Voice level - devNullThread = #'() - } - \translator{ - \VoiceContext - \remove "Rest_engraver" - - % The staff combine (bassi part) needs a - % thread_devnull_engraver here. - % Instead of maintaining two separate hierarchies, - % we switch add it, but switch it off immideately. - % The staff combine parts switch it on. - % devNullThread = #'never - \consists "Thread_devnull_engraver" - } - \translator{ - \HaraKiriStaffContext - \consists "Mark_engraver" - } - \translator { - \OrchestralScoreContext - skipBars = ##t - soloText = #"I." - soloIIText = #"II." - % By default, turn off the Thread_devnull_engraver - % at Voice level - devNullThread = #'never - - % Hmm - currentBarNumber = #218 - BarNumber \override #'padding = #3 - RestCollision \override #'maximum-rest-count = #1 - marginScriptHorizontalAlignment = #1 - TimeSignature \override #'style = #'C - } - } -} - diff --git a/input/bugs/pc-mmrest.ly b/input/bugs/pc-mmrest.ly index e3800990ae..e69de29bb2 100644 --- a/input/bugs/pc-mmrest.ly +++ b/input/bugs/pc-mmrest.ly @@ -1,61 +0,0 @@ -\version "1.3.148" -% -% mmrests of second voice should not disappear -% -% the problem is more complex: the mmrest-engraver lives at staff level, -% but it seems that we need one per voice. -% - -#(set! point-and-click line-column-location) -one = \notes\relative c'' { - - f4 \!e-.\f r2| - R1| - f2\p()es| - \property Voice.crescendoText = #'(lines " " "cresc." " ") - \property Voice.crescendoSpanner = #'dashed-line - d1\<| - d1| - d2 d2| - d2 d2| - \!f1\ff | - f1 -} - -two = \notes \relative c'' { - r4 c r2| - R1*6| - c1 ~| - c1 -} - -\score { - \notes < - \context Staff = Viole < - \context Voice=one \partcombine Voice - \context Thread=one \one - \context Thread=two \two - > ~ - > - \paper { - \translator { - \ThreadContext - \consists "Rest_engraver" - } - \translator { - \VoiceContext - \remove "Rest_engraver" - \consists Multi_measure_rest_engraver - \consists Bar_engraver - } - \translator { - \HaraKiriStaffContext - \remove Multi_measure_rest_engraver - \remove Bar_engraver - } - \translator { - \OrchestralScoreContext - RestCollision \override #'maximum-rest-count = #1 - } - } -} \ No newline at end of file diff --git a/input/bugs/pc-rest-collide.ly b/input/bugs/pc-rest-collide.ly index 2a2778955e..e69de29bb2 100644 --- a/input/bugs/pc-rest-collide.ly +++ b/input/bugs/pc-rest-collide.ly @@ -1,25 +0,0 @@ -\version "1.3.148" -% -% when part-combining, rests should collide as in normal case -% -\score { - \notes < - \context Staff < - \context Voice=one \relative c''{ - d4 d d d - d d d d - } - \context Voice=two { - r1 - R - } - > - \context Staff = Viole < - \context Voice=one \partcombine Voice - \context Thread=one \relative c''{ d4 d d d d d d d } - \context Thread=two { r1 R1 } - > - > - \paper { - } -} \ No newline at end of file diff --git a/input/bugs/prefatory-spacing.ly b/input/bugs/prefatory-spacing.ly index 06e718bc2a..e69de29bb2 100644 --- a/input/bugs/prefatory-spacing.ly +++ b/input/bugs/prefatory-spacing.ly @@ -1,15 +0,0 @@ -\version "1.3.148" - -\header { texidoc= "Spacing after clef/key should be stretched -equidistantly for large stretching, but should stay clear of prefatory -matter for small stretching. Support in the spacing engine for -separate spring constants for stretching/shrinking is needed" -} - -foo = \notes\relative c'' { \key as \major f } - -\score { - - < \foo - > -} diff --git a/input/bugs/repeat.ly b/input/bugs/repeat.ly index 411ed4211b..e69de29bb2 100644 --- a/input/bugs/repeat.ly +++ b/input/bugs/repeat.ly @@ -1,4 +0,0 @@ -\version "1.3.148" - -% should start with |: -\score { \context Staff \notes \repeat volta 3 c1 \alternative { d1 e1 }} diff --git a/input/bugs/rest-melisma.ly b/input/bugs/rest-melisma.ly index b8ef6e73e0..e69de29bb2 100644 --- a/input/bugs/rest-melisma.ly +++ b/input/bugs/rest-melisma.ly @@ -1,20 +0,0 @@ -\version "1.3.148" -\header { -texidoc = "slur or long note on other staves fool lily into extending melisma" -} -\score { - < - \addlyrics - \notes { - \property Staff.automaticMelismata= ##t - c4 () c r c - } - \context Lyrics \lyrics { foo __ bar } - \context Staff=foolMelismata \notes{ - c4 ( c c ) c - } - \context Staff=foolMelismata \notes{ - c1 - } - > -} \ No newline at end of file diff --git a/input/bugs/slur-attachment.ly b/input/bugs/slur-attachment.ly index 2353bbac5a..e69de29bb2 100644 --- a/input/bugs/slur-attachment.ly +++ b/input/bugs/slur-attachment.ly @@ -1,21 +0,0 @@ -\version "1.3.148" - -\header{ -texidoc = " -Slurs should be attached to note heads, except when they would collide -with beams. Also see: ophee-slurs. -" -} -\score{ - \notes \relative c''{ - \property Voice.Slur \set #'direction = #1 - a8( a )a4 - a4( a8 )a - a8 a()a4 - a4() a8 a - } - \paper{ - indent = 0.0 - linewidth = 100.\mm - } -} diff --git a/input/bugs/slur-dots.ly b/input/bugs/slur-dots.ly index 34d0ddc42c..e69de29bb2 100644 --- a/input/bugs/slur-dots.ly +++ b/input/bugs/slur-dots.ly @@ -1,12 +0,0 @@ -\version "1.3.148" - -% Placement of slur uses x-extent of note-head which includes dots - -\score { - \notes\relative c'' { - c4.............()c - } - \paper { - linewidth = -1. - } -} diff --git a/input/bugs/slur-dx.ly b/input/bugs/slur-dx.ly index cd540082a4..e69de29bb2 100644 --- a/input/bugs/slur-dx.ly +++ b/input/bugs/slur-dx.ly @@ -1,21 +0,0 @@ -\version "1.3.148" - -\header{ -texidoc = " - Right ending of slur is too far right. - - [I did make a better test .ly for this, but can't seem to find it -now.] " } - -\score { - \notes \relative c'' { - \property Voice.Stem \set #'direction = #1 - \property Voice.Slur \set #'direction = #1 - d,32( d'4 )d8.. - \property Voice.Slur \set #'attachment = #'(stem . stem) - d,32( d'4 )d8.. - } - \paper { - linewidth = -1. - } -} diff --git a/input/bugs/slur-steep-broken.ly b/input/bugs/slur-steep-broken.ly index 0b63568fae..e69de29bb2 100644 --- a/input/bugs/slur-steep-broken.ly +++ b/input/bugs/slur-steep-broken.ly @@ -1,11 +0,0 @@ -\version "1.3.148" - -\score{ - \notes\relative c''{ - \time 2/4 - [f8 e d f, (] | \break - [) a'8. gis16 fis8. cis16] | - } - \paper{linewidth = 3.0\cmindent = .0} -} - diff --git a/input/bugs/spacing-very-tight.ly b/input/bugs/spacing-very-tight.ly index 39b95ca391..e69de29bb2 100644 --- a/input/bugs/spacing-very-tight.ly +++ b/input/bugs/spacing-very-tight.ly @@ -1,17 +0,0 @@ -\version "1.3.148" - -% When tightly spaced, hinterfleisch -> 0. -% Stems may touch the bar lines, opposite stems may touch eachother. -% We need a mininum of about a note-width/interline space in these -% situations, so that in tightly spaced music all vertical lines -% are about equally spaced. - -\score { - \notes \relative c''{ - r1 e4 f, e' f, - } - \paper { - linewidth = 25.0 \mm - indent = 0.0\mm - } -} diff --git a/input/bugs/staff-size.ly b/input/bugs/staff-size.ly index 3a6640d6df..e69de29bb2 100644 --- a/input/bugs/staff-size.ly +++ b/input/bugs/staff-size.ly @@ -1,21 +0,0 @@ -\version "1.3.148" - - % separate staff-size is clumsy with \override. - -\score { - \notes \relative c' < \context Voice { - \property Staff.staffSpace = #10 - \property Staff.fontSize = #-1 - \property Voice.fontSize = #-1 - - \property Voice . dynamicDirection = \up \stemDown -%\key gis \major - c8 d [e f g a] b c \ff - } - -\context Staff = VB { \property Voice . dynamicDirection = \down c,,4 \ff c c c } - -> -\paper { linewidth = -1. } -} - diff --git a/input/bugs/standchen-space.ly b/input/bugs/standchen-space.ly index 2b9ddfa124..e69de29bb2 100644 --- a/input/bugs/standchen-space.ly +++ b/input/bugs/standchen-space.ly @@ -1,10 +0,0 @@ -\version "1.3.148" - -\score { -\notes \relative c' < -\context Staff = SA { c4. c8 \times 2/3 { [c8 c c] } } -\context Staff = SB { c8 c c c c c } -> - -\paper { linewidth = -1. } -} diff --git a/input/bugs/steep-beam.ly b/input/bugs/steep-beam.ly index f07d339017..e69de29bb2 100644 --- a/input/bugs/steep-beam.ly +++ b/input/bugs/steep-beam.ly @@ -1,7 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "1st beam should prob. be horizontal." -} - -\score { \notes <{ [ r8 g''16 des'] [r8 c16 a] }>} diff --git a/input/bugs/steep.ly b/input/bugs/steep.ly index a3fff9c703..e69de29bb2 100644 --- a/input/bugs/steep.ly +++ b/input/bugs/steep.ly @@ -1,15 +0,0 @@ -\version "1.3.148" - - - -\score{ - \notes\relative c''{ - a'( a a [a8...] b,32\break - c4 \clef bass c,,, c )c - } - \paper{ - indent=0.0\mm - linewidth=40.0\mm - } -} - diff --git a/input/bugs/text-kerning.ly b/input/bugs/text-kerning.ly index 4f67222a6b..e69de29bb2 100644 --- a/input/bugs/text-kerning.ly +++ b/input/bugs/text-kerning.ly @@ -1,16 +0,0 @@ -\version "1.3.148" - - -\header { -texidoc = "LilyPond doesn't kern text, but TeX does, leading to skewed results: the VAVAVAVA takes less space than LilyPond thinks it does." } - -\score { - \notes \relative c'' < \context Voice { -% c16 c16 c16 c16 c4 - c4 c4 c4 - } -\context Lyrics \lyrics { foobar4 -- VAVAVAVAV4 -- foobar4 } > - - - \paper { linewidth = -10.0\cm } -} diff --git a/input/bugs/text-spanner.ly b/input/bugs/text-spanner.ly index e4b875e923..e69de29bb2 100644 --- a/input/bugs/text-spanner.ly +++ b/input/bugs/text-spanner.ly @@ -1,15 +0,0 @@ -\version "1.3.148" - -% text spanners should not repeat start text when broken - -\score { - \notes \relative c'' { - \property Voice.crescendoText = #"cresc." - \property Voice.crescendoSpanner = #'dashed-line - c1\< c \break - c1 \!c \break - } - \paper { - linewidth = 40*\staffspace - } -} diff --git a/input/bugs/textcresc.ly b/input/bugs/textcresc.ly index 91127368f5..e69de29bb2 100644 --- a/input/bugs/textcresc.ly +++ b/input/bugs/textcresc.ly @@ -1,13 +0,0 @@ -\version "1.3.148" - - -\score { \notes { - \context Voice { - \property Voice.crescendoText = "cresc." - \property Voice.crescendoSpanner = #'dashed-line - c2. r8 c8 \< \break \! c1 - } -} -\paper { linewidth = 5.\cm} -} - diff --git a/input/bugs/tie-break-accidental.ly b/input/bugs/tie-break-accidental.ly index d17bd8b3c8..e69de29bb2 100644 --- a/input/bugs/tie-break-accidental.ly +++ b/input/bugs/tie-break-accidental.ly @@ -1,18 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "First and second bes (tied across line break) -should get an accidental, but others should not" -} - -\score { - \notes { - bes1 ~ | \break - bes2 ~ bes4 ~ bes4 ~ | bes1 - \key f\major - bes1 ~|bes2 b ~|b ~ b ~|b1 - } - \paper { - linewidth = 40*\staffspace - } -} diff --git a/input/bugs/ties.ly b/input/bugs/ties.ly index 3cf5137570..e69de29bb2 100644 --- a/input/bugs/ties.ly +++ b/input/bugs/ties.ly @@ -1,22 +0,0 @@ -\version "1.3.148" - -\header { - texidoc="Positioning of last ties is incorrect ties between 2-1 and 1-1 - durations differ." -} - -\score { - \context Staff < - \context Voice = a \notes\relative c'' { - \voiceOne - r2 a2 a1~a - } - \context Voice = y \notes\relative c' { - \voiceTwo - r2 a2~a1~a - } - > ~ - \paper { - linewidth = 100 * \staffspace - } -} diff --git a/input/bugs/time.ly b/input/bugs/time.ly index 400bc6cdec..e69de29bb2 100644 --- a/input/bugs/time.ly +++ b/input/bugs/time.ly @@ -1,10 +0,0 @@ -\version "1.3.148" - -% Uses old style - -\score { - \notes { - \property Staff.TimeSignature \override #'style = #'oldC4/4 - s1 - } -} diff --git a/input/bugs/triplets.ly b/input/bugs/triplets.ly index 7546742a80..e69de29bb2 100644 --- a/input/bugs/triplets.ly +++ b/input/bugs/triplets.ly @@ -1,34 +0,0 @@ -\version "1.3.148" - -\header { -texidoc = "Simple beams. This broke somewhere < 1.3.110 -" - title = "Gammes Chromatiques" - composer = "" - filename = "gammes_chromatiques.ly" -} - -%{ - - At bar 3 of 2nd score, stems are too big (or the beams are - badly positionned) -%} - -linebreak = \penalty -1000 - -exI = \notes \relative c' { - \repeat "volta" 2 { - \times 2/3 {c8( cis d} \times 2/3 {dis e f} - \times 2/3 {fis g gis} \times 2/3 {a bes b} | - \property Voice.TupletBracket \override #'tuplet-number-visibility = ##f - \property Voice.TupletBracket \override #'tuplet-bracket-visibility = ##f - \times 2/3 {c8 cis d} \times 2/3 {dis e f} - \times 2/3 {fis g gis} \times 2/3 {a bes b} | - \times 2/3 {c b bes} \times 2/3 {a aes g} - \times 2/3 {fis f e} \times 2/3 {ees d des} | - \times 2/3 {c b bes} \times 2/3 {a aes g} - \times 2/3 {fis f e} \times 2/3 {ees d )des} - } - c1 || \linebreak -} - -\score { \context Staff { \notes { \exI } } } diff --git a/input/bugs/voice-switch-slur.ly b/input/bugs/voice-switch-slur.ly index 33b3b275d6..e69de29bb2 100644 --- a/input/bugs/voice-switch-slur.ly +++ b/input/bugs/voice-switch-slur.ly @@ -1,25 +0,0 @@ -\version "1.3.148" - - - % docme. -\score{ - \context Staff < - \context Voice=one\skip 1 - \context Voice=two\skip 1 - \context Voice=one \partcombine Voice - \context Thread=one \notes\relative c'' { - c4( c b )a - a( b c )d - } - \context Thread=two \notes\relative c'' { - a4( c b )a - a( b c )a - - } - > - \paper{ - linewidth=140.\mm - } -} - - diff --git a/input/no-notation/GNUmakefile b/input/no-notation/GNUmakefile index 9c2b9f48fe..7bdc0ec440 100644 --- a/input/no-notation/GNUmakefile +++ b/input/no-notation/GNUmakefile @@ -1,8 +1,8 @@ -# input/bugs/Makefile - depth = ../.. +EXTRA_DIST_FILES=README LOCALSTEPMAKE_TEMPLATES=ly mutopia + include $(depth)/make/stepmake.make diff --git a/input/no-notation/README b/input/no-notation/README new file mode 100644 index 0000000000..357b67355d --- /dev/null +++ b/input/no-notation/README @@ -0,0 +1,7 @@ +These examples make lilypond crash or exit prematurely. + +Some are bugs that should be fixed to generate output, andd then +moved to ../bugs or ../regression. + +Some (notably parse*.ly) are just error/warning generation tests +and should remain here. \ No newline at end of file diff --git a/input/no-notation/denneboom.ly b/input/no-notation/denneboom.ly new file mode 100644 index 0000000000..9b72cf4fe6 --- /dev/null +++ b/input/no-notation/denneboom.ly @@ -0,0 +1,116 @@ +\version "1.3.148" +\header{ +filename = "denneboom.ly" +enteredby = "jcn" +copyright = "public domain" +} +%{ file tests silly line shapes %} + +\include "paper20.ly" + + + +oden = \lyrics{ + O | + den- ne- boom, o | + den- ne- boom Wat | + zijn uw tak- ken | + won- der- schoon +} + +ikheb = \lyrics{ + Ik | + heb u laatst in_'t | + bos zien staan toen | + zat- en er geen | + kaars- jes aan +} + +ugloeit = \lyrics{ + U | + gloeit in bar- re | + win- ter- tijd, als | + sneeuw op aar- de | + licht ge- spreid +} + +oboom = \notes\transpose c''{ + g,8 | + c8. c16 c4. d8 | + e8. e16 e4. e8 | + d e f4 b, | + d8. c16 c4 r8 +} + +bos = \notes\transpose c''{ + g8 | + g e a4. g8 | + g8. f16 f4 r8 f8 | + f d g4. f8 | + f8. e16 e4 r8 +} + + +melody = \notes{ + \oboom + \oboom + \bos + \oboom +} + + +verseOne = \notes{ + \oden + \oden + \ikheb + \oden +} + +verseOneStaff = \context Lyrics = one + \verseOne + + +verseTwo = \notes{ + \oden + \oden + \ugloeit + \oden +} + +verseTwoStaff = \context Lyrics = two + \verseTwo + + +denneboomShape = \paper{ + \paperTwenty + indent = 20. \mm + + % UGH -- THIS IS HAIRY + #'margin-shape = #(map + (lambda (x) (cons-map mm-to-pt x)) + '((70.0 . 20.) + (65.0 . 30.0) + (57.5 . 45.0) + (50.0 . 60.0) + (42.5 . 75.) + (35.0 . 90.) + (27.5 . 105.) + (20.0 . 120.0) + (10.0 . 140.0) + (65.0 . 30.0)) + ) + + gourlay_maxmeasures = 30. + arithmetic_basicspace = 3.8 + arithmetic_multiplier = 8.\pt +} + +\score{ + \addlyrics + \context Staff { \time 3/4 \melody } + \context Lyrics \verseOne + \paper{ + \denneboomShape + } + \midi{ \tempo 4 = 90 } +} diff --git a/input/no-notation/die-staff.ly b/input/no-notation/die-staff.ly new file mode 100644 index 0000000000..1f3b94174a --- /dev/null +++ b/input/no-notation/die-staff.ly @@ -0,0 +1,23 @@ +\version "1.3.148" + +\header { +texidoc = "a staff should really die, if no one's referencing it." +} +\score { + { + \context Staff = q { + \notes { a' b' c' d' } + } + + \break + + \context PianoStaff < + \context Staff = i { + \notes { a' b' c' d' } + } + \context Staff = ii { + \notes { \clef "bass" a b c d } + } + > + } +} diff --git a/input/no-notation/pc-direction.ly b/input/no-notation/pc-direction.ly new file mode 100644 index 0000000000..ead276947b --- /dev/null +++ b/input/no-notation/pc-direction.ly @@ -0,0 +1,140 @@ +\version "1.3.148" + +% move to regtest once it works? + + +% still not workign ? --hwn. + +\header { +texidoc = " +On their own staff, staffcombined voices should be stemboth (not up/down) +while voicecombined threads should get their direction set (up/down) + +" +} + + +End = { \skip 1*8 } + +violaI = \notes\relative c'' { + c c e4. e8 +} +violaII = \notes\relative c'' { + c4 b a a +} + + +violoncello = \notes\relative c' { + c8 c c c c8 c c c\break + a1 +} + +contrabasso = \notes\relative c { + a4 a8 a a8 a a a\break + a1 +} + +violeStaff = \notes \context Staff = viole < + \context Voice=oneViole < + \property Staff.instrument = #"Viola" + \property Staff.instr = #"Vla." + + \End + > + \context Voice=twoViole < + \property Staff.instrument = #"Viola II" + \property Staff.instr = #"Vla. II" + \End + > + \context Voice=oneViole \partcombine Voice + \context Thread=oneViole \violaI + \context Thread=twoViole \violaII +> + +staffCombinePianoStaffProperties = { + \property PianoStaff.devNullThread = #'() + \property PianoStaff.soloADue = ##t + \property PianoStaff.soloText = #"" + \property PianoStaff.soloIIText = #"" + % This is non-conventional, but currently it is + % the only way to tell the difference. + \property PianoStaff.aDueText = #"\\`a2" + \property PianoStaff.splitInterval = #'(1 . 0) + \property PianoStaff.changeMoment = #`(,(make-moment 1 1) . ,(make-moment 1 1)) + \property PianoStaff.noDirection = ##t +} + + +\score { + < + \context StaffGroup < + \violeStaff + + \context PianoStaff = bassi_group \notes < + \staffCombinePianoStaffProperties + \context Staff=oneBassi < \clef bass + \property Staff.instrument = #'(lines + "Violoncello" " e" "Contrabasso") + + \property Staff.instr = #"Vc." + \End > + \context Staff=twoBassi < \clef bass + \property Staff.instrument = #"Contrabasso" + \property Staff.instr = #"Cb." + + \End > + + \context Staff=oneBassi \partcombine Staff + \context Voice=oneBassi { \violoncello } + \context Voice=twoBassi { \contrabasso } + > +> + > + \paper { + % \paperSixteen + linewidth = 80 * \staffspace + textheight = 200 * \staffspace + \translator{ + \ThreadContext + \consists "Rest_engraver" + + % Set value for engraver at thread level, + % to override the default that is set in ScoreContext + % for added engraver at Voice level + devNullThread = #'() + } + \translator{ + \VoiceContext + \remove "Rest_engraver" + + % The staff combine (bassi part) needs a + % thread_devnull_engraver here. + % Instead of maintaining two separate hierarchies, + % we switch add it, but switch it off immideately. + % The staff combine parts switch it on. + % devNullThread = #'never + \consists "Thread_devnull_engraver" + } + \translator{ + \HaraKiriStaffContext + \consists "Mark_engraver" + } + \translator { + \OrchestralScoreContext + skipBars = ##t + soloText = #"I." + soloIIText = #"II." + % By default, turn off the Thread_devnull_engraver + % at Voice level + devNullThread = #'never + + % Hmm + currentBarNumber = #218 + BarNumber \override #'padding = #3 + RestCollision \override #'maximum-rest-count = #1 + marginScriptHorizontalAlignment = #1 + TimeSignature \override #'style = #'C + } + } +} + diff --git a/input/no-notation/textcresc.ly b/input/no-notation/textcresc.ly new file mode 100644 index 0000000000..533877f130 --- /dev/null +++ b/input/no-notation/textcresc.ly @@ -0,0 +1,15 @@ +\version "1.3.148" +\header{ +texidoc="crashes lily" +} + +\score { \notes { + \context Voice { + \property Voice.crescendoText = "cresc." + \property Voice.crescendoSpanner = #'dashed-line + c2. r8 c8 \< \break \! c1 + } +} +\paper { linewidth = 5.\cm} +} + diff --git a/input/regression/abe.ly b/input/regression/abe.ly new file mode 100644 index 0000000000..5da6abcc77 --- /dev/null +++ b/input/regression/abe.ly @@ -0,0 +1,23 @@ +\header { +texidoc="Automatic beamer behaves nicely." +} +\version "1.3.148" + + +% Generated by mudela-book.py options are +\include "paper16.ly" +\paper { linewidth = 390.000000 \pt } + +\score { + \notes \relative c'' { + a\longa a\breve + a1 a2 a4 a8 a16 a32 a64 a64 + } + \paper { + \translator { + \StaffContext + \remove "Clef_engraver" + \remove "Staff_symbol_engraver" + } + } +} diff --git a/input/regression/auto-beam-tuplets.ly b/input/regression/auto-beam-tuplets.ly new file mode 100644 index 0000000000..f70c00f2de --- /dev/null +++ b/input/regression/auto-beam-tuplets.ly @@ -0,0 +1,14 @@ +\version "1.3.148" + +\header { +texidoc = "Tuplet-spanner should not put (visible) brackets on +beams even if they're auto generated." +} + +\score { \notes \relative c' { + \property Voice.tupletSpannerDuration = #(make-moment 1 4) + \property Voice.TupletBracket \override #'tuplet-bracket-visibility = #'if-no-beam + \times 2/3 { + [f8 f f ][f8 f f ] f f f f f f + } +}} diff --git a/input/regression/beamed-chord.ly b/input/regression/beamed-chord.ly new file mode 100644 index 0000000000..f1836d2a64 --- /dev/null +++ b/input/regression/beamed-chord.ly @@ -0,0 +1,17 @@ +\version "1.3.148" + +\header{ +texidoc = "Hairy case for beam, chord, and automatic knees." + +%texidoc = "Beam thinks that first two notes should be stem down. Can +%be fixed by uncommenting \stemUp" +} + +\score{ + \notes\relative c'{ + %\stemUp + \clef alto + \time 3/4 + r8 ) bes' d g, c, c,> r | + } +} diff --git a/input/regression/grace-dynamic.ly b/input/regression/grace-dynamic.ly new file mode 100644 index 0000000000..37d9c89a3c --- /dev/null +++ b/input/regression/grace-dynamic.ly @@ -0,0 +1,8 @@ +\version "1.3.148" +\header{ + % ? +% niet zo onschuldig! je hebt graces gefixt in 1.5, zie maar eens 1.3.150 +texidoc="Dynamics on grace notes are small and behave nicely (don't crash into to main note)." +} + + \score { \notes \context Voice {\grace {c'_\f} d e f g}} diff --git a/input/regression/grace-staff-length.ly b/input/regression/grace-staff-length.ly new file mode 100644 index 0000000000..548afbab7d --- /dev/null +++ b/input/regression/grace-staff-length.ly @@ -0,0 +1,20 @@ +\version "1.3.148" +\header{ +texidoc = "Stripped version of trip.ly. Staffs should be of correct length." +} +\score{ + \context PianoStaff \notes < + \context Staff = treble { + r1 + r1 + \bar "|." + } + \context Staff = bass { + r1 + \context Staff { + \grace { c16 } c1 + } + } + > + \paper { } +} diff --git a/input/regression/grace-stems.ly b/input/regression/grace-stems.ly new file mode 100644 index 0000000000..6b401ff2de --- /dev/null +++ b/input/regression/grace-stems.ly @@ -0,0 +1,24 @@ +\version "1.3.148" +\header{ +texidoc = "startGraceMusic should no-stem-extend to true; +the two grace beams should be the same here. +" +} + + +\score { + \context Voice \notes\relative c { + \grace { + [f8 e8] + \property Voice.Stem \override #'no-stem-extend = ##t + [f8 e8] + \property Voice.Stem \revert #'no-stem-extend + } + a4 + + } + \paper { + linewidth=-1.0 + } + \midi { } +} diff --git a/input/regression/hinterfleisch-gone.ly b/input/regression/hinterfleisch-gone.ly new file mode 100644 index 0000000000..e24bbee194 --- /dev/null +++ b/input/regression/hinterfleisch-gone.ly @@ -0,0 +1,16 @@ +\version "1.3.148" +\header { +texidoc="The first and last notes of a measure should be spaced nicely." +} +% jij had zoon mooi tight spacing example, +% kan zo'n harde space ook niet voor en na maatstreep! +\score { + \notes \relative c'' { + \time 2/4 + \property Voice.noAutoBeaming=##t + a4 a8 + a32 a a a +} +%%set bit wide +\paper {linewidth = 100.\mm} +} diff --git a/input/regression/markup-stack.ly b/input/regression/markup-stack.ly new file mode 100644 index 0000000000..cee7ebe513 --- /dev/null +++ b/input/regression/markup-stack.ly @@ -0,0 +1,5 @@ +\version "1.3.148" +\header {texidoc="Stacking of markup scripts."} +\paper { linewidth=-1. } +\score { \notes { c^#`(columns "" (lines "1" (bold "2") "3"))}} + diff --git a/input/regression/pc-mmrest.ly b/input/regression/pc-mmrest.ly new file mode 100644 index 0000000000..6dc4bbff2e --- /dev/null +++ b/input/regression/pc-mmrest.ly @@ -0,0 +1,59 @@ +\version "1.3.148" +\header { +texidoc="Multi measure rests of second voice should not disappear." +} + + +#(set! point-and-click line-column-location) +one = \notes\relative c'' { + + f4 \!e-.\f r2| + R1| + f2\p()es| + \property Voice.crescendoText = #'(lines " " "cresc." " ") + \property Voice.crescendoSpanner = #'dashed-line + d1\<| + d1| + d2 d2| + d2 d2| + \!f1\ff | + f1 +} + +two = \notes \relative c'' { + r4 c r2| + R1*6| + c1 ~| + c1 +} + +\score { + \notes < + \context Staff = Viole < + \context Voice=one \partcombine Voice + \context Thread=one \one + \context Thread=two \two + > ~ + > + \paper { + \translator { + \ThreadContext + \consists "Rest_engraver" + } + \translator { + \VoiceContext + \remove "Rest_engraver" + \consists Multi_measure_rest_engraver + \consists Bar_engraver + } + \translator { + \HaraKiriStaffContext + \remove Multi_measure_rest_engraver + \remove Bar_engraver + } + \translator { + \OrchestralScoreContext + RestCollision \override #'maximum-rest-count = #1 + } + } +} \ No newline at end of file diff --git a/input/regression/pc-switch-slur.ly b/input/regression/pc-switch-slur.ly new file mode 100644 index 0000000000..39e6ac4990 --- /dev/null +++ b/input/regression/pc-switch-slur.ly @@ -0,0 +1,26 @@ +\version "1.3.148" +\header{ +texidoc="The partcombiner should not combine two small slurs into a big one." +} + +\score{ + \context Staff < + \context Voice=one\skip 1 + \context Voice=two\skip 1 + \context Voice=one \partcombine Voice + \context Thread=one \notes\relative c'' { + c4( c b )a + a( b c )d + } + \context Thread=two \notes\relative c'' { + a4( c b )a + a( b c )a + + } + > + \paper{ + linewidth=140.\mm + } +} + + diff --git a/input/regression/slur-dots.ly b/input/regression/slur-dots.ly new file mode 100644 index 0000000000..adc652e344 --- /dev/null +++ b/input/regression/slur-dots.ly @@ -0,0 +1,13 @@ +\version "1.3.148" +\header{ +texidoc="Slurs should not get confused by augmentation dots. We use a lot +of dots here, to make problems more visible." +} +\score { + \notes\relative c'' { + c4.............()c + } + \paper { + linewidth = -1. + } +} diff --git a/input/regression/spacing-clefs.ly b/input/regression/spacing-clefs.ly index 67c31e743f..e69de29bb2 100644 --- a/input/regression/spacing-clefs.ly +++ b/input/regression/spacing-clefs.ly @@ -1,21 +0,0 @@ - -\header { -texidoc = "If possible clef changes and the like -should be folded under notes of the different staff -" -} - -\score { \notes \relative c'' < \context Staff = SA { -c4 c16 c c c cis4 cis4 -c4 c4 c4 c - - - } - { \key d \major c2 - \clef bass - c,2 c cis2 } > - - \paper { linewidth = -1. } - } - - diff --git a/input/regression/spacing-very-tight.ly b/input/regression/spacing-very-tight.ly new file mode 100644 index 0000000000..b6fdb49970 --- /dev/null +++ b/input/regression/spacing-very-tight.ly @@ -0,0 +1,17 @@ +\version "1.3.148" +\header { + When tightly spaced, hinterfleisch -> 0. + Stems may touch the bar lines, opposite stems may touch eachother. + We need a mininum of about a note-width/interline space in these + situations, so that in tightly spaced music all vertical lines + are about equally spaced. +} +\score { + \notes \relative c''{ + r1 e4 f, e' f, + } + \paper { + linewidth = 25.0 \mm + indent = 0.0\mm + } +} diff --git a/input/regression/text-spanner.ly b/input/regression/text-spanner.ly new file mode 100644 index 0000000000..e4b875e923 --- /dev/null +++ b/input/regression/text-spanner.ly @@ -0,0 +1,15 @@ +\version "1.3.148" + +% text spanners should not repeat start text when broken + +\score { + \notes \relative c'' { + \property Voice.crescendoText = #"cresc." + \property Voice.crescendoSpanner = #'dashed-line + c1\< c \break + c1 \!c \break + } + \paper { + linewidth = 40*\staffspace + } +} diff --git a/input/regression/tie-break-accidental.ly b/input/regression/tie-break-accidental.ly new file mode 100644 index 0000000000..b89660d8f8 --- /dev/null +++ b/input/regression/tie-break-accidental.ly @@ -0,0 +1,19 @@ +\version "1.3.148" + +\header { +texidoc = "First and second bes (tied across line break) +should get an accidental, but others should not. +Only first B should get natural sign." +} + +\score { + \notes { + bes1 ~ | \break + bes2 ~ bes4 ~ bes4 ~ | bes1 + \key f\major + bes1 ~|bes2 b ~|b ~ b ~|b1 + } + \paper { + linewidth = 40*\staffspace + } +} diff --git a/input/test/beam-stem-test.ly b/input/test/beam-stem-test.ly new file mode 100644 index 0000000000..639bc51344 --- /dev/null +++ b/input/test/beam-stem-test.ly @@ -0,0 +1,16 @@ +\version "1.3.148" +\header { + texidoc="Beam-stem attachment test. Helper file for ps/dvips problems." +} + +\score { + \context RhythmicStaff \notes { + \stemUp [c8 c] + \stemDown [c8 c] + \stemUp [c8. c16] + } + \paper { + linewidth = -1.0 + magnification = 64 + } +} \ No newline at end of file diff --git a/make/lilypond-vars.make b/make/lilypond-vars.make index 1634bdbcf0..55162760aa 100644 --- a/make/lilypond-vars.make +++ b/make/lilypond-vars.make @@ -30,6 +30,7 @@ LILYPOND = $(depth)/$(builddir)/lily/$(outconfbase)/lilypond LILYPOND_BOOK = $(script-dir)/lilypond-book.py LILYPOND_BOOK_INCLUDES = -I $(pwd) -I $(outdir) -I$(input-dir) -I $(input-dir)/tricks/ -I $(input-dir)/regression/ -I $(input-dir)/test/ -I $(input-dir)/tutorial/ LY2DVI = $(script-dir)/ly2dvi.py +LYS_TO_TELY = $(buildscript-dir)/lys-to-tely.py PS_TO_GIFS = $(buildscript-dir)/ps-to-gifs.sh PS_TO_PNGS = $(buildscript-dir)/ps-to-pngs.sh @@ -43,6 +44,7 @@ LILYPOND = $(shell $(SHELL) -c 'type -p lilypond') LILYPOND_BOOK = $(shell $(SHELL) -c 'type -p lilypond-book') LILYPOND_BOOK_INCLUDES = -I. -I.. -I$(outdir) LY2DVI = $(shell $(SHELL) -c 'type -p ly2dvi') +LYS_TO_TELY = $(shell $(SHELL) -c 'type -p lys-to-tely') PS_TO_GIFS = $(shell $(SHELL) -c 'type -p ps-to-gifs') PS_TO_PNGS = $(shell $(SHELL) -c 'type -p ps-to-pngs') diff --git a/make/ly-rules.make b/make/ly-rules.make index 4c238e1fb6..81cb51cb6d 100644 --- a/make/ly-rules.make +++ b/make/ly-rules.make @@ -5,7 +5,6 @@ $(outdir)/%.latex: %.doc rm -f $@ -# LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) $< $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) $< chmod -w $@ @@ -13,15 +12,19 @@ $(outdir)/%.latex: %.doc # it is not, for --srcdir builds $(outdir)/%.texi: %.tely rm -f $@ -# LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi $< $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi $< chmod -w $@ +$(outdir)/%.texi: $(outdir)/%.tely + rm -f $@ + $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi $< + rm -f $< + chmod -w $@ + # nexi: no-lily texi # for plain info doco: don't run lily $(outdir)/%.nexi: %.tely rm -f $@ -# LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --no-lily $< $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --dependencies --outdir=$(outdir) --format=texi --no-lily $< mv $(@D)/$(*F).texi $@ chmod -w $@ diff --git a/make/lysdoc-rules.make b/make/lysdoc-rules.make new file mode 100644 index 0000000000..5c77bbd8bd --- /dev/null +++ b/make/lysdoc-rules.make @@ -0,0 +1,3 @@ + +$(outdir)/$(NAME).tely: $(LY_FILES) + $(PYTHON) ../../buildscripts/lys-to-tely.py --name=$(outdir)/$(NAME) --title="$(TITLE)" $(LY_FILES) \ No newline at end of file diff --git a/make/lysdoc-targets.make b/make/lysdoc-targets.make new file mode 100644 index 0000000000..51d4aace22 --- /dev/null +++ b/make/lysdoc-targets.make @@ -0,0 +1,2 @@ + +local-WWW: $(outdir)/$(NAME).html \ No newline at end of file diff --git a/make/lysdoc-vars.make b/make/lysdoc-vars.make new file mode 100644 index 0000000000..b3143833f9 --- /dev/null +++ b/make/lysdoc-vars.make @@ -0,0 +1,4 @@ +TITLE=LYs Doc +LY_FILES = $(wildcard *.ly) +NAME=$(notdir $(pwd)) +