]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 1.1.44 release/1.1.44
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 25 May 1999 09:08:06 +0000 (11:08 +0200)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 25 May 1999 09:08:06 +0000 (11:08 +0200)
248 files changed:
Documentation/GNUmakefile
Documentation/TODO [deleted file]
Documentation/gnu-music-history [deleted file]
Documentation/gnu-music.yo
Documentation/tex/refman.yo
Documentation/tex/tutorial.yo
Documentation/topdocs/INSTALL.yo
INSTALL.txt
NEWS
TASKS [new file with mode: 0644]
TODO
VERSION
aclocal.m4
configure
input/bugs/Overture.ly
input/bugs/bar-space.ly
input/bugs/rep.ly [new file with mode: 0644]
input/example-3.ly
input/just-friends.ly
input/keys.ly
input/kortjakje.ly
input/part.ly
input/pedal.ly
input/praeludium-fuga-E.ly
input/rhythm.ly
input/scales.ly
input/scripts.ly
input/star-spangled-banner.ly
input/test/abbrev.ly
input/test/alphabet.ly
input/test/auto-staff-switch.ly
input/test/bar-scripts.ly
input/test/beam-chord.ly
input/test/beam-interstaff.ly
input/test/beam-isknee.ly
input/test/beam-pos.ly
input/test/beams.ly
input/test/broken.ly
input/test/chord-inversion.ly
input/test/chord-table.ly
input/test/chords.ly
input/test/clefs.ly
input/test/collisions.ly
input/test/defaultbars.ly
input/test/denneboom.ly
input/test/dotted-slur.ly
input/test/extender.ly
input/test/extra-staff.ly
input/test/find-quarts.ly
input/test/font-body.ly
input/test/font.ly
input/test/font16.ly
input/test/font20.ly
input/test/gourlay.ly
input/test/grace.ly
input/test/hara-kiri.ly
input/test/incipit.ly
input/test/keys.ly
input/test/knee.ly
input/test/mark.ly
input/test/memory.ly
input/test/multi-rest.ly
input/test/noteheadstyle.ly
input/test/notemode-chords.ly
input/test/orchestscore.ly
input/test/ossia.ly
input/test/rep.ly [deleted file]
input/test/rest-collision.ly
input/test/score-bar-scripts.ly
input/test/sleur.ly
input/test/slur-bug.ly
input/test/slur-damping.ly
input/test/slur-interstaff.ly
input/test/slur-swap.ly
input/test/slurs.ly
input/test/spacing-2.ly
input/test/spacing.ly
input/test/span-bars.ly
input/test/staff-margin.ly
input/test/staff-side-slur.ly
input/test/staff-size.ly
input/test/stem.ly
input/test/tchaikovsky.ly
input/test/test-lyrics.ly
input/test/thumb.ly
input/test/tie-bug.ly
input/test/tie.ly
input/test/title.ly
input/test/transposition.ly
input/test/tup.ly
input/test/updown.fly
input/test/vertical-align.ly
input/test/vertical-text.ly
input/test/wtk-huh.ly
input/tril.ly
input/twinkle-pop.ly
input/twinkle.ly
lily/collision.cc
lily/include/col-info.hh
lily/include/lily-proto.hh
lily/include/line-of-score.hh
lily/include/p-col.hh
lily/include/paper-outputter.hh
lily/include/rod.hh
lily/include/spacing-engraver.hh [new file with mode: 0644]
lily/include/spacing-spanner.hh
lily/include/spanner.hh
lily/include/spring-spacer.hh
lily/include/spring.hh [new file with mode: 0644]
lily/include/tie.hh
lily/line-of-score.cc
lily/local-key-engraver.cc
lily/p-col.cc
lily/p-score.cc
lily/paper-outputter.cc
lily/parser.yy
lily/rod.cc
lily/slur-engraver.cc
lily/spacing-engraver.cc
lily/spacing-spanner.cc [new file with mode: 0644]
lily/spanner.cc
lily/spring-spacer.cc
lily/spring.cc [new file with mode: 0644]
lily/stem-engraver.cc
lily/tie-engraver.cc
lily/tie.cc
ly/book-fragment.ly
ly/book-init.ly
ly/center-fragment.ly
ly/center.ly
ly/engraver.ly
ly/fragment.ly
ly/init.fly
ly/init.ly
ly/init.sly
ly/paper16.ly
ly/paper20.ly
ly/property.ly
make/out/lelievijver.lsm
make/out/lilypond.lsm
make/out/lilypond.spec
make/toplevel.make.in
mutopia/Coriolan/bassi-part.ly
mutopia/Coriolan/clarinetti-part.ly
mutopia/Coriolan/clarinetti.ly
mutopia/Coriolan/clarinetto-1.ly
mutopia/Coriolan/clarinetto-2.ly
mutopia/Coriolan/contrabasso-part.ly
mutopia/Coriolan/contrabasso.ly
mutopia/Coriolan/coriolan.ly
mutopia/Coriolan/corni-part.ly
mutopia/Coriolan/corni.ly
mutopia/Coriolan/corno-1.ly
mutopia/Coriolan/corno-2.ly
mutopia/Coriolan/fagotti-part.ly
mutopia/Coriolan/fagotti.ly
mutopia/Coriolan/fagotto-1.ly
mutopia/Coriolan/fagotto-2.ly
mutopia/Coriolan/flauti-part.ly
mutopia/Coriolan/flauti.ly
mutopia/Coriolan/flauto-1.ly
mutopia/Coriolan/flauto-2.ly
mutopia/Coriolan/global.ly
mutopia/Coriolan/oboe-1.ly
mutopia/Coriolan/oboe-2.ly
mutopia/Coriolan/oboi-part.ly
mutopia/Coriolan/oboi.ly
mutopia/Coriolan/timpani.ly
mutopia/Coriolan/trombe-part.ly
mutopia/Coriolan/trombe.ly
mutopia/Coriolan/trombo-1.ly
mutopia/Coriolan/trombo-2.ly
mutopia/Coriolan/viola-1.ly
mutopia/Coriolan/viola-2.ly
mutopia/Coriolan/viola-part.ly
mutopia/Coriolan/violino-1-part.ly
mutopia/Coriolan/violino-1.ly
mutopia/Coriolan/violino-2-part.ly
mutopia/Coriolan/violino-2.ly
mutopia/Coriolan/violoncello-part.ly
mutopia/Coriolan/violoncello.ly
mutopia/D.Scarlatti/progress.ly
mutopia/D.Scarlatti/sonata-k1-l366.ly
mutopia/D.Scarlatti/sonata-k2-l388.ly
mutopia/D.Scarlatti/sonata-k3-l378.ly
mutopia/D.Scarlatti/sonata-k4-l390.ly
mutopia/D.Zipoli/verso_2.ly
mutopia/E.Satie/gnossienne-4.ly
mutopia/E.Satie/petite-ouverture-a-danser.ly
mutopia/F.Schubert/standchen-16.ly
mutopia/F.Schubert/standchen-20.ly
mutopia/F.Schubert/standchen.ly
mutopia/GNUmakefile
mutopia/Hymns/diademata.ly
mutopia/Hymns/laudatedom.ly
mutopia/Hymns/maccabaeus.ly
mutopia/Hymns/ode.ly
mutopia/Hymns/stille.ly
mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly
mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly
mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly
mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly
mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly
mutopia/J.S.Bach/Petites-Preludes/preludes-4.ly
mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly
mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly
mutopia/J.S.Bach/Solo-Cello-Suites/GNUmakefile
mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly
mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly
mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly
mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly
mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly
mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly
mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly
mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly
mutopia/J.S.Bach/viola-i.ly
mutopia/J.S.Bach/violino-i.ly
mutopia/J.S.Bach/violino-viola.ly
mutopia/J.S.Bach/violino-violoncello.ly
mutopia/J.S.Bach/violoncello-i.ly
mutopia/J.S.Bach/wtk1-fugue1.ly
mutopia/J.S.Bach/wtk1-fugue2.ly
mutopia/J.S.Bach/wtk1-prelude1.ly
mutopia/L.Mozart/sinfonia.ly
mutopia/N.W.Gade/brass.ly
mutopia/N.W.Gade/parts.ly
mutopia/N.W.Gade/score.ly
mutopia/N.W.Gade/strings.ly
mutopia/N.W.Gade/wood.ly
mutopia/W.A.Mozart/cadenza.ly
mutopia/W.A.Mozart/horn-concerto-3.ly
mutopia/los-toros-oboe.ly
scm/lily.scm
scripts/abc-2-ly.py [new file with mode: 0644]
scripts/convert-mudela.py
scripts/mudela-book.py
scripts/mup-to-ly.py
stepmake/NEWS
stepmake/VERSION
stepmake/aclocal.m4
stepmake/configure
stepmake/make/out/stepmake.lsm
stepmake/make/out/stepmake.spec
stepmake/stepmake/script-rules.make
stepmake/stepmake/script-targets.make
stepmake/stepmake/script-vars.make
stepmake/stepmake/toplevel-targets.make
tex/lilyponddefs.tex

index 01dfbe9578475c505ea0a7a618ad671167cce78c..b6e67c58bc23c0133217330c04a9d17e19170fb9 100644 (file)
@@ -8,7 +8,7 @@ STEPMAKE_TEMPLATES=documentation
 README_TOP_FILES=NEWS DEDICATION TODO ANNOUNCE-0.1 AIMS
 INFO_FILES = $(wildcard $(outdir)/$(package).info*)
 
 README_TOP_FILES=NEWS DEDICATION TODO ANNOUNCE-0.1 AIMS
 INFO_FILES = $(wildcard $(outdir)/$(package).info*)
 
-EXTRA_DIST_FILES = gnu-music-history TODO 
+
 
 BLURBS=BLURB COPERTINA FLAPTEKST
 
 
 BLURBS=BLURB COPERTINA FLAPTEKST
 
diff --git a/Documentation/TODO b/Documentation/TODO
deleted file mode 100644 (file)
index 7145924..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# Documentation/TODO
-
-       * overview and index of features
-
-       * get rid of pod manpage layout legacy
-
diff --git a/Documentation/gnu-music-history b/Documentation/gnu-music-history
deleted file mode 100644 (file)
index 4ed2814..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-
-=head1 HISTORY 
-
-
-Please note that this all happened when I wasn't around yet.  If you
-think that I am a biased, unfair, predisposed hypocrite, then don't
-bother flaming me;  I already know that.
-
-The GNU Music project is a project which aims to create free software
-for music printing and composing.  It was started in november '92 by a
-core team of four members (Bryan Ford <baford@cs.utah.edu>, David Linn
-<drl@vuse.vanderbilt.edu>, Francois Pinard <pinard@iro.umontreal.ca>,
-Neil Jerram <nj104@cus.cam.ac.uk>) and in January '93 Robert Strandh
-<Robert.Strandh@labri.u-bordeaux.fr> joined.
-
-After serious disputes with Robert Strandh and the FSF staff in '94,
-the project core team got divided. The development efforts of GMP
-stopped.
-
-Independently, I (HWN) started LilyPond. When I showed it to
-RMS, he was very enthousiastic about having LilyPond in the GNU
-project. I subsequently learned about the GNU Music project, and
-contacted them.  
-
-What was left of the GMP (Robert Strandh) and us, LilyPond people,
-agreed that cooperation would be desirable. Although merging of both
-efforts was and is technically infeasible, we did decide that LilyPond
-should also be part of the GNU Music project.
-
-Only later did I discover the previous quarrels about the GMP-"take
-1". To show that I am aware of the history, and to make sure nobody
-gets me wrong or is angry at me because I stole a project or a
-project's name, I wrote this note.
-
-In summary, LilyPond is now the only substantial embodiment of the GNU
-Music Project, and it is part of the GNU project.
-
-For completeness' sake, I will mention the other efforts  here:
-
-=over 4
-
-=item G Sharp, http://dept-info.labri.u-bordeaux.fr/~strandh/Gsharp
-
-An alpha version notation editor for X in Scheme. Source available on
-request from Robert Strandh.
-
-=item GNU music, 
-
-An alpha version of a music editing system with Musictex
-output. Pretest versions of GNU Music (v0.3) can still be obtained from
-Francois Pinard.
-
-=back
-
-This history note is probably biased in some way, because I wrote it.
-The rest of this document is also entirely mine, and is not meant to
-reflect anyone else's opinion.
index 5e57da7854db907c39dd6b61d63d0305edea9feb..4e6e3148edc81eef93b454eb2a07484c100a21f4 100644 (file)
@@ -2,22 +2,7 @@ article(GNU Music project - manifesto)(Han-Wen Nienhuys and Jan Nieuwenhuizen)()
 
 sect(Goal)
 
 
 sect(Goal)
 
-Provide musicians with free software for
 
 
-itemize(
-it()composing
-it()engraving
-it()playing
-it()sequencing
-it()interchanging music
-it()arranging
-it()performing
-it()Metacomposing
-)
-
-These systems should encourage laymen to take up composing, in the
-same way that GNU tools have created a whole new generation of
-programmers.
 
 The public deserves free tools for composing and printing.
 
 
 The public deserves free tools for composing and printing.
 
index eba1f1d98f11cfafbb13b1c142c6df2da7476743..121f41f66d3140021b72268bf2b6fa34542f42e2 100644 (file)
@@ -976,6 +976,9 @@ END OF COMMENT  )
 
 sect(Repeats)
 
 
 sect(Repeats)
 
+
+OUTDATED. FIXME
+
 In order to specify repeats, use the code(\repeat) keyword.  By
 default, repeats are printed with repeat symbols.  
 mudela(fragment,verbatim,center)(
 In order to specify repeats, use the code(\repeat) keyword.  By
 default, repeats are printed with repeat symbols.  
 mudela(fragment,verbatim,center)(
@@ -1553,9 +1556,6 @@ than the music given in an code(\alternative).
 dit(code(barNonAuto)) If set to 1 then bar lines will not be printed
 automatically; they must be explicitly created with code(\bar) keywords.
 
 dit(code(barNonAuto)) If set to 1 then bar lines will not be printed
 automatically; they must be explicitly created with code(\bar) keywords.
 
-dit(code(unfoldRepeats)) If set to 1 then repeats will be unfolded.
-Otherwise, they will be printed using repeat symbols.  
 dit(code(defaultClef)) Determines the default clef.  See code(\clef)
 keyword.
 
 dit(code(defaultClef)) Determines the default clef.  See code(\clef)
 keyword.
 
index d8f9f5e28d37f77cc584117a34bf765e851f2691..883447e72e6e330b7e9845c9f9baa6680176b062 100644 (file)
@@ -1161,12 +1161,12 @@ property of the context code(Voice).  The context code(Voice) has an
 attribute whose value is the direction to use for stems.  You can
 change it to `up' by issuing the following phrase:
 verb(
 attribute whose value is the direction to use for stems.  You can
 change it to `up' by issuing the following phrase:
 verb(
-  \property "Voice"."ydirection" = "1"
+  \property "Voice"."verticalDirection" = "1"
 )
 
 This command should be read as ``change the property called
 )
 
 This command should be read as ``change the property called
-code(ydirection) within the current code(Voice) context to the value
-code(-1).''  For the property code(ydirection) the value code(1) means
+code(verticalDirection) within the current code(Voice) context to the value
+code(-1).''  For the property code(verticalDirection) the value code(1) means
 `up', and code(-1) means `down'. So, the
 proper way to code the polyphonic example is given in
 bind(Figure)ref(tutorial:multi-voice-fig).
 `up', and code(-1) means `down'. So, the
 proper way to code the polyphonic example is given in
 bind(Figure)ref(tutorial:multi-voice-fig).
@@ -1175,10 +1175,10 @@ latexcommand(\begin{figure}[h])
 mudela(fragment,verbatim,center)(
   \context "Staff" <
     \context "Voice" =  "one"  {
 mudela(fragment,verbatim,center)(
   \context "Staff" <
     \context "Voice" =  "one"  {
-      \property Voice.ydirection = "1"
+      \property Voice.verticalDirection = "1"
       r4 as'4 () as'4 g'4 }
     \context "Voice" =  "two"  {
       r4 as'4 () as'4 g'4 }
     \context "Voice" =  "two"  {
-      \property Voice.ydirection = "-1"
+      \property Voice.verticalDirection = "-1"
       g'2 f'4 e'4 }
   >
 )
       g'2 f'4 e'4 }
   >
 )
@@ -1330,8 +1330,8 @@ definition.  To remedy this, we can use an identifier to capture the
 meaning of a code(\property).
 
 mudela(verbatim)(
 meaning of a code(\property).
 
 mudela(verbatim)(
-stemup = \property Voice.ydirection = "1"
-stemdown = \property Voice.ydirection = "-1"
+stemup = \property Voice.verticalDirection = "1"
+stemdown = \property Voice.verticalDirection = "-1"
 shift = \property Voice.hshift = "1"
 \score {
   \context "Staff" \notes <
 shift = \property Voice.hshift = "1"
 \score {
   \context "Staff" \notes <
@@ -1350,7 +1350,6 @@ a real command like code(\clef) or code(\bar).  Real commands are
 hardcoded into the language and they have to be terminated by
 semicolons.
 
 hardcoded into the language and they have to be terminated by
 semicolons.
 
-
 sect(Sound output)
 label(tutorial:sound)
 
 sect(Sound output)
 label(tutorial:sound)
 
index d76531c97d83c9a952fa952b573c0787ef13a6ba..91a2f829721d32c58eade30c3b8df327333843d4 100644 (file)
@@ -9,6 +9,15 @@ file(buildscripts/set-lily.sh) script.  It sets some environment
 variables and symlinks, which comes in handly when you have to compile 
 LilyPond more often.  
 
 variables and symlinks, which comes in handly when you have to compile 
 LilyPond more often.  
 
+sect(OBTAINING)
+
+You can get the latest version of LilyPond at
+lurl(ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/).  Refer to the links
+document for mirror sites.
+
+em(If you upgrade by patching do remember to rerun autoconf after
+applying the patch).
+
 sect(PREREQUISITES)
 
 For compilation you need:
 sect(PREREQUISITES)
 
 For compilation you need:
@@ -74,7 +83,8 @@ or any mirror of this site.
 it()Bison (version 1.25 or newer).
 Check out lurl(ftp://ftp.gnu.org)
 or any mirror of this site.
 it()Bison (version 1.25 or newer).
 Check out lurl(ftp://ftp.gnu.org)
 or any mirror of this site.
-it() GUILE 1.3 (no, GUILE 1.2 won't work),     check out lurl(http://www.gnu.org/programs/guile.html)
+it() GUILE 1.3 (no, GUILE 1.2 won't work),
+check out lurl(http://www.gnu.org/programs/guile.html).
 
 
 it()Python (version 1.5 or newer).  Check out
 
 
 it()Python (version 1.5 or newer).  Check out
index a8bf785b37f406008f2ba985716a528cb62253e0..3ca4a10605dc9a79d082f033aaa824799ab028b9 100644 (file)
@@ -6,17 +6,18 @@
 Contents
 
      1: ABSTRACT
 Contents
 
      1: ABSTRACT
-2: PREREQUISITES
-3: RUNNING
-4: RECOMMENDED
-5: WEBSITE
-6: CONFIGURING and COMPILING
-7: CONFIGURING FOR MULTIPLE PLATFORMS
-8: INSTALLING
-9: REDHAT LINUX
-10: DEBIAN GNU/LINUX
-11: WINDOWS NT/95
-12: AUTHORS
+2: OBTAINING
+3: PREREQUISITES
+4: RUNNING
+5: RECOMMENDED
+6: WEBSITE
+7: CONFIGURING and COMPILING
+8: CONFIGURING FOR MULTIPLE PLATFORMS
+9: INSTALLING
+10: REDHAT LINUX
+11: DEBIAN GNU/LINUX
+12: WINDOWS NT/95
+13: AUTHORS
 
 1: ABSTRACT
 
 
 1: ABSTRACT
 
@@ -27,21 +28,30 @@ might want to check out the buildscripts/set-lily.sh script.
 It sets some environment variables and symlinks, which comes
 in handly when you have to compile LilyPond more often.
 
 It sets some environment variables and symlinks, which comes
 in handly when you have to compile LilyPond more often.
 
-2: PREREQUISITES
+2: OBTAINING
+
+You  can   get   the   latest   version   of   LilyPond   at
+ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/.   Refer  to  the links
+document for mirror sites.
+
+If you upgrade by patching do  remember  to  rerun  autoconf
+after applying the patch.
+
+3: PREREQUISITES
 
 For compilation you need:
 
 o    A GNU system: GNU LilyPond is known to run on these GNU
 
 For compilation you need:
 
 o    A GNU system: GNU LilyPond is known to run on these GNU
-     systems:  Linux  (PPC,  intel), FreeBSD, AIX, NeXTStep,
+     systems: Linux (PPC, intel),  FreeBSD,  AIX,  NeXTStep,
      IRIX, Digital Unix and Solaris.
 
      IRIX, Digital Unix and Solaris.
 
-o    Lots of disk space: LilyPond takes between 50  and  100
+o    Lots  of  disk space: LilyPond takes between 50 and 100
      mb to compile if you use debugging information.  If you
      mb to compile if you use debugging information.  If you
-     are short on disk-space run configure  with  --disable-
+     are  short  on disk-space run configure with --disable-
      debugging.
 
      Although we recommend to use Unix, LilyPond is known to
      debugging.
 
      Although we recommend to use Unix, LilyPond is known to
-     run on Windows NT/95/98 as well.  See Section 11.
+     run on Windows NT/95/98 as well.  See Section 12.
 
 o    EGCS 1.1 or newer.
 
 
 o    EGCS 1.1 or newer.
 
@@ -52,96 +62,97 @@ o    Python  1.5  (Strictly  speaking,  you  shouldn't  need
 o    GUILE  1.3  (no,  GUILE  1.2  won't  work),  check  out
      http://www.gnu.org/software/guile/guile.html.
 
 o    GUILE  1.3  (no,  GUILE  1.2  won't  work),  check  out
      http://www.gnu.org/software/guile/guile.html.
 
-3: RUNNING
+4: RUNNING
 
 
-GNU  LilyPond does use a lot of resources. For operation you
+GNU LilyPond does use a lot of resources. For operation  you
 need the following:
 
 o    TeX
 
 o    A   PostScript   printer   and/or   viewer   (such   as
 need the following:
 
 o    TeX
 
 o    A   PostScript   printer   and/or   viewer   (such   as
-     Ghostscript)  is  strongly recommended.  Xdvi will show
-     all embedded PostScript too  if  you  have  Ghostscript
+     Ghostscript) is strongly recommended.  Xdvi  will  show
+     all  embedded  PostScript  too  if you have Ghostscript
      installed.
 
 o    GUILE  1.3  (no,  GUILE  1.2  won't  work),  check  out
      http://www.gnu.org/programs/guile.html
 
      installed.
 
 o    GUILE  1.3  (no,  GUILE  1.2  won't  work),  check  out
      http://www.gnu.org/programs/guile.html
 
-For running LilyPond successfully you have to help  TeX  and
-MetaFont  find  various files.  The recommended way of doing
-so is adjusting the environment variables  in  the  start-up
-scripts  of  your  shell.   An example is given here for the
+For  running  LilyPond successfully you have to help TeX and
+MetaFont find various files.  The recommended way  of  doing
+so  is  adjusting  the environment variables in the start-up
+scripts of your shell.  An example is  given  here  for  the
 Bourne shell:
 
      export MFINPUTS="/usr/local/share/lilypond/mf:"
 Bourne shell:
 
      export MFINPUTS="/usr/local/share/lilypond/mf:"
-     export TEXINPUTS="/usr/local/share/lilypond/tex:"
+     export TEXINPUTS="/usr/local/share/lilypond/tex:/usr/local/share/lilypond/ps:"
 
 
-The empty path component represents  and MetaFont's  default
-search  paths.  Scripts with the proper paths for the bourne
+The  empty path component represents  and MetaFont's default
+search paths.  Scripts with the proper paths for the  bourne
 and   C-shell   respectively   are   generated   in   build-
 and   C-shell   respectively   are   generated   in   build-
-scripts/out/lilypond-profile  and buildscripts/out/lilypond-
+scripts/out/lilypond-profile and  buildscripts/out/lilypond-
 login during compilation.
 
 login during compilation.
 
-4: RECOMMENDED
+5: RECOMMENDED
 
 
-Although not strictly necessary, these  are  recommended  to
+Although  not  strictly  necessary, these are recommended to
 have.
 
 o    GNU make.  Check out ftp://ftp.gnu.org or any mirror of
      this site.
 
 have.
 
 o    GNU make.  Check out ftp://ftp.gnu.org or any mirror of
      this site.
 
-o    Flex   (version   2.5.4   or   newer).     Check    out
+o    Flex    (version    2.5.4   or   newer).    Check   out
      ftp://ftp.gnu.org or any mirror of this site.
 
      ftp://ftp.gnu.org or any mirror of this site.
 
-o    Bison    (version    1.25   or   newer).    Check   out
+o    Bison   (version   1.25   or   newer).     Check    out
      ftp://ftp.gnu.org or any mirror of this site.
 
      ftp://ftp.gnu.org or any mirror of this site.
 
-o    GUILE 1.3 (no,  GUILE  1.2  won't  work),    check  out
-     http://www.gnu.org/programs/guile.html
+o    GUILE  1.3  (no,  GUILE  1.2  won't  work),  check  out
+     http://www.gnu.org/programs/guile.html.
 
 
-o    Python    (version    1.5   or   newer).    Check   out
+o    Python   (version   1.5   or   newer).     Check    out
      ftp://ftp.python.org or ftp://ftp.cwi.nl/pub/python.
 
      ftp://ftp.python.org or ftp://ftp.cwi.nl/pub/python.
 
-o    Yodl.  All documentation will  be  in  Yodl.  (1.30.17)
+o    Yodl.   All  documentation  will  be in Yodl. (1.30.17)
      ftp://ftp.lilypond.org/pub/yodl
      http://www.cs.uu.nl/~hanwen/yodl
 
 o    Texinfo. (version 3.12 or newer)
 
      ftp://ftp.lilypond.org/pub/yodl
      http://www.cs.uu.nl/~hanwen/yodl
 
 o    Texinfo. (version 3.12 or newer)
 
-o    GNU find Check out ftp://ftp.gnu.org or any  mirror  of
+o    GNU  find  Check out ftp://ftp.gnu.org or any mirror of
      this site.
 
 o    The geometry package for LaTeX is needed to use ly2dvi.
      this site.
 
 o    The geometry package for LaTeX is needed to use ly2dvi.
-     Available          at           ftp://ftp.ctan.org/tex-
+     Available           at          ftp://ftp.ctan.org/tex-
      archive/macros/latex/contrib/supported/geometry  or  at
      mirror site ftp://ftp.dante.de
 
 o    A fast computer: a full page of music typically takes 1
      archive/macros/latex/contrib/supported/geometry  or  at
      mirror site ftp://ftp.dante.de
 
 o    A fast computer: a full page of music typically takes 1
-     minute  on my 486/133, using the --enable-checking com-
+     minute on my 486/133, using the --enable-checking  com-
      pile.
 
      pile.
 
-5: WEBSITE
+6: WEBSITE
 
 
-If you want to auto-generate  Lily's  website,  you'll  need
+If  you  want  to  auto-generate Lily's website, you'll need
 some additional conversion tools.
 
 o    xpmtoppm (from the Portable Bitmap Utilities) (For Red-
 some additional conversion tools.
 
 o    xpmtoppm (from the Portable Bitmap Utilities) (For Red-
-     Hat Linux users: it  is  included  within  the  package
+     Hat  Linux  users:  it  is  included within the package
      libgr-progs).
 
 o    Bib2html http://pertsserver.cs.uiuc.edu/~hull/bib2html.
      Which, in turn depends on man2html for proper installa-
      libgr-progs).
 
 o    Bib2html http://pertsserver.cs.uiuc.edu/~hull/bib2html.
      Which, in turn depends on man2html for proper installa-
-     tion.    man2html   can   be  had  from  http://askdon-
+     tion.   man2html  can  be   had   from   http://askdon-
      ald.ask.uni-karlsruhe.de/hppd/hpux/Network-
      ing/WWW/Man2html-1.05.
 
      TeTeX users should not forget to rerun texhash.
 
 Building the website requires pnmtopng.  The version of pnm-
      ald.ask.uni-karlsruhe.de/hppd/hpux/Network-
      ing/WWW/Man2html-1.05.
 
      TeTeX users should not forget to rerun texhash.
 
 Building the website requires pnmtopng.  The version of pnm-
-topng that is distributed with RedHat  5.1  contains  a  bug
-(pnmtopng  is  dynamically  linked  to  the wrong version of
-libpng).  Recompile it from source, and make sure  that  the
-pnmtopng  binary  is linked statically to the libpng that is
+topng  that  is  distributed  with RedHat 5.1 contains a bug
+(pnmtopng is dynamically linked  to  the  wrong  version  of
+libpng).   Recompile  it from source, and make sure that the
+pnmtopng binary is linked statically to the libpng  that  is
+
 included in libgr.
 
       tar xzf libgr-2.0.13.tar.gz
 included in libgr.
 
       tar xzf libgr-2.0.13.tar.gz
@@ -152,13 +163,13 @@ included in libgr.
 
 You can then install the new pnmtopng into /usr/local/bin/
 
 
 You can then install the new pnmtopng into /usr/local/bin/
 
-6: CONFIGURING and COMPILING
+7: CONFIGURING and COMPILING
 
 to install GNU LilyPond, simply type:
 
           gunzip -c lilypond-x.y.z | tar xf -
           cd lilypond-x.y.z
 
 to install GNU LilyPond, simply type:
 
           gunzip -c lilypond-x.y.z | tar xf -
           cd lilypond-x.y.z
-          configure      # fill in your standard prefix with --prefix
+          ./configure         # fill in your standard prefix with --prefix
           make
           make install
 
           make
           make install
 
@@ -173,28 +184,27 @@ This will install a number of files, something close to:
           /usr/local/share/lilypond/*
           /usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
 
           /usr/local/share/lilypond/*
           /usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
 
-The above assumes that you are root and have the GNU  devel-
+The  above assumes that you are root and have the GNU devel-
 opment tools, and your make is GNU make.  If this is not the
 opment tools, and your make is GNU make.  If this is not the
-case, you can adjust  your  environment  variables  to  your
-
+case,  you  can  adjust  your  environment variables to your
 taste:
 
           export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
 taste:
 
           export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR"
-          configure
+          ./configure
 
 CPPFLAGS are the preprocessor flags.
 
 The configure script is Cygnus configure, and it will accept
 
 CPPFLAGS are the preprocessor flags.
 
 The configure script is Cygnus configure, and it will accept
---help. If you are not root, you will probably have to  make
+--help.  If you are not root, you will probably have to make
 it with a different --prefix option.  Our favourite location
 is
 
 it with a different --prefix option.  Our favourite location
 is
 
-          configure --prefix=$HOME/usr
+          ./configure --prefix=$HOME/usr
 
 
-In this case, you will have to set up MFINPUTS,  and  TEXIN-
+In  this  case, you will have to set up MFINPUTS, and TEXIN-
 PUTS accordingly.
 
 PUTS accordingly.
 
-Since  GNU  LilyPond  currently  is beta, you are advised to
+Since GNU LilyPond currently is beta,  you  are  advised  to
 also use
 
           --enable-debugging
 also use
 
           --enable-debugging
@@ -206,47 +216,47 @@ Options to configure include:
      Enable debugging print routines (lilypond -D option)
 
 --enable-optimise
      Enable debugging print routines (lilypond -D option)
 
 --enable-optimise
-     Set maximum optimisation: compile with -O2.   This  can
-     be  unreliable  on  some compiler/platform combinations
+     Set  maximum  optimisation: compile with -O2.  This can
+     be unreliable on  some  compiler/platform  combinations
      (eg, DEC Alpha and PPC)
 
 --enable-profiling
      Compile with support for profiling.
 
 --enable-config
      (eg, DEC Alpha and PPC)
 
 --enable-profiling
      Compile with support for profiling.
 
 --enable-config
-     Output to a different configuration file.   Needed  for
+     Output  to  a different configuration file.  Needed for
      multi-platform builds
 
      multi-platform builds
 
-All  options are documented in the configure help The option
+All options are documented in the configure help The  option
 --enable-optimise is recommended for Real Life usage.
 
 If you do
 
           make all
 
 --enable-optimise is recommended for Real Life usage.
 
 If you do
 
           make all
 
-everything will be compiled, but nothing will be  installed.
-The  resulting  binaries  can be found in the subdirectories
+everything  will be compiled, but nothing will be installed.
+The resulting binaries can be found  in  the  subdirectories
 out/ (which contain all files generated during compilation).
 
 out/ (which contain all files generated during compilation).
 
-7: CONFIGURING FOR MULTIPLE PLATFORMS
+8: CONFIGURING FOR MULTIPLE PLATFORMS
 
 If you want to compile LilyPond with different configuration
 
 If you want to compile LilyPond with different configuration
-settings, then, you  can  use  the  --enable-config  option.
-Example:  suppose I want to build with and   without profil-
+settings,  then,  you  can  use  the --enable-config option.
+Example: suppose I want to build with and   without  profil-
 ing.  Then I'd use the following for the normal build,
 
 ing.  Then I'd use the following for the normal build,
 
-           configure --prefix=~ --disable-optimise --enable-checking
+           ./configure --prefix=~ --disable-optimise --enable-checking
            make
            make install
 
 and for the profiling version, I specify a different config-
 uration.
 
            make
            make install
 
 and for the profiling version, I specify a different config-
 uration.
 
-           configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
+           ./configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
            make config=optprof
            make config=optprof install
 
            make config=optprof
            make config=optprof install
 
-8: INSTALLING
+9: INSTALLING
 
 If you have done a successful make, then a simple
 
 
 If you have done a successful make, then a simple
 
@@ -255,13 +265,14 @@ If you have done a successful make, then a simple
 should do the trick.
 
 If you are doing an upgrade, please remember to remove obso-
 should do the trick.
 
 If you are doing an upgrade, please remember to remove obso-
-lete .pk and .tfm files of the fonts.   A  script  has  been
+lete  .pk  and  .tfm  files of the fonts.  A script has been
 provided to do the work for you, see bin/clean-fonts.sh.
 
 CAVEATS
 
 provided to do the work for you, see bin/clean-fonts.sh.
 
 CAVEATS
 
-o    The  -O2  option   triggers   bugs on various platforms
-     (PowerPC, Alpha).   If  you  experience  problems,  you
+o    The -O2 option  triggers   bugs  on  various  platforms
+     (PowerPC,  Alpha).   If  you  experience  problems, you
+
      should first try  turning off this.
 
 EXAMPLE
      should first try  turning off this.
 
 EXAMPLE
@@ -291,10 +302,10 @@ This is what the output looks like over here:
 Check out the input files, some of them have comments Please
 refer to the man page for more information.
 
 Check out the input files, some of them have comments Please
 refer to the man page for more information.
 
-9: REDHAT LINUX
+10: REDHAT LINUX
 
 
-RedHat Linux users can compile an RPM. A  spec  file  is  in
-make/out/lilypond.spec,  it  is  distributed  along with the
+RedHat  Linux  users  can  compile an RPM. A spec file is in
+make/out/lilypond.spec, it is  distributed  along  with  the
 sources.
 
 You can make the rpm by issuing
 sources.
 
 You can make the rpm by issuing
@@ -302,18 +313,18 @@ You can make the rpm by issuing
           rpm -tb lilypond-x.y.z.tar.gz
           rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
 
           rpm -tb lilypond-x.y.z.tar.gz
           rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
 
-10: DEBIAN GNU/LINUX
+11: DEBIAN GNU/LINUX
 
 
-A Debian package is  also  available;  contact  Anthony  Fok
-foka@debian.org.   The build scripts are in the subdirectory
+A  Debian  package  is  also  available; contact Anthony Fok
+foka@debian.org.  The build scripts are in the  subdirectory
 debian/.
 
 debian/.
 
-11: WINDOWS NT/95
+12: WINDOWS NT/95
 
 Separate instructions on building for W32 are avaible in the
 file README-W32.yo.
 
 
 Separate instructions on building for W32 are avaible in the
 file README-W32.yo.
 
-12: AUTHORS
+13: AUTHORS
 
 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 
 
 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 
diff --git a/NEWS b/NEWS
index 53b952e982ac57157b796347b73a016020c12123..23ddc6417352c87c1fd43a0bd8600b2ec2d5bd2b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,12 +1,38 @@
-pl 43.crypton1
-       - bf: repeat :| placement + core dump
-         input/test/repeat.ly
-         input/test/coda-kludge.ly
-       - bf: mf without ljfour
 
 
+pl 44
+pl 43.jcn2
+       - bf: repeat :| placement + core dump
+         input/test/repeat.ly
+         input/test/coda-kludge.ly
+       - bf: mf without ljfour
+         * feta-accordion fix/hack for feta11 at 300dpi
+
+pl 43.hwn1
+       - half assed attempt at ABC convertor.
+       - Spacing_spanner: "decentral" spacing stuff.  Use -t to try.
+       - bf: StaffGroup vertical alignment
+       - \property {slur,tie,}ydirection -> {slurV,tieV,v}erticalDirection (1.0.20)
+       - Spanner now hangs on left endpoint.
+       - \property forgetAccidentals: do not remember accidentals.
+ Every note not in the key triggers typesetting of an accidental.
+       - \property noResetKey: do not reset key at start of measure:
+ accidental remain in effect until overriden
+       - bf: ties & accidentals (fix breaks oldTieBehavior)
+       - junked Tie::same_pitch_b_
+  
 pl 43.jcn1
        - configure, set-lily.sh, release stuff
 
 pl 43.jcn1
        - configure, set-lily.sh, release stuff
 
+pl 42.tca2
+       - lilypond don't put \interstaffline after last line. This to
+         get really nice vertical spacing for mudela-book.
+       - mudela-book: vertical spacing
+       - lilyponddefs.tex: commented out \parindent=0pt to get correct 
+         paragraph indent for mudela-book
+
+************
+pl 43
+
 pl 41.hwn3
        - reinstated \property inheritance
        - \property SkipBars -> skipBars
 pl 41.hwn3
        - reinstated \property inheritance
        - \property SkipBars -> skipBars
@@ -24,8 +50,6 @@ quence]
 Absolute_dynamic_req, Span_dynamic_req, Slur_req, Beam_req. Use
 Span_reqs and Text_script_reqs with type fields instead. 
 
 Absolute_dynamic_req, Span_dynamic_req, Slur_req, Beam_req. Use
 Span_reqs and Text_script_reqs with type fields instead. 
 
-
-
 pl 42.tca1
        - updated mudela-book documentation
        - misc mudela-book.py
 pl 42.tca1
        - updated mudela-book documentation
        - misc mudela-book.py
@@ -105,8 +129,8 @@ Hara_kiri should be working again.
 spacing.)
        
 pl 40.mb1
 spacing.)
        
 pl 40.mb1
-       - bf: ly2dvi set MFINPUTS so standard tree is found before lilypond
-       - bf: lilypond-regtest.doc, ls-latex.py; now finds author/title
+       - bf: ly2dvi set MFINPUTS so standard tree is found before lilypond
+       - bf: lilypond-regtest.doc, ls-latex.py; now finds author/title
 
 pl 40.uu1
        - large documentation patch by Adrian Mariano
 
 pl 40.uu1
        - large documentation patch by Adrian Mariano
@@ -310,8 +334,8 @@ pl 33.jcn1
        - allow autobeaming according to duration iso (crude) multiplicity
 
 pl 33.jbr1
        - allow autobeaming according to duration iso (crude) multiplicity
 
 pl 33.jbr1
-         - change my email address
-         - Windows platform does a cp -r instead of a ln -s
+        - change my email address
+        - Windows platform does a cp -r instead of a ln -s
 
 pl 33.uu1
        - bf: ^ and _
 
 pl 33.uu1
        - bf: ^ and _
@@ -561,9 +585,9 @@ pl 23.ms1
        - sinfonia.ly: several fixes
        - dynamics
         * increased range pppppp to ffffff
        - sinfonia.ly: several fixes
        - dynamics
         * increased range pppppp to ffffff
-         * added sp, spp, sff, rfz
-         * example see input/test/tchaikovsky.ly
-         * updated dynamics in refman
+        * added sp, spp, sff, rfz
+        * example see input/test/tchaikovsky.ly
+        * updated dynamics in refman
 
 
 pl 24.jcn2
 
 
 pl 24.jcn2
@@ -584,7 +608,7 @@ pl 24.jcn2
 
 
 pl 24.mb1
 
 
 pl 24.mb1
-        - bf: Correct units now used in the .afm files.
+       - bf: Correct units now used in the .afm files.
 
 ******
 
 
 ******
 
@@ -596,13 +620,13 @@ pl 23.jcn9
        - bf: lily-version
 
 pl 23.jbr1
        - bf: lily-version
 
 pl 23.jbr1
-        - scripts/ly2dvi.py: Windows 95 shell does not support redivrection 
-          of stderr.  We now distribute ash and use it when needed.
-        - stepmake/bin/package-zip32.sh: distribute ash, and guild ice-9/
-          directory.  We build and distribute manpages in html format instead
-          of text format.
-        - Documentation/ntweb: Updated doco and now distributing as a self
-          extracted binary with install script.
+       - scripts/ly2dvi.py: Windows 95 shell does not support redivrection 
+         of stderr.  We now distribute ash and use it when needed.
+       - stepmake/bin/package-zip32.sh: distribute ash, and guild ice-9/
+         directory.  We build and distribute manpages in html format instead
+         of text format.
+       - Documentation/ntweb: Updated doco and now distributing as a self
+         extracted binary with install script.
 
 pl 23.hwn4
        - bugfixes
 
 pl 23.hwn4
        - bugfixes
@@ -757,7 +781,7 @@ pl 18.jcn5
        - bf: vv-duet
 
 pl 18.mb1
        - bf: vv-duet
 
 pl 18.mb1
-         - \mark now works, using G_staff_side_item.
+        - \mark now works, using G_staff_side_item.
        - Improved layout of multi-bar rests, including a new
          font symbol.
 
        - Improved layout of multi-bar rests, including a new
          font symbol.
 
@@ -783,17 +807,17 @@ pl 18.jcn1
 pl 18 (jan 4 '99)
 
 pl 17.jbr2
 pl 18 (jan 4 '99)
 
 pl 17.jbr2
-        - Documentation/README-W32: Brought my stuff up to date
-        - Documentation/ntweb: updated for realease
-        - stepmake/bin/package-zip32.sh: cygwin-b20 changes
-        - scripts/ly2dvi.py: LILYPONDPREFIX fixes
+       - Documentation/README-W32: Brought my stuff up to date
+       - Documentation/ntweb: updated for realease
+       - stepmake/bin/package-zip32.sh: cygwin-b20 changes
+       - scripts/ly2dvi.py: LILYPONDPREFIX fixes
 
 pl 17.jbr1
 
 pl 17.jbr1
-        - scripts/ly2dvi.py root is now the shared directory path not the
-          root of the lily installation.  Environment variable LILYPONDPREFIX
-          is also the path to shared directory.
-        - lily/main.cc WINNT conditional added to avoid a casting of 
-          main_prog
+       - scripts/ly2dvi.py root is now the shared directory path not the
+         root of the lily installation.  Environment variable LILYPONDPREFIX
+         is also the path to shared directory.
+       - lily/main.cc WINNT conditional added to avoid a casting of 
+         main_prog
 
 pl 17.hwn1
        - bfs wtk1-fugue1
 
 pl 17.hwn1
        - bfs wtk1-fugue1
@@ -831,7 +855,7 @@ pl 15.uu1
 
 pl15.tca1
        - fixed verbatim option behaviour for mudela-book.
 
 pl15.tca1
        - fixed verbatim option behaviour for mudela-book.
-        - added mudela-book option intertext="some text" 
+       - added mudela-book option intertext="some text" 
        - mudela-book now understand latex \begin{verbatim}
   
 pl 15.jcn1
        - mudela-book now understand latex \begin{verbatim}
   
 pl 15.jcn1
@@ -850,8 +874,8 @@ parser, lilypond (mudela 1.0.14), manual
 parser, lilypond (Mudela 1.0.13)
 
 pl 14.jcn1
 parser, lilypond (Mudela 1.0.13)
 
 pl 14.jcn1
-        - bf: get_chord C-m5-
-        - typos: chord-name
+       - bf: get_chord C-m5-
+       - typos: chord-name
 
 pl 14.tca2     
        - move option proccing out of main
 
 pl 14.tca2     
        - move option proccing out of main
@@ -877,7 +901,7 @@ pl 12.jcn2
        - bf: package-diff
        - new chord syntax, again: TONIC [DURATION] ['-' MODIFIERS/ADDITIONS]
        - shorthand prefix for note-mode: '@', no shorthand for notes in chord
        - bf: package-diff
        - new chord syntax, again: TONIC [DURATION] ['-' MODIFIERS/ADDITIONS]
        - shorthand prefix for note-mode: '@', no shorthand for notes in chord
-           mode...
+          mode...
  
 pl 11.jcn6
        - bf: ly2dvi: better guess LILYPONDPREFIX: <bin>../share/lilypond
  
 pl 11.jcn6
        - bf: ly2dvi: better guess LILYPONDPREFIX: <bin>../share/lilypond
@@ -914,16 +938,16 @@ pl 11.jcn2
        - duration with chords + change:  @4 c @c7
 
 pl 11.jcn1
        - duration with chords + change:  @4 c @c7
 
 pl 11.jcn1
-        - minor chord syntax change: *c6 iso @c6;
+       - minor chord syntax change: *c6 iso @c6;
 
 **********
 
 pl 11
 
 pl9.tca1
 
 **********
 
 pl 11
 
 pl9.tca1
-        - included that missing init/mudela-book-defs.py. Added
-          one line to init/GNUMakefile to make .py-files be included.
-        - fragment and nonfragment options to override autodetection
+       - included that missing init/mudela-book-defs.py. Added
+         one line to init/GNUMakefile to make .py-files be included.
+       - fragment and nonfragment options to override autodetection
 
 pl 10.jcn1
        - input/test/chords.ly
 
 pl 10.jcn1
        - input/test/chords.ly
@@ -971,12 +995,12 @@ pl 9
        - fixed \relative
 
 pl8.tca1
        - fixed \relative
 
 pl8.tca1
-        - changes to mudela-book. Junked fragment and floating options,
-          added eps option. Options should not stay as long that you get
-          comfortable with them. ;)
-        - Also possible to define your own commands with
-          a syntax like \mudela{c d e}
-        - updated mudela-book-doc.doc
+       - changes to mudela-book. Junked fragment and floating options,
+         added eps option. Options should not stay as long that you get
+         comfortable with them. ;)
+       - Also possible to define your own commands with
+         a syntax like \mudela{c d e}
+       - updated mudela-book-doc.doc
 
 pl 8.jcn3
        - website: gnuisation of footers
 
 pl 8.jcn3
        - website: gnuisation of footers
@@ -1097,7 +1121,7 @@ pl 4.uu1
        - bf: mudela-book -> \default_paper is obsolete.
 
 pl 3.ms1
        - bf: mudela-book -> \default_paper is obsolete.
 
 pl 3.ms1
-         - thumb-upgrade
+        - thumb-upgrade
  
 pl4.jcn1
        - bf: dotted slur
  
 pl4.jcn1
        - bf: dotted slur
@@ -1121,10 +1145,10 @@ pl 3.tca1
        - mudela-book example file in Documentation/tex/mudela-book-doc.doc
 
 pl 3.jcn5
        - mudela-book example file in Documentation/tex/mudela-book-doc.doc
 
 pl 3.jcn5
-        - bf: dashed-slur
-        - bf: LilyIdString
-        - more star fixes
-        - repeatbar fixes
+       - bf: dashed-slur
+       - bf: LilyIdString
+       - more star fixes
+       - repeatbar fixes
 
 pl 3.jcn3
        - mup-to-ly.py: version 0.0
 
 pl 3.jcn3
        - mup-to-ly.py: version 0.0
@@ -1168,12 +1192,12 @@ pl 1.jcn4
 pl 2
 
 pl 1.mb1
 pl 2
 
 pl 1.mb1
-        - Support for cautionary accidentals. , i.e. accidentals 
-          within parantheses. Syntax: 'cis?'. Try input/test/accid.fly
-          Note that the font has changed.
-        - bf: No unnecessary warnings about time signatures
-        - Added optional second argument of \key. Set to \major or \minor 
-          to get a major or minor key. Default: major.
+       - Support for cautionary accidentals. , i.e. accidentals 
+         within parantheses. Syntax: 'cis?'. Try input/test/accid.fly
+         Note that the font has changed.
+       - bf: No unnecessary warnings about time signatures
+       - Added optional second argument of \key. Set to \major or \minor 
+         to get a major or minor key. Default: major.
        - bf: Compilation error in midi-walker.cc
 
 pl 1.jcn2
        - bf: Compilation error in midi-walker.cc
 
 pl 1.jcn2
diff --git a/TASKS b/TASKS
new file mode 100644 (file)
index 0000000..b52bec1
--- /dev/null
+++ b/TASKS
@@ -0,0 +1,50 @@
+Call for Volunteers --  The Mutopia project seeks YOUR help.
+
+
+WHAT IS MUTOPIA?
+
+Mutopia is an archive of public domain music, free for all to
+download, modify and redistribute.  It should be based on free
+software. It is similar in spirit to the gutenberg archive.
+
+
+
+WHAT NEEDS TO BE DONE
+
+- write legal faq documents
+
+- setup submission guidelines, 
+
+- acquire mutopia.org domain.
+
+- setup FTP server
+
+- cooperate with ABC folks, ftp.gmd.de
+
+
+
+WHO DO WE NEED
+
+Volunteers that want to setup and maintain a website and FTP site.
+
+Volunteers with enough legal knowledge to write submission guidelines.
+
+A project leader.
+
+
+
+WHO ARE WE?
+
+We are Han-Wen Nienhuys and Jan Nieuwenhuizen.  We are working on the
+GNU project music typesetter, a program that does for sheet music what
+TeX does for text.  We would like to help start this mutopia project.
+Unfortunately, maintaining and extending LilyPond does not leave us
+enough time to take up the task of setting up Mutopia
+
+
+Signed
+
+Han-Wen Nienhys
+Jan Nieuwenhuizen
+
+[other bigwigs?]
diff --git a/TODO b/TODO
index 92ee0c62c75744b04c5a67ebb9824a9be794730a..d23637eef9b35e0968ae0339788e9734156ef4d3 100644 (file)
--- a/TODO
+++ b/TODO
@@ -13,9 +13,12 @@ Grep for TODO and ugh/ugr/urg.
 . * PostScript
 .  * header for PS enteredby = "bla <bla@bar.com>"
 .  * ps/lily.ps see comments.
 . * PostScript
 .  * header for PS enteredby = "bla <bla@bar.com>"
 .  * ps/lily.ps see comments.
+. * down tuplet spanner.
+. * didot / big point.
 . * devise standard for functioning of Vertical_align_element.
 . * midi key.
 . * Repeats
 . * devise standard for functioning of Vertical_align_element.
 . * midi key.
 . * Repeats
+.  * input/bugs/rep.ly (moved from test)
 .  * unfold broken: 
 .   * without alternatives: repeat unfold 4 { a b c d }
 .   * count > alternatives: repeat unfold 79 { a b c d } 
 .  * unfold broken: 
 .   * without alternatives: repeat unfold 4 { a b c d }
 .   * count > alternatives: repeat unfold 79 { a b c d } 
@@ -58,11 +61,7 @@ There are distinct ways of specifying the first two (although at
 present, they're not properly distinguished) but no distinct way to
 specify the third.  Should there be?
 . * rest collision minimum dist.
 present, they're not properly distinguished) but no distinct way to
 specify the third.  Should there be?
 . * rest collision minimum dist.
-. * 1. is there a "no key signature mode" for lily yet so that i can just
-enter the notes without worrying about it instead of having to
-remember to put a "!" after each accidental?
-
-a note with a circle after it, meaning:
+. * a note with a circle after it, meaning:
 
    note + circle = note + 1/4 of its length
 
 
    note + circle = note + 1/4 of its length
 
@@ -70,22 +69,12 @@ a note with a circle after it, meaning:
    page three, the c-sharp on the second line should be a quarter with 
    a circle, not a quarter tied to a sixteenth.  is this at all
    possible with lily?
    page three, the c-sharp on the second line should be a quarter with 
    a circle, not a quarter tied to a sixteenth.  is this at all
    possible with lily?
-tuplets that are written as "number : note", for example
+. * tuplets that are written as "number : note", for example
    "3 : [image of a half note here]".  possible?
    "3 : [image of a half note here]".  possible?
-"p+" and "p-" for dynamic markings.  possible?
 . * repeat engraver, gallina.ly
 
 . * Matanya's tips: 
 .  * spacing for prefatory matter
 . * repeat engraver, gallina.ly
 
 . * Matanya's tips: 
 .  * spacing for prefatory matter
-.  * The line length is 7.5 inch (19.05
-cm) and the height of normal size is equivalent to the traditional raster 1
-> size. (The Schott company sells Letraset sheets of musical symbols which are
-> measured in raster sizes). It is agreed among most engravers I know that the
-> standard size for adult readers in solo music should 70% of raster 1.  Jeff's
-> example was 75%, so I had to modify my file to match. 
-
-So that makes for a staff space of 4 2/3 point. I'll add the
-dimensions to the TODO file.
 .  * accidentals closer to note head
 .  * to space the staffs/staffgroups contained in the score.  
 
 .  * accidentals closer to note head
 .  * to space the staffs/staffgroups contained in the score.  
 
@@ -112,10 +101,10 @@ In the orchestscore.ly file, I tried:
 . * Slur
 . * Rhythmic_grouping
 . * Duration
 . * Slur
 . * Rhythmic_grouping
 . * Duration
-. * Spring generation
 . * Collision
 . * Rest_collision
 . * clef grav prop's 
 . * Collision
 . * Rest_collision
 . * clef grav prop's 
+. * parser
 
 .* TODO before 1.2
 . * Morally pure LilyPond.
 
 .* TODO before 1.2
 . * Morally pure LilyPond.
@@ -147,6 +136,7 @@ In the orchestscore.ly file, I tried:
 .  * make wide_spanner_engraver (line_group_spanne,r staff_symbol)
 . * remove Interval dim_ from Dimension_cache and rename the struct.
 . * do scaled fonts generally 
 .  * make wide_spanner_engraver (line_group_spanne,r staff_symbol)
 . * remove Interval dim_ from Dimension_cache and rename the struct.
 . * do scaled fonts generally 
+. * Spacing.
 . * The Lilypond accidental symbols are available through the TeX macros, 
 \textflat, \textsharp and \textnatural defined in the init file
 lilyponddefs.tex. All the symbols are defined in the files fetaXX.tex
 . * The Lilypond accidental symbols are available through the TeX macros, 
 \textflat, \textsharp and \textnatural defined in the init file
 lilyponddefs.tex. All the symbols are defined in the files fetaXX.tex
@@ -211,6 +201,7 @@ compilation.
 . * ly2dvi
 .  * bottomnote for ly2dvi
 .  * deps for ly2dvi
 . * ly2dvi
 .  * bottomnote for ly2dvi
 .  * deps for ly2dvi
+
 .* STUFF
 . * compulsory hshift
 . * Give # lines in linebreaking.  
 .* STUFF
 . * compulsory hshift
 . * Give # lines in linebreaking.  
@@ -219,11 +210,7 @@ compilation.
 . * \selectmusic to cut pieces from music. 
 . * TODO: merge atom & molecule; make  tree from molecule.
 . * Align_element::padding  ?
 . * \selectmusic to cut pieces from music. 
 . * TODO: merge atom & molecule; make  tree from molecule.
 . * Align_element::padding  ?
-. * uniformise property names...
-.  * ydirection <-> yDirection
-.  * rather allow '_' in identifiers first (i.e. junk ^ and _),
-and do y_direction?
-.  * typo checks on property names?
+. * typo checks on property names?
 . * use streambufs and iostream
        to provide IO handling for TeX stream, mudela stream, data-file.
 . * seriously buffer TeX output (do profile of writing .5 mb TeX file.)
 . * use streambufs and iostream
        to provide IO handling for TeX stream, mudela stream, data-file.
 . * seriously buffer TeX output (do profile of writing .5 mb TeX file.)
@@ -364,11 +351,6 @@ touching it.
 .  * detect of 16/8 bit files
 .  * examples to go with it.
 
 .  * detect of 16/8 bit files
 .  * examples to go with it.
 
-. * Spring_spacer:
-.  * write a faster Spring_spacer (without matrices if possible)
-.  * relate energybound to linelen unitspace fontsize etc.
-.  * used fixed point fp?
-
 . * \header
 .  * output header info to MIDI too.
 
 . * \header
 .  * output header info to MIDI too.
 
diff --git a/VERSION b/VERSION
index b691663438e6b2adc7a8e139ee7cbed619bc7884..c9c12ced278c1f9c57fbda3cf4cf4763ab55eb64 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,8 +1,8 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=1
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=1
-PATCH_LEVEL=43
-MY_PATCH_LEVEL=crypton1
+PATCH_LEVEL=44
+MY_PATCH_LEVEL=
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index b55536ab7fe1d97f3fd786bbeebd84d423666e95..d579266f49ca40a49db06945fd12aab506a08eee 100644 (file)
@@ -1,3 +1,5 @@
+dnl WARNING WARNING WARNING WARNING
+dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4
 dnl aclocal.m4   -*-shell-script-*-
 dnl StepMake subroutines for configure.in
 
 dnl aclocal.m4   -*-shell-script-*-
 dnl StepMake subroutines for configure.in
 
@@ -277,14 +279,15 @@ dnl    fi
     AC_CHECK_PROGS(TAR, tar, error)
 
     if test "x`uname`" = "xHP-UX"; then
     AC_CHECK_PROGS(TAR, tar, error)
 
     if test "x`uname`" = "xHP-UX"; then
+       AC_PATH_PROG(BASH, bash, /bin/sh)
        AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
        AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
-       AC_CHECK_PROGS(SHELL, bash, /bin/ksh)
+       AC_PATH_PROG(SHELL, bash, /bin/ksh)
     else
     else
+       AC_PATH_PROG(BASH, bash, /bin/sh)
        SHELL=/bin/sh
        AC_SUBST(SHELL)
     fi
 
        SHELL=/bin/sh
        AC_SUBST(SHELL)
     fi
 
-    AC_CHECK_PROGS(BASH, bash, /bin/sh)
 
     AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
     AC_SUBST(PYTHON)
 
     AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
     AC_SUBST(PYTHON)
@@ -517,11 +520,11 @@ AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
     [TFMDIR=$enableval],
     [TFMDIR=auto] )
 
     [TFMDIR=$enableval],
     [TFMDIR=auto] )
 
-    AC_MSG_CHECKING(TeX TFM directory)
+    AC_CHECK_PROGS(KPSEWHICH, kpsewhich, no)
+    AC_MSG_CHECKING(for TeX TFM directory)
     if test "x$TFMDIR" = xauto ; then
        if test "x$TEX_TFMDIR" = "x" ; then
     if test "x$TFMDIR" = xauto ; then
        if test "x$TEX_TFMDIR" = "x" ; then
-           if kpsewhich --version > /dev/null 2>&1 ; then
-               TEX_TFMDIR=`kpsewhich tfm cmr10.tfm`
+           if test "x$KPSEWHICH" != "xno" ; then
                CMR10=`kpsewhich tfm cmr10.tfm`
                TEX_TFMDIR=`dirname $CMR10`
            else
                CMR10=`kpsewhich tfm cmr10.tfm`
                TEX_TFMDIR=`dirname $CMR10`
            else
index 47a2eb6eb8e3445a2d1e9be04ece04b1ebe1af81..5f15b0176c2fc5937372263450372b314fc8d6f4 100755 (executable)
--- a/configure
+++ b/configure
@@ -86,6 +86,8 @@ ac_help="$ac_help
   with-localedir=LOCALE   use LOCALE as locale dir. Default: PREFIX/share/locale "
 ac_help="$ac_help
   with-lang=LANG          use LANG as language to emit messages"
   with-localedir=LOCALE   use LOCALE as locale dir. Default: PREFIX/share/locale "
 ac_help="$ac_help
   with-lang=LANG          use LANG as language to emit messages"
+ac_help="$ac_help
+  enable-tex-tfmdir=DIR   set the tex-directory where cmr10.tfm lives (default: use kpsewhich)"
 
 # Initialize some variables set by options.
 # The variables have the same names as the options, with
 
 # Initialize some variables set by options.
 # The variables have the same names as the options, with
@@ -620,8 +622,10 @@ fi
     fi
     stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
 
     fi
     stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
 
+    echo $ac_n "checking Package""... $ac_c" 1>&6
+echo "configure:627: checking Package" >&5
     if test "x$PACKAGE" = "xSTEPMAKE"; then
     if test "x$PACKAGE" = "xSTEPMAKE"; then
-        echo Stepmake package!
+       echo "$ac_t""Stepmake package!" 1>&6
        (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
        (cd stepmake; rm -f bin; ln -s ../bin .)
        ac_aux_dir=
        (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
        (cd stepmake; rm -f bin; ln -s ../bin .)
        ac_aux_dir=
@@ -645,13 +649,15 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
 
        stepmake=stepmake
     else
 
        stepmake=stepmake
     else
-        echo Package: $PACKAGE
+        echo "$ac_t""$PACKAGE" 1>&6
+       echo $ac_n "checking for stepmake""... $ac_c" 1>&6
+echo "configure:655: checking for stepmake" >&5
        # Check for installed stepmake
        if test -d $stepmake; then
        # Check for installed stepmake
        if test -d $stepmake; then
-           echo Using installed stepmake: $stepmake
+           echo "$ac_t""$stepmake" 1>&6
        else
            stepmake='$(depth)'/stepmake
        else
            stepmake='$(depth)'/stepmake
-           echo Using local stepmake: $datadir/stepmake not found
+           echo "$ac_t""./stepmake  ($datadir/stepmake not found)" 1>&6
        fi
        ac_aux_dir=
 for ac_dir in \
        fi
        ac_aux_dir=
 for ac_dir in \
@@ -768,7 +774,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:772: checking host system type" >&5
+echo "configure:778: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
 
 host_alias=$host
 case "$host_alias" in
@@ -793,7 +799,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:797: checking for $ac_word" >&5
+echo "configure:803: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -828,7 +834,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:832: checking for $ac_word" >&5
+echo "configure:838: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -865,7 +871,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:869: checking for $ac_word" >&5
+echo "configure:875: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -897,90 +903,128 @@ test -n "$TAR" || TAR="error"
 
 
     if test "x`uname`" = "xHP-UX"; then
 
 
     if test "x`uname`" = "xHP-UX"; then
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:910: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  case "$BASH" in
+  /*)
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a dos path.
+  ;;
+  *)
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do 
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_path_BASH="$ac_dir/$ac_word"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="/bin/sh"
+  ;;
+esac
+fi
+BASH="$ac_cv_path_BASH"
+if test -n "$BASH"; then
+  echo "$ac_t""$BASH" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
        
     echo "configure: warning: avoiding buggy /bin/sh" 1>&2
     warn_b=yes
 
        
     echo "configure: warning: avoiding buggy /bin/sh" 1>&2
     warn_b=yes
 
-       for ac_prog in bash
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:910: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_SHELL'+set}'`\" = set"; then
+echo "configure:950: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_SHELL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  if test -n "$SHELL"; then
-  ac_cv_prog_SHELL="$SHELL" # Let the user override the test.
-else
+  case "$SHELL" in
+  /*)
+  ac_cv_path_SHELL="$SHELL" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_SHELL="$SHELL" # Let the user override the test with a dos path.
+  ;;
+  *)
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
+  for ac_dir in $ac_dummy; do 
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_SHELL="$ac_prog"
+      ac_cv_path_SHELL="$ac_dir/$ac_word"
       break
     fi
   done
   IFS="$ac_save_ifs"
       break
     fi
   done
   IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_SHELL" && ac_cv_path_SHELL="/bin/ksh"
+  ;;
+esac
 fi
 fi
-fi
-SHELL="$ac_cv_prog_SHELL"
+SHELL="$ac_cv_path_SHELL"
 if test -n "$SHELL"; then
   echo "$ac_t""$SHELL" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
 if test -n "$SHELL"; then
   echo "$ac_t""$SHELL" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
-test -n "$SHELL" && break
-done
-test -n "$SHELL" || SHELL="/bin/ksh"
-
     else
     else
-       SHELL=/bin/sh
-       
-    fi
-
-    for ac_prog in bash
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:950: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_BASH'+set}'`\" = set"; then
+echo "configure:987: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  if test -n "$BASH"; then
-  ac_cv_prog_BASH="$BASH" # Let the user override the test.
-else
+  case "$BASH" in
+  /*)
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a dos path.
+  ;;
+  *)
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
+  for ac_dir in $ac_dummy; do 
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_BASH="$ac_prog"
+      ac_cv_path_BASH="$ac_dir/$ac_word"
       break
     fi
   done
   IFS="$ac_save_ifs"
       break
     fi
   done
   IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="/bin/sh"
+  ;;
+esac
 fi
 fi
-fi
-BASH="$ac_cv_prog_BASH"
+BASH="$ac_cv_path_BASH"
 if test -n "$BASH"; then
   echo "$ac_t""$BASH" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
 if test -n "$BASH"; then
   echo "$ac_t""$BASH" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
-test -n "$BASH" && break
-done
-test -n "$BASH" || BASH="/bin/sh"
+       SHELL=/bin/sh
+       
+    fi
 
 
     # Extract the first word of "${PYTHON:-python}", so it can be a program name with args.
 set dummy ${PYTHON:-python}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 
 
     # Extract the first word of "${PYTHON:-python}", so it can be a program name with args.
 set dummy ${PYTHON:-python}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:984: checking for $ac_word" >&5
+echo "configure:1028: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_PYTHON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_PYTHON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1213,7 +1257,7 @@ EOF
     # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
     # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1217: checking for $ac_word" >&5
+echo "configure:1261: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1243,7 +1287,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1247: checking for $ac_word" >&5
+echo "configure:1291: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1294,7 +1338,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1298: checking for $ac_word" >&5
+echo "configure:1342: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1326,7 +1370,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1330: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1374: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1337,12 +1381,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
 
 cat > conftest.$ac_ext << EOF
 
-#line 1341 "configure"
+#line 1385 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:1346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1390: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -1368,12 +1412,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1372: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1416: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1377: checking whether we are using GNU C" >&5
+echo "configure:1421: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1382,7 +1426,7 @@ else
   yes;
 #endif
 EOF
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1386: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1430: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -1401,7 +1445,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1405: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1449: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1464,7 +1508,7 @@ EOF
 fi
 
 echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6
-echo "configure:1468: checking how to run the C++ preprocessor" >&5
+echo "configure:1512: checking how to run the C++ preprocessor" >&5
 if test -z "$CXXCPP"; then
 if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 if test -z "$CXXCPP"; then
 if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1477,12 +1521,12 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
 cross_compiling=$ac_cv_prog_cxx_cross
   CXXCPP="${CXX-g++} -E"
   cat > conftest.$ac_ext <<EOF
 cross_compiling=$ac_cv_prog_cxx_cross
   CXXCPP="${CXX-g++} -E"
   cat > conftest.$ac_ext <<EOF
-#line 1481 "configure"
+#line 1525 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1486: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1530: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1519,7 +1563,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1523: checking for $ac_word" >&5
+echo "configure:1567: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1551,7 +1595,7 @@ test -n "$CXX" || CXX="gcc"
 
 
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
 
 
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1555: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
+echo "configure:1599: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 
 ac_ext=C
 # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
 
 ac_ext=C
 # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1562,12 +1606,12 @@ cross_compiling=$ac_cv_prog_cxx_cross
 
 cat > conftest.$ac_ext << EOF
 
 
 cat > conftest.$ac_ext << EOF
 
-#line 1566 "configure"
+#line 1610 "configure"
 #include "confdefs.h"
 
 int main(){return(0);}
 EOF
 #include "confdefs.h"
 
 int main(){return(0);}
 EOF
-if { (eval echo configure:1571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1615: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cxx_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
   ac_cv_prog_cxx_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -1593,12 +1637,12 @@ if test $ac_cv_prog_cxx_works = no; then
   { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
   { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1597: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1641: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
 cross_compiling=$ac_cv_prog_cxx_cross
 
 echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
 cross_compiling=$ac_cv_prog_cxx_cross
 
 echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
-echo "configure:1602: checking whether we are using GNU C++" >&5
+echo "configure:1646: checking whether we are using GNU C++" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1607,7 +1651,7 @@ else
   yes;
 #endif
 EOF
   yes;
 #endif
 EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1611: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1655: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gxx=yes
 else
   ac_cv_prog_gxx=no
   ac_cv_prog_gxx=yes
 else
   ac_cv_prog_gxx=no
@@ -1626,7 +1670,7 @@ ac_test_CXXFLAGS="${CXXFLAGS+set}"
 ac_save_CXXFLAGS="$CXXFLAGS"
 CXXFLAGS=
 echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
 ac_save_CXXFLAGS="$CXXFLAGS"
 CXXFLAGS=
 echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:1630: checking whether ${CXX-g++} accepts -g" >&5
+echo "configure:1674: checking whether ${CXX-g++} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1660,17 +1704,17 @@ fi
 
     ac_safe=`echo "FlexLexer.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for FlexLexer.h""... $ac_c" 1>&6
 
     ac_safe=`echo "FlexLexer.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for FlexLexer.h""... $ac_c" 1>&6
-echo "configure:1664: checking for FlexLexer.h" >&5
+echo "configure:1708: checking for FlexLexer.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1669 "configure"
+#line 1713 "configure"
 #include "confdefs.h"
 #include <FlexLexer.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <FlexLexer.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1674: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1718: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1721,12 +1765,12 @@ fi
 
 
     echo $ac_n "checking whether explicit instantiation is needed""... $ac_c" 1>&6
 
 
     echo $ac_n "checking whether explicit instantiation is needed""... $ac_c" 1>&6
-echo "configure:1725: checking whether explicit instantiation is needed" >&5
+echo "configure:1769: checking whether explicit instantiation is needed" >&5
 if eval "test \"`echo '$''{'lily_cv_need_explicit_instantiation'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'lily_cv_need_explicit_instantiation'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1730 "configure"
+#line 1774 "configure"
 #include "confdefs.h"
 
     template <class T> struct foo { static int baz; };
 #include "confdefs.h"
 
     template <class T> struct foo { static int baz; };
@@ -1736,7 +1780,7 @@ int main() {
  return foo<int>::baz; 
 ; return 0; }
 EOF
  return foo<int>::baz; 
 ; return 0; }
 EOF
-if { (eval echo configure:1740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   lily_cv_need_explicit_instantiation=no
 else
   rm -rf conftest*
   lily_cv_need_explicit_instantiation=no
 else
@@ -1763,7 +1807,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1767: checking for $ac_word" >&5
+echo "configure:1811: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1806,7 +1850,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1810: checking for $ac_word" >&5
+echo "configure:1854: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1841,7 +1885,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1845: checking for $ac_word" >&5
+echo "configure:1889: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1909,7 +1953,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1913: checking for $ac_word" >&5
+echo "configure:1957: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1942,7 +1986,7 @@ test -n "$AR" || AR="error"
     # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
     # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1946: checking for $ac_word" >&5
+echo "configure:1990: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1998,7 +2042,7 @@ fi
 
 
     echo $ac_n "checking language""... $ac_c" 1>&6
 
 
     echo $ac_n "checking language""... $ac_c" 1>&6
-echo "configure:2002: checking language" >&5    
+echo "configure:2046: checking language" >&5    
     case "$language" in
       En* | en* | Am* | am* | US* | us*)
            lang=English;;
     case "$language" in
       En* | en* | Am* | am* | US* | us*)
            lang=English;;
@@ -2034,7 +2078,7 @@ EOF
 
 
     echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6
 
 
     echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6
-echo "configure:2038: checking for gettext in -lintl" >&5
+echo "configure:2082: checking for gettext in -lintl" >&5
 ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2042,7 +2086,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2046 "configure"
+#line 2090 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 #ifdef __cplusplus
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 #ifdef __cplusplus
@@ -2056,7 +2100,7 @@ int main() {
 gettext()
 ; return 0; }
 EOF
 gettext()
 ; return 0; }
 EOF
-if { (eval echo configure:2060: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2104: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2086,12 +2130,12 @@ fi
     for ac_func in gettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
     for ac_func in gettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2090: checking for $ac_func" >&5
+echo "configure:2134: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2095 "configure"
+#line 2139 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2117,7 +2161,7 @@ $ac_func();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2149,7 +2193,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2153: checking for $ac_word" >&5
+echo "configure:2197: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2180,7 +2224,7 @@ done
 test -n "$MSGFMT" || MSGFMT="\$(SHELL) \$(step-bindir)/fake-msgfmt.sh "
 
     echo $ac_n "checking whether msgfmt accepts -o""... $ac_c" 1>&6
 test -n "$MSGFMT" || MSGFMT="\$(SHELL) \$(step-bindir)/fake-msgfmt.sh "
 
     echo $ac_n "checking whether msgfmt accepts -o""... $ac_c" 1>&6
-echo "configure:2184: checking whether msgfmt accepts -o" >&5
+echo "configure:2228: checking whether msgfmt accepts -o" >&5
     msgfmt_output="`msgfmt -o bla 2>&1 | grep usage`"
     if test "$msgfmt_output" = ""; then
        echo "$ac_t""yes" 1>&6
     msgfmt_output="`msgfmt -o bla 2>&1 | grep usage`"
     if test "$msgfmt_output" = ""; then
        echo "$ac_t""yes" 1>&6
@@ -2208,7 +2252,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2212: checking for $ac_word" >&5
+echo "configure:2256: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_METAFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_METAFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2244,7 +2288,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2248: checking for $ac_word" >&5
+echo "configure:2292: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2282,7 +2326,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2286: checking for $ac_word" >&5
+echo "configure:2330: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_METAPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_METAPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2318,7 +2362,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2322: checking for $ac_word" >&5
+echo "configure:2366: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2348,6 +2392,7 @@ test -n "$MPOST" && break
 done
 test -n "$MPOST" || MPOST="-echo no mp or mpost"
 
 done
 test -n "$MPOST" || MPOST="-echo no mp or mpost"
 
+
        METAPOST=$MPOST
     fi
 
        METAPOST=$MPOST
     fi
 
@@ -2356,7 +2401,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2360: checking for $ac_word" >&5
+echo "configure:2405: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_INIMETAFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_INIMETAFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2392,7 +2437,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2396: checking for $ac_word" >&5
+echo "configure:2441: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_INIMFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_INIMFONT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2430,7 +2475,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2434: checking for $ac_word" >&5
+echo "configure:2479: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_INIMETAPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_INIMETAPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2466,7 +2511,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2470: checking for $ac_word" >&5
+echo "configure:2515: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_INIMPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_INIMPOST'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2499,12 +2544,88 @@ test -n "$INIMPOST" || INIMPOST="-echo no inimp or inimpost"
        INIMETAPOST=$INIMPOST
     fi
 
        INIMETAPOST=$INIMPOST
     fi
 
+    echo $ac_n "checking for working metafont mode""... $ac_c" 1>&6
+echo "configure:2549: checking for working metafont mode" >&5
+    modelist='ljfour lj4 lj3 lj2 ljet laserjet'
+    for MFMODE in $modelist; do
+       $METAFONT "\mode:=$MFMODE; mode_setup; end." > /dev/null 2>&1
+       if test -f mfput.tfm; then
+           break;
+       fi
+    done
+    rm -f mfput.*
+    echo "$ac_t""$MFMODE" 1>&6
+
+    
     
     
     
     
 
     
     
     
     
 
-# AC_STEPMAKE_TEXMF_DIRS
+
+    # Check whether --enable-tex-tfmdir or --disable-tex-tfmdir was given.
+if test "${enable_tex_tfmdir+set}" = set; then
+  enableval="$enable_tex_tfmdir"
+  TFMDIR=$enableval
+else
+  TFMDIR=auto 
+fi
+
+
+    for ac_prog in kpsewhich
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2581: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_KPSEWHICH'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$KPSEWHICH"; then
+  ac_cv_prog_KPSEWHICH="$KPSEWHICH" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_KPSEWHICH="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+KPSEWHICH="$ac_cv_prog_KPSEWHICH"
+if test -n "$KPSEWHICH"; then
+  echo "$ac_t""$KPSEWHICH" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$KPSEWHICH" && break
+done
+test -n "$KPSEWHICH" || KPSEWHICH="no"
+
+    echo $ac_n "checking for TeX TFM directory""... $ac_c" 1>&6
+echo "configure:2612: checking for TeX TFM directory" >&5
+    if test "x$TFMDIR" = xauto ; then
+       if test "x$TEX_TFMDIR" = "x" ; then
+           if test "x$KPSEWHICH" != "xno" ; then
+               CMR10=`kpsewhich tfm cmr10.tfm`
+               TEX_TFMDIR=`dirname $CMR10`
+           else
+               
+    echo "configure: warning: Please set TEX_TFMDIR (to where cmr10.tfm lives):
+       TEX_TFMDIR=/usr/local/TeX/lib/tex/fonts ./configure" 1>&2
+    warn_b=yes
+
+           fi
+       fi
+    fi
+    echo "$ac_t""$TEX_TFMDIR" 1>&6
+    
+
 
     if test "x$YODL" = "x"; then 
        for ac_prog in striproff
 
     if test "x$YODL" = "x"; then 
        for ac_prog in striproff
@@ -2512,7 +2633,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2516: checking for $ac_word" >&5
+echo "configure:2637: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_STRIPROFF'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_STRIPROFF'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2547,7 +2668,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2551: checking for $ac_word" >&5
+echo "configure:2672: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2582,7 +2703,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2586: checking for $ac_word" >&5
+echo "configure:2707: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2HTML'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2HTML'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2617,7 +2738,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2621: checking for $ac_word" >&5
+echo "configure:2742: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2LATEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2LATEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2651,7 +2772,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2655: checking for $ac_word" >&5
+echo "configure:2776: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2686,7 +2807,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2690: checking for $ac_word" >&5
+echo "configure:2811: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MSLESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MSLESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2721,7 +2842,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2725: checking for $ac_word" >&5
+echo "configure:2846: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TEXINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TEXINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2756,7 +2877,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2760: checking for $ac_word" >&5
+echo "configure:2881: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2817,7 +2938,7 @@ test -n "$YODL2TXT" || YODL2TXT="-echo no yodl"
 ## The GUILE_FLAGS macro.
   ## First, let's just see if we can find Guile at all.
   echo $ac_n "checking for Guile""... $ac_c" 1>&6
 ## The GUILE_FLAGS macro.
   ## First, let's just see if we can find Guile at all.
   echo $ac_n "checking for Guile""... $ac_c" 1>&6
-echo "configure:2821: checking for Guile" >&5
+echo "configure:2942: checking for Guile" >&5
   guile-config link > /dev/null || {
     echo "configure: cannot find guile-config; is Guile installed?" 1>&2
     exit 1
   guile-config link > /dev/null || {
     echo "configure: cannot find guile-config; is Guile installed?" 1>&2
     exit 1
@@ -2829,7 +2950,7 @@ echo "configure:2821: checking for Guile" >&5
   echo "$ac_t""yes" 1>&6
 
     echo $ac_n "checking for gh_scm2doubles in -lguile""... $ac_c" 1>&6
   echo "$ac_t""yes" 1>&6
 
     echo $ac_n "checking for gh_scm2doubles in -lguile""... $ac_c" 1>&6
-echo "configure:2833: checking for gh_scm2doubles in -lguile" >&5
+echo "configure:2954: checking for gh_scm2doubles in -lguile" >&5
 ac_lib_var=`echo guile'_'gh_scm2doubles | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo guile'_'gh_scm2doubles | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2837,7 +2958,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lguile $GUILE_LDFLAGS      $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lguile $GUILE_LDFLAGS      $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2841 "configure"
+#line 2962 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 #ifdef __cplusplus
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 #ifdef __cplusplus
@@ -2851,7 +2972,7 @@ int main() {
 gh_scm2doubles()
 ; return 0; }
 EOF
 gh_scm2doubles()
 ; return 0; }
 EOF
-if { (eval echo configure:2855: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2976: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2885,7 +3006,7 @@ fi
 
 
 echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
 
 
 echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
-echo "configure:2889: checking for 8-bit clean memcmp" >&5
+echo "configure:3010: checking for 8-bit clean memcmp" >&5
 if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2893,7 +3014,7 @@ else
   ac_cv_func_memcmp_clean=no
 else
   cat > conftest.$ac_ext <<EOF
   ac_cv_func_memcmp_clean=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 2897 "configure"
+#line 3018 "configure"
 #include "confdefs.h"
 #ifdef __cplusplus
 extern "C" void exit(int);
 #include "confdefs.h"
 #ifdef __cplusplus
 extern "C" void exit(int);
@@ -2906,7 +3027,7 @@ main()
 }
 
 EOF
 }
 
 EOF
-if { (eval echo configure:2910: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3031: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_memcmp_clean=yes
 else
 then
   ac_cv_func_memcmp_clean=yes
 else
@@ -2924,12 +3045,12 @@ echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6
 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.${ac_objext}"
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.${ac_objext}"
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
-echo "configure:2928: checking for vprintf" >&5
+echo "configure:3049: checking for vprintf" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2933 "configure"
+#line 3054 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
@@ -2955,7 +3076,7 @@ vprintf();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3080: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
@@ -2979,12 +3100,12 @@ fi
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
-echo "configure:2983: checking for _doprnt" >&5
+echo "configure:3104: checking for _doprnt" >&5
 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2988 "configure"
+#line 3109 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
@@ -3010,7 +3131,7 @@ _doprnt();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:3014: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3135: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
@@ -3037,12 +3158,12 @@ fi
 for ac_func in memmem snprintf vsnprintf gettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
 for ac_func in memmem snprintf vsnprintf gettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3041: checking for $ac_func" >&5
+echo "configure:3162: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3046 "configure"
+#line 3167 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3068,7 +3189,7 @@ $ac_func();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:3072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3193: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3107,7 +3228,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3111: checking for $ac_word" >&5
+echo "configure:3232: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3147,13 +3268,22 @@ test -n "$MAKEINFO" || MAKEINFO="error"
        fi
 
 
        fi
 
 
-
-echo $ac_n "checking Checking TFM directory""... $ac_c" 1>&6
-echo "configure:3153: checking Checking TFM directory" >&5
-CMR10=`kpsewhich tfm cmr10.tfm`
-TEX_TFMDIR=`dirname $CMR10`
-echo "$ac_t""$TEX_TFMDIR" 1>&6
-
+echo $ac_n "checking links for running from sourcetree""... $ac_c" 1>&6
+echo "configure:3273: checking links for running from sourcetree" >&5
+LILYPONDPREFIX=$absolute_builddir
+LOCALES="it nl"
+for i in $LOCALES; do
+       dir=$LILYPONDPREFIX/share/locale/$i/LC_MESSAGES
+       if test ! -x $dir ; then
+               mkdir -p $dir
+       fi
+       rm -f $dir/lilypond.mo 
+       ln -sf $LILYPONDPREFIX/po/out/$i.mo $dir/lilypond.mo
+done
+rm -f afm; ln -sf $LILYPONDPREFIX/mf/out afm
+rm -f tfm; ln -sf $LILYPONDPREFIX/mf/out tfm
+rm -f cmtfm; ln -sf $TEX_TFMDIR cmtfm
+echo "$ac_t""ok" 1>&6
 
 
     trap '' 1 2 15
 
 
     trap '' 1 2 15
@@ -3340,6 +3470,9 @@ s%@INIMETAFONT@%$INIMETAFONT%g
 s%@INIMFONT@%$INIMFONT%g
 s%@INIMETAPOST@%$INIMETAPOST%g
 s%@INIMPOST@%$INIMPOST%g
 s%@INIMFONT@%$INIMFONT%g
 s%@INIMETAPOST@%$INIMETAPOST%g
 s%@INIMPOST@%$INIMPOST%g
+s%@MFMODE@%$MFMODE%g
+s%@KPSEWHICH@%$KPSEWHICH%g
+s%@TEX_TFMDIR@%$TEX_TFMDIR%g
 s%@STRIPROFF@%$STRIPROFF%g
 s%@YODL@%$YODL%g
 s%@YODL2HTML@%$YODL2HTML%g
 s%@STRIPROFF@%$STRIPROFF%g
 s%@YODL@%$YODL%g
 s%@YODL2HTML@%$YODL2HTML%g
@@ -3351,7 +3484,6 @@ s%@YODL2TXT@%$YODL2TXT%g
 s%@YODL2LESS_DIR@%$YODL2LESS_DIR%g
 s%@LIBOBJS@%$LIBOBJS%g
 s%@MAKEINFO@%$MAKEINFO%g
 s%@YODL2LESS_DIR@%$YODL2LESS_DIR%g
 s%@LIBOBJS@%$LIBOBJS%g
 s%@MAKEINFO@%$MAKEINFO%g
-s%@TEX_TFMDIR@%$TEX_TFMDIR%g
 
 CEOF
 EOF
 
 CEOF
 EOF
@@ -3665,4 +3797,3 @@ fi
     chmod 444 GNUmakefile
 
 
     chmod 444 GNUmakefile
 
 
-
index 1968b768cf41ba61eb8c93c36b5113deca6d669c..1f6f5148378e600872ef1ea34ca3f93cc8168ca9 100644 (file)
@@ -4,7 +4,7 @@ composer = "Johann Christoph Faber";
 piece = "1.  Overture";
 }
 
 piece = "1.  Overture";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 global=\notes{
        \time 2/2;
 
 global=\notes{
        \time 2/2;
index e895cb50aa41a513b3b20ddf2e38725eff0496a9..5f01cc9934cf05917d71c118dd142ee8c6456d18 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 scales = \notes\transpose c''{
                f2 f f f f f f f f f\break 
 
 scales = \notes\transpose c''{
                f2 f f f f f f f f f\break 
diff --git a/input/bugs/rep.ly b/input/bugs/rep.ly
new file mode 100644 (file)
index 0000000..94a0615
--- /dev/null
@@ -0,0 +1,14 @@
+\score{
+       <
+                 \context Staff \notes\relative c'{ 
+                         c4 d e f
+                         \repeat semi 3 { g a b c }
+%                        \alternative { { c b a g } { f e d c } } c c c c
+                         \alternative { { c b a g } { f e d c } { c d e f } }
+                         g g g g
+                         \repeat semi 2 { c c c c }
+                         \repeat semi 2 { c c c c }
+                         g g g g
+                 }
+       >
+}
index 1fea3ac1984f391841b06c3fef05b772f804eb07..7bbed535f0ef9de0f36118632b802e85e39c17d3 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 one = \notes\relative c{
        c'' d e f
 
 one = \notes\relative c{
        c'' d e f
index 74d87dff77b96869238496239a7c37b2c106ad88..60443d076f34b11a30769c2c7fc1328688c048c5 100644 (file)
@@ -57,4 +57,4 @@ of a certain tune (Jazz, Real Book, for example), like
        }
 }
 
        }
 }
 
-\version "1.0.18";
+\version "1.0.20";
index d931c9bf9733a565c4a73bf57579a166139ac2df..f203dedaf14cba4f6433932fe1c6670f6dad1592 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 
 blah = \notes {
 
 
 blah = \notes {
index 09a1db7e40e3963e3541cd89273a01357a6a475f..376fadc8ba04e651f737e4e2e13bffe1919972c7 100644 (file)
@@ -10,7 +10,7 @@ copyright =    "public domain";
 Tested Features: example file with comments
 
 %}
 Tested Features: example file with comments
 
 %}
-\version "1.0.19";
+\version "1.0.20";
 
 
 % the % is a comment.
 
 
 % the % is a comment.
index 904e05f0d886b2c64f591a536f5ace659cd07a91..e54ca2a2017c98650dce9bfc321afc608f2c2b38 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 part = \notes {
        c-1 c c c
        r1*3
 part = \notes {
        c-1 c c c
        r1*3
index 1dcb3eb6a35f31afce611fa06f318091197110ac..bfd90fea410d25abad2d4272b4c16f9eb9f1d70f 100644 (file)
@@ -28,7 +28,7 @@
 % \lbheel \lbheel \lfheel \lftoe
 % \rbheel \rbtoe \rfheel \rftoe
 
 % \lbheel \lbheel \lfheel \lftoe
 % \rbheel \rbtoe \rfheel \rftoe
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
                \notes {
 
 \score{
                \notes {
index 5fd8dfff59a21945a7bc94dca622d97217617a7a..a8c26b71f6d1b384d0025e6a77a9229e5d0f9d92 100644 (file)
@@ -23,7 +23,7 @@
    * organ staff...
 %}
 
    * organ staff...
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 
 
 
 
 
@@ -192,23 +192,23 @@ breakmusic = \notes {
     \translator {
     \VoiceContext
     \name "VoiceOne";
     \translator {
     \VoiceContext
     \name "VoiceOne";
-    ydirection = "1";
+    verticalDirection = "1";
     }
     \translator {
     \VoiceContext
     \name "VoiceTwo";
     }
     \translator {
     \VoiceContext
     \name "VoiceTwo";
-    ydirection = "-1";
+    verticalDirection = "-1";
     }
     \translator {
     \VoiceContext
     \name "VoiceThree";
     }
     \translator {
     \VoiceContext
     \name "VoiceThree";
-    ydirection = "1";
+    verticalDirection = "1";
     hshift = "1";
     }
     \translator {
     \VoiceContext
     \name "VoiceFour";
     hshift = "1";
     }
     \translator {
     \VoiceContext
     \name "VoiceFour";
-    ydirection = "-1";
+    verticalDirection = "-1";
     hshift = "1";
     }
    \translator { 
     hshift = "1";
     }
    \translator { 
index 4b2091264640c74a24c58813f044ca33ddc1c825..e8ab4e3de6b98f456f826a1d047bc71da7233875 100644 (file)
@@ -7,7 +7,7 @@ TestedFeatures =         "multiple meters, beaming, unsynced bars, userdefd engravers";
 
 
 
 
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 ritme = \notes\transpose c'' {
        \time  4/4;
 
 ritme = \notes\transpose c'' {
        \time  4/4;
index 8f130977aada3cce9d062753fa4ff39e8e8f9fa0..4b00ac05be613901c2482aed1b5bc933b1186e84 100644 (file)
@@ -16,7 +16,7 @@ copyright =    "public domain";
 % scales with accents.
 %
 
 % scales with accents.
 %
 
-\version "1.0.19";
+\version "1.0.20";
 blah =         \notes {
                \time 6/8;      
 \transpose c {
 blah =         \notes {
                \time 6/8;      
 \transpose c {
index bdd00db6235af8ea165674f7a20c56356e9b96a5..598e45bc38d28e07611b46e535aba443bef9277d 100644 (file)
@@ -1,5 +1,5 @@
        
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 blah =         \notes{ \transpose c'' {
 
 
 blah =         \notes{ \transpose c'' {
index 4578d11e304b0fc721f0a9f207e0f74e5458839d..c018bd523c40beee241d26bb5d043c90b461b613 100644 (file)
@@ -118,4 +118,4 @@ global = \notes {
 }
 
 
 }
 
 
-\version "1.0.18";
+\version "1.0.20";
index 0e41f5b2478d7d021133cd1ff744af3924d8afe8..33b050ea55fc3b1f08adc22a8169dfc8f16207c0 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 \score{
        \notes \transpose c'''{
                \stemup
 \score{
        \notes \transpose c'''{
                \stemup
index 7df84b510b767906951d2831ff03283ddadcf6bc..acb8b7ab87b8b4481903a18e72871b8be9c0f683 100644 (file)
@@ -121,4 +121,4 @@ xxx\break
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index c0e8e2b5670aab932a955ed14ad5891b22cd5f94..d176fbc7f274c1085121bb32d61b3079c6e1cad6 100644 (file)
@@ -31,4 +31,4 @@
 
 }}
 
 
 }}
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index fd08429887372b53118301cc096082d33d132d7a..8990f4686834a3a5198897054369a971f894a22a 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 onestaff = \context Staff = foo\notes  {
        \property Staff.instr = instr
 
 onestaff = \context Staff = foo\notes  {
        \property Staff.instr = instr
index 7b5cb08c97dd83e90260b2a685d704c4d6e64f8f..3ad0189aeb7c9ff7d750f28f9795c67e6f59523b 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes\transpose c'{
 
 \score{
        \notes\transpose c'{
index 660d86d902ae1e98735120343774485ff303c8cc..4554160c4351d4c984ab1d67a5765d2c99008c90 100644 (file)
@@ -30,4 +30,4 @@
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index ecaaab30c3a0b312ee1374857d0c4cb71e9a0cfe..f71167fdabcffd291a99965a3e12963168ee005a 100644 (file)
@@ -21,4 +21,4 @@
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 40f16d56344d0f2ee29dc63f7db10de0171c1ac6..6d69d96723663005d3ee637bdfb2068e5c14e51b 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes\transpose c''{
 
 \score{
        \notes\transpose c''{
index 47ad0f5258b11e32e733a1b16252ae0bdb3e2c31..2e0cbb43ca707ea29868dc5573540cafd31d2fa7 100644 (file)
@@ -6,7 +6,7 @@ copyright =      "PD";
 
 TestedFeatures =        "beams and beamflags";
 }
 
 TestedFeatures =        "beams and beamflags";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        <
 
 \score{
        <
index 93beafe9ae241c53b42354aa36b761a3a7216f6b..83b3e26ff7ae6e179047cfc3e8ceb6d78067af02 100644 (file)
@@ -5,7 +5,7 @@ TestedFeatures =         "This file tests Feta embedded slurs" +
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 shortlong = \notes{
        c4()c( c c  |
 
 shortlong = \notes{
        c4()c( c c  |
index 443089d7f16252504c2bc2d5ac9906d49cef79dd..29fae53e31db71ce98a606bad6117f517c7f58df 100644 (file)
@@ -22,4 +22,4 @@ inversions = \notes\transpose c''\chords{
        >
 }
 
        >
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index b2ad9409ded55a1b33e12fde8da43d53564e6f5c..25ffa4bc7899613c122d2bf26cc85312f2a6e35e 100644 (file)
@@ -41,4 +41,4 @@ tab = \notes\transpose c'''\chords{
 
 }
 
 
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 0ace585d5556ea90fbefb893bec81e792e0f0588..06cf21a60a36060a83b6af4094b5bffbb60516dd 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 %{
 Would this be acceptable/good enough/convenient for entry?
 
 %{
 Would this be acceptable/good enough/convenient for entry?
index 2fb5476b47f19c034629292235f1f7f03d4be656..4050cbfcd5d8364a4cf65dfc32a82cb415286bb9 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score {
        \notes{ 
 
 \score {
        \notes{ 
index ce736b98456bb20ac433c54540509321de013921..c938d5bd49237b71aee8a0d28fbadae0aaa153b7 100644 (file)
@@ -5,7 +5,7 @@ enteredby =      "HWN,JCN";
 copyright =     "public domain";
 Tested =        "test the Collision resolution ";
 }
 copyright =     "public domain";
 Tested =        "test the Collision resolution ";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 twovoice = \context Staff \notes < 
        \context Voice=i { \stemdown c4 d e f g2~  g4 a [c8 d e f] c2| }
 
 twovoice = \context Staff \notes < 
        \context Voice=i { \stemdown c4 d e f g2~  g4 a [c8 d e f] c2| }
index 1bf7fb703d9db66348e7a31839ef12ca36ad1544..5c94ae07bf9dede84caa1626007f152196cc96d2 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 
 \score {
 
 
 \score {
index c3debaf4ebbe16eda32de77dcd523fb3e4218d7e..dc382e07a6ab720a981acb7e8894f47bf93286ce 100644 (file)
@@ -7,7 +7,7 @@ TestedFeatures = "This file tests silly line shapes";
 
 \include "paper20.ly"
 
 
 \include "paper20.ly"
 
-\version "1.0.19";
+\version "1.0.20";
 
 oden = \lyrics{ 
        O8 |
 
 oden = \lyrics{ 
        O8 |
index bc799418d93c5509df3532ccf3e887cc1c399a0d..6b42c3e8f0940ad96bca38c378680b87ee94ba72 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes{
 
 \score{
        \notes{
index 44aa7cfc6c5c94cd93e1ea835b2353b54b99e530..ea0587909da70b914a34bfc5fc1b92c5c9cb4bf2 100644 (file)
@@ -5,4 +5,4 @@
        >
 }
 
        >
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 03b2e26d45d05dd67749211bb6ed5ba5b0842090..829c0929b946bbd00a4dcdfd9d5f60f6a43b2110 100644 (file)
@@ -42,4 +42,4 @@ extra-staff.ly:
 }
 
 
 }
 
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 84aee9850a14e741215ccee6fdd007020f1abd22..a9992e2dff9778bc2a539a07fb5d1b59884824b5 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes \relative c {
 
 \score{
        \notes \relative c {
index a1991223ca5483777f8916b7589076b85abfaaa2..7e2b30aa53fa490ff4239e15a88f6d56031a65d2 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 FontBody=      \notes\transpose c''{ 
                \bar "|:";
 
 FontBody=      \notes\transpose c''{ 
                \bar "|:";
index ad8610de6439e6f41f45cad623ac83d92df7356a..c6b011f481f04b8468bbe7127dd4c63f8e5e6eb7 100644 (file)
@@ -7,7 +7,7 @@ description = "This file tests the Feta music font";
 % "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
 % "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "font-body.ly"
 \score{
 
 \include "font-body.ly"
 \score{
index afad636bdc6699f7aa2547915120010f5881e0d2..6a5c020a00b20d1b608322fb554b4f0ed2ac9938 100644 (file)
@@ -7,7 +7,7 @@ description = "This file tests the Feta music font";
 % "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
 % "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 \include "paper16.ly"
 \include "font-body.ly"
 
 \include "paper16.ly"
 \include "font-body.ly"
 
index abefe5b00d93ccb591e6225bbe6c671022ab895a..c83061d51963eb3722a5d06c56851e1a8454729e 100644 (file)
@@ -17,5 +17,5 @@ TestedFeatures =
            gourlay_maxmeasures =5.;
        }
 }
            gourlay_maxmeasures =5.;
        }
 }
-\version "1.0.19"; 
+\version "1.0.20"; 
 
 
index cbb749af48d03b316a8ecb7ad93fae376d5b475d..ab4414da7012f2313d8d518994c5b1b689afcd5d 100644 (file)
@@ -4,7 +4,7 @@ copyright =      "PD";
 TestedFeatures =        "This file tests some nasty Gourlay spacings";
 }
 
 TestedFeatures =        "This file tests some nasty Gourlay spacings";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 %{
 
 
 %{
 
index 966da1b65f622dd954f900b757ae323153a1fc2b..0261511d6eb317cdba0432ff97c3322d1dcc37b1 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        <
 
 \score{
        <
index ddbec394f6132f0712f2032b682536c21f8e7e42..5f2ebd04e284c9c68aa9885e4da075d3c40a55cd 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 toeter_i = \notes\relative c <{
                \property Staff.instrument = "Toeters"
 
 toeter_i = \notes\relative c <{
                \property Staff.instrument = "Toeters"
index 2c2cbb43f4b7d476261119455e481b06eb973b06..202b65df42c4c03d21d54197e9546a44b0f62ae3 100644 (file)
@@ -6,7 +6,7 @@
    /Mats B
 %}
 
    /Mats B
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 incipit = \notes\relative c'{
   <b1 fis' b d>
 
 incipit = \notes\relative c'{
   <b1 fis' b d>
index 4eff652fb66c36da7446308fe58943058f9e0c7c..e35be1b04036bd719f7dfdc1a3ce23fce70d5061 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 %{
 test key itemv breaking
 
 %{
 test key itemv breaking
index d0aa3c607ae49b808d96186d401e28d5837b3b71..d595ebe82ae6705b3140de4f2f3551856085c5a3 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 \score{
        \notes\relative c'{
                [c16 \stemdown c'' \stemboth c,, d]
 \score{
        \notes\relative c'{
                [c16 \stemdown c'' \stemboth c,, d]
index ad9848e6f097d9a5be41a22d23a2fde5ca70fb78..6d0f2aac3fa6e98820a5a52e7274c1783c4a13e4 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 global = \notes {
   s1 | \mark "A";
 
 global = \notes {
   s1 | \mark "A";
index eafe9308b6bc84439b88bf505847282c15046c98..b49a9e028ebce4990952b9e268c8d1a8f8fa8936 100644 (file)
@@ -11,5 +11,5 @@ bla = \notes {
        >
        \paper { Gourlay_maxmeaures = 2.; }
 }
        >
        \paper { Gourlay_maxmeaures = 2.; }
 }
-\version "1.0.19"; 
+\version "1.0.20"; 
 
 
index 6672b777bb3327e29f5adbdea4fed0fb7155beec..2b30a3e8112bef19075885478af35b82cee4a3e8 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 voice_one = \notes\transpose c''{  \stemup
        R1 * 2 | f'4-. r r2 | R1 * 3 |
 
 voice_one = \notes\transpose c''{  \stemup
        R1 * 2 | f'4-. r r2 | R1 * 3 |
index 946b97b13eab453491d93c1aee068b051aae5e12..7cdf9d88f133ce267de12cc5d9d2d682f4b59363 100644 (file)
@@ -12,7 +12,7 @@ c4 c2 c8  c16 c16  c1
    \context ThreadedVoice <
     \context Thread = TA
       { \property Thread.noteHeadStyle = "cross"
    \context ThreadedVoice <
     \context Thread = TA
       { \property Thread.noteHeadStyle = "cross"
-        \property ThreadedVoice.ydirection = \up c16} 
+        \property ThreadedVoice.verticalDirection = \up c16} 
     \context Thread = TB
       { \property Thread.noteHeadStyle = "" a16  }
     
     \context Thread = TB
       { \property Thread.noteHeadStyle = "" a16  }
     
@@ -40,4 +40,4 @@ c4 c2 c8  c16 c16  c1
        }
     }
 }
        }
     }
 }
-\version "1.0.19"; 
+\version "1.0.20"; 
index 18ce9944b473ba1f4ad96aa251ca206a3b925bd4..37d6c8ac296631231234f76931b98b0f94d647c2 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes \transpose c''{
 
 \score{
        \notes \transpose c''{
index be7b99479ce10d58e18abc81fec4e255adf91b9c..eb7d152550a9abf4563a7021c7a5458c972d09a9 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 m = \notes \relative c''{
 c1 | c2 c | c c | c c | c c | c c | c c | c c | 
 
 m = \notes \relative c''{
 c1 | c2 c | c c | c c | c c | c c | c c | c c | 
index 9ffb5c8e7598a0710b56591f499255776daa2162..a43c1ed64b1b98f93d165fd5370a53cc2d17d66c 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 \score {
 
 
 \score {
 
diff --git a/input/test/rep.ly b/input/test/rep.ly
deleted file mode 100644 (file)
index c799c7b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-\score{
-       <
-                 \context Staff \notes\relative c'{ 
-                         c4 d e f
-                         \repeat 3 { g a b c }
-%                        \alternative { { c b a g } { f e d c } } c c c c
-                         \alternative { { c b a g } { f e d c } { c d e f } }
-                         g g g g
-                         \repeat 2 { c c c c }
-                         \repeat 2 { c c c c }
-                         g g g g
-                 }
-       >
-}
-
-\version "1.0.16"; 
index 92b951c2ce37fc5714e8f3bd8baa11588a3fb922..e509994d67f40ea2bd2e78011a6ade0a18aaef2d 100644 (file)
@@ -34,4 +34,4 @@ restsII = \context Staff \notes {
        }
 }      
 
        }
 }      
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index cb5297585ace39a8058f302de04a294e5f9c7368..a43bb3d02b5f835c53397e929b048cc1dbfca88e 100644 (file)
@@ -1,7 +1,7 @@
 
 
 
 
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 onestaff =     \context Staff = foo\notes  {
                \property Staff.instr = instr
 
 onestaff =     \context Staff = foo\notes  {
                \property Staff.instr = instr
index c290a07d746a425920cff5aa8641306e16573fb0..e3317a331233ed7a6f230ec4afa61048acdc0544 100644 (file)
@@ -5,7 +5,7 @@ TestedFeatures =         "This file tests Feta embedded slurs" +
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 shortlong = \notes{
        c4()c( c c  |
 
 shortlong = \notes{
        c4()c( c c  |
index 921dfbffe22f08d86945b571fbcdbc1815748d7e..94b53b3560bb85af33ecec4cc31d1d3cfcaef84c 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 % bug
 % excentric slur can't handle this ...
 
 % bug
 % excentric slur can't handle this ...
index df6ac36c6953c48a3e5795f9f0fd2c37bbd6b707..7fda627819ad72070834ce2c185d1b51a9ea2259 100644 (file)
@@ -1,5 +1,5 @@
 % test damping
 % test damping
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes\relative c'{
 
 \score{
        \notes\relative c'{
index 774855cacbba0b805e059687915a869b01dbc836..7fe0156d971ff07fd5325c6cd105bb6261c972fa 100644 (file)
@@ -38,4 +38,4 @@
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 17174563fdc0f2e4a7f20260e38dd614cff9085c..77a2194b79378fcd08a0ecd97de12b72f8d18418 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 % urg, the direction of the slur gets swapped!
 \score{
 
 % urg, the direction of the slur gets swapped!
 \score{
index cf98f6088c1be8ff1ef7912a66c270fea07bd0c2..78792b52f9905ca00ab0ec9ccec9b1824189c9ad 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes\transpose c'{
 
 \score{
        \notes\transpose c'{
index 6d1474439bf1161ff8d58580375bf0bdb158123a..8ad2b838759651d61c5aa5da08de4ec6afa4ddbd 100644 (file)
@@ -14,9 +14,9 @@ source = "Petits Preludes et Fugues.  Urtext. Editions Henry Lemoine, Paris.";
     \notes \relative c''
        \context GrandStaff <
        \context Staff = SA <
     \notes \relative c''
        \context GrandStaff <
        \context Staff = SA <
-               \context Voice = VA { \property Voice.ydirection= 1
+               \context Voice = VA { \property Voice.verticalDirection= 1
                        e4 dis4 e2 }
                        e4 dis4 e2 }
-               \context Voice = VB { \property Voice.ydirection= -1
+               \context Voice = VB { \property Voice.verticalDirection= -1
                        [cis8 a] [fis b] gis2 }
                {\key e; }
                >
                        [cis8 a] [fis b] gis2 }
                {\key e; }
                >
@@ -25,14 +25,12 @@ source = "Petits Preludes et Fugues.  Urtext. Editions Henry Lemoine, Paris.";
        } 
 > 
 
        } 
 > 
 
-\paper 
-{
-}
 \paper 
 {
 %      linewidth = 5.0 \cm; % ly2dvi barfs on -1
        linewidth = 8.0 \cm;
 \paper 
 {
 %      linewidth = 5.0 \cm; % ly2dvi barfs on -1
        linewidth = 8.0 \cm;
+%      linewidth = 12.0 \cm;   
 }
 }
 
 }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index a1f7a086138ca6f3d897cf00437e1606ea940ba6..4d90e751920413b86b5049a2032ee1bcd0e86f32 100644 (file)
@@ -6,65 +6,66 @@ copyright =    "public domain";
 TestedFeatures =        "This file tests various spacings";
 }
 
 TestedFeatures =        "This file tests various spacings";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 multipart = \notes \relative c'{ 
     \context StaffGroup < 
 
 multipart = \notes \relative c'{ 
     \context StaffGroup < 
-                \context Staff = one { 
+                \context Staff = one \context Voice 
                    c4
                    c 
                    c c 
                 }
                    c4
                    c 
                    c c 
                 }
-                \context Staff = two { 
+                \context Staff = two \context Voice 
                    [c8 c] 
                    [c c] 
                    [c c] [c c] 
                 }
                    [c8 c] 
                    [c c] 
                    [c c] [c c] 
                 }
-                \context Staff = three { 
+                \context Staff = three \context Voice 
                    \times 2/3 { [c8 c c] } 
                    \times 2/3 { [c  c c] } 
                    \times 2/3 { [c8 c c] } 
                    \times 2/3 { [c  c c] } 
-                   \times 2/3 { [c  c c] } \times 2/3 { [c c c] } 
+                   \times 2/3 { [c  c c] }
+                  \times 2/3 { [c c c] } 
                 }
                 }
-                \context Staff = four { 
+                \context Staff = four \context Voice 
                    \times 2/4 { [c8 c c c] }
                    \times 2/4 { [c  c c c] } 
                    \times 2/4 { [c  c c c] } \times 2/4 { [c c c c] } 
                 }
                    \times 2/4 { [c8 c c c] }
                    \times 2/4 { [c  c c c] } 
                    \times 2/4 { [c  c c c] } \times 2/4 { [c c c c] } 
                 }
-                \context Staff = five { 
+                \context Staff = five \context Voice 
                    \times 2/5 { [c8 c c c c] } 
                    \times 2/5 { [c  c c c c] } 
                    \times 2/5 { [c  c c c c] } \times 2/5 { [c c c c c] } 
                }
                    \times 2/5 { [c8 c c c c] } 
                    \times 2/5 { [c  c c c c] } 
                    \times 2/5 { [c  c c c c] } \times 2/5 { [c c c c c] } 
                }
-                \context Staff = six { 
+                \context Staff = six \context Voice 
                    \times 2/6 { [c8 c c c c c] } 
                    \times 2/6 { [c  c c c c c] } 
                    \times 2/6 { [c  c c c c c] } \times 2/6 { [c c c c c c] } 
                 }
                    \times 2/6 { [c8 c c c c c] } 
                    \times 2/6 { [c  c c c c c] } 
                    \times 2/6 { [c  c c c c c] } \times 2/6 { [c c c c c c] } 
                 }
-                \context Staff = seven { 
+                \context Staff = seven \context Voice 
                    \times 2/7 { [c8 c c c c c c] } 
                    \times 2/7 { [c  c c c c c c] } 
                    \times 2/7 { [c  c c c c c c] } 
                   \times 2/7 { [c  c c c c c c] } 
                 }
                    \times 2/7 { [c8 c c c c c c] } 
                    \times 2/7 { [c  c c c c c c] } 
                    \times 2/7 { [c  c c c c c c] } 
                   \times 2/7 { [c  c c c c c c] } 
                 }
-                \context Staff = eight { 
+                \context Staff = eight \context Voice 
                    \times 2/8 { [c8 c c c c c c c] } 
                    \times 2/8 { [c  c c c c c c c] } 
                    \times 2/8 { [c  c c c c c c c] } 
                   \times 2/8 { [c  c c c c c c c] } 
                }
                    \times 2/8 { [c8 c c c c c c c] } 
                    \times 2/8 { [c  c c c c c c c] } 
                    \times 2/8 { [c  c c c c c c c] } 
                   \times 2/8 { [c  c c c c c c c] } 
                }
-                \context Staff = nine { 
+                \context Staff = nine  \context Voice 
                    \times 2/9 { [c8 c c c c c c c c] } 
                    \times 2/9 { [c  c c c c c c c c] } 
                    \times 2/9 { [c  c c c c c c c c] } 
                   \times 2/9 { [c  c c c c c c c c] } 
                }
                    \times 2/9 { [c8 c c c c c c c c] } 
                    \times 2/9 { [c  c c c c c c c c] } 
                    \times 2/9 { [c  c c c c c c c c] } 
                   \times 2/9 { [c  c c c c c c c c] } 
                }
-                \context Staff = ten { 
+                \context Staff = ten  \context Voice 
                    \times 2/10 { [c8 c c c c c c c c c] } 
                    \times 2/10 { [c  c c c c c c c c c] } 
                    \times 2/10 { [c  c c c c c c c c c] } 
                   \times 2/10 { [c  c c c c c c c c c] } 
                }
                    \times 2/10 { [c8 c c c c c c c c c] } 
                    \times 2/10 { [c  c c c c c c c c c] } 
                    \times 2/10 { [c  c c c c c c c c c] } 
                   \times 2/10 { [c  c c c c c c c c c] } 
                }
-                \context Staff = eleven { 
+                \context Staff = eleven  \context Voice 
                    \times 2/11 { [c8 c c c c c c c c c c] } 
                    \times 2/11 { [c  c c c c c c c c c c] } 
                    \times 2/11 { [c  c c c c c c c c c c] } 
                    \times 2/11 { [c8 c c c c c c c c c c] } 
                    \times 2/11 { [c  c c c c c c c c c c] } 
                    \times 2/11 { [c  c c c c c c c c c c] } 
index 4e917d1434f4409c834aceaaed433a006df54275..dd60a13a8b7ed2173861fdfafd10cec84272f7be 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 nt = \notes { c1 \break c1 c1 } 
 stuff = \notes \relative c'' <
   \context Staff = stone  { \nt }
 nt = \notes { c1 \break c1 c1 } 
 stuff = \notes \relative c'' <
   \context Staff = stone  { \nt }
index 16d9f787f91231333d0689a8d777a42ffea06177..df215a6cd52336a427dd25418b7ff000bcdf5175 100644 (file)
@@ -1,6 +1,6 @@
 
        
 
        
-\version "1.0.19";
+\version "1.0.20";
 
 \score {
 
 
 \score {
 
index 3ff8c6bbf035c9b2aef4a6e10b56fce1ea98de78..65e3d68065db1e6e74a986b6b35672d1eb7e31ed 100644 (file)
@@ -18,4 +18,4 @@
 }
 
 
 }
 
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index b631184e6ea669dfa899e04e8157f55c7507fa09..144f638fc917d17489ed76e12754e3f4496d9489 100644 (file)
@@ -14,4 +14,4 @@
 >
 \paper { linewidth = -1.; }
 }
 >
 \paper { linewidth = -1.; }
 }
-\version "1.0.19"; 
+\version "1.0.20"; 
index fe722bde6af950dbdeb0bc53b4b963f0e97ba45a..978caa555586e869bab5e98d98a66bb5345f5399 100644 (file)
@@ -8,7 +8,7 @@ of beams";
        
 }
 
        
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 beamintervals = \notes{
                \time 7/4;
 
 beamintervals = \notes{
                \time 7/4;
index 2c5e64e254c6cc8fe6ed7b36627c72605929e286..9cd65c31c113326951839d826b27b14fae71bb0b 100644 (file)
@@ -7,7 +7,7 @@ enteredby =     "Maarten Storm";
 instrument=    "Violoncello";
 }
 
 instrument=    "Violoncello";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 % this is an example of extreme dynamics
 
 
 % this is an example of extreme dynamics
 
index 4ff7dbad308ed8d95785d4b3c545e930142674f4..8f0294019b6eca3d103ea3be2a484119827e49f9 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 $somewhat_long = \lyrics{
        \property Lyrics . textstyle = "roman" 
 
 $somewhat_long = \lyrics{
        \property Lyrics . textstyle = "roman" 
index e44462f764e4601dff0ad1e060069acea35404eb..748e754b83e4b83b121d041852f9cc28b395a0c4 100644 (file)
@@ -7,7 +7,7 @@
 % the thumb-script is used in cello music to indicate a note that should
 % be played with your thumb. 
 
 % the thumb-script is used in cello music to indicate a note that should
 % be played with your thumb. 
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score { \notes \relative c'' {
                [<a8_\thumb a'8-3(> <)b_\thumb b'-3>
 
 \score { \notes \relative c'' {
                [<a8_\thumb a'8-3(> <)b_\thumb b'-3>
index 49876a236ca0215f6d280d338ccfb3d689ae4aba..1307452524870abaa7add3a3bc188102a0f9797a 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 
 %  middle tie is wrong
 
 
 %  middle tie is wrong
index 322bd528377c4a95349682d36c5be9a969385907..61944f402602823913b39e5bfd75932c4082ead1 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 tie = \notes\transpose c''{
 
 
 tie = \notes\transpose c''{
 
index d64234015d4c5e3ca2125a399399e0bed15e27d0..91fa42cbd3bc52ae7affdafc931070271807a6bd 100644 (file)
@@ -10,7 +10,7 @@ source =      "urtext";
 instrument=    "Instrument";
 }
 
 instrument=    "Instrument";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes
 
 \score{
        \notes
index 548dec1260f99e2d154119f3eb7cb142c21b9724..2271026b718c08562d2a5a0d4b8c018330782260 100644 (file)
@@ -22,7 +22,7 @@ copyright =    "public domain";
 }
 
 
 }
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 vOne = \notes \relative c''{
         \clef"violin";
 
 vOne = \notes \relative c''{
         \clef"violin";
index f0f778ac7e68a92d9193494c4ac34ff12c52f738..aaa005aeec5c2cecb12fc96294710b0ac0936297 100644 (file)
@@ -8,4 +8,4 @@
                 }
 }
 
                 }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 259013260f9a1b09763472246bddd853041abd5d..69ba825f68c372df8bcad5c7230c6d533f2008c6 100644 (file)
@@ -8,4 +8,4 @@
 {\voicetwo c}>
 
 
 {\voicetwo c}>
 
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 305dac6480c3f0cfcb1d92fa403644c8af67ac03..52e286e1c2c515906fcdb3e82300df72302cadcc 100644 (file)
@@ -1,5 +1,5 @@
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score {
 \notes <
 
 \score {
 \notes <
index 6b42433d09f121f0b6b2196bb08dda4cd6c50d63..ec9caaf3717e2e9032a064eb77cd8f7f4be97a80 100644 (file)
@@ -15,4 +15,4 @@
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index c36e11ffaecbb449a987401c9bb9f0ed84aa3432..c9371664a4947948344bf149afebb0ce418687be 100644 (file)
@@ -21,4 +21,4 @@ What's supposed to be demonstrated here?
        }
 }
 
        }
 }
 
-\version "1.0.19"; 
+\version "1.0.20"; 
index 08112efc1263a0369a00b19db01e0def9b22ab8c..b0779db1939c99b21d34bd33bd23e0d97e84f2b3 100644 (file)
@@ -5,7 +5,7 @@ TestedFeatures =         "This file tests trills" +
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
         "(Feta definitively is not an abbreviation of Font-En-TjA)";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \score{
        \notes{ 
 
 \score{
        \notes{ 
index 802246a3e6515e126c8241e1ad42ae3232e81920..b9c21ed9500c42e8cfc0fa520b9e958c87676504 100644 (file)
@@ -11,7 +11,7 @@ copyright =    "public domain";
 Tested Features                lyrics and chords
 %}
 
 Tested Features                lyrics and chords
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 melodie = \notes\relative c'' {
         \clef "violin";
 
 melodie = \notes\relative c'' {
         \clef "violin";
index 3ab846f61c9b904c0a944e449110ea8936eef717..58d5b5541cd3d0997fc66ea9abe71a31b48e5f35 100644 (file)
@@ -19,7 +19,7 @@ traditional song in various languages.
 Tested Features: lyrics, interleaving lyrics and staffs, repeats
 %}
 
 Tested Features: lyrics, interleaving lyrics and staffs, repeats
 %}
 
-\version "1.0.18";
+\version "1.0.20";
 
 melody = \notes \relative c'' {
        \clef violin;
 
 melody = \notes \relative c'' {
        \clef violin;
index 7df44b352321c8674ecca1c82896738658f538d5..b4136ae520efe85490c286bde43bad70aebd5b11 100644 (file)
@@ -52,8 +52,8 @@ Collision::do_pre_processing()
 
   /*
     [stem up, stem up shifted, stem down shifted, stem down]
 
   /*
     [stem up, stem up shifted, stem down shifted, stem down]
-  */
-  Array<Note_column*> clash_group_arr_a[4];
+  */ 
+  Array<Note_column*> clash_group_arr_a[4]; // TODO: use drul.
 
   for (int i=0; i < clash_l_arr_.size(); i++)
     {
 
   for (int i=0; i < clash_l_arr_.size(); i++)
     {
index 16dcd2c33257ec00c3e7d0f46d34601c182ba44f..d63c92b9ab65f3344146c75d03a6ada7408a6f42 100644 (file)
@@ -21,6 +21,12 @@ struct Spacer_rod {
   void print () const;
 };
 
   void print () const;
 };
 
+struct Spacer_spring
+{
+  Real distance_f_;
+  Real hooke_f_;
+  Real other_idx_;
+};
 
 /// helper struct for #Spacing_problem#
 struct Column_info {
 
 /// helper struct for #Spacing_problem#
 struct Column_info {
@@ -33,6 +39,7 @@ struct Column_info {
   bool ugh_b_;         
 
   Drul_array< Array<Spacer_rod> > rods_;
   bool ugh_b_;         
 
   Drul_array< Array<Spacer_rod> > rods_;
+  Drul_array< Array<Spacer_spring> > springs_;  
   
   Column_info();
   Column_info (Paper_column *,Real const *);
   
   Column_info();
   Column_info (Paper_column *,Real const *);
index af50e44ca25296b7b6ca9d28db4ba4190c1378ba..d573c8fdcfb987f98c51824cc21e0ddb6dedf779 100644 (file)
@@ -61,6 +61,7 @@ struct Clef_engraver;
 struct Clef_performer;
 struct Column_x_positions;
 struct Column_info;
 struct Clef_performer;
 struct Column_x_positions;
 struct Column_info;
+struct Column_spring;
 struct Collision;
 struct Collision_engraver;
 struct Command_req;
 struct Collision;
 struct Collision_engraver;
 struct Command_req;
@@ -218,12 +219,13 @@ struct Skip_req;
 struct Slur;
 struct Slur_engraver;
 struct Slur_req;
 struct Slur;
 struct Slur_engraver;
 struct Slur_req;
-struct Spacing_req;
+struct Spacing_spanner;
 struct Span_bar;
 struct Span_score_bar;
 struct Span_dynamic_req;
 struct Span_req;
 struct Spanner;
 struct Span_bar;
 struct Span_score_bar;
 struct Span_dynamic_req;
 struct Span_req;
 struct Spanner;
+struct Spring;
 struct Spring_spacer;
 struct Staff_bracket;
 struct Staff_performer;
 struct Spring_spacer;
 struct Staff_bracket;
 struct Staff_performer;
index 2410acc2855a4f945d53930f40b06b4149d8a570..578c58638b22778b7ff776758f3c21d80834cf2b 100644 (file)
 /// the columns of a score that form one line.
 class Line_of_score : public Axis_group_spanner, public Super_element
 {
 /// the columns of a score that form one line.
 class Line_of_score : public Axis_group_spanner, public Super_element
 {
-  Link_array<Paper_column> cols_;
 public:
 public:
+  Link_array<Paper_column> cols_;
 
   Line_of_score();
     
   /// is #c# contained in #*this#?
   bool contains_b (Paper_column const *c) const;
     
 
   Line_of_score();
     
   /// is #c# contained in #*this#?
   bool contains_b (Paper_column const *c) const;
     
-  Link_array<Line_of_score> get_lines() const;
   Line_of_score * set_breaking (Array<Column_x_positions> const&, int j) const;
 
 
   Line_of_score * set_breaking (Array<Column_x_positions> const&, int j) const;
 
 
-  void output_all ();
+  void output_all (bool last_line);
   void add_column (Paper_column*);
   
 protected:
   void add_column (Paper_column*);
   
 protected:
index 1211309e1cc9c754cacf302830ab887dc01e8023..bf2d032cf25183ca2a80bdfe2709f86e3d7cb1d9 100644 (file)
@@ -12,7 +12,7 @@
 
 #include "axis-group-item.hh"
 #include "rod.hh"
 
 #include "axis-group-item.hh"
 #include "rod.hh"
-
+#include "spring.hh"
 
 /**
    stuff grouped vertically.
 
 /**
    stuff grouped vertically.
@@ -35,6 +35,7 @@ public:
   void preprocess ();
   /// set a minimum distance
   void add_rod (Paper_column * to, Real distance);
   void preprocess ();
   /// set a minimum distance
   void add_rod (Paper_column * to, Real distance);
+  void add_spring (Paper_column * to, Real dist, Real strength);
 
   virtual Paper_column * column_l () const;
   /// if lines are broken then this column is in #line#
 
   virtual Paper_column * column_l () const;
   /// if lines are broken then this column is in #line#
index 1b62555d0379d9838e84a308b3667976f0416940..847ae9ec1220263ad6ef979dfe822a3035774ec2 100644 (file)
@@ -37,6 +37,7 @@ public:
   void output_scheme (SCM scm);
   void start_line (Real height);
   void stop_line ();
   void output_scheme (SCM scm);
   void start_line (Real height);
   void stop_line ();
+  void stop_last_line ();
   void switch_to_font (String fontname);
 
   Paper_stream* outstream_l_;
   void switch_to_font (String fontname);
 
   Paper_stream* outstream_l_;
index fbde969355aa575a11070a4def704ba9d7bf0fe3..4d1f13982edfba40270c5e2c52ff60757010c832 100644 (file)
@@ -13,7 +13,8 @@
 #include "direction.hh"
 #include "drul-array.hh"
 
 #include "direction.hh"
 #include "drul-array.hh"
 
-struct Column_rod {
+struct Column_rod
+{
   Paper_column *other_l_;
   Real distance_f_;
 
   Paper_column *other_l_;
   Real distance_f_;
 
@@ -31,19 +32,5 @@ struct Rod
 
   Rod ();
 };
 
   Rod ();
 };
-
-struct Column_spring {
-  Paper_column *other_l_;
-  Real distance_f_;
-  Real strength_f_;
-  
-  Column_spring ();
-  static int compare (const Column_spring &r1, const Column_spring &r2);
-  void print () const;
-};
-
-struct Spring{
-  
-};
 #endif /* ROD_HH */
 
 #endif /* ROD_HH */
 
diff --git a/lily/include/spacing-engraver.hh b/lily/include/spacing-engraver.hh
new file mode 100644 (file)
index 0000000..3c1f5f7
--- /dev/null
@@ -0,0 +1,57 @@
+/*   
+  spacing-engraver.hh -- declare Spacing_engraver
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  
+ */
+
+#ifndef SPACING_ENGRAVER_HH
+#define SPACING_ENGRAVER_HH
+
+#include "engraver.hh"
+#include "pqueue.hh"
+
+struct Rhythmic_tuple
+{
+  Score_element_info info_;
+  Moment end_;
+  
+  Rhythmic_tuple ()
+    {
+    }
+  Rhythmic_tuple (Score_element_info i, Moment m )
+    {
+      info_ = i;
+      end_ = m;
+    }
+  static int time_compare (Rhythmic_tuple const &, Rhythmic_tuple const &);  
+};
+
+/**
+   Acknowledge rhythmic elements, for initializing spacing fields in
+   the columns.
+
+   should be the  last one of the toplevel context
+*/
+class Spacing_engraver : public Engraver
+{
+  PQueue<Rhythmic_tuple> playing_durations_;
+  Array<Rhythmic_tuple> now_durations_;
+  Array<Rhythmic_tuple> stopped_durations_;
+
+  Spacing_spanner * spacing_p_;
+protected:
+  VIRTUAL_COPY_CONS(Translator);
+  virtual void acknowledge_element (Score_element_info);
+  virtual void do_post_move_processing ();
+  virtual void do_pre_move_processing ();
+  virtual void do_creation_processing ();
+  virtual void do_removal_processing ();
+public:
+  Spacing_engraver ();
+};
+
+#endif /* SPACING_ENGRAVER_HH */
+
index fbf332b2c7661d97f26847e7ddce2fd0248ca87b..b69209d9061cb133902d0798301eeaf1ecb8f44d 100644 (file)
 #ifndef SPACING_SPANNER_HH
 #define SPACING_SPANNER_HH
 
 #ifndef SPACING_SPANNER_HH
 #define SPACING_SPANNER_HH
 
+#include "spanner.hh"
+
 class Spacing_spanner : public Spanner
 {
 class Spacing_spanner : public Spanner
 {
-  Link_array<Paper_column> cols_;
-
+public:
   Spacing_spanner ();
   Spacing_spanner ();
+  VIRTUAL_COPY_CONS(Score_element);
+  Score_column *scol (int) const;
+  Array<Spring> do_measure (int,int) const;
+  int col_count () const;
 protected:
 protected:
-  virtual void do_space_processing ();
+  virtual  Array<Spring> get_springs () const;
+  
 };
 
 #endif /* SPACING_SPANNER_HH */
 };
 
 #endif /* SPACING_SPANNER_HH */
index 91c75a7aca2b6e3081f508299e129029482f21ff..8ad3caa31fa0dab0385c236ca039367ff6d33439 100644 (file)
@@ -55,7 +55,9 @@ public:
   Spanner ();
   Spanner (Spanner const &);
   bool broken_b () const;
   Spanner ();
   Spanner (Spanner const &);
   bool broken_b () const;
+
   virtual Array<Rod> get_rods () const;
   virtual Array<Rod> get_rods () const;
+  virtual Array<Spring> get_springs () const;  
   virtual Spanner* find_broken_piece (Line_of_score*) const;
 protected:
   void set_my_columns ();
   virtual Spanner* find_broken_piece (Line_of_score*) const;
 protected:
   void set_my_columns ();
@@ -69,7 +71,6 @@ protected:
   Array<Breaking_information> broken_info_;
   friend Axis_group_spanner; // UGH
 
   Array<Breaking_information> broken_info_;
   friend Axis_group_spanner; // UGH
 
-  virtual void output_processing ();
   virtual void do_space_processing ();
   virtual void do_break_processing ();
   virtual Interval do_width () const;
   virtual void do_space_processing ();
   virtual void do_break_processing ();
   virtual Interval do_width () const;
index 49e9501841dd5124fa1f64e29cfe58840c70ec2b..3b89b247e19c142879a18d59fb02a10690145682 100644 (file)
@@ -39,8 +39,9 @@
     The quality is given by the total potential energy in the
     springs. The lower the energy, the better the configuration.
 
     The quality is given by the total potential energy in the
     springs. The lower the energy, the better the configuration.
 
-    TODO: make item widths work per Staff.
 
 
+    TODO: too complicated.  Revise.
+    Use force iso. energy.  Also optimise for uniform density
 */
 
 class Spring_spacer : public Line_spacer {
 */
 
 class Spring_spacer : public Line_spacer {
diff --git a/lily/include/spring.hh b/lily/include/spring.hh
new file mode 100644 (file)
index 0000000..d4e2e94
--- /dev/null
@@ -0,0 +1,36 @@
+/*   
+  spring.hh -- declare Spring, Column_spring
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  
+ */
+
+#ifndef SPRING_HH
+#define SPRING_HH
+
+#include "lily-proto.hh"
+#include "drul-array.hh"
+
+struct Column_spring {
+  Paper_column *other_l_;
+  Real distance_f_;
+  Real strength_f_;
+  
+  Column_spring ();
+  static int compare (const Column_spring &r1, const Column_spring &r2);
+  void print () const;
+};
+
+struct Spring{
+  Drul_array<Item*> item_l_drul_;
+  Real distance_f_;
+  Real strength_f_;
+  void add_to_cols ();
+  Spring ();
+};
+
+
+#endif /* SPRING_HH */
+
index f8ac1a31f94bb1511c04274b8cf8a37fd302fde6..cb6eb72ebf046234b4e72cb03ee0b6587db00f55 100644 (file)
@@ -22,10 +22,8 @@ public:
   Tie ();
   void set_head (Direction, Note_head*head_l);
   VIRTUAL_COPY_CONS(Score_element);
   Tie ();
   void set_head (Direction, Note_head*head_l);
   VIRTUAL_COPY_CONS(Score_element);
-  
-  bool same_pitch_b_;
-  Drul_array<Note_head *> head_l_drul_;
 
 
+  Drul_array<Note_head *> head_l_drul_;
 protected:
   virtual void do_add_processing ();
   virtual void do_post_processing ();
 protected:
   virtual void do_add_processing ();
   virtual void do_post_processing ();
index 084ee6013e10f7726b26969a56dddefc250821da..ec786d7815cb2f4797bc5b14ceaab285b6cf84fd 100644 (file)
@@ -24,6 +24,7 @@ Line_of_score::contains_b (Paper_column const* c) const
   return cols_.find_l ((Paper_column*)(c));
 }
 
   return cols_.find_l ((Paper_column*)(c));
 }
 
+// const?
 Line_of_score*
 Line_of_score::set_breaking (Array<Column_x_positions> const &breaking, int j) const
 {
 Line_of_score*
 Line_of_score::set_breaking (Array<Column_x_positions> const &breaking, int j) const
 {
@@ -83,7 +84,7 @@ Line_of_score::do_substitute_element_pointer (Score_element*o, Score_element*n)
 }
 
 void
 }
 
 void
-Line_of_score::output_all ()
+Line_of_score::output_all (bool last_line)
 {
   Interval i(extent(Y_AXIS));
   if (i.empty_b())
 {
   Interval i(extent(Y_AXIS));
   if (i.empty_b())
@@ -93,5 +94,8 @@ Line_of_score::output_all ()
   
   pscore_l_->outputter_l_->start_line (i.length ());
   Super_element::output_all ();
   
   pscore_l_->outputter_l_->start_line (i.length ());
   Super_element::output_all ();
-  pscore_l_->outputter_l_->stop_line ();
+  if (last_line)
+    pscore_l_->outputter_l_->stop_last_line();
+  else
+    pscore_l_->outputter_l_->stop_line ();
 }
 }
index c40679e1f8b2fdd04e92e8e098047054ac86264a..8506350e39b6f27c17959fcc8484a124f80b2a68 100644 (file)
@@ -50,6 +50,7 @@ Local_key_engraver::process_acknowledged ()
 {
   if (!key_item_p_ && mel_l_arr_.size()) 
     {
 {
   if (!key_item_p_ && mel_l_arr_.size()) 
     {
+      bool forget = get_property ("forgetAccidentals",0).to_bool();
       for (int i=0; i  < mel_l_arr_.size(); i++) 
        {
          Item * support_l = support_l_arr_[i];
       for (int i=0; i  < mel_l_arr_.size(); i++) 
        {
          Item * support_l = support_l_arr_[i];
@@ -72,9 +73,10 @@ Local_key_engraver::process_acknowledged ()
          key_item_p_->add_pitch (note_l->pitch_,
                                  note_l->cautionary_b_);
          key_item_p_->add_support (support_l);
          key_item_p_->add_pitch (note_l->pitch_,
                                  note_l->cautionary_b_);
          key_item_p_->add_support (support_l);
-         local_key_.set (note_l->pitch_);
+         
+         if (!forget)
+           local_key_.set (note_l->pitch_);
        }
        }
-       
     }
 }
 
     }
 }
 
@@ -113,8 +115,7 @@ Local_key_engraver::acknowledge_element (Score_element_info info)
     }
   else if (Tie * tie_l = dynamic_cast<Tie *> (info.elem_l_))
     {
     }
   else if (Tie * tie_l = dynamic_cast<Tie *> (info.elem_l_))
     {
-      if (tie_l->same_pitch_b_)
-       tied_l_arr_.push (tie_l-> head_l_drul_[RIGHT]);
+      tied_l_arr_.push (tie_l-> head_l_drul_[RIGHT]);
     }
 }
 
     }
 }
 
@@ -124,7 +125,8 @@ Local_key_engraver::do_process_requests()
   Time_description const * time_C_ = get_staff_info().time_C_;
   if (time_C_ && !time_C_->whole_in_measure_)
     {
   Time_description const * time_C_ = get_staff_info().time_C_;
   if (time_C_ && !time_C_->whole_in_measure_)
     {
-      if (key_C_)
+      bool no_res = get_property ("noResetKey",0).to_bool ();
+      if (!no_res && key_C_)
        local_key_= *key_C_;
     }
 }
        local_key_= *key_C_;
     }
 }
index 8378a68f7a069c69a02f8f278c22697877d46007..fee4a083b78764d5fbd6549d31c25b5db645b6dd 100644 (file)
@@ -38,6 +38,35 @@ Paper_column::add_rod (Paper_column * p, Real d)
   minimal_dists_arr_drul_[dir].push (cr);
 }
 
   minimal_dists_arr_drul_[dir].push (cr);
 }
 
+void
+Paper_column::add_spring (Paper_column * p, Real d, Real s)
+{
+  Direction dir =  Direction (sign (p->rank_i ()  - rank_i ()));
+  
+  if (!dir)
+    {
+      warning ("Must set spring between differing columns.");
+      return;
+    }
+  
+  for (int i=0; i < spring_arr_drul_[dir].size (); i++)
+    {
+      Column_spring &spring = spring_arr_drul_[dir][i];
+      if (spring.other_l_ == p)
+       {
+         spring.distance_f_ = spring.distance_f_ >? d;
+         return ;
+       }
+    }
+
+  Column_spring cr;
+  cr.distance_f_ = d;
+  cr.strength_f_ = s;  
+  cr.other_l_ = p;
+
+  spring_arr_drul_[dir].push (cr);
+}
+
 int
 Paper_column::rank_i() const
 {
 int
 Paper_column::rank_i() const
 {
@@ -55,15 +84,20 @@ Paper_column::do_print() const
 {
 #ifndef NPRINT
   DOUT << "rank: " << rank_i_ << '\n';
 {
 #ifndef NPRINT
   DOUT << "rank: " << rank_i_ << '\n';
-  for (int i=0; i < minimal_dists_arr_drul_[LEFT].size (); i++)
-    {
-      minimal_dists_arr_drul_[LEFT][i].print ();
-    }
-  DOUT << "Right: ";
-  for (int i=0; i < minimal_dists_arr_drul_[RIGHT].size (); i++)
+  Direction d = LEFT;
+  do
     {
     {
-      minimal_dists_arr_drul_[RIGHT][i].print ();
+      for (int i=0; i < minimal_dists_arr_drul_[d].size (); i++)
+       {
+         minimal_dists_arr_drul_[d][i].print ();
+       }
+      for (int i=0; i < spring_arr_drul_[d].size (); i++)
+       {
+         spring_arr_drul_[d][i].print ();
+       }
+      
     }
     }
+  while ((flip (&d))!=LEFT);
   Item::do_print ();
 #endif 
 }
   Item::do_print ();
 #endif 
 }
@@ -97,10 +131,14 @@ Paper_column::column_l () const
   return (Paper_column*)(this);
 }
 
   return (Paper_column*)(this);
 }
 
-
+/*
+  ugh.
+ */
 void
 Paper_column::preprocess ()
 {
   minimal_dists_arr_drul_[LEFT].sort (Column_rod::compare);
   minimal_dists_arr_drul_[RIGHT].sort (Column_rod::compare);  
 void
 Paper_column::preprocess ()
 {
   minimal_dists_arr_drul_[LEFT].sort (Column_rod::compare);
   minimal_dists_arr_drul_[RIGHT].sort (Column_rod::compare);  
+  spring_arr_drul_[LEFT].sort (Column_spring::compare);
+  spring_arr_drul_[RIGHT].sort (Column_spring::compare);  
 }
 }
index a3194757f2e7ce707fb762cd7f01439e64931cd4..4edfd1b3e9e8de9bd7495f27540d32178c4eb275 100644 (file)
@@ -221,8 +221,7 @@ Paper_score::process ()
 
       line_l->post_processing ();
        *mlog << i << flush;
 
       line_l->post_processing ();
        *mlog << i << flush;
-      line_l->output_all ();
-
+      line_l->output_all (i + 1 == lines.size());
       if (experimental_features_global_b)
        *mlog << '(' << elem_p_arr_.size () + span_p_arr_.size () << ')';
       
       if (experimental_features_global_b)
        *mlog << '(' << elem_p_arr_.size () + span_p_arr_.size () << ')';
       
index 4337ad92d64ca226b68347a567a4629fc882c38b..96ba69012f78fb24a8d4891b999c0a0614ae2808 100644 (file)
@@ -292,3 +292,10 @@ Paper_outputter::stop_line ()
   SCM scm = gh_list (ly_symbol ("stop-line"), SCM_UNDEFINED);
   output_scheme (scm);
 }
   SCM scm = gh_list (ly_symbol ("stop-line"), SCM_UNDEFINED);
   output_scheme (scm);
 }
+
+void
+Paper_outputter::stop_last_line ()
+{
+  SCM scm = gh_list (ly_symbol ("stop-last-line"), SCM_UNDEFINED);
+  output_scheme (scm);
+}
index 34e329be2e236bf75729c44e51321d2264007359..66e5b059b29b6404c623bd6dcd8f612517aa7346 100644 (file)
@@ -9,6 +9,16 @@
            Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
            Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
+/*
+       Ambiguities:
+
+       * \alternative
+
+       * use of '-' in various places
+
+*/
+
+
 #include <iostream.h>
 #include "lily-guile.hh"
 #include "notename-table.hh"
 #include <iostream.h>
 #include "lily-guile.hh"
 #include "notename-table.hh"
@@ -44,8 +54,8 @@
 #include "new-repeated-music.hh"
 
 // mmm
 #include "new-repeated-music.hh"
 
 // mmm
-Mudela_version oldest_version ("1.0.16");
-Mudela_version version ("1.0.19");
+Mudela_version oldest_version ("1.0.20");
+Mudela_version version ("1.0.20");
 
 void
 print_mudela_versions (ostream &os)
 
 void
 print_mudela_versions (ostream &os)
@@ -1037,7 +1047,7 @@ request_that_take_dir:
 request_with_dir:
        script_dir request_that_take_dir        {
                if (G_script_req * gs = dynamic_cast<G_script_req*> ($2))
 request_with_dir:
        script_dir request_that_take_dir        {
                if (G_script_req * gs = dynamic_cast<G_script_req*> ($2))
-                       gs->dir_ = $1;
+                       gs->dir_ = Direction ($1);
                else if ($1)
                        $2->warning ("Can't specify direction for this request");
                $$ = $2;
                else if ($1)
                        $2->warning ("Can't specify direction for this request");
                $$ = $2;
index 008707bbc1da16aac1a7950aa0c36923734b6e22..0bb861423271231cb8eddaf2a069b52b5080b51f 100644 (file)
@@ -42,29 +42,10 @@ Column_rod::compare (const Column_rod &r1, const Column_rod &r2)
 void
 Rod::add_to_cols ()
 {
 void
 Rod::add_to_cols ()
 {
-  item_l_drul_[RIGHT]->column_l ()->add_rod
-    (item_l_drul_[LEFT]->column_l (), distance_f_);
-  item_l_drul_[LEFT]->column_l ()->add_rod
-    (item_l_drul_[RIGHT]->column_l (), distance_f_);
+  Direction d = LEFT;
+  do {
+    item_l_drul_[-d]->column_l ()->add_rod
+      (item_l_drul_[d]->column_l (), distance_f_);
+  }while ((flip (&d))!=LEFT);
 }
 
 }
 
-void
-Column_spring::print () const
-{
-#ifndef NDEBUG
-  DOUT << "Column_spring { rank = "
-       << other_l_->rank_i () << ", dist = " << distance_f_ << "}\n";   
-#endif
-}
-
-Column_spring::Column_spring ()
-{
-  distance_f_ = 0;
-  other_l_ = 0;
-}
-  
-int
-Column_spring::compare (const Column_spring &r1, const Column_spring &r2)
-{
-  return r1.other_l_->rank_i() - r2.other_l_->rank_i();
-}
index ed1462a58493693b8c88e262c9eb29977c89b3e6..23fc2ebbe397bb7e94c6e16063e893933a652503 100644 (file)
@@ -91,8 +91,8 @@ Slur_engraver::do_process_requests()
 void
 Slur_engraver::do_pre_move_processing()
 {
 void
 Slur_engraver::do_pre_move_processing()
 {
-  Scalar dir (get_property ("slurydirection", 0));
-  Scalar dir2 (get_property ("ydirection", 0));
+  Scalar dir (get_property ("slurVerticalDirection", 0));
+  Scalar dir2 (get_property ("verticalDirection", 0));
 
   Direction slurdir = CENTER;
   if (dir.length_i () && dir.isnum_b ())
 
   Direction slurdir = CENTER;
   if (dir.length_i () && dir.isnum_b ())
index 525e7f9adcb8a125fa9831fa136d586dd1141797..c61dd3df3f9222e405240b1cbe68458690af3ecc 100644 (file)
@@ -7,26 +7,10 @@
   
  */
 
   
  */
 
-#include "engraver.hh"
-#include "pqueue.hh"
 #include "musical-request.hh"
 #include "score-column.hh"
 #include "musical-request.hh"
 #include "score-column.hh"
-
-struct Rhythmic_tuple
-{
-  Score_element_info info_;
-  Moment end_;
-  
-  Rhythmic_tuple ()
-    {
-    }
-  Rhythmic_tuple (Score_element_info i, Moment m )
-    {
-      info_ = i;
-      end_ = m;
-    }
-  static int time_compare (Rhythmic_tuple const &, Rhythmic_tuple const &);  
-};
+#include "spacing-engraver.hh"
+#include "spacing-spanner.hh"
 
 inline int
 compare (Rhythmic_tuple const &a, Rhythmic_tuple const &b)
 
 inline int
 compare (Rhythmic_tuple const &a, Rhythmic_tuple const &b)
@@ -35,31 +19,35 @@ compare (Rhythmic_tuple const &a, Rhythmic_tuple const &b)
 }
 
 int
 }
 
 int
-Rhythmic_tuple::time_compare (Rhythmic_tuple const&h1,
+Rhythmic_tuple::time_compare (Rhythmic_tuple const &h1,
                              Rhythmic_tuple const &h2)
 {
                              Rhythmic_tuple const &h2)
 {
+  
   return (h1.end_ - h2.end_ ).sign ();
 }
 
   return (h1.end_ - h2.end_ ).sign ();
 }
 
-/**
-   Acknowledge rhythmic elements, for initializing spacing fields in
-   the columns.  */
-class Spacing_engraver : public Engraver
+Spacing_engraver::Spacing_engraver()
 {
 {
-  PQueue<Rhythmic_tuple> playing_durations_;
-  Array<Rhythmic_tuple> now_durations_;
-  Array<Rhythmic_tuple> stopped_durations_;
-
-protected:
-  VIRTUAL_COPY_CONS(Translator);
-  virtual void acknowledge_element (Score_element_info);
-  virtual void do_post_move_processing ();
-  virtual void do_pre_move_processing ();
+  spacing_p_ = 0;
+}
 
 
-public:
+void
+Spacing_engraver::do_creation_processing ()
+{
+  spacing_p_  =new Spacing_spanner;
+  spacing_p_->set_bounds (LEFT, get_staff_info ().command_pcol_l ());  
+  announce_element (Score_element_info (spacing_p_, 0));
+}
 
 
-};
+void
+Spacing_engraver::do_removal_processing ()
+{
+  Paper_column * p = get_staff_info ().command_pcol_l ();
 
 
+  spacing_p_->set_bounds (RIGHT, p);
+  typeset_element (spacing_p_);
+  spacing_p_ =0;
+}
 
 void
 Spacing_engraver::acknowledge_element (Score_element_info i)
 
 void
 Spacing_engraver::acknowledge_element (Score_element_info i)
@@ -83,8 +71,9 @@ Spacing_engraver::do_pre_move_processing ()
        shortest_playing = shortest_playing <? m;
     }
 
        shortest_playing = shortest_playing <? m;
     }
 
-  Moment starter;
-  starter.set_infinite (1);
+  Moment starter, inf;
+  inf.set_infinite (1);
+  starter=inf;
   for (int i=0; i < now_durations_.size (); i++)
     {
       Moment m = now_durations_[i].info_.req_l_->length_mom ();
   for (int i=0; i < now_durations_.size (); i++)
     {
       Moment m = now_durations_[i].info_.req_l_->length_mom ();
@@ -104,7 +93,6 @@ Spacing_engraver::do_pre_move_processing ()
   sc->shortest_starter_mom_ = starter;
 }
 
   sc->shortest_starter_mom_ = starter;
 }
 
-
 void
 Spacing_engraver::do_post_move_processing ()
 {
 void
 Spacing_engraver::do_post_move_processing ()
 {
diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc
new file mode 100644 (file)
index 0000000..0f639a3
--- /dev/null
@@ -0,0 +1,170 @@
+/*   
+  spacing-spanner.cc --  implement Spacing_spanner
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  
+ */
+
+#include "spacing-spanner.hh"
+#include "score-column.hh"
+#include "dimensions.hh"
+#include "paper-def.hh"
+#include "warn.hh"
+#include "p-score.hh"
+#include "line-of-score.hh"
+
+Spacing_spanner::Spacing_spanner ()
+{
+  set_elt_property (break_helper_only_scm_sym, SCM_BOOL_T);
+  set_elt_property (transparent_scm_sym, SCM_BOOL_T);
+}
+
+int
+Spacing_spanner::col_count () const
+{
+  return pscore_l_->line_l_->cols_.size ();
+}
+
+Score_column *
+Spacing_spanner::scol (int i)const
+{
+  return dynamic_cast<Score_column*> (pscore_l_->line_l_->cols_[i]);
+}
+
+/*
+  cut 'n paste from spring-spacer.cc
+ */
+Array<Spring>
+Spacing_spanner::do_measure (int col1, int col2) const
+{
+  for (int i =col1; i < col2; i++)
+    {
+      scol (i)->preprocess ();
+      scol (i)->print ();
+    }
+
+  Moment shortest;
+  shortest.set_infinite (1);
+  for (int i =col1; i < col2; i++)
+    {
+      if (scol(i)->musical_b ())
+       {
+         shortest = shortest <? scol(i)->shortest_starter_mom_;
+       }
+    }
+
+  Array<Spring> meas_springs;
+
+  for (int i= col1; i < col2; i++)
+    {
+      if (!scol (i)->musical_b() && i+1 < col_count())
+       {
+         Real symbol_distance = scol (i)->extent (X_AXIS)[RIGHT] ;
+         Real durational_distance = 0;
+         Moment delta_t =  scol (i+1)->when_mom () - scol (i)->when_mom () ;
+         /*
+           ugh should use shortest_playing distance
+         */
+         if (delta_t)
+           {
+             Real k=  paper_l()->arithmetic_constant (shortest);
+             durational_distance =  paper_l()->length_mom_to_dist (delta_t,k);
+           }
+         symbol_distance += -scol (i+1)->extent(X_AXIS)[LEFT];
+
+         Spring s ;
+         s.item_l_drul_[LEFT] = scol (i);
+         s.item_l_drul_[RIGHT] = scol (i+1);
+         s.distance_f_ =  symbol_distance >? durational_distance;
+         meas_springs.push (s);
+
+         Item *l = s.item_l_drul_[LEFT]->find_prebroken_piece (RIGHT);
+         Item *r = s.item_l_drul_[RIGHT]->find_prebroken_piece (LEFT);
+         Spring sp_orig (s);
+         
+         if (l)
+           {
+             s = sp_orig;
+             s.item_l_drul_[LEFT] =l ;
+             meas_springs.push (s);
+           }
+
+         if (l && r)
+           {
+             s = sp_orig;
+             s.item_l_drul_[RIGHT] = r;
+             s.item_l_drul_[LEFT] = l;
+             meas_springs.push (s);
+           }
+         
+       }
+    }
+
+  for (int i=col1; i < col2; i++)
+    {
+      if (scol (i)->musical_b())
+       {
+         Moment shortest_playing_len = scol(i)->shortest_playing_mom_;
+         if (! shortest_playing_len)
+           {
+             warning (_f ("can't find a ruling note at %s", 
+               scol (i)->when_mom ().str ()));
+             shortest_playing_len = 1;
+           }
+         if (! shortest)
+           {
+             warning (_f ("no minimum in measure at %s", 
+                     scol (i)->when_mom ().str ()));
+             shortest = 1;
+           }
+         Moment delta_t = scol (i+1)->when_mom () - scol (i)->when_mom ();
+         Real k=  paper_l()->arithmetic_constant(shortest);
+         Real dist = paper_l()->length_mom_to_dist (shortest_playing_len, k);
+         dist *= (double)(delta_t / shortest_playing_len);
+
+
+         Spring sp;
+         sp.distance_f_ =  dist;
+         sp.item_l_drul_[LEFT] = scol (i);
+         sp.item_l_drul_[RIGHT] = scol (i+1);
+
+         meas_springs.push (sp);
+
+         /*
+           UGH. TODO: more
+           advanced spacing here.
+          */
+         Spring sp_orig (sp);
+
+         Item *r =  sp.item_l_drul_[RIGHT]->find_prebroken_piece (LEFT);
+         
+         if (r)
+           {
+             sp = sp_orig;
+             sp.item_l_drul_[RIGHT] =r ;
+             meas_springs.push (sp);
+           }
+       }
+    }
+  return meas_springs;
+}
+
+Array<Spring>
+Spacing_spanner::get_springs () const
+{
+  Array<Spring> springs;
+  int last_break =0;
+  for (int i=1; i < col_count (); i++)
+    {
+      if (scol (i)->breakable_b ())
+       {
+         springs.concat (do_measure (last_break, i));
+         last_break  = i;
+       }
+    }
+  return springs;
+}
+
+
index 32a047cf8f110ddbd1a498d1eda29d3179c601f3..17ca378449b6f89c74ba553e454ac32c612bcca2 100644 (file)
@@ -13,8 +13,6 @@
 #include "molecule.hh"
 #include "paper-outputter.hh"
 
 #include "molecule.hh"
 #include "paper-outputter.hh"
 
-
-
 void
 Spanner::do_print() const
 {
 void
 Spanner::do_print() const
 {
@@ -48,7 +46,6 @@ Spanner::break_into_pieces ()
   break_points.insert (left,0);
   break_points.push (right);
 
   break_points.insert (left,0);
   break_points.push (right);
 
-
   for (int i=1; i < break_points.size(); i++) 
     {
       Breaking_information info;
   for (int i=1; i < break_points.size(); i++) 
     {
       Breaking_information info;
@@ -86,7 +83,6 @@ Spanner::set_my_columns()
   while (flip(&i) != 1);
 }       
 
   while (flip(&i) != 1);
 }       
 
-
 void
 Spanner::set_bounds(Direction d, Item*i)
 {
 void
 Spanner::set_bounds(Direction d, Item*i)
 {
@@ -95,6 +91,11 @@ Spanner::set_bounds(Direction d, Item*i)
     {
       i->used_b_ = true;
     }
     {
       i->used_b_ = true;
     }
+
+  if (d== LEFT)
+    {
+      dim_cache_[X_AXIS]->parent_l_ = i->dim_cache_[X_AXIS];
+    }
   
   if  (spanned_drul_[Direction(-d)] == spanned_drul_[d]
        && i)
   
   if  (spanned_drul_[Direction(-d)] == spanned_drul_[d]
        && i)
@@ -117,23 +118,11 @@ Spanner::Spanner ()
 }
 
 Spanner::Spanner (Spanner const &s)
 }
 
 Spanner::Spanner (Spanner const &s)
-  :Score_element (s)
+  : Score_element (s)
 {
   spanned_drul_[LEFT] = spanned_drul_[RIGHT] =0;
 }
 
 {
   spanned_drul_[LEFT] = spanned_drul_[RIGHT] =0;
 }
 
-void
-Spanner::output_processing () 
-{
-  if (get_elt_property (transparent_scm_sym) != SCM_BOOL_F)
-    return;
-
-  output_p_ = do_brew_molecule_p ();
-  Offset left_off (spanned_drul_[LEFT]->absolute_coordinate(X_AXIS), 0);
-  Offset o (absolute_coordinate (X_AXIS), absolute_coordinate (Y_AXIS));
-  o += left_off;
-  pscore_l_->outputter_l_->output_molecule (output_p_, o, classname (this));
-}
 
 Interval
 Spanner::do_width() const
 
 Interval
 Spanner::do_width() const
@@ -173,7 +162,6 @@ Spanner::find_broken_piece (Line_of_score*l) const
              span_p->set_bounds(LEFT,info.bounds_[LEFT]);
              span_p->set_bounds(RIGHT,info.bounds_[RIGHT]);
              pscore_l_->typeset_element (span_p);
              span_p->set_bounds(LEFT,info.bounds_[LEFT]);
              span_p->set_bounds(RIGHT,info.bounds_[RIGHT]);
              pscore_l_->typeset_element (span_p);
-
              
              info.broken_spanner_l_ = span_p;
              span_p->handle_broken_dependencies();
              
              info.broken_spanner_l_ = span_p;
              span_p->handle_broken_dependencies();
@@ -192,9 +180,6 @@ Spanner::broken_b() const
   return broken_info_.size();
 }
 
   return broken_info_.size();
 }
 
-
-
-
 Array<Rod>
 Spanner::get_rods () const
 {
 Array<Rod>
 Spanner::get_rods () const
 {
@@ -202,6 +187,13 @@ Spanner::get_rods () const
   return r;
 }
 
   return r;
 }
 
+Array<Spring>
+Spanner::get_springs () const
+{
+  Array<Spring> s;
+  return s;    
+}
+
 void
 Spanner::do_space_processing ()
 {
 void
 Spanner::do_space_processing ()
 {
@@ -210,4 +202,10 @@ Spanner::do_space_processing ()
     {
       rs[i].add_to_cols ();
     }
     {
       rs[i].add_to_cols ();
     }
+
+  Array<Spring> ss (get_springs ());
+  for (int i=0; i < ss.size (); i++)
+    {
+      ss[i].add_to_cols ();
+    }
 }
 }
index 055ab3c6dd670dfdb04bc839d7bf28aa54338230..8ef04b7f0792cd38128bbbd0c1f9a7e4c0ae009e 100644 (file)
@@ -393,6 +393,25 @@ Spring_spacer::add_column (Paper_column  *col, bool fixed, Real fixpos)
       r_rod.other_idx_ = this_rank;
       cols_[left_idx].rods_[RIGHT].push (r_rod);
     }
       r_rod.other_idx_ = this_rank;
       cols_[left_idx].rods_[RIGHT].push (r_rod);
     }
+#if 1 
+  if (experimental_features_global_b)
+    {
+      for (int i=0; i < col->spring_arr_drul_[LEFT].size (); i++)
+       {
+         Column_spring &cr = col->spring_arr_drul_[LEFT][i];
+         int idx = cr.other_l_->rank_i () - cols_[0].pcol_l_->rank_i ();
+         if (idx < 0)
+           continue;
+
+         if (cols_[idx].pcol_l_ != cr.other_l_)
+           continue;
+
+
+         connect (idx, this_rank, cr.distance_f_,
+                  cr.strength_f_ / cr.distance_f_);
+       }
+    }
+#endif  
   
   cols_.push (c);
 }
   
   cols_.push (c);
 }
@@ -481,11 +500,10 @@ Spring_spacer::connect (int i, int j, Real d, Real h)
 void
 Spring_spacer::prepare()
 {
 void
 Spring_spacer::prepare()
 {
-  DOUT << "Preparing..";
-  calc_idealspacing();
+  if (!experimental_features_global_b)
+    calc_idealspacing();
   handle_loose_cols();
   print();
   handle_loose_cols();
   print();
-  DOUT << "finished preparing.\n";
 }
 
 Line_spacer*
 }
 
 Line_spacer*
diff --git a/lily/spring.cc b/lily/spring.cc
new file mode 100644 (file)
index 0000000..8ba0ff7
--- /dev/null
@@ -0,0 +1,58 @@
+/*   
+  spring.cc --  implement Spring
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  
+ */
+
+#include "spring.hh"
+#include "debug.hh"
+#include "item.hh"
+#include "p-col.hh"
+
+Spring::Spring ()
+{
+  item_l_drul_[LEFT]  =item_l_drul_[RIGHT] =0;
+  distance_f_ =0.;
+  strength_f_ =1.0;
+}
+
+void
+Spring::add_to_cols ()
+{
+  Direction d = LEFT;
+  do
+    {
+      item_l_drul_[-d]->column_l ()->add_spring
+       (item_l_drul_[d]->column_l (),
+        distance_f_, strength_f_);
+    }
+  while ((flip (&d))!=LEFT);
+}
+
+
+Column_spring::Column_spring ()
+{
+  other_l_ = 0;
+  distance_f_ =0;
+  strength_f_ =1.0;
+}
+
+
+int
+Column_spring::compare (Column_spring const & r1, Column_spring const &r2)
+{
+  return r1.other_l_->rank_i() - r2.other_l_->rank_i();
+}
+
+void
+Column_spring::print () const
+{
+#ifndef NPRINT
+  DOUT << "Column_spring { rank = "
+       << other_l_->rank_i () << ", dist = " << distance_f_ << "}\n";   
+
+#endif
+}
index f39bf56d2e0e0daae647a126ba51ee1397d4ae0f..aa3aab96286de9ffb8a14e5ba2a8d368466f05fa 100644 (file)
@@ -92,7 +92,7 @@ Stem_engraver::do_pre_move_processing()
 
   if (stem_p_)
     {
 
   if (stem_p_)
     {
-      Scalar prop = get_property ("ydirection", 0);
+      Scalar prop = get_property ("verticalDirection", 0);
       Direction dir = prop.isnum_b () ? (Direction)int(prop) : CENTER;
       if (dir)
        {
       Direction dir = prop.isnum_b () ? (Direction)int(prop) : CENTER;
       if (dir)
        {
index f726aaebf175f1617a2fea08b9fa12785d410ddb..04746dc634cedc8f760ad1fec743f0b5ae5b883f 100644 (file)
@@ -64,6 +64,10 @@ Tie_engraver::process_acknowledged ()
   
   if (req_l_)
     {
   
   if (req_l_)
     {
+
+      /*
+       JUNKME!
+       */
       if (old_behavior)
        {
          if (now_heads_.size () != stopped_heads_.size ())
       if (old_behavior)
        {
          if (now_heads_.size () != stopped_heads_.size ())
@@ -148,8 +152,8 @@ Tie_engraver::do_pre_move_processing ()
     }
   now_heads_.clear ();
 
     }
   now_heads_.clear ();
 
-  Scalar dir (get_property ("tieydirection", 0));
-  Scalar dir2 (get_property ("ydirection", 0));
+  Scalar dir (get_property ("tieVerticalDirection", 0));
+  Scalar dir2 (get_property ("verticalDirection", 0));
 
   Direction tie_dir = CENTER;
   if (dir.length_i () && dir.isnum_b ())
 
   Direction tie_dir = CENTER;
   if (dir.length_i () && dir.isnum_b ())
index 26ea948b441ba565e5a893583fa888a19a0592fd..dc7ac39b9ce60072f60674c0693000b76f4b0260 100644 (file)
@@ -28,7 +28,6 @@ Tie::Tie()
 {
   head_l_drul_[RIGHT] =0;
   head_l_drul_[LEFT] =0;
 {
   head_l_drul_[RIGHT] =0;
   head_l_drul_[LEFT] =0;
-  same_pitch_b_ =false;
 }
 
 
 }
 
 
index cd93221d6c4277632c633413a61beb35c39980f2..05eb9b5ab495e0bc93626173b2319af25437dbb2 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index 1e1140e6919ef16749fe37f7988008f7543798b4..eaf3e7bf2a2b0c5fc2e5748ad379dcf21f8033e5 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly";
 
 
 \include "declarations.ly";
index 4f962b8f8ffc3156a56cb8669012a5610634bd46..65c2f669d3c571a58eab10a32e4f47d083f4152f 100644 (file)
@@ -1,7 +1,7 @@
 % Toplevel initialisation file. 
        
 
 % Toplevel initialisation file. 
        
 
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index ee1fbdb1d494cbe03d57c7e8859875cdda85c844..4d5a0bf5dc28e0366fcaa943266c4709dd793779 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index bb9afa28e9498a12270acd385de75489360691f2..a12244d0c7345a5c25a3456bf781421ef5ec8701 100644 (file)
@@ -158,8 +158,6 @@ StaffGroupContext= \translator {
        
        \accepts "Lyrics";
        \accepts "ChordNames";
        
        \accepts "Lyrics";
        \accepts "ChordNames";
-       \consistsend "Axis_group_engraver";
-
 };
 \translator { \StaffGroupContext }
 
 };
 \translator { \StaffGroupContext }
 
index c6d18c374c5f83c042c651d04730cb009c60aa07..13500905ec911bf6195effb79591cdc874662858 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index 0b32b36d0b6404424a4594cdc41509261e505f98..31215a15ca8d1f834ec03101d50b7ff7ce2d7d69 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index 5951158137e6272026f036ea24f66bc272b321ad..5f652ecdcfcdce48d706124973b3ad6d36da8569 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly";
 
 
 \include "declarations.ly";
index 9e43e3d773a39e994155c15086c06a68f1296e62..8f03850e7ef4e78777123cb67c653ce7f1ce4982 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
        
 % Toplevel initialisation file. 
        
-\version "1.0.19";
+\version "1.0.20";
 
 
 \include "declarations.ly"
 
 
 \include "declarations.ly"
index e7b0b5c41422aa9a99397bf0df837fb46b24c347..e499491a65402aeb3ae5c124f327211bb698b2dc 100644 (file)
@@ -2,7 +2,7 @@
 
 
 
 
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 paper_sixteen = \paper {
        staffheight = 16.0\pt;
 
 paper_sixteen = \paper {
        staffheight = 16.0\pt;
index 39cba96769bb3b804c2aeb0b8b66208c468e361e..2de985a5f01e9e496d2d9024a1d1de022d17e2ef 100644 (file)
@@ -1,7 +1,7 @@
 % paper20.ly
 
 
 % paper20.ly
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 paper_twenty = \paper {
        staffheight = 20.0\pt;
 
 paper_twenty = \paper {
        staffheight = 20.0\pt;
index 354d0f5664d48856c5cde856b983cdf5a2f51b12..f0f0ddf6c48f51454e466adcb22a359dc227806f 100644 (file)
 
 %{
 
 
 %{
 
-PROPERTIES
-
-name                   value   effect                  shorthand
-
-[Voice]
-ydirection             -1      force stem down         \stemdown
-ydirection             0       stem direction free     \stemboth
-ydirection             1       force stem up           \stemup
-
-pletvisibility         0       show nothing
-pletvisibility         1       show number
-pletvisibility         2       show (number and bracket)-if-no-beam
-pletvisibility         3       show number, and bracket-if-no-beam
-pletvisibility         4       show number, and bracket
-
-slurdash               0       normal slurs
-slurdash               1       dotted slurs
-slurdash               >1      dashed slurs
-
-slurydirection         -1      force stem down         \slurdown
-slurydirection         0       stem direction free     \slurboth
-slurydirection         1       force stem up           \slurup
-
-slurydirection         -1      force stem down         \slurdown
-slurydirection         0       stem direction free     \slurboth
-slurydirection         1       force stem up           \slurup
-
-textalignment          -1      left alignment of text
-textalignment          0       center alignment of text
-textalignment          1       right alignment of text
-
-beamAuto                0/1     auto-beam on/off
-beamAutoEnd            "num/den"    end auto-beam
-beamAutoEnd_8          "num/den"    end auto-beam of 8ths
-beamAutoEnd_16         "num/den"    end auto-beam of 16ths
-
-[Score?]
-beamslopedamping       0       no damping              \beamslopeproportional  
-beamslopedamping       1       damping1)               \beamslopedamped
-beamslopedamping       100000  zero slope              \beamslopezero
-
-[Score?]
-beamquantisation       0       no quantisations        \beamposfree
-beamquantisation       1       quantise pos and slope  \beamposnormal
-beamquantisation       2       quantise avoide wedge2) \beampostraditional
-
-[Staff]
-keyoctaviation 0       Key signature only for specified octave \specialkey
-keyoctaviation 1       Key signature for all octaves   \normalkey
-
-[Staff]
-barAlways              0       none
-barAlways              1       generate bar at every moment
-
-[Staff]
-barAuto                        0       none
-barAuto                        1       auto-generate bar every measure
-barAtLineStart         0/1     generate bar at beginning of line
-
-[Staff]
-timeSignatureStyle     C       Use C and stroked C for 4/4,2/2
-timeSignatureStyle     old     Use old style mensuration marks
-timeSignatureStyle     1       Use single number
-timeSignatureStyle     ""      Use normal two-digit time signature
-timeSignatureStyle     Cn/m    Set symbol explicitly, n/m=2/2 or 4/4   
-timeSignatureStyle     oldn/m  Set symbol explicitly,
-                               n/m=2/2,3/2,3/4,4/4,6/4 or 9/4.
-[Staff]
-voltaVisibility         0/1     on/off
-voltaSpannerDuration    Rat.    Coda kludge: set length of volta-spanner,
-                                typically set to one measure: "1"
-
-[Staff]
-clefStyle       "fullSizeChanges" Clef changes typeset in full size
-clefStyle       "transparent"     No clef typeset
-
-[Staff?]
-instrument             ascii   midi instrument table lookup
-
-[Score]
-chordInversion         0/1     Find and display chord with inversion?
-
-
-1) after beam slope damping table suggested in [Wanske]
-2) [Wanske] as well as [Ross] suggests that beams sloped upward must not 
-   start sitting on a staffline, and beams sloped downward must not hang 
-   from a staffline (similar for beam-ends).  This would create a wedge
-   that is traditionally being avoided because it could easily be filled-up 
-   with ink.
-   However, avoiding these wedges restricts the freedom of beams quite a lot 
-   while they don't seem to be a problem in modern printing.
-   In no piece of sheetmusic engraved after 1953 (Baerenreiter) i've seen 
-   these wedges being avoided.
+SEE THE REFERENCE MANUAL FOR EXPLANATIONS.
 
 %}
 
 
 %}
 
+\version "1.0.20";
+
 %hmm, (these) abbrevs suck, imo
 % i guess they're meant as some form of doco
 % that's what i use them for...
 %hmm, (these) abbrevs suck, imo
 % i guess they're meant as some form of doco
 % that's what i use them for...
-stemup =        \property Voice.ydirection = \up 
-stemboth=      \property Voice.ydirection = \center
-stemdown =     \property Voice.ydirection = \down
+stemup =        \property Voice.verticalDirection = \up 
+stemboth=      \property Voice.verticalDirection = \center
+stemdown =     \property Voice.verticalDirection = \down
 
 slurup = \notes {
        s1*0
 
 slurup = \notes {
        s1*0
-       \property Voice.slurydirection = \up 
+       \property Voice.slurVerticalDirection = \up 
        }
 slurboth= \notes {
        s1*0
        }
 slurboth= \notes {
        s1*0
-       \property Voice.slurydirection = \center
+       \property Voice.slurVerticalDirection = \center
 }
 slurdown = \notes {    
        s1*0
 }
 slurdown = \notes {    
        s1*0
-       \property Voice.slurydirection = \down
+       \property Voice.slurVerticalDirection = \down
 }
 
 shifton =      \property Voice.hshift = 1
 }
 
 shifton =      \property Voice.hshift = 1
@@ -155,25 +65,25 @@ onestaff =
 
 staffone = {   
        \translator Staff=one
 
 staffone = {   
        \translator Staff=one
-       \property Staff.ydirection = \center
+       \property Staff.verticalDirection = \center
        \property Staff.hshift = 0
 }
 
 stafftwo = {   
        \translator Staff=two
        \property Staff.hshift = 0
 }
 
 stafftwo = {   
        \translator Staff=two
-       \property Staff.ydirection = \center
+       \property Staff.verticalDirection = \center
        \property Staff.hshift = 0
 }
 
 staffthree = {         
        \translator Staff=three
        \property Staff.hshift = 0
 }
 
 staffthree = {         
        \translator Staff=three
-       \property Staff.ydirection = \center
+       \property Staff.verticalDirection = \center
        \property Staff.hshift = 0
 }
 
 stafffour = {  
        \translator Staff=four
        \property Staff.hshift = 0
 }
 
 stafffour = {  
        \translator Staff=four
-       \property Staff.ydirection = \center
+       \property Staff.verticalDirection = \center
        \property Staff.hshift = 0
 }
 
        \property Staff.hshift = 0
 }
 
@@ -285,3 +195,4 @@ endincipit = \notes{
     \property Staff.clefStyle = "fullSizeChanges" 
     \nobreak \bar "";
 }
     \property Staff.clefStyle = "fullSizeChanges" 
     \nobreak \bar "";
 }
+
index 8e5be96a5a7f83c647e3fddf2bd67648d9d191f4..a785c8213cb05e1f5aaabcebd8dad76dc361163d 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Titel: LilyPond
 Begin3
 Titel: LilyPond
-Versie: 1.1.43
-Inschrijf datum: 17MAY99
+Versie: 1.1.44
+Inschrijf datum: 25MAY99
 Beschrijving: @FLAPTEKST@
 Trefwoorden: muziek typezetten midi notatie
 Auteur: hanwen@stack.nl (Han-Wen Nienhuys)
        janneke@gnu.org (Jan Nieuwenhuizen)
 Onderhouden door: hanwen@cs.ruu.nl (Han-Wen Nienhuys)
 Voornaamste plek: sunsite.unc.edu /pub/Linux/apps
 Beschrijving: @FLAPTEKST@
 Trefwoorden: muziek typezetten midi notatie
 Auteur: hanwen@stack.nl (Han-Wen Nienhuys)
        janneke@gnu.org (Jan Nieuwenhuizen)
 Onderhouden door: hanwen@cs.ruu.nl (Han-Wen Nienhuys)
 Voornaamste plek: sunsite.unc.edu /pub/Linux/apps
-       770k lilypond-1.1.43.tar.gz 
+       770k lilypond-1.1.44.tar.gz 
 Oorspronkelijke plek: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
 Oorspronkelijke plek: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-       770k lilypond-1.1.43.tar.gz 
+       770k lilypond-1.1.44.tar.gz 
 Copi-eer voorwaarden: GPL
 End
 Copi-eer voorwaarden: GPL
 End
index 118e4d489816be75c6166dac628052d3f6adbf59..66b18d3008dbbda8305edbe5dccc1271eebd80c7 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title: LilyPond
 Begin3
 Title: LilyPond
-Version: 1.1.43
-Entered-date: 17MAY99
+Version: 1.1.44
+Entered-date: 25MAY99
 Description: 
 LilyPond is the GNU Project music typesetter.  This program can print
 beautiful sheet music from a music definition file.  It can also play
 Description: 
 LilyPond is the GNU Project music typesetter.  This program can print
 beautiful sheet music from a music definition file.  It can also play
@@ -14,8 +14,8 @@ Author: hanwen@cs.ruu.nl (Han-Wen Nienhuys)
        janneke@gnu.org (Jan Nieuwenhuizen)
 Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
        janneke@gnu.org (Jan Nieuwenhuizen)
 Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
-       770k lilypond-1.1.43.tar.gz 
+       770k lilypond-1.1.44.tar.gz 
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-       770k lilypond-1.1.43.tar.gz 
+       770k lilypond-1.1.44.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index 139e2594fbf78a8f3a1c389a6d5bb4cea7cf6adb..2f7efa761194cd04defde08f58b9058d6ec55385 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
 Name: lilypond
-Version: 1.1.43
+Version: 1.1.44
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.1.43.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.1.44.tar.gz
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 Packager: Han-Wen Nienhuys <hanwen@cs.uu.nl>
 Summary: A program for printing sheet music.
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 Packager: Han-Wen Nienhuys <hanwen@cs.uu.nl>
index aea7644563353bcbf2844a99093ceb8f96520768..07cd9a06c2df52c2566b1de5be24d78247d21b3f 100644 (file)
@@ -18,7 +18,7 @@ README_FILES = BUGS DEDICATION ANNOUNCE-0.1 ANNOUNCEMENT-1.0 \
  COPYING NEWS-0.1 NEWS-1.0 NEWS-0.0 NEWS  TODO AIMS
 README_TXT_FILES = README.txt AUTHORS.txt INSTALL.txt PATCHES.txt
 IN_FILES := $(wildcard *.in)
  COPYING NEWS-0.1 NEWS-1.0 NEWS-0.0 NEWS  TODO AIMS
 README_TXT_FILES = README.txt AUTHORS.txt INSTALL.txt PATCHES.txt
 IN_FILES := $(wildcard *.in)
-EXTRA_DIST_FILES = dstreamrc mudela-mode.el vimrc VERSION $(README_FILES)  $(SCRIPTS) $(IN_FILES)
+EXTRA_DIST_FILES = dstreamrc mudela-mode.el vimrc VERSION $(README_FILES)  $(SCRIPTS) $(IN_FILES) TASKS
 NON_ESSENTIAL_DIST_FILES = $(README_TXT_FILES)
 
 # bootstrap stepmake:
 NON_ESSENTIAL_DIST_FILES = $(README_TXT_FILES)
 
 # bootstrap stepmake:
@@ -37,3 +37,7 @@ examples:
 localinstall:
        mkdir -p $(datadir)
        $(LN_S) $(TEX_TFMDIR) $(datadir)/cmtfm
 localinstall:
        mkdir -p $(datadir)
        $(LN_S) $(TEX_TFMDIR) $(datadir)/cmtfm
+
+
+local-WWW-clean:
+       $(depth)/buildscripts/out/clean-fonts
index 58ef2d7a1d0a5714cef0d339fe26fe72581a03b5..e90c55e26d5c9bda79dbd444f22e7127ba68c2a4 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "violoncello.ly"
 
 \include "global.ly"
 \include "violoncello.ly"
index 4dac9d5a0a46e5214872205272c3447be326e521..a43c6dfe97ed320556570acea790aadf2495c6ea 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "clarinetti.ly"
 
 \include "global.ly"
 \include "clarinetti.ly"
index f749b3337b4002e328b314e70bc53835f0e9f1e6..581cf740e573d554226911368f001125495f0f60 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "clarinetto-1.ly"
 \include "clarinetto-2.ly"
 
 \include "clarinetto-1.ly"
 \include "clarinetto-2.ly"
index 011fc4b94614c788b42866268c58b2a773e76615..7645f4172b62846390d8d9a5e5316f61d6a4d5f0 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 clarinetto1 = \notes \relative c {
        R1 *2 | d''4-.\ff r r2 | R1 *3 | e4-. r r2 | R1 *3 |
 
 clarinetto1 = \notes \relative c {
        R1 *2 | d''4-.\ff r r2 | R1 *3 | e4-. r r2 | R1 *3 |
index 2d9b6c1d277a9d1341bc7a1ad9fcfbb25117dfad..7503d18ada2ab86dc7aed7c0e691e77916c2df33 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 clarinetto2 = \notes \relative c { 
        R1*2 bes''4-.\ff r r2 | R1*3 | cis4-. r r2 | R1 *3 | 
 
 clarinetto2 = \notes \relative c { 
        R1*2 bes''4-.\ff r r2 | R1*3 | cis4-. r r2 | R1 *3 | 
index ecf33ea66f4d9281ed2ff02213ade2c05023cbd4..0f0a58c52d009c717950b18e7425a6434887f32b 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "contrabasso.ly"
 
 \include "global.ly"
 \include "contrabasso.ly"
index 5bc30649fff327c24ad9d9a3967381a6f595a474..c958df6f43b2c6213b1f4f94e3783fb66747cdfc 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 contrabasso = \notes \relative c {
 %      \translator Staff=violoncello
 
 contrabasso = \notes \relative c {
 %      \translator Staff=violoncello
index 1d962bb2b4e2f949e80015353e88b4567275b22e..aaa82c488b615bfe335f4cd6dfba810235e519f3 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 
 
 \include "global.ly"
 
index d887b9043254f582ee9dceeed9d07e2924644af0..b904ec9b8c63f8a9373cfe34ce1446419c7daad7 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "corni.ly"
 
 \include "global.ly"
 \include "corni.ly"
index 4a1fe5d350472395e69e51e0708f4daa2aa5cc9d..dc490a270473c86c28140fa43aed784294e21d04 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "corno-1.ly"
 \include "corno-2.ly"
 
 \include "corno-1.ly"
 \include "corno-2.ly"
index 9490995a65df5b8a7d75633e50e522c6c1e6c8c0..5db1f242069beedba0575aca9709bea8129df1b0 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 corno1 = \notes \relative c {
        R1 *2 | f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
 
 corno1 = \notes \relative c {
        R1 *2 | f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
index 4de35788390e6429ba5d1d931116ce707c5f50a3..d05eb04bfd4f003022c3331de37f82a3c63bb559 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 corno2 = \notes \relative c {
        R1 *2 | d''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
 
 corno2 = \notes \relative c {
        R1 *2 | d''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
index d2cdd5b509ed5bf46ad147f98878d7d8c3dc414c..77cf1e3abfbeb1142dd258497af98d1edf2ee097 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "fagotti.ly"
 
 \include "global.ly"
 \include "fagotti.ly"
index 963dc803ccf7c0682b95a85b6de4e3cbbafc4371..f8d277a5841ab389fee61fb736929f6699428544 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "fagotto-1.ly"
 \include "fagotto-2.ly"
 
 \include "fagotto-1.ly"
 \include "fagotto-2.ly"
index fa1c8fdd890011cce52ff69e04692cfacc9e603f..096176e76594d87b12f0edf81f5d114ba69b3741 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 fagotto1 = \notes \relative c {
        R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
 
 fagotto1 = \notes \relative c {
        R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
index 6968a3d9db529da49b020af81c76243f660c966b..d5aaf3e699ed920a01ac0da90a25344c3b9f22ce 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 fagotto2 = \notes \relative c {
        R1 *2 | f4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
 
 fagotto2 = \notes \relative c {
        R1 *2 | f4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
index 41897d5b5df3a90b948593de587c889c35de4911..ff50562870406650053ce02b46659ccb29f241e8 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "flauti.ly"
 
 \include "global.ly"
 \include "flauti.ly"
index 146d4393d8fe04aa3f4117a3338084c7f1d54ce3..1557ba98d15ab994303806b32e64297cd74d2953 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "flauto-1.ly"
 \include "flauto-2.ly"
 
 \include "flauto-1.ly"
 \include "flauto-2.ly"
index dc8e42b044d3fd5f1e91dec7dbd6c7caf2090d9b..faf51d925c2c8e0cc89bdf4b529df069b6814df5 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 flauto1 = \notes \relative c {
        R1 *2 | c'''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
 
 flauto1 = \notes \relative c {
        R1 *2 | c'''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 |
index fc7ea80f260f2aa7b2617692c3c937802d79c076..310d69339831e962411b7f3e1973e30467880f99 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 flauto2 = \notes \relative c {
        R1 *2 | as'''4-.\ff r r2 | R1 *3 | b4-. r r2 | R1 *3 | 
 
 flauto2 = \notes \relative c {
        R1 *2 | as'''4-.\ff r r2 | R1 *3 | b4-. r r2 | R1 *3 | 
index 29f30c4ac623b96e95a50949101da1305c9a840d..cf487141d8f6d3d629d56a150342c66b1a019cd0 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 global = \notes {
        \time 4/4;
 
 global = \notes {
        \time 4/4;
index 14762ae2ae9206bc61897cdc768260c8aeba92d3..67d9d6d3b3650d017e269874dffcc2b267a1375f 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 oboe1 = \notes \relative c'' {
        R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
 
 oboe1 = \notes \relative c'' {
        R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 |
index 6192a67009a9fc6f015cfa172b2879552f8b8366..c92d6d88d1712d126282037900d1d17c9a2d894f 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 oboe2 = \notes \relative c{
        R1 *2| f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
 
 oboe2 = \notes \relative c{
        R1 *2| f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 |
index def281f8ab98e7a8d4450d6d7d85317680bf7cbb..599c688daa7b8c09c10e0ff406eae80e6f91feed 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "oboi.ly"
 
 \include "global.ly"
 \include "oboi.ly"
index d11b71327fb6fc6bd1ade3e6667f9ad902f9e36c..b3f61ac178909d10b8e5de436eb6eff73f14e026 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "oboe-1.ly"
 \include "oboe-2.ly"
 
 \include "oboe-1.ly"
 \include "oboe-2.ly"
index 47eac136a94e96206d4598ac469df23c57541a43..b2fefcf9455ad9b7453950dd2419ecb337323998 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 timpani = \notes \relative c {
        R1 *2 | c4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
 
 timpani = \notes \relative c {
        R1 *2 | c4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
index 4db3dddbec6b872fe635e02a6649a998c81126f2..4065c85e5c392c45d60e9f002271f44058778e4e 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "trombe.ly"
 
 \include "global.ly"
 \include "trombe.ly"
index 54fe26bdc66d3362119eef76b87692cf89b945ce..f552fd2c6e91c162a3b29dba7b90452003f739d4 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "trombo-1.ly"
 \include "trombo-2.ly"
 
 \include "trombo-1.ly"
 \include "trombo-2.ly"
index f302239fe5420d705b1adb5025dcc7f93982e940..8d8952e75cae29e4c1c77a6de9c7a0bb8e0faabf 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 trombo1 = \notes \relative c {
        R1 *2 | c''4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
 
 trombo1 = \notes \relative c {
        R1 *2 | c''4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
index 49235bf749808b13d7e21729d1c0fac76b14210a..3812ea54efa5ee77a8ad8aa9da435a1b5272afe5 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 trombo2 = \notes \relative c {
        R1 *2 | c'4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
 
 trombo2 = \notes \relative c {
        R1 *2 | c'4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 |
index 78ca458dfece6786c34e77584d8d27b95bb8c6c9..92a2f3211fdba1d4e9bee8be3f64a61ff454a96a 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 viola1 = \notes \relative c {
        \context Voice=one
 
 viola1 = \notes \relative c {
        \context Voice=one
index 57488543b5c24c9be74e024b312de7dc26fc569f..b0e5f7fe04b7ed9244287a97c535e32ee81f1c29 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 viola2 = \notes \relative c {
        % starts on (actualy, most part is on) same staff as viola1
 
 viola2 = \notes \relative c {
        % starts on (actualy, most part is on) same staff as viola1
index 1d32273d91df660afa5aae010b37430f7b775170..e3ce9da93c2948083310587ca2085cd7e44b0cd1 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "viola-1.ly"
 
 \include "global.ly"
 \include "viola-1.ly"
index 525541b9d7ec1dc0dc8aa07366d9ceedac5b6556..3ed4fb306fbb52ee6b25c4f3b1704da9ee284aea 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "violino-1.ly"
 
 \include "global.ly"
 \include "violino-1.ly"
index 0ed1155615e726184569252a813683d1e75753ad..2e4b87f08a8a333b68affcb6da365b28b7a3546e 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 violino1 = \notes \relative c {
        c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
 
 violino1 = \notes \relative c {
        c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
index c9a83493bd0da63f9fe26845fd8f18dab4db4158..e738e9d9453057f0c2213b73b95ed67dbdaa6133 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "violino-2.ly"
 
 \include "global.ly"
 \include "violino-2.ly"
index dc3afe6c098c4c0bab00aa3fe76b024289fa42c2..535a41690dd2b96d9ae7b35dfb858725c27b2bec 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 violino2 = \notes \relative c {
        c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
 
 violino2 = \notes \relative c {
        c'1\ff ~ | c | <f4-. c'-. as'-.> r r2 | R1 |
index e7ab26480184d8fb930a1e57c9e778e5c7defe8f..4f40fbf0c86183e9d72e8cbf1d13b27183b0598e 100644 (file)
@@ -7,7 +7,7 @@ enteredby =      "JCN";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "violoncello.ly"
 
 \include "global.ly"
 \include "violoncello.ly"
index d6c13a21a9632f96c531784e7a7f43c140ffbb68..070c820f6317e373438bdea54038df5270aa26ab 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 
 }
 
 
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 violoncello = \notes \relative c {
        c1\ff ~ | c | f,4-. r r2 | r1 | c'1\ff ~ | c | f,4-. r r2 |
 
 violoncello = \notes \relative c {
        c1\ff ~ | c | f,4-. r r2 | r1 | c'1\ff ~ | c | f,4-. r r2 |
index 767eb6d53faaab5e699981afb4f39c59315d0a0e..caf94189236757ba9be6b2a62f33ddb1fd9bc03a 100644 (file)
@@ -807,4 +807,4 @@ Bar_number_engraver;}}
 
 ----------------------------------------------------
 
 
 ----------------------------------------------------
 
-\version "1.0.19";
+\version "1.0.20";
index 710fee7651bc485714dcab3e83d713048ee95eff..e135d8343a79393ed46a80493d11df3c37353b34 100644 (file)
@@ -266,4 +266,4 @@ s1
 \paper{barsize=50.0; \translator {\StaffContext \consists
 Bar_number_engraver;}}
 }
 \paper{barsize=50.0; \translator {\StaffContext \consists
 Bar_number_engraver;}}
 }
-\version "1.0.19";
+\version "1.0.20";
index 0c2555a10b8c841fd56365f9833e1ad70a6be08c..af3e3b6c3d73792d92237b787ed329086f14eaf6 100644 (file)
@@ -336,4 +336,4 @@ g,4. |
 Bar_number_engraver;}}
 }
 
 Bar_number_engraver;}}
 }
 
-\version "1.0.19";
+\version "1.0.20";
index a83ded214bdba94adbae2f9798f3c8776f82f9c9..7f861941550e33b08669a476735826ac7aa23018 100644 (file)
@@ -251,4 +251,4 @@ LHtoL = { \tolower \stemdown }
  
 
 }
  
 
 }
-\version "1.0.19";
+\version "1.0.20";
index bbff16daa954d33e7973a2f4fbd49dc0ff2359ec..bffe458f1778640073580dd1db996750808c4dea 100644 (file)
@@ -311,4 +311,4 @@ s8 [c''16 g'8 fis'16] [bes'' g' f' ees'] |
  \paper{barsize=50.0; \translator {\StaffContext \consists
 Bar_number_engraver;}}
 }
  \paper{barsize=50.0; \translator {\StaffContext \consists
 Bar_number_engraver;}}
 }
-\version "1.0.19";
+\version "1.0.20";
index d54e3abbb3d75e0e4cd1caecc3194d9d2f5b4516..524878c6038101be31460a0d9a3eb6f23467a84a 100644 (file)
@@ -17,7 +17,7 @@ title = "Verso II";
        under the Gnu Public Licence.
 %}
        
        under the Gnu Public Licence.
 %}
        
-\version "1.0.19";
+\version "1.0.20";
 
 $voice_one = \notes \relative c' {
        a'2 bes4. [c16 bes] | a4 d ~ d c ~ | c b ~ [b8 a] a4 ~|
 
 $voice_one = \notes \relative c' {
        a'2 bes4. [c16 bes] | a4 d ~ d c ~ | c b ~ [b8 a] a4 ~|
index 7a313540c52f2bd1b3901cc6fc5064a024d63bc6..c2ecc576f91c9efa6d12bbcdacd7ab1d63712596 100644 (file)
@@ -12,7 +12,7 @@
  Tested Features: cross staff beams and slurs, grace notes, no bars
 %}
 
  Tested Features: cross staff beams and slurs, grace notes, no bars
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "nederlands.ly"
 
 
 \include "nederlands.ly"
 
@@ -78,7 +78,7 @@ bassbeam = \notes{
 
 lower = \context Voice=two \notes \relative c{
   \stemdown
 
 lower = \context Voice=two \notes \relative c{
   \stemdown
-  \property Staff.slurydirection = 1
+  \property Staff.slurVerticalDirection = 1
 
   % snapnie, hoevaak relative c heeft ze nodig?
   < \notes\relative c \basloopje \bassbeam >
 
   % snapnie, hoevaak relative c heeft ze nodig?
   < \notes\relative c \basloopje \bassbeam >
index 3222aed515f8105a209b41799c12afa5f328e4c3..4216696d5a924d50bdf4260a9a2ef8fb74fdfab3 100644 (file)
@@ -12,7 +12,7 @@
  Tested Features:
 %}
 
  Tested Features:
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "nederlands.ly"
 
 
 \include "nederlands.ly"
 
index b79169a71431dadc90034e0e1e43b175d240177f..2ebcf919e3736b86898dc28c51803b84f0ca29eb 100644 (file)
@@ -9,6 +9,6 @@ description = "A schubert song in 16 pt";
 copyright =     "public domain";
 } 
 
 copyright =     "public domain";
 } 
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "standchen.ly"
 
 \include "standchen.ly"
index 35480ad44aa905f8c2c8a636c7982743b0b02156..9d32796aa84cb1d2bc0adda3cbb6a6e95c941849 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 description = "A schubert song in 20 pt";
 } 
 
 description = "A schubert song in 20 pt";
 } 
 
-\version "1.0.19";
+\version "1.0.20";
 
 % fool make-website
 % \include "standchen.ly";
 
 % fool make-website
 % \include "standchen.ly";
index 3e9096f8ec31d51c1e9d0e5792a3ac51d5de3b00..8012f243ecd8cdcc19343037d0ee60b43882395a 100644 (file)
@@ -16,7 +16,7 @@ multiple \paper{}s in one \score
 Note: Original key F.
 %}
 
 Note: Original key F.
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 $vocal_verse1 = \notes\relative c''{
        % ugh: treble/bass
 
 $vocal_verse1 = \notes\relative c''{
        % ugh: treble/bass
index 5920851461de8e91ea65461e50a36305fcd24a49..aecac4abce43f20ef778ad1dbbe390b41d0c1070 100644 (file)
@@ -4,7 +4,7 @@ depth = ..
 
 SUBDIRS = J.S.Bach Coriolan W.A.Mozart F.Schubert D.Zipoli Hymns D.Scarlatti L.Mozart E.Satie N.W.Gade
 
 
 SUBDIRS = J.S.Bach Coriolan W.A.Mozart F.Schubert D.Zipoli Hymns D.Scarlatti L.Mozart E.Satie N.W.Gade
 
-examples= gallina
+examples= 
 LOCALSTEPMAKE_TEMPLATES=mutopia
 
 include $(depth)/make/stepmake.make
 LOCALSTEPMAKE_TEMPLATES=mutopia
 
 include $(depth)/make/stepmake.make
index 4f28bd2703964efe6cdd96f8d940df97e73c5041..61a8eac1c2f9e22c2a05db1217535d693df16ddd 100644 (file)
@@ -6,7 +6,7 @@ date = "1868";
 title = "Diademata";
 metre = "6 6. 8 6. D";
 }
 title = "Diademata";
 metre = "6 6. 8 6. D";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 sop=\notes \transpose c''{
        ees2  | ees4 ees4 g2 g2 |  c'1.  \bar "||";
 
 sop=\notes \transpose c''{
        ees2  | ees4 ees4 g2 g2 |  c'1.  \bar "||";
index 5a5f21c891a20a7b197a786ddf1eb54114cb92c1..f208db7e2783f947b5ca65fa7033fe996ed6da0d 100644 (file)
@@ -4,7 +4,7 @@ composer = "Parry";
 metre = "10 10 . 11 11";
 }
 
 metre = "10 10 . 11 11";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 sop = \notes \transpose c''{
        f4 | d' bes c' | f2 \bar "||";
 
 sop = \notes \transpose c''{
        f4 | d' bes c' | f2 \bar "||";
index 61af28cb6bebcc4c093384bf1bb5501a95e4497f..378f138a096998e4fe25aa51439f9e6d74b95d30 100644 (file)
@@ -7,7 +7,7 @@ title = "Maccabaeus";
 metre = "10 11. 11 11. and refrain";
 }
 
 metre = "10 11. 11 11. and refrain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 sop=\notes \relative c'' {
        b2 gis4. a8  |b2 e,2 |
 
 sop=\notes \relative c'' {
        b2 gis4. a8  |b2 e,2 |
index 5f59a39a5d7722e75e644cdc5503dfa4243d867a..3cf2fd36bf80efac4e99ababade33b85fdf0f163 100644 (file)
@@ -7,7 +7,7 @@ title = "Ode to Joy";
 metre = "8 7 8 7 D";
 }
 
 metre = "8 7 8 7 D";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 sop=\notes \relative c'' {
        b4 b c d | d c b a | g g a b | b4. a8 a2 \bar "||";
 
 sop=\notes \relative c'' {
        b4 b c d | d c b a | g g a b | b4. a8 a2 \bar "||";
index 20b145ca573a31feab6d08c53a9fd9da3167ed83..4dd7397fa1eb9e7af2c323f62635ea346308431e 100644 (file)
@@ -8,7 +8,7 @@ poet = "Joseph Mohr";
 }
 
 
 }
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 global=\notes {
              \time 6/4;
 
 global=\notes {
              \time 6/4;
index 1de961a843439b4dae552b07da01a3cc511052fb..5f7be0b367510b9f7e87a75d88e49d028ef34abe 100644 (file)
@@ -4,7 +4,7 @@
        piece = "Allemande";
 }
 
        piece = "Allemande";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 global = \notes{
        \time 4/4;
 
 global = \notes{
        \time 4/4;
index d28fca30b1ab515f3d4dbceae6b29e42ce83795e..b5d1f9fd4bf2a02150d49241efec891d008404cc 100644 (file)
@@ -10,7 +10,7 @@
 %% 
 %% Noe liknende skjer ogsÃ¥ i mellom andre og tredje stemme i takt 28
 
 %% 
 %% Noe liknende skjer ogsÃ¥ i mellom andre og tredje stemme i takt 28
 
-\version "1.0.19";
+\version "1.0.20";
 
 global = \notes{
        \time 2/4;
 
 global = \notes{
        \time 2/4;
index 30d3c93c3c37cbc9ef2c5f96bcb7a5d91e87b65a..209c1f86c4e32175d41ea5f004dcb2e0569a5f00 100644 (file)
@@ -10,7 +10,7 @@
   copyright =   "Public Domain";
 }
 
   copyright =   "Public Domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 global = \notes {
        \time 4/4;
 
 global = \notes {
        \time 4/4;
index 1aea92781d8dc61c95f484bb6311d690d961f29d..728f9e4ca8dbfea5d943bf3a1c2b7cd251312593 100644 (file)
@@ -12,7 +12,7 @@ enteredby =    "jcn";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 % upper = \context Staff \notes\relative c {
 upper = \context Staff=upper \notes\relative c {
 
 % upper = \context Staff \notes\relative c {
 upper = \context Staff=upper \notes\relative c {
index 62fc254829dd18bb9b5ea128da04fcb3ad23ae0c..dac1d147e2d7cc81fd6464c5d318ce64e3fd8b20 100644 (file)
@@ -10,7 +10,7 @@ enteredby =    "jcn";
 copyright =     "public domain";
 }
 
 copyright =     "public domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 upper = \context Staff \notes\relative c{
        \context Voice=i
        \property Voice . textstyle = "italic"
 upper = \context Staff \notes\relative c{
        \context Voice=i
        \property Voice . textstyle = "italic"
index c5ad7649c23e8b2959ce3c688b7f886485c604fa..cfb68c069553852c88521df19bc8e7a43f4a294b 100644 (file)
@@ -8,7 +8,7 @@ composer =      "Johann Sebastian Bach (1685-1750)";
 enteredby =    "jcn";
 copyright =    "public domain";
 }
 enteredby =    "jcn";
 copyright =    "public domain";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 one = \context Staff \notes\relative c {
        \context Voice=i
 
 one = \context Staff \notes\relative c {
        \context Voice=i
index 0727edd6bd67d96f9a25031aa92d28efd06e7841..73060456769663832ed3c3dc5766b53aa50a0ffe 100644 (file)
@@ -8,7 +8,7 @@ composer =      "Johann Sebastian Bach (1685-1750)";
 enteredby =    "jcn";
 copyright =    "public domain";
 }
 enteredby =    "jcn";
 copyright =    "public domain";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 
 upper = \context Staff \notes\relative c{
 
 
 upper = \context Staff \notes\relative c{
index 1cf5f26662ff28a7b5458be326ebba265e1bdaed..2aec8613d02fd89086fa4a09a8a5fc94d3316016 100644 (file)
@@ -8,7 +8,7 @@ composer =      "Johann Sebastian Bach (1685-1750)";
 enteredby =    "jcn";
 copyright =    "public domain";
 }
 enteredby =    "jcn";
 copyright =    "public domain";
 }
-\version "1.0.19";
+\version "1.0.20";
 
 
 one = \context Staff \notes\relative c{
 
 
 one = \context Staff \notes\relative c{
index 18e9385e3ff9607bdba4c3fdc6dbcfb2d30252c9..283e7cd43906aebf380405bab38a597f0d7736bd 100644 (file)
@@ -4,7 +4,7 @@ depth = ../../..
 
 EXTRA_DIST_FILES=
 
 
 EXTRA_DIST_FILES=
 
-examples=scsii-cello
+examples= #scsii-cello
 LOCALSTEPMAKE_TEMPLATES=mutopia
 
 include $(depth)/make/stepmake.make
 LOCALSTEPMAKE_TEMPLATES=mutopia
 
 include $(depth)/make/stepmake.make
index 102689731681528a18113f1b282a33b78c6a357c..a1215a3363cc2c70db6abe488db2b14f32e841b5 100644 (file)
@@ -104,4 +104,4 @@ allemande = \context Staff \notes<
 >
 
 
 >
 
 
-\version "1.0.19";
+\version "1.0.20";
index f643af802110026db659a8cff26c81b62fc83738..2c80b4b2336e798eba2b818d2d600d20e3450061 100644 (file)
@@ -91,4 +91,4 @@ courante = \context Staff \notes<
  \$courante_b
 >
 
  \$courante_b
 >
 
-\version "1.0.19";
+\version "1.0.20";
index 638f519953fa8617e3b8ed9449d0e6ecf74bbc5b..a7e752eec8ad5b74bd7e773f5d97b185e2d30789 100644 (file)
@@ -106,4 +106,4 @@ gigue = \notes<
        \$gigue_b
 >
 
        \$gigue_b
 >
 
-\version "1.0.19";
+\version "1.0.20";
index 4a750a49bbe913d23dbd41540490652aaf6ebf0a..da320dce164a639844667c8728aaece5038f0a45 100644 (file)
@@ -156,4 +156,4 @@ menuetto_ii = \context Staff\notes \relative c {
        d2.
 }
 
        d2.
 }
 
-\version "1.0.19";
+\version "1.0.20";
index c3dc87ebaf16378db5be22a3e545db68f65c2e01..1f6b58cb5fdc4b66c7f883649488844bca3d24db 100644 (file)
@@ -15,7 +15,7 @@ copyright =    "public domain";
  dotted slurs
 %}
 
  dotted slurs
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "prelude-urtext.ly";
 
 
 \include "prelude-urtext.ly";
 
index f328ff2e3a684dfdd8c02810643d9b7b3671bf87..d3237c389f7beee3c0de6197de79ac21570fe5c8 100644 (file)
@@ -280,4 +280,4 @@ prelude = \context Staff \notes<
        \$prelude_b
 >
 
        \$prelude_b
 >
 
-\version "1.0.19";
+\version "1.0.20";
index 1bab6e0727c24068d2ae7dfca87c5a1fe08f9de0..b68aafee14e38f74f629ba1510a9e6cd42be502a 100644 (file)
@@ -15,7 +15,7 @@ copyright =    "public domain";
  dotted slurs
 %}
 
  dotted slurs
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "prelude-urtext.ly";
 
 
 \include "prelude-urtext.ly";
 
index 6e5124bbc5dae65108afa4653164a68d5a923c2b..1ecb556ba48deb347e406bdb3ca37c355582ce06 100644 (file)
@@ -92,4 +92,4 @@ sarabande = \context Staff \notes<
        \$sarabande_b
 >
 
        \$sarabande_b
 >
 
-\version "1.0.19";
+\version "1.0.20";
index 4dadc022320d3934e7f9f8c5509fa48e8d6962d5..41f00eb5eb8eed1b82b2ce7f0a72822e60c68126 100644 (file)
@@ -16,4 +16,4 @@ $viola_i_staff = \context Staff = viola <
        \clef alto;
        \$global_i
 >
        \clef alto;
        \$global_i
 >
-\version "1.0.19";
+\version "1.0.20";
index 0d3fff5b460f06406f35e496df17c55d5c1081a3..8634e194fad8217f83ca5b8f9d1988622886ca6e 100644 (file)
@@ -37,4 +37,4 @@ $violino_i_staff = \context Staff = violino <
        >
        \$global_i
 >
        >
        \$global_i
 >
-\version "1.0.19";
+\version "1.0.20";
index d347fda26540241c5c7d2a1e92eade237f391a30..97081d2e98253a250281208dd8ce807da1df7856 100644 (file)
@@ -30,4 +30,4 @@ copyright =    "Public Domain";
        }
 }
 
        }
 }
 
-\version "1.0.19";
+\version "1.0.20";
index 58392fc2eac178f245ec37e8c8ff6a988dd926dc..3443a8d4aa974dc67b72aa3255f525e458e959c4 100644 (file)
@@ -30,4 +30,4 @@ copyright =    "Public Domain";
        }
 }
 
        }
 }
 
-\version "1.0.19";
+\version "1.0.20";
index db96ad0e509a7ee5526983257e6b0a53f9d154ab..cd0938f9612789e035c1f0793cd4f83384ff94c5 100644 (file)
@@ -28,4 +28,4 @@ $violoncello_i_staff = \context Staff = violoncello <
        \clef bass;
        \$global_i
 >
        \clef bass;
        \$global_i
 >
-\version "1.0.19";
+\version "1.0.20";
index 4a811eb1db3913999b47c7f89b3b14a49a4f05fa..8da979849b45da098689e2de3abf1ec330dc7d0d 100644 (file)
@@ -11,7 +11,7 @@ copyright =    "Public Domain";
 %{
        
 %}
 %{
        
 %}
-\version "1.0.19";
+\version "1.0.20";
 
 
 global = 
 
 
 global = 
index 22948fd8e424ddb75349fe8b0011db078f90bc20..606dfabb852d7554ba431aae58e17a315077be0f 100644 (file)
@@ -19,7 +19,7 @@
    * auto beaming
 %}
 
    * auto beaming
 %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "nederlands.ly"                 % for correct parsing of note names
 
 
 \include "nederlands.ly"                 % for correct parsing of note names
 
@@ -35,7 +35,7 @@ dux = \context Voice=two \notes \relative c''{
   \voicetwo
   \clef violin;
 
   \voicetwo
   \clef violin;
 
-  \property Voice.ydirection = "-1"
+  \property Voice.verticalDirection = "-1"
   
   r8 c16 b c8 g as c16 b c8 d |
   g, c16 b c8 d f,16 g as4 g16 f |
   
   r8 c16 b c8 g as c16 b c8 d |
   g, c16 b c8 d f,16 g as4 g16 f |
index f7c4d9886e8e03b5af873f4319a7cab8a85aa5eb..6f748109918dc2144e116d8399a7dbec32a6c3a9 100644 (file)
@@ -8,7 +8,7 @@ enteredby =      "Shay Rojansky";
 copyright =     "Public Domain";
 }
 
 copyright =     "Public Domain";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 global = 
     \notes {
 
 global = 
     \notes {
index 18e11c3871a0105d79a829f390817cd587f67475..8637d416f426ff5e8e45ee0325689c0f446b6490 100644 (file)
@@ -383,4 +383,4 @@ bassocontinuo = \notes \relative c'{
         \midi{ \tempo 4 = 100; }
 }
 
         \midi{ \tempo 4 = 100; }
 }
 
-\version "1.0.19";
+\version "1.0.20";
index 70378ad16e598ace49d88972310a407841329b80..5624bd37e154cdb4f44ea0ca04ba5b57ce006809 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 corI=\notes\relative c'' {
 \key c;
 
 corI=\notes\relative c'' {
 \key c;
index 6a06446bc88b442f25ca8caca485c3888d946081..e70c89dbe294ccca907bcb102bef14dfeba553bd 100644 (file)
@@ -8,7 +8,7 @@ copyright =     "Mats Bengtsson, 1999. Free circulation permitted and " +
                "Statens Musikbibliotek, Stockholm, Sweden";
 }
 
                "Statens Musikbibliotek, Stockholm, Sweden";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "wood.ly"
 
 \include "global.ly"
 \include "wood.ly"
index af45976b133bb3f3c1c0288804bbb04f8b377e6f..ec55e58ff8e605af466f94294aff25718f565d7c 100644 (file)
@@ -8,7 +8,7 @@ copyright =     "Mats Bengtsson, 1999. Free circulation permitted and " +
                "Statens Musikbibliotek, Stockholm, Sweden";
 }
 
                "Statens Musikbibliotek, Stockholm, Sweden";
 }
 
-\version "1.0.19";
+\version "1.0.20";
 
 \include "global.ly"
 \include "wood.ly"
 
 \include "global.ly"
 \include "wood.ly"
index 64594ba0c7272eb4ed08f2c4b5763160bc3d2d96..af2739b0ada99fcc377ce375cf150a0c2ec2daa6 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 viI=\notes\relative c'' {
 
 
 viI=\notes\relative c'' {
 
index 0167cbc8e11279edf9e97fb9b52a4f934f9ba2dd..25f85920b790e071d06cdde288df6e2f18ea5f80 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.0.19";
+\version "1.0.20";
 
 oboe=\notes\relative c'' {
 \clef "treble";
 
 oboe=\notes\relative c'' {
 \clef "treble";
index bb1324dea68c274f7b59781bf517df02253197fe..8eab69c625e578350e144e7ff423b81e12a3bbf6 100644 (file)
@@ -13,7 +13,7 @@ Tested Features: cadenza mode
 Ugh.. Wish we had grace notes....  It adds another dimension to this
 piece of music.  %}
 
 Ugh.. Wish we had grace notes....  It adds another dimension to this
 piece of music.  %}
 
-\version "1.0.19";
+\version "1.0.20";
 
 
 cad = \notes  \relative c' {
 
 
 cad = \notes  \relative c' {
index 9d97c5244aeda69928a87aac2935cc2cdf6617cf..a5d5b6cd8fd0cc8a12d63d87928f53c37fed3b60 100644 (file)
@@ -9,7 +9,7 @@ copyright =      "public domain";
 }
 
 
 }
 
 
-\version "1.0.19";
+\version "1.0.20";
 
 allegro =
        \notes
 
 allegro =
        \notes
index f889f73d66a44b0abd63ebc293f04c99d62ea17b..6d52d4ccae555ec2cbbb7a17635ca29f42c1f504 100644 (file)
@@ -8,7 +8,7 @@ enteredby =      "jcn";
 copyright =     "public domain";
 latexheaders=    "headers";
 } 
 copyright =     "public domain";
 latexheaders=    "headers";
 } 
-\version "1.0.19";
+\version "1.0.20";
 
 
 
 
 
 
index 0e30e6190ca83b59a4f2581c34e2b0b59adcd4fa..74d1d2f10d0facc8ba008423b0913e91915bbbda 100644 (file)
     )
   (define (stop-line) 
     "}\\vss}\\interscoreline")
     )
   (define (stop-line) 
     "}\\vss}\\interscoreline")
-
+  (define (stop-last-line)
+    "}\\vss}")
   (define (filledbox breapth width depth height) 
     (string-append 
      "\\kern" (number->dim (- breapth))
   (define (filledbox breapth width depth height) 
     (string-append 
      "\\kern" (number->dim (- breapth))
            (define select-font ,select-font)
            (define start-line ,start-line)
            (define stop-line ,stop-line)
            (define select-font ,select-font)
            (define start-line ,start-line)
            (define stop-line ,stop-line)
+           (define stop-last-line ,stop-last-line)
            (define text ,text)
            (define tuplet ,tuplet)
            (define volta ,volta)
            (define text ,text)
            (define tuplet ,tuplet)
            (define volta ,volta)
        ((eq? action-name 'start-line) start-line)
        ((eq? action-name 'stem) stem)
        ((eq? action-name 'stop-line) stop-line)
        ((eq? action-name 'start-line) start-line)
        ((eq? action-name 'stem) stem)
        ((eq? action-name 'stop-line) stop-line)
+       ((eq? action-name 'stop-last-line) stop-last-line)
        ((eq? action-name 'volta) volta)
        (else (error "unknown tag -- PS-TEX " action-name))
        )
        ((eq? action-name 'volta) volta)
        (else (error "unknown tag -- PS-TEX " action-name))
        )
            (define start-line ,start-line)
            (define stem ,stem)
            (define stop-line ,stop-line)
            (define start-line ,start-line)
            (define stem ,stem)
            (define stop-line ,stop-line)
+           (define stop-last-line ,stop-line)
            (define text ,text)
            ))
        ((eq? action-name 'tuplet) tuplet)
            (define text ,text)
            ))
        ((eq? action-name 'tuplet) tuplet)
diff --git a/scripts/abc-2-ly.py b/scripts/abc-2-ly.py
new file mode 100644 (file)
index 0000000..f1e5dd9
--- /dev/null
@@ -0,0 +1,224 @@
+#!@PYTHON@
+
+# once upon a rainy monday afternoon.
+#
+#   ...
+#
+# (not finished.)
+# 
+
+name = 'abc-to-ly'
+version = '0.1'
+
+import getopt
+import sys
+import re
+import string
+header = {}
+global_voice_stuff = []
+default_len = 4
+
+
+def dump_header (hdr):
+       print '\\header {'
+       for k in hdr.keys ():
+               print '%s = "%s";\n'% (k,hdr[k])
+       print '};'
+
+def set_default_length (s):
+       m =  re.match ('1/(.*)$', s)
+       if m:
+               default_len = string.atoi ( m.group (1))
+
+def parse_timesig (s):
+       m =  re.match ('^M: *(.*)$', s)
+       if m:
+               print '\meter %s; ' % m.group (1)
+
+def parse_key (s):
+       m =  re.match ('^K: *(.*)$', s)
+       if m:
+               print '\key %s; ' % m.group (1)
+       
+def gulp_file(f):
+       try:
+               i = open(f)
+               i.seek (0, 2)
+               n = i.tell ()
+               i.seek (0,0)
+       except:
+               print 'can\'t open file: ' + f + '\n'
+               return ''
+       s = i.read (n)
+       if len (s) <= 0:
+               print 'gulped empty file: ' + f + '\n'
+       i.close ()
+       return s
+
+
+def try_parse_header_line (ln):
+       m = re.match ('^(.): *(.*)$', ln)
+
+       if m:
+               g =m.group (1)
+               a = m.group (2)
+               if g == 'T':
+                       header['title'] =  a
+               if g == 'M':
+                       global_voice_stuff.append ('\\time %s;' % a)
+               if g == 'K':
+                       global_voice_stuff.append ('\\key %s;' % a)
+               if g == 'O': 
+                       header ['origin'] = a
+               if g == 'X': 
+                       header ['crossRefNumber'] = a
+
+               if g == 'A':
+                       header ['area'] = a
+               if g == 'H':
+                       header ['history'] = a
+               if g == 'B':
+                       header ['book'] = a
+               if g == 'S':
+                       header ['subtitle'] = a
+               if g == 'L':
+                       set_default_length (ln)
+       
+
+       return m
+
+
+# WAT IS ABC EEN ONTZETTENDE PROGRAMMEERPOEP  !
+
+def try_parse_note (str):
+       mud = ''
+
+       slur_begin =0
+       if str[0] == '(':
+               slur_begin = 1
+               str = str[1:]
+
+       acc = None
+       if str[0] in '^=_':
+               c = str[0]
+               str = str[1:]
+               if c == '^':
+                       acc = 1
+               if c == '=':
+                       acc = 0
+               if c == '_':
+                       acc = -1
+
+        octave = 0;
+       if str[0] in "ABCDEFG":
+               str = string.lower (str[0]) + str[1:]
+               octave = -1
+
+
+       notename = 0
+       if str[0] in "abcdefg":
+               notename = ord(str[0]) - ord('a')
+               str = str[1:]
+       else:
+               return str              # failed; not a note!
+
+       while str[0] == ',':
+                octave = octave - 1
+                str = str[1:]
+       while str[0] == '\'':
+                octave = octave + 1
+                str = str[1:]
+       divide =0
+       if str[0] == '/':
+               divide =1
+               str = str[1:]
+       durstr = ''
+       while str[0] in "1234567890":
+               durstr = durstr + str[0]
+               str = str[1:]
+
+       duration_mult = 1
+       if durstr:
+               duration_mult = string.atoi (durstr)
+
+       
+       slur_end =0
+       if str[0] == ')':
+               slur_begin = 1
+               str = str[1:]
+
+
+       return str
+
+def junk_space (str):
+       while str and str[0] in '\t\n ':
+               str = str[1:]
+
+       return str
+
+def try_parse_bar (str):
+       if str[0] == '|':
+               str = str[1:]
+       return str
+       
+def try_parse_body_line (ln):
+       prev_ln = ''
+       while ln and  ln != prev_ln:
+               prev_ln = ln
+               ln = try_parse_note  (ln)
+               ln = try_parse_bar (ln)
+               ln = junk_space (ln)
+       if ln:
+               print 'Huh %s' % ln
+               
+
+def parse_file (fn):
+       f = open (fn)
+       ls = f.readlines ()
+
+       head = 1
+       for l in ls:
+               if re.match ('^[\t ]*(%.*)?$', l):
+                       continue
+               
+               if head:
+                       m = try_parse_header_line (l)
+                       if not m:
+                               head = 0
+
+               if not head:
+                       m = try_parse_body_line (l)
+
+
+def identify():
+       print '%s %s' % (name, version)
+
+def help ():
+       print r"""
+This is a disfunctional ABC to mudela convertor.  It only gulps input, and
+says huh when confused.  Does not do chords.  Go ahead and fix me.
+
+-h, --help   this help.
+"""
+
+identify()
+(options, files) = getopt.getopt (sys.argv[1:], 'h', ['help'])
+
+for opt in options:
+       o = opt[0]
+       a = opt[1]
+       if o== '--help' or o == '-h':
+               help ()
+       else:
+               print o
+               raise getopt.error
+
+
+for f in files:
+       if f == '-':
+               f = ''
+       
+       parse_file (f)
+       dump_header (header)
+       print global_voice_stuff, 1
+       
index ec6eaa10694a69950fbd66eb0fe04f22bb89aff4..ea0ed1e9211d11e137fce95b9ea8eb4022af68b4 100644 (file)
@@ -324,6 +324,20 @@ if 1:
                            'fontsize -> fontSize, midi_instrument -> midiInstrument, SkipBars -> skipBars')
 
 
                            'fontsize -> fontSize, midi_instrument -> midiInstrument, SkipBars -> skipBars')
 
 
+if 1:
+       def conv(lines):
+               newlines =[]
+               for x in lines:
+                       x =  re.sub ('tieydirection','tieVerticalDirection', x)
+                       x =  re.sub ('slurydirection','slurVerticalDirection', x)
+                       x =  re.sub ('ydirection','verticalDirection', x)                       
+                       newlines.append (x)
+               return newlines
+
+       conversions.append ((1,0,20), conv,
+                           '{,tie,slur}ydirection -> {v,tieV,slurV}erticalDirection')
+
+
 
 ############################
        
 
 ############################
        
index fd535434c8420386560231d05651a0215cd6efa1..46b6a61778669a897cbfc24bbc732990d2c84321 100644 (file)
@@ -7,10 +7,6 @@
 #  help-gnu-music@gnu.org
 #
 #  TODO:
 #  help-gnu-music@gnu.org
 #
 #  TODO:
-# * Spacing before and after mudela blocks should be fixed. No empy lines
-#   before and after the mudela block should make just little space between
-#   music and text, one or more empy lines should make bigger space, like
-#   between paragraphs.
 # * center option (??)
 # * make mudela-book understand usepackage{geometry}
 # * check that linewidth set in \paper is not wider than actual linewidth?
 # * center option (??)
 # * make mudela-book understand usepackage{geometry}
 # * check that linewidth set in \paper is not wider than actual linewidth?
@@ -396,21 +392,24 @@ class Tex_output:
     def write_outfile(self):
         file = open(self.output_fn+'.latex', 'w')
         file.write('% Created by mudela-book\n')
     def write_outfile(self):
         file = open(self.output_fn+'.latex', 'w')
         file.write('% Created by mudela-book\n')
+        last_line = None
         for line in self.__lines:
             if type(line)==type([]):
         for line in self.__lines:
             if type(line)==type([]):
-                if line[0] == 'tex':
-                    #\\def\\interscoreline{}
+                if last_line == '\n':
+                    file.write(r'\vspace{0.5cm}')
+                if line[0] == 'tex':                    
                     file.write('\\preMudelaExample \\input %s \\postMudelaExample\n'\
                     file.write('\\preMudelaExample \\input %s \\postMudelaExample\n'\
-                              # TeX applies the prefix of the main source automatically.
                                % (line[1]+'.tex'))
                                % (line[1]+'.tex'))
-#                               % (outdir+line[1]+'.tex'))
                 if line[0] == 'eps':
                     ps_dim = ps_dimention(outdir+line[1]+'.eps')
                     file.write('\\noindent\\parbox{%ipt}{\includegraphics{%s}}\n' \
                                % (ps_dim[0], line[1]+'.eps'))
                 if line[0] == 'eps':
                     ps_dim = ps_dimention(outdir+line[1]+'.eps')
                     file.write('\\noindent\\parbox{%ipt}{\includegraphics{%s}}\n' \
                                % (ps_dim[0], line[1]+'.eps'))
-#                               % (ps_dim[0], outdir+line[1]+'.eps'))
             else:
                 file.write(line)
             else:
                 file.write(line)
+            if type(last_line)==type([]):
+                if line=='\n':
+                    file.write(r'\vspace{0.5cm}')
+            last_line = line
         file.close()
 
 # given parameter s="\mudela[some options]{CODE} some text and commands"
         file.close()
 
 # given parameter s="\mudela[some options]{CODE} some text and commands"
index 0b5875526ead28e88c103ce6eae161163aa6810e..c9eb62d4b5b6e20bb6d17b1c29d1573e95666243 100644 (file)
@@ -1,4 +1,3 @@
-#!/usr/bin/python
 #!@PYTHON@
 
 # mup-to-ly.py -- 
 #!@PYTHON@
 
 # mup-to-ly.py -- 
index 816a48d3bd1cf1ca7812d20294d265ec02c5c37d..3f3f98ee14b3c2a96c551b1c293f4b83a6f8835d 100644 (file)
@@ -1,3 +1,9 @@
+pl 77
+       - mfmode
+
+pl 76
+       - bfs: shells, scripts
+
 pl 75
        - bfs: release
 
 pl 75
        - bfs: release
 
index 551522be3dc3cd4dfee3f6fc5b135e82697e59f6..058329505029e5a18fa606d674266bd885d7253a 100644 (file)
@@ -1,7 +1,7 @@
 PACKAGE_NAME=StepMake
 MAJOR_VERSION=0
 MINOR_VERSION=1
 PACKAGE_NAME=StepMake
 MAJOR_VERSION=0
 MINOR_VERSION=1
-PATCH_LEVEL=75
+PATCH_LEVEL=77
 MY_PATCH_LEVEL=
 
 # use the above to send patches, always empty for released version:
 MY_PATCH_LEVEL=
 
 # use the above to send patches, always empty for released version:
index b55536ab7fe1d97f3fd786bbeebd84d423666e95..c92667b586c63f6d2765ca12bb64cda995bdf5ab 100644 (file)
@@ -277,14 +277,15 @@ dnl    fi
     AC_CHECK_PROGS(TAR, tar, error)
 
     if test "x`uname`" = "xHP-UX"; then
     AC_CHECK_PROGS(TAR, tar, error)
 
     if test "x`uname`" = "xHP-UX"; then
+       AC_PATH_PROG(BASH, bash, /bin/sh)
        AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
        AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
-       AC_CHECK_PROGS(SHELL, bash, /bin/ksh)
+       AC_PATH_PROG(SHELL, bash, /bin/ksh)
     else
     else
+       AC_PATH_PROG(BASH, bash, /bin/sh)
        SHELL=/bin/sh
        AC_SUBST(SHELL)
     fi
 
        SHELL=/bin/sh
        AC_SUBST(SHELL)
     fi
 
-    AC_CHECK_PROGS(BASH, bash, /bin/sh)
 
     AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
     AC_SUBST(PYTHON)
 
     AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
     AC_SUBST(PYTHON)
@@ -517,11 +518,11 @@ AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
     [TFMDIR=$enableval],
     [TFMDIR=auto] )
 
     [TFMDIR=$enableval],
     [TFMDIR=auto] )
 
-    AC_MSG_CHECKING(TeX TFM directory)
+    AC_CHECK_PROGS(KPSEWHICH, kpsewhich, no)
+    AC_MSG_CHECKING(for TeX TFM directory)
     if test "x$TFMDIR" = xauto ; then
        if test "x$TEX_TFMDIR" = "x" ; then
     if test "x$TFMDIR" = xauto ; then
        if test "x$TEX_TFMDIR" = "x" ; then
-           if kpsewhich --version > /dev/null 2>&1 ; then
-               TEX_TFMDIR=`kpsewhich tfm cmr10.tfm`
+           if test "x$KPSEWHICH" != "xno" ; then
                CMR10=`kpsewhich tfm cmr10.tfm`
                TEX_TFMDIR=`dirname $CMR10`
            else
                CMR10=`kpsewhich tfm cmr10.tfm`
                TEX_TFMDIR=`dirname $CMR10`
            else
index 736e0ee2d4e776284832cb65fc5253023e8ebdfd..efa10adb72d60efb63366650a9e0cdb2d501d829 100755 (executable)
@@ -608,8 +608,10 @@ fi
     fi
     stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
 
     fi
     stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
 
+    echo $ac_n "checking Package""... $ac_c" 1>&6
+echo "configure:613: checking Package" >&5
     if test "x$PACKAGE" = "xSTEPMAKE"; then
     if test "x$PACKAGE" = "xSTEPMAKE"; then
-        echo Stepmake package!
+       echo "$ac_t""Stepmake package!" 1>&6
        (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
        (cd stepmake; rm -f bin; ln -s ../bin .)
        ac_aux_dir=
        (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
        (cd stepmake; rm -f bin; ln -s ../bin .)
        ac_aux_dir=
@@ -633,13 +635,15 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
 
        stepmake=stepmake
     else
 
        stepmake=stepmake
     else
-        echo Package: $PACKAGE
+        echo "$ac_t""$PACKAGE" 1>&6
+       echo $ac_n "checking for stepmake""... $ac_c" 1>&6
+echo "configure:641: checking for stepmake" >&5
        # Check for installed stepmake
        if test -d $stepmake; then
        # Check for installed stepmake
        if test -d $stepmake; then
-           echo Using installed stepmake: $stepmake
+           echo "$ac_t""$stepmake" 1>&6
        else
            stepmake='$(depth)'/stepmake
        else
            stepmake='$(depth)'/stepmake
-           echo Using local stepmake: $datadir/stepmake not found
+           echo "$ac_t""./stepmake  ($datadir/stepmake not found)" 1>&6
        fi
        ac_aux_dir=
 for ac_dir in \
        fi
        ac_aux_dir=
 for ac_dir in \
@@ -756,7 +760,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:760: checking host system type" >&5
+echo "configure:764: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
 
 host_alias=$host
 case "$host_alias" in
@@ -781,7 +785,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:785: checking for $ac_word" >&5
+echo "configure:789: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -816,7 +820,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:820: checking for $ac_word" >&5
+echo "configure:824: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -853,7 +857,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:857: checking for $ac_word" >&5
+echo "configure:861: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -885,90 +889,128 @@ test -n "$TAR" || TAR="error"
 
 
     if test "x`uname`" = "xHP-UX"; then
 
 
     if test "x`uname`" = "xHP-UX"; then
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:896: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  case "$BASH" in
+  /*)
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a dos path.
+  ;;
+  *)
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do 
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_path_BASH="$ac_dir/$ac_word"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="/bin/sh"
+  ;;
+esac
+fi
+BASH="$ac_cv_path_BASH"
+if test -n "$BASH"; then
+  echo "$ac_t""$BASH" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
        
     echo "configure: warning: avoiding buggy /bin/sh" 1>&2
     warn_b=yes
 
        
     echo "configure: warning: avoiding buggy /bin/sh" 1>&2
     warn_b=yes
 
-       for ac_prog in bash
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:898: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_SHELL'+set}'`\" = set"; then
+echo "configure:936: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_SHELL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  if test -n "$SHELL"; then
-  ac_cv_prog_SHELL="$SHELL" # Let the user override the test.
-else
+  case "$SHELL" in
+  /*)
+  ac_cv_path_SHELL="$SHELL" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_SHELL="$SHELL" # Let the user override the test with a dos path.
+  ;;
+  *)
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
+  for ac_dir in $ac_dummy; do 
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_SHELL="$ac_prog"
+      ac_cv_path_SHELL="$ac_dir/$ac_word"
       break
     fi
   done
   IFS="$ac_save_ifs"
       break
     fi
   done
   IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_SHELL" && ac_cv_path_SHELL="/bin/ksh"
+  ;;
+esac
 fi
 fi
-fi
-SHELL="$ac_cv_prog_SHELL"
+SHELL="$ac_cv_path_SHELL"
 if test -n "$SHELL"; then
   echo "$ac_t""$SHELL" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
 if test -n "$SHELL"; then
   echo "$ac_t""$SHELL" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
-test -n "$SHELL" && break
-done
-test -n "$SHELL" || SHELL="/bin/ksh"
-
     else
     else
-       SHELL=/bin/sh
-       
-    fi
-
-    for ac_prog in bash
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
+       # Extract the first word of "bash", so it can be a program name with args.
+set dummy bash; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:938: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_BASH'+set}'`\" = set"; then
+echo "configure:973: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   echo $ac_n "(cached) $ac_c" 1>&6
 else
-  if test -n "$BASH"; then
-  ac_cv_prog_BASH="$BASH" # Let the user override the test.
-else
+  case "$BASH" in
+  /*)
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
+  ;;
+  ?:/*)                         
+  ac_cv_path_BASH="$BASH" # Let the user override the test with a dos path.
+  ;;
+  *)
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
+  for ac_dir in $ac_dummy; do 
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_BASH="$ac_prog"
+      ac_cv_path_BASH="$ac_dir/$ac_word"
       break
     fi
   done
   IFS="$ac_save_ifs"
       break
     fi
   done
   IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_BASH" && ac_cv_path_BASH="/bin/sh"
+  ;;
+esac
 fi
 fi
-fi
-BASH="$ac_cv_prog_BASH"
+BASH="$ac_cv_path_BASH"
 if test -n "$BASH"; then
   echo "$ac_t""$BASH" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
 if test -n "$BASH"; then
   echo "$ac_t""$BASH" 1>&6
 else
   echo "$ac_t""no" 1>&6
 fi
 
-test -n "$BASH" && break
-done
-test -n "$BASH" || BASH="/bin/sh"
+       SHELL=/bin/sh
+       
+    fi
 
 
     # Extract the first word of "${PYTHON:-python}", so it can be a program name with args.
 set dummy ${PYTHON:-python}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 
 
     # Extract the first word of "${PYTHON:-python}", so it can be a program name with args.
 set dummy ${PYTHON:-python}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:972: checking for $ac_word" >&5
+echo "configure:1014: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_PYTHON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_PYTHON'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1135,7 +1177,7 @@ fi
 
 
     echo $ac_n "checking language""... $ac_c" 1>&6
 
 
     echo $ac_n "checking language""... $ac_c" 1>&6
-echo "configure:1139: checking language" >&5    
+echo "configure:1181: checking language" >&5    
     case "$language" in
       En* | en* | Am* | am* | US* | us*)
            lang=English;;
     case "$language" in
       En* | en* | Am* | am* | US* | us*)
            lang=English;;
@@ -1168,7 +1210,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1172: checking for $ac_word" >&5
+echo "configure:1214: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_STRIPROFF'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_STRIPROFF'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1203,7 +1245,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1207: checking for $ac_word" >&5
+echo "configure:1249: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1238,7 +1280,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1242: checking for $ac_word" >&5
+echo "configure:1284: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2HTML'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2HTML'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1273,7 +1315,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1277: checking for $ac_word" >&5
+echo "configure:1319: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2LATEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2LATEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1307,7 +1349,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1311: checking for $ac_word" >&5
+echo "configure:1353: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1342,7 +1384,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1346: checking for $ac_word" >&5
+echo "configure:1388: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MSLESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2MSLESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1377,7 +1419,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1381: checking for $ac_word" >&5
+echo "configure:1423: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TEXINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TEXINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1412,7 +1454,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1416: checking for $ac_word" >&5
+echo "configure:1458: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_YODL2TXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1471,7 +1513,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1475: checking for $ac_word" >&5
+echo "configure:1517: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
index 72bfd29001a02ec97d1291fbcb0e269bb9cd117f..972cf5fbbd29408114deec437dde3e2a681de53c 100644 (file)
@@ -1,15 +1,15 @@
 Begin3
 Title: StepMake
 Begin3
 Title: StepMake
-Version: 0.1.74
-Entered-date: 17MAY99
+Version: 0.1.77
+Entered-date: 25MAY99
 Description: 
 Keywords: music notation typesetting midi fonts engraving
 Author: janneke@gnu.org (Jan Nieuwenhuizen)
        hanwen@cs.ruu.nl (Han-Wen Nienhuys)
 Maintained-by: janneke@gnu.org (Jan Nieuwenhuizen)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
 Description: 
 Keywords: music notation typesetting midi fonts engraving
 Author: janneke@gnu.org (Jan Nieuwenhuizen)
        hanwen@cs.ruu.nl (Han-Wen Nienhuys)
 Maintained-by: janneke@gnu.org (Jan Nieuwenhuizen)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
-       40k stepmake-0.1.74.tar.gz 
+       40k stepmake-0.1.77.tar.gz 
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
-       40k stepmake-0.1.74.tar.gz 
+       40k stepmake-0.1.77.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index 532b1c462e0dddf109ce668b18d4aa9c3b428c3e..6ae5300fb1727e020f237a359852fb7ff9734145 100644 (file)
@@ -1,9 +1,9 @@
 Name: stepmake
 Name: stepmake
-Version: 0.1.74
+Version: 0.1.77
 Release: 1
 Copyright: GPL
 Group: Development
 Release: 1
 Copyright: GPL
 Group: Development
-Source0: pcnov095.win.tue.nl:/pub/lilypond/development/stepmake-0.1.74.tar.gz
+Source0: pcnov095.win.tue.nl:/pub/lilypond/development/stepmake-0.1.77.tar.gz
 Summary: generic make package
 Packager: janneke@gnu.org (Jan Nieuwenhuizen)
 Buildroot: /tmp/stepmake-install
 Summary: generic make package
 Packager: janneke@gnu.org (Jan Nieuwenhuizen)
 Buildroot: /tmp/stepmake-install
index 813ffde61b16f4dc1407bae695cf5be6dee9fc57..c431f2cd29b14c3d248d7798831e7dbc7db8febb 100644 (file)
@@ -3,7 +3,18 @@ $(outdir)/%: %.pl
        cat $< | sed $(sed-atvariables) > $@
        chmod 755 $@
 
        cat $< | sed $(sed-atvariables) > $@
        chmod 755 $@
 
-#FIXME.  Check for bash?
+$(outdir)/%: %.bash
+       cat $< | sed $(sed-atvariables) > $@
+       chmod 755 $@
+
+$(outdir)/%: %.scm
+       cat $< | sed $(sed-atvariables) > $@
+       chmod 755 $@
+
+$(outdir)/%: %.expect
+       cat $< | sed $(sed-atvariables) > $@
+       chmod 755 $@
+
 $(outdir)/%: %.sh
        cat $< | sed $(sed-atvariables) > $@
        chmod 755 $@
 $(outdir)/%: %.sh
        cat $< | sed $(sed-atvariables) > $@
        chmod 755 $@
index 1ba75cdf042056400413646f13eb939581a89250..01596368124f9d7c21c759ef2008e29e7a3163e7 100644 (file)
@@ -1,2 +1,2 @@
 
 
-all: $(PERL_SCRIPTS) $(PYTHON_SCRIPTS) $(SH_SCRIPTS)
+all: $(BASH_SCRIPTS) $(EXPECT_SCRIPTS) $(PERL_SCRIPTS) $(PYTHON_SCRIPTS) $(SCM_SCRIPTS) $(SH_SCRIPTS)
index ef705ba066ad4b2cfb6d6f00b89893d6b96b1d31..4f0c29d8d427c40e824e6afd5895134d9addd51f 100644 (file)
@@ -2,9 +2,15 @@
 
 PERL_SCRIPTS_IN := $(wildcard *.pl)
 PERL_SCRIPTS = $(addprefix $(outdir)/, $(PERL_SCRIPTS_IN:.pl=))
 
 PERL_SCRIPTS_IN := $(wildcard *.pl)
 PERL_SCRIPTS = $(addprefix $(outdir)/, $(PERL_SCRIPTS_IN:.pl=))
+BASH_SCRIPTS_IN := $(wildcard *.bash)
+BASH_SCRIPTS = $(addprefix $(outdir)/, $(BASH_SCRIPTS_IN:.bash=))
+EXPECT_SCRIPTS_IN := $(wildcard *.expect)
+EXPECT_SCRIPTS = $(addprefix $(outdir)/, $(EXPECT_SCRIPTS_IN:.expect=))
+SCM_SCRIPTS_IN := $(wildcard *.scm)
+SCM_SCRIPTS = $(addprefix $(outdir)/, $(SCM_SCRIPTS_IN:.scm=))
 SH_SCRIPTS_IN := $(wildcard *.sh)
 SH_SCRIPTS = $(addprefix $(outdir)/, $(SH_SCRIPTS_IN:.sh=))
 PYTHON_SCRIPTS_IN := $(wildcard *.py)
 PYTHON_SCRIPTS = $(addprefix $(outdir)/, $(PYTHON_SCRIPTS_IN:.py=))
 SH_SCRIPTS_IN := $(wildcard *.sh)
 SH_SCRIPTS = $(addprefix $(outdir)/, $(SH_SCRIPTS_IN:.sh=))
 PYTHON_SCRIPTS_IN := $(wildcard *.py)
 PYTHON_SCRIPTS = $(addprefix $(outdir)/, $(PYTHON_SCRIPTS_IN:.py=))
-ALL_SCRIPTS_IN = $(SH_SCRIPTS_IN) $(PERL_SCRIPTS_IN) $(PYTHON_SCRIPTS_IN)
+ALL_SCRIPTS_IN = $(BASH_SCRIPTS_IN) $(EXPECT_SCRIPTS_IN) $(PERL_SCRIPTS_IN) $(PYTHON_SCRIPTS_IN) $(SCM_SCRIPTS_IN) $(SH_SCRIPTS_IN)
 EXTRA_DIST_FILES += $(ALL_SCRIPTS_IN)
 EXTRA_DIST_FILES += $(ALL_SCRIPTS_IN)
index ac21d26e7614ad83ea91871022daf2e5a587448f..6a627fe2d5772a7048d98c2cf448e34f5936948c 100644 (file)
@@ -24,9 +24,11 @@ index.html: check-top-web NEWS
        $(sed-version) < Documentation/topdocs/$(outdir)/topweb.html > $@
        $(PYTHON) $(step-bindir)/add-html-footer.py --package=$(topdir) --index=Documentation/top-docs/out-www/index.html $@
 
        $(sed-version) < Documentation/topdocs/$(outdir)/topweb.html > $@
        $(PYTHON) $(step-bindir)/add-html-footer.py --package=$(topdir) --index=Documentation/top-docs/out-www/index.html $@
 
-WWW-clean:
+WWW-clean: local-WWW-clean
        $(MAKE) CONFIGSUFFIX='www' clean
 
        $(MAKE) CONFIGSUFFIX='www' clean
 
+local-WWW-clean:
+
 dist:
        rm -rf $(distdir)
        $(MAKE) local-dist $(distdir)
 dist:
        rm -rf $(distdir)
        $(MAKE) local-dist $(distdir)
index 6ef9ca21b8a03735cc39446ab0b1ab570d115501..794397fcf41b68deed5ece5cd2e95ff0962afd19 100644 (file)
@@ -44,7 +44,8 @@
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% set up dimensions
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% set up dimensions
-\parindent=0pt
+% mudela-book don't like this:
+%\parindent=0pt
 \newdimen\smallspace
 \newdimen\interlinedist
 
 \newdimen\smallspace
 \newdimen\interlinedist