]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 0.1.52 release/0.1.52
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 17 Mar 1998 08:53:34 +0000 (09:53 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 17 Mar 1998 08:53:34 +0000 (09:53 +0100)
163 files changed:
.dstreamrc
Documentation/AUTHORS.pod
Documentation/Makefile.am
Documentation/Makefile.am.wild
Documentation/Makefile.in
Documentation/lilypond.pod
Documentation/other-packages.pod
Makefile.am
Makefile.am.wild
Makefile.in
NEWS
VERSION
bin/Makefile.am
bin/Makefile.am.wild
bin/Makefile.in
bin/autowild [new file with mode: 0755]
bin/genheader.in
bin/wild-perl
configure
configure.in
debian/Makefile.am
debian/Makefile.in
flower/Makefile.am
flower/Makefile.am.wild
flower/Makefile.in
flower/NEWS
flower/VERSION
flower/configure
flower/configure.in
flower/include/Makefile.am
flower/include/Makefile.am.wild
flower/include/Makefile.in
flower/include/interval.hh
flower/test/Makefile.am
flower/test/Makefile.am.wild
flower/test/Makefile.in
init/Makefile.am
init/Makefile.am.wild
init/Makefile.in
init/engraver.ly
init/feta11.ly [new file with mode: 0644]
init/feta13.ly [new file with mode: 0644]
init/feta16.ly [new file with mode: 0644]
init/feta19.ly [new file with mode: 0644]
init/feta20.ly [new file with mode: 0644]
init/feta23.ly [new file with mode: 0644]
init/feta26.ly [new file with mode: 0644]
init/lily-init.ly
init/simple-init.ly
input/Makefile.am
input/Makefile.in
input/test-lyrics.ly [new file with mode: 0644]
lib/Makefile.am
lib/Makefile.am.wild
lib/Makefile.in
lib/include/Makefile.am
lib/include/Makefile.in
lily/Makefile.am
lily/Makefile.am.wild
lily/Makefile.in
lily/VERSION
lily/axis-group-element.cc
lily/axis-group-item.cc
lily/axis-group-spanner.cc
lily/beam.cc
lily/break.cc
lily/col-info.cc
lily/crescendo.cc
lily/dynamic-grav.cc
lily/elem-group.cc [deleted file]
lily/general-script-def.cc
lily/horizontal-group-elem.cc [new file with mode: 0644]
lily/horizontal-vertical-group-elem.cc [new file with mode: 0644]
lily/include/Makefile.am
lily/include/Makefile.in
lily/include/col-info.hh
lily/include/direction.hh
lily/include/drul-array.hh
lily/include/elem-group.hh
lily/include/general-script-def.hh
lily/include/horizontal-align-item.hh
lily/include/horizontal-group-elem.hh [new file with mode: 0644]
lily/include/horizontal-group-item.hh
lily/include/horizontal-vertical-group-elem.hh [new file with mode: 0644]
lily/include/horizontal-vertical-group-item.hh
lily/include/item.hh
lily/include/lily-proto.hh
lily/include/line-group-grav.hh
lily/include/musical-request.hh
lily/include/p-col.hh
lily/include/rod.hh [new file with mode: 0644]
lily/include/score-elem.hh
lily/include/separating-group-spanner.hh [new file with mode: 0644]
lily/include/separating-line-group-grav.hh [new file with mode: 0644]
lily/include/single-malt-grouping-item.hh [new file with mode: 0644]
lily/include/spanner.hh
lily/include/spring-spacer.hh
lily/include/super-elem.hh
lily/include/text-def.hh
lily/include/vertical-align-elem.hh
lily/include/vertical-group-elem.hh [new file with mode: 0644]
lily/include/vertical-group-spanner.hh
lily/item.cc
lily/leastsquares.cc
lily/line-group-grav.cc
lily/line-spacer.cc
lily/musical-request.cc
lily/p-col.cc
lily/p-score.cc
lily/parser.cc
lily/parser.yy
lily/plet-spanner.cc
lily/rod.cc [new file with mode: 0644]
lily/score-column.cc
lily/score-elem.cc
lily/score-grav.cc
lily/script.cc
lily/separating-group-spanner.cc [new file with mode: 0644]
lily/separating-line-group-grav.cc [new file with mode: 0644]
lily/single-malt-grouping-item.cc [new file with mode: 0644]
lily/slur.cc
lily/spanner.cc
lily/spring-spacer.cc
lily/stem-grav.cc
lily/super-elem.cc
lily/template4.cc
lily/tex-slur.cc
lily/text-item.cc
lily/tie.cc
lily/vertical-align-grav.cc
lily/vertical-group-elem.cc [new file with mode: 0644]
lily/vertical-group-spanner.cc
lily/word-wrap.cc
make/Makefile.am
make/Makefile.in
make/lelievijver.lsm
make/lilypond.lsm
make/lilypond.spec
mf/Makefile.am
mf/Makefile.am.wild
mf/Makefile.in
mi2mu/Makefile.am
mi2mu/Makefile.am.wild
mi2mu/Makefile.in
mi2mu/include/Makefile.am
mi2mu/include/Makefile.in
mi2mu/mudela-score.cc
mi2mu/template.cc [deleted file]
mutopia/J.S.Bach/Makefile.am
mutopia/J.S.Bach/Makefile.in
mutopia/J.S.Bach/wtk1-fugue2.ly
mutopia/Makefile.am
mutopia/Makefile.in
tex/Makefile.am
tex/Makefile.am.wild
tex/Makefile.in
tex/feta11.tex [new file with mode: 0644]
tex/feta13.tex [new file with mode: 0644]
tex/feta16.tex [new file with mode: 0644]
tex/feta19.tex [new file with mode: 0644]
tex/feta20.tex [new file with mode: 0644]
tex/feta23.tex [new file with mode: 0644]
tex/feta26.tex [new file with mode: 0644]

index d59bde6e3edc4b1f826303086318030602d66052..e38a4021003d220fc43f84304a73d171a45f4fe4 100644 (file)
@@ -13,7 +13,7 @@ InitLexer             1
 Lexer                  1
 
 
-walking                0
+walking                11
 
 # flower lib
 File_path              1
@@ -37,7 +37,7 @@ Engraver_group_engraver 0
 Group_change_req       0
 Head_column            0
 Idealspacing           0
-Ineq_constrained_qp    1
+Ineq_constrained_qp    0
 Input_translator       0
 Item                   0
 Key_item               0
index 88ddb2410a9157f810033e9b1cf1a126ec8d81f5..3e377f910ea4a1acc20941660bff7b89422c871b 100644 (file)
@@ -10,7 +10,7 @@ This file lists authors of GNU LilyPond, and what they wrote.
 
 =over 4
 
-=item * Han-Wen Nienhuys <hanwen@cs.ruu.nl>, http://www.stack.nl/~hanwen
+=item * Han-Wen Nienhuys <hanwen@cs.ruu.nl>, http://www.cs.ruu.nl/people/hanwen
 
 Main author.
 
index b19f90a2ea03d95c5006192c2227c617a314c421..66c0e424335992a63a2fcbed263ee911a744a04e 100644 (file)
@@ -35,9 +35,9 @@ uninstall-hook:
 
 html: $(HTMLFILES)
 
-clean-hook:
-       rm $(TEXTFILES) $(MAN1GROFF)
+clean-local:
+       -rm $(TEXTFILES) $(MAN1GROFF)
 
 include $(top_srcdir)/Documentation/Rules.make
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index aa2476c53ba3671852940a329ca16a2dcb9882b2..329e22535fbb854f2e736c4e5fa8bfd24089aa84 100644 (file)
@@ -32,7 +32,7 @@ uninstall-hook:
 
 html: $(HTMLFILES)
 
-clean-hook:
-       rm $(TEXTFILES) $(MAN1GROFF)
+clean-local:
+       -rm $(TEXTFILES) $(MAN1GROFF)
 
 include $(top_srcdir)/Documentation/Rules.make
index 7e3d369fd46bd200727b18bb9b10fb7278a13bbb..c2e9724f86105ecb0359ded0e6561947da313571 100644 (file)
@@ -190,7 +190,7 @@ maintainer-clean-generic:
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 mostlyclean:  mostlyclean-generic
 
-clean:  clean-generic mostlyclean
+clean:  clean-generic mostlyclean clean-local
 
 distclean:  distclean-generic clean
        -rm -f config.status
@@ -220,12 +220,12 @@ uninstall-hook:
 
 html: $(HTMLFILES)
 
-clean-hook:
-       rm $(TEXTFILES) $(MAN1GROFF)
+clean-local:
+       -rm $(TEXTFILES) $(MAN1GROFF)
 
 include $(top_srcdir)/Documentation/Rules.make
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 0e685b58f0885beef6f9c3f6f16c2565cf5c66c8..8742d2ec6bcaa8cfc0aa6fc84d25127cd57306cf 100644 (file)
@@ -136,7 +136,7 @@ information, and small contributions.
 
 =item *
 
-Han-Wen Nienhuys <hanwen@cs.ruu.nl>, http://www.stack.nl/~hanwen
+Han-Wen Nienhuys <hanwen@cs.ruu.nl>, http://www.cs.ruu.nl/people/hanwen
 
 =item *
 
@@ -243,7 +243,7 @@ Goals of the GNU LilyPond project.
 
 The GNU LilyPond FAQ list
 
-=item http://www.stack.nl/~hanwen/lilypond/index.html
+=item http://www.cs.ruu.nl/people/hanwen/lilypond/index.html
 
 GNU LilyPond has her own webpage.  This webpage contains the MIDI, GIF
 and PS files for some standard music files.  It also has the complete
index 56cd0f9c831cb5059e601a25b1479f535d89ed68..b8b754be83717fa443b69c068f36941acd527664 100644 (file)
@@ -25,12 +25,13 @@ Lisp. It needs the Adobe Sonata or Finale Petrucci font.
 
 A amateurish notation program for TclTk and X.
 
-=item MPP, http://www.stack.nl/~hanwen/mpp-english.html
+=item MPP
 
 A preprocessor to MusixTeX by Jan Nieuwenhuizen and Han-Wen Nienhuys.
-It is outdated by its successor, LilyPond.
+It is outdated by its successor, LilyPond.  MPP is still available via
+the CTAN archive.
 
-=item LilyPond, http://www.stack.nl/~hanwen/lilypond/index.html
+=item LilyPond, http://www.cs.ruu.nl/people/hanwen/lilypond/index.html
 
 Added for completeness. You are currently reading her documentation.
 
index ddcfd50c6ce56533df493870bb0207d241a3a741..c25099c607aae7db2eac7fc29efe6a7bd73964b0 100644 (file)
@@ -26,5 +26,10 @@ PATCHES:
        rm -f PATCHES
        ln `$(FIND) ./ -name PATCHES.txt -print | head -1` $@
 
+
+# a hack due to a bug in automake: the macro AM_CONFIG_HEADER does not
+# respect the directory
+distclean-local:
+       rm -f lib/config.hh
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 885dcb8c12f1762cf2a62d427d5be46140893f91..5d6cdeb6354c2bcb3c8d228a3c11357889259602 100644 (file)
@@ -23,3 +23,8 @@ PATCHES:
        rm -f PATCHES
        ln `$(FIND) ./ -name PATCHES.txt -print | head -1` $@
 
+
+# a hack due to a bug in automake: the macro AM_CONFIG_HEADER does not
+# respect the directory
+distclean-local:
+       rm -f lib/config.hh
index 4e1bdbe4906467c04b07233d3b8a71dd9611fd63..3a43b1d71950a0856ba8f2b64ac4aef5f6b34894 100644 (file)
@@ -325,7 +325,7 @@ mostlyclean:  mostlyclean-recursive mostlyclean-am
 
 clean:  clean-recursive clean-am
 
-distclean:  distclean-recursive distclean-am
+distclean:  distclean-recursive distclean-am distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -359,8 +359,12 @@ PATCHES:
        rm -f PATCHES
        ln `$(FIND) ./ -name PATCHES.txt -print | head -1` $@
 
+# a hack due to a bug in automake: the macro AM_CONFIG_HEADER does not
+# respect the directory
+distclean-local:
+       rm -f lib/config.hh
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/NEWS b/NEWS
index e528ecb8eeece459247cde05f5b41dc513516629..3d0c20d712484e750bac5aa5636e241ecc7c8034 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,13 @@
-**********
+pl 52
+       - split up elem-group stuff.
+       - per line widths
+       - miscellaneous fixes by WL.
+
+pl 51.jcn1
+       - bf's: dutch->nederlands
+       - Cygnus b19 compile/link fixes
+
+************
 march 27
 pl 51
        - changed dutch -> nederlands, german -> deutsch etc.
@@ -16,15 +25,13 @@ pl 50.jcn4
        - bf: DIR_DATADIR
        - bf: trills
 
-
-               
 ************
 pl 50
        - deprecate autowild
        - --srcdir fixes
        - ly2dvi 0.8
 
-pl 49jcn2
+pl 49.jcn2
        - static (default) and/or shared libs flower and lily
        - patch from AO 'libtool 1.1.1'
        - mf: trill-symbols: feta-slag.mf
diff --git a/VERSION b/VERSION
index 909a5a0daff23f3d6205858085f636ba5abc67a4..03a63583e4bb52f6bca7bbf61dca77c44700a131 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,6 +1,6 @@
 MAJOR_VERSION=0
 MINOR_VERSION=1
-PATCH_LEVEL=51
+PATCH_LEVEL=52
 MY_PATCH_LEVEL=
 
 # now used as shell script in configure too
index c7904427ee2f907a6d2c49ef8d62cfa2511a2949..fd301eba422e82e4e47b31f6404959e6444e4a56 100644 (file)
@@ -8,7 +8,9 @@
 SLANG_SCHRIFTEN = flower.py lilypython.py
 PAREL_SCHRIFTEN = 
 IN_SCHRIFTEN = flower.py lilypython.py
-EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl
+EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl autowild
 
+clean-local:
+       -rm -f flower.pyc
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index fb04a37aeb56763568ac1d32cb71e8d7aae1fa0c..aa13c4e5151483ff8cfefcf1b0b227e1a35e3e48 100755 (executable)
@@ -5,5 +5,7 @@
 SLANG_SCHRIFTEN = $(wildcard *.py)
 PAREL_SCHRIFTEN = $(wildcard *.pl)
 IN_SCHRIFTEN = $(wildcard *.py)
-EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl
+EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl autowild
 
+clean-local:
+       -rm -f flower.pyc
index 2a45668f8652e3b8d8909af5f50c81f6bf2d91ae..f508a310f65973204260f842187268d4e3e38321 100644 (file)
@@ -104,7 +104,7 @@ absolute_builddir = @absolute_builddir@
 SLANG_SCHRIFTEN = flower.py lilypython.py
 PAREL_SCHRIFTEN = 
 IN_SCHRIFTEN = flower.py lilypython.py
-EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl
+EXTRA_DIST = Makefile.am.wild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) $(SLANG_SCHRIFTEN) wild-perl autowild
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = ../lib/config.hh
 CONFIG_CLEAN_FILES =  add-URLs clean-diaper clean-embeds clean-fonts \
@@ -230,7 +230,7 @@ maintainer-clean-generic:
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 mostlyclean:  mostlyclean-generic
 
-clean:  clean-generic mostlyclean
+clean:  clean-generic mostlyclean clean-local
 
 distclean:  distclean-generic clean
        -rm -f config.status
@@ -246,8 +246,10 @@ distclean-generic clean-generic maintainer-clean-generic clean \
 mostlyclean distclean maintainer-clean
 
 
+clean-local:
+       -rm -f flower.pyc
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/bin/autowild b/bin/autowild
new file mode 100755 (executable)
index 0000000..e2e5638
--- /dev/null
@@ -0,0 +1,38 @@
+#!/bin/sh
+# autowild
+# for those of you that have no wild-automake
+
+# ugh
+verbose=true
+if test x$1 = x-v; then
+       verbose=echo
+fi
+
+#ugh
+# PERL=@PERL@
+PERL=/usr/bin/perl
+PROGNAME=autowild #don't includee path; this messes up stuff
+WILD_MAKEFILES=$(find . -name \*.wild)
+for i in $WILD_MAKEFILES; do
+       dir=$(dirname $i)
+       wild=$(basename $i)
+       make=$(basename $i .wild)
+       TOPDIR=`pwd`
+       (cd $dir
+
+       $verbose -n "trying $dir/$make.. "
+       cat $wild | $PERL $TOPDIR/bin/wild-perl >> $make.NEW
+       if [ ! -f $make ]; then
+           touch $make
+       fi
+
+       if cmp -s $make.NEW $make; then
+           $verbose "autowild: $dir/$make didn't change"
+           rm $make.NEW
+       else
+               mv $make.NEW $make
+               $verbose "autowild: creating $dir/$make"
+       fi
+       )
+done
+       
index 57f0e9fb8f93176193f3433af8c4ef2fc17b552c..9f16663bf7e49ed6c8c31e192894f3a47350346c 100755 (executable)
@@ -18,6 +18,7 @@ import string
 import sys
 import os
 import getopt
+import time
 
 class My_options:
     def __init__(self):
@@ -59,8 +60,8 @@ def head_str(filename):
        what=" implement "
 
 
-    headstr = '\n%s -- %s\n\nsource file of %s\n\n(c) 1997 %s <%s>\n' \
-             %(filename, what, project_str(), name(), mail())
+    headstr = '\n%s -- %s\n\nsource file of %s\n\n(c) %d %s <%s>\n' \
+             %(filename, what, project_str(), time.localtime (time.time ())[0], name(), mail())
     return headstr
 
 
index a26ceefcae6f5b42185eb1307a9f2ed58cf978a5..a61caf335bfeddb78644f26010c29acc01925fae 100755 (executable)
@@ -1,6 +1,11 @@
 # -*- perl -*-
 ##! @PERL@
 
+use Getopt::Long;
+GetOptions("top-srcdir:s");
+
+$my_topdir = $opt_top_srcdir ? $opt_top_srcdir : "\$(top_srcdir)";
+
 @ignorestuff = ();
 
 sub ignore_query
@@ -11,6 +16,7 @@ sub ignore_query
 
 print "# Generated automatically by wild-perl 0.1\n";
 
+
 while (<>) {
        $line = $_;
        if ($line =~ /^ *nowildcard: *(.*)$/) {
@@ -37,5 +43,5 @@ while (<>) {
 
 
 print "\$(srcdir)/Makefile.am: \$(srcdir)/Makefile.am.wild\n" .
-    "\t\$(PERL) \$(top_srcdir)/bin/wild-perl < \$< > \$@";
+    "\t\$(PERL) $my_topdir/bin/wild-perl --top-srcdir=\"\$(real_topdir)\" < \$< > \$@";
 
index 0a936113aeb148e42d2ac5ee6d7875618595c3be..059b3a65ad052416487d5726ed7d3f87d37a0860 100755 (executable)
--- a/configure
+++ b/configure
@@ -804,10 +804,116 @@ fi
 
 
 
+#AC_PROG_CC
+#AC_PROG_CXX
+
+# turn off shared libraries by default (may be enabled using --enable-shared)
+# Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+case "$enableval" in
+yes) enable_shared=yes ;;
+no) enable_shared=no ;;
+*)
+  enable_shared=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_shared=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac
+else
+  enable_shared=no
+fi
+
+# Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+case "$enableval" in
+yes) enable_static=yes ;;
+no) enable_static=no ;;
+*)
+  enable_static=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_static=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac
+else
+  enable_static=yes
+fi
+
+
+# Make sure we can run config.sub.
+if $ac_config_sub sun4 >/dev/null 2>&1; then :
+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
+echo "configure:865: checking host system type" >&5
+
+host_alias=$host
+case "$host_alias" in
+NONE)
+  case $nonopt in
+  NONE)
+    if host_alias=`$ac_config_guess`; then :
+    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
+    fi ;;
+  *) host_alias=$nonopt ;;
+  esac ;;
+esac
+
+host=`$ac_config_sub $host_alias`
+host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+echo "$ac_t""$host" 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:888: 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 test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_RANLIB="ranlib"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
+fi
+fi
+RANLIB="$ac_cv_prog_RANLIB"
+if test -n "$RANLIB"; then
+  echo "$ac_t""$RANLIB" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
 # 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:811: checking for $ac_word" >&5
+echo "configure:917: 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
@@ -836,7 +942,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
-echo "configure:840: checking for $ac_word" >&5
+echo "configure:946: 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
@@ -884,7 +990,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:888: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:994: 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.
@@ -894,11 +1000,11 @@ ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS
 cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 898 "configure"
+#line 1004 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:902: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1008: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; 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
@@ -918,12 +1024,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:922: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1028: 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 "configure:927: checking whether we are using GNU C" >&5
+echo "configure:1033: 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
@@ -932,7 +1038,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:936: \"$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:1042: \"$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
@@ -947,7 +1053,7 @@ if test $ac_cv_prog_gcc = yes; then
   ac_save_CFLAGS="$CFLAGS"
   CFLAGS=
   echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:951: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1057: 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
@@ -974,242 +1080,6 @@ else
   test "${CFLAGS+set}" = set || CFLAGS="-g"
 fi
 
-for ac_prog in $CCC c++ g++ gcc CC cxx cc++
-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:983: 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 test -n "$CXX"; then
-  ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CXX="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CXX="$ac_cv_prog_CXX"
-if test -n "$CXX"; then
-  echo "$ac_t""$CXX" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CXX" && break
-done
-test -n "$CXX" || CXX="gcc"
-
-
-echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1014: 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_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cxx_cross
-
-cat > conftest.$ac_ext <<EOF
-#line 1024 "configure"
-#include "confdefs.h"
-main(){return(0);}
-EOF
-if { (eval echo configure:1028: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; 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_cross=no
-  else
-    ac_cv_prog_cxx_cross=yes
-  fi
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  ac_cv_prog_cxx_works=no
-fi
-rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6
-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:1054: 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 "configure:1059: 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
-  cat > conftest.C <<EOF
-#ifdef __GNUC__
-  yes;
-#endif
-EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1068: \"$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
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gxx" 1>&6
-
-if test $ac_cv_prog_gxx = yes; then
-  GXX=yes
-  ac_test_CXXFLAGS="${CXXFLAGS+set}"
-  ac_save_CXXFLAGS="$CXXFLAGS"
-  CXXFLAGS=
-  echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:1083: 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
-  echo 'void f(){}' > conftest.cc
-if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then
-  ac_cv_prog_cxx_g=yes
-else
-  ac_cv_prog_cxx_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6
-  if test "$ac_test_CXXFLAGS" = set; then
-    CXXFLAGS="$ac_save_CXXFLAGS"
-  elif test $ac_cv_prog_cxx_g = yes; then
-    CXXFLAGS="-g -O2"
-  else
-    CXXFLAGS="-O2"
-  fi
-else
-  GXX=
-  test "${CXXFLAGS+set}" = set || CXXFLAGS="-g"
-fi
-
-
-# turn off shared libraries by default (may be enabled using --enable-shared)
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_shared=yes ;;
-no) enable_shared=no ;;
-*)
-  enable_shared=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_shared=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac
-else
-  enable_shared=no
-fi
-
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_static=yes ;;
-no) enable_static=no ;;
-*)
-  enable_static=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_static=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac
-else
-  enable_static=yes
-fi
-
-
-# Make sure we can run config.sub.
-if $ac_config_sub sun4 >/dev/null 2>&1; then :
-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
-echo "configure:1165: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
-  case $nonopt in
-  NONE)
-    if host_alias=`$ac_config_guess`; then :
-    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
-    fi ;;
-  *) host_alias=$nonopt ;;
-  esac ;;
-esac
-
-host=`$ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 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:1188: 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 test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_RANLIB="ranlib"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
-  echo "$ac_t""$RANLIB" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
 # Check whether --with-gnu-ld or --without-gnu-ld was given.
 if test "${with_gnu_ld+set}" = set; then
   withval="$with_gnu_ld"
@@ -1223,7 +1093,7 @@ ac_prog=ld
 if test "$ac_cv_prog_gcc" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
   echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1227: checking for ld used by GCC" >&5
+echo "configure:1097: checking for ld used by GCC" >&5
   ac_prog=`($CC -print-prog-name=ld) 2>&5`
   case "$ac_prog" in
   # Accept absolute paths.
@@ -1241,10 +1111,10 @@ echo "configure:1227: checking for ld used by GCC" >&5
   esac
 elif test "$with_gnu_ld" = yes; then
   echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1245: checking for GNU ld" >&5
+echo "configure:1115: checking for GNU ld" >&5
 else
   echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1248: checking for non-GNU ld" >&5
+echo "configure:1118: checking for non-GNU ld" >&5
 fi
 if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1280,7 +1150,7 @@ fi
 test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
 
 echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1284: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1154: checking if the linker ($LD) is GNU ld" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1296,7 +1166,7 @@ echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6
 
 
 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1300: checking for BSD-compatible nm" >&5
+echo "configure:1170: checking for BSD-compatible nm" >&5
 if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1333,7 +1203,7 @@ echo "$ac_t""$NM" 1>&6
 
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1337: checking whether ln -s works" >&5
+echo "configure:1207: checking whether ln -s works" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1369,8 +1239,8 @@ test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
 case "$host" in
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 1373 "configure"' > conftest.$ac_ext
-  if { (eval echo configure:1374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  echo '#line 1243 "configure"' > conftest.$ac_ext
+  if { (eval echo configure:1244: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
     case "`/usr/bin/file conftest.o`" in
     *32-bit*)
       LD="${LD-ld} -32"
@@ -1406,7 +1276,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
-echo "configure:1410: checking for $ac_word" >&5
+echo "configure:1280: 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
@@ -1440,7 +1310,7 @@ test -n "$YACC" || YACC="yacc"
 # Extract the first word of "flex", so it can be a program name with args.
 set dummy flex; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1444: checking for $ac_word" >&5
+echo "configure:1314: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1473,7 +1343,7 @@ then
   *) ac_lib=l ;;
   esac
   echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6
-echo "configure:1477: checking for yywrap in -l$ac_lib" >&5
+echo "configure:1347: checking for yywrap in -l$ac_lib" >&5
 ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1481,7 +1351,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$ac_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1485 "configure"
+#line 1355 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1492,7 +1362,7 @@ int main() {
 yywrap()
 ; return 0; }
 EOF
-if { (eval echo configure:1496: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1366: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1516,7 +1386,7 @@ fi
 
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1520: checking how to run the C preprocessor" >&5
+echo "configure:1390: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -1531,13 +1401,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 1535 "configure"
+#line 1405 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1541: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1411: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -1548,13 +1418,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 1552 "configure"
+#line 1422 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1558: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1428: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -1577,7 +1447,7 @@ fi
 echo "$ac_t""$CPP" 1>&6
 
 echo $ac_n "checking lex output file root""... $ac_c" 1>&6
-echo "configure:1581: checking lex output file root" >&5
+echo "configure:1451: checking lex output file root" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_lex_root'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1598,7 +1468,7 @@ echo "$ac_t""$ac_cv_prog_lex_root" 1>&6
 LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
 
 echo $ac_n "checking whether yytext is a pointer""... $ac_c" 1>&6
-echo "configure:1602: checking whether yytext is a pointer" >&5
+echo "configure:1472: checking whether yytext is a pointer" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_lex_yytext_pointer'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1610,14 +1480,14 @@ echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
 ac_save_LIBS="$LIBS"
 LIBS="$LIBS $LEXLIB"
 cat > conftest.$ac_ext <<EOF
-#line 1614 "configure"
+#line 1484 "configure"
 #include "confdefs.h"
 `cat $LEX_OUTPUT_ROOT.c`
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:1621: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1491: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_prog_lex_yytext_pointer=yes
 else
@@ -1782,7 +1652,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
-echo "configure:1786: checking for $ac_word" >&5
+echo "configure:1656: 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
@@ -1813,7 +1683,7 @@ test -n "$CXX" || CXX="gcc"
 
 
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1817: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
+echo "configure:1687: 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.
@@ -1823,11 +1693,11 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L
 cross_compiling=$ac_cv_prog_cxx_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 1827 "configure"
+#line 1697 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:1831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; 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
@@ -1847,12 +1717,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:1851: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1721: 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 "configure:1856: checking whether we are using GNU C++" >&5
+echo "configure:1726: 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
@@ -1861,7 +1731,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1865: \"$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:1735: \"$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
@@ -1876,7 +1746,7 @@ if test $ac_cv_prog_gxx = yes; then
   ac_save_CXXFLAGS="$CXXFLAGS"
   CXXFLAGS=
   echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:1880: checking whether ${CXX-g++} accepts -g" >&5
+echo "configure:1750: 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
@@ -1915,7 +1785,7 @@ fi
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1919: checking for a BSD compatible install" >&5
+echo "configure:1789: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1969,7 +1839,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
-echo "configure:1973: checking for $ac_word" >&5
+echo "configure:1843: 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
@@ -2003,7 +1873,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
-echo "configure:2007: checking for $ac_word" >&5
+echo "configure:1877: 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
@@ -2090,7 +1960,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
-echo "configure:2094: checking for $ac_word" >&5
+echo "configure:1964: 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
@@ -2124,7 +1994,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
-echo "configure:2128: checking for $ac_word" >&5
+echo "configure:1998: 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
@@ -2158,7 +2028,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
-echo "configure:2162: checking for $ac_word" >&5
+echo "configure:2032: 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
@@ -2190,7 +2060,7 @@ test -n "$MAKE" || MAKE="error"
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2194: checking for $ac_word" >&5
+echo "configure:2064: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2222,7 +2092,7 @@ fi
 # Extract the first word of "python", so it can be a program name with args.
 set dummy python; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2226: checking for $ac_word" >&5
+echo "configure:2096: 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
@@ -2256,7 +2126,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
-echo "configure:2260: checking for $ac_word" >&5
+echo "configure:2130: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_POD2HTML'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2290,7 +2160,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
-echo "configure:2294: checking for $ac_word" >&5
+echo "configure:2164: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_POD2MAN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2326,7 +2196,7 @@ if test "x$TEXPREFIX" = xauto ; then
     
 
     echo $ac_n "checking TeX/MF root dir directory""... $ac_c" 1>&6
-echo "configure:2330: checking TeX/MF root dir directory" >&5    
+echo "configure:2200: checking TeX/MF root dir directory" >&5    
 
     find_root_prefix="$prefix"
     
@@ -2362,16 +2232,37 @@ else
  find_texprefix=$TEXPREFIX
 fi
 
-# if test "x$MFDIR" = xauto; then
-#     AC_MF_SUBDIR(MFDIR)
-# fi
+if test "x$MFDIR" = xauto; then
+    
+    
+    
+    echo $ac_n "checking MF input directory""... $ac_c" 1>&6
+echo "configure:2241: checking MF input directory" >&5    
+    find_dirdir=`(cd $find_texprefix; 
+      $FIND ./ -type d -a -name source -print |sort|head -1|sed 's#^\./##')`
+    
+
+    if test "x$find_dirdir" = x; then
+       find_dirdir="/source";
+       
+    echo "configure: warning: Cannot determine MF input subdirectory. Please set from command-line" 1>&2
+    warn_b=yes
+
+       true
+    fi
+    MFDIR=$find_dirdir
+    echo "$ac_t""$find_texprefix/$find_dirdir" 1>&6
+
+    MFDIR="$TEXPREFIX/$MFDIR"
+
+fi
     
 if test "x$TEXDIR" = xauto ; then
     
     
     
     echo $ac_n "checking TeX input directory""... $ac_c" 1>&6
-echo "configure:2375: checking TeX input directory" >&5    
+echo "configure:2266: checking TeX input directory" >&5    
     find_dirdir=`(cd $find_texprefix; 
       $FIND ./ -type d -a -name tex -print |sort|head -1|sed 's#^\./##')`
     
@@ -2487,7 +2378,7 @@ else
 fi
 
 echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6
-echo "configure:2491: checking how to run the C++ preprocessor" >&5
+echo "configure:2382: 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
@@ -2500,12 +2391,12 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L
 cross_compiling=$ac_cv_prog_cxx_cross
   CXXCPP="${CXX-g++} -E"
   cat > conftest.$ac_ext <<EOF
-#line 2504 "configure"
+#line 2395 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2509: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2400: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -2525,17 +2416,17 @@ echo "$ac_t""$CXXCPP" 1>&6
 
 ac_safe=`echo "FlexLexer.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for FlexLexer.h""... $ac_c" 1>&6
-echo "configure:2529: checking for FlexLexer.h" >&5
+echo "configure:2420: 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
-#line 2534 "configure"
+#line 2425 "configure"
 #include "confdefs.h"
 #include <FlexLexer.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2539: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2430: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2722,14 +2613,13 @@ s%@AUTOMAKE@%$AUTOMAKE%g
 s%@AUTOHEADER@%$AUTOHEADER%g
 s%@MAKEINFO@%$MAKEINFO%g
 s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@CXX@%$CXX%g
 s%@host@%$host%g
 s%@host_alias@%$host_alias%g
 s%@host_cpu@%$host_cpu%g
 s%@host_vendor@%$host_vendor%g
 s%@host_os@%$host_os%g
 s%@RANLIB@%$RANLIB%g
+s%@CC@%$CC%g
 s%@LD@%$LD%g
 s%@NM@%$NM%g
 s%@LN_S@%$LN_S%g
@@ -2739,6 +2629,7 @@ s%@LEX@%$LEX%g
 s%@LEXLIB@%$LEXLIB%g
 s%@CPP@%$CPP%g
 s%@LEX_OUTPUT_ROOT@%$LEX_OUTPUT_ROOT%g
+s%@CXX@%$CXX%g
 s%@TAR@%$TAR%g
 s%@FIND@%$FIND%g
 s%@ICFLAGS@%$ICFLAGS%g
index 56567a0a0d4212604f023f01586422e8411cbcae..31f666073c1d77e4ffbab79db1a4a443011f6d2d 100644 (file)
@@ -11,8 +11,8 @@ if test x$MY_PATCH_LEVEL != x; then
 fi
 AM_INIT_AUTOMAKE(lilypond, $FULL_VERSION)
 
-AC_PROG_CC
-AC_PROG_CXX
+#AC_PROG_CC
+#AC_PROG_CXX
 
 # turn off shared libraries by default (may be enabled using --enable-shared)
 AM_DISABLE_SHARED
@@ -179,9 +179,9 @@ else
  find_texprefix=$TEXPREFIX
 fi
 
-if test "x$MFDIR" = xauto; then
-    AC_MF_SUBDIR(MFDIR)
-fi
+if test "x$MFDIR" = xauto; then
+    AC_MF_SUBDIR(MFDIR)
+fi
     
 if test "x$TEXDIR" = xauto ; then
     AC_TEX_SUBDIR(TEXDIR)
index 0268436a1cc49c0b899abcae0b2b888a520ecb59..12b5972e215f8d3f1fb849a9c2bfdf7b874c82c2 100644 (file)
@@ -7,4 +7,4 @@ EXTRA_DIST = Makefile.am.wild README.Debian TODO changelog control copyright \
        postinst postinst.old.sh postrm preinst rules watch
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index b466cc2be979ddf4dceb1e6dddf976fc04daf399..8eefa73d57283b0ec03db9b5fdbe44ef853fd012 100644 (file)
@@ -191,7 +191,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index d62df54f9df2c0907b4aed2f9f83ac444ce6d103..5eeaa35c32e4e513adad5b3cba2cc21a2ad1bed0 100644 (file)
@@ -12,6 +12,9 @@
 
 SUBDIRS = include test 
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 lib_LTLIBRARIES = libflower.la
 
 README_FILES = ONEWS NEWS README TODO VERSION
@@ -23,5 +26,7 @@ libflower_la_LDFLAGS = -version-info @CURRENT@:@REVISION@:@AGE@
 
 INCLUDES = -I$(srcdir)/include
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 87639fc1d0e9db232d0c6581774050122b478fe8..6ef3498d049fc9f5c0c7713a267c5797ef7eb700 100644 (file)
@@ -9,6 +9,9 @@
 
 SUBDIRS = include test 
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 lib_LTLIBRARIES = libflower.la
 
 README_FILES = ONEWS NEWS README TODO VERSION
@@ -20,3 +23,5 @@ libflower_la_LDFLAGS = -version-info @CURRENT@:@REVISION@:@AGE@
 
 INCLUDES = -I$(srcdir)/include
 
+distclean-local:
+       -rm -rf .deps
index 27bd4a909bb0351f1394ceb95eb5a1da512a2b95..0a620aad4db32e54a3f81c27174e38552ae9ae07 100644 (file)
@@ -89,6 +89,9 @@ VERSION = @VERSION@
 
 SUBDIRS = include test 
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 lib_LTLIBRARIES = libflower.la
 
 README_FILES = ONEWS NEWS README TODO VERSION
@@ -532,7 +535,7 @@ mostlyclean:  mostlyclean-recursive mostlyclean-am
 
 clean:  clean-recursive clean-am
 
-distclean:  distclean-recursive distclean-am
+distclean:  distclean-recursive distclean-am distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -560,8 +563,10 @@ mostlyclean-generic distclean-generic clean-generic \
 maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 13485d6a142d126689ecb4d6f8d95dffde54f1f9..351d36c051023ee076c0e2a425f8bd36facd8808 100644 (file)
@@ -1,6 +1,7 @@
 
 pl 39
        - fixes to Array
+       - fixes to Interval
 
 
 pl 38
index d2435e29708d72d60f0f8a17fd1b594ea8745aff..ff98ffea7adc3601719913013736ef3a97021bc1 100644 (file)
@@ -1,6 +1,7 @@
 MAJOR_VERSION=1
 MINOR_VERSION=1
-PATCH_LEVEL=38
+PATCH_LEVEL=39
 # use to send patches, always empty for released version:
-MY_PATCH_LEVEL=# include separator: "-1" or ".a"
+# include separator: "-1" or ".a"
 #
+MY_PATCH_LEVEL=
index e9c9cd70dd727e9ae065c17a154648a1bc0f8da0..c0082c98fca76e98332e2554de1dc87bec4361a0 100755 (executable)
@@ -1488,8 +1488,41 @@ AGE=$MAJOR_VERSION
 
 
 
+# Extract the first word of "perl", so it can be a program name with args.
+set dummy perl; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:1495: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  case "$PERL" in
+  /*)
+  ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_path_PERL="$ac_dir/$ac_word"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="error"
+  ;;
+esac
+fi
+PERL="$ac_cv_path_PERL"
+if test -n "$PERL"; then
+  echo "$ac_t""$PERL" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+
 echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
-echo "configure:1493: checking for 8-bit clean memcmp" >&5
+echo "configure:1526: 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
@@ -1497,7 +1530,7 @@ else
   ac_cv_func_memcmp_clean=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 1501 "configure"
+#line 1534 "configure"
 #include "confdefs.h"
 #ifdef __cplusplus
 extern "C" void exit(int);
@@ -1510,7 +1543,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:1514: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_memcmp_clean=yes
 else
@@ -1528,12 +1561,12 @@ echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6
 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.o"
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
-echo "configure:1532: checking for vprintf" >&5
+echo "configure:1565: 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
-#line 1537 "configure"
+#line 1570 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
@@ -1559,7 +1592,7 @@ vprintf();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1596: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
@@ -1583,12 +1616,12 @@ fi
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
-echo "configure:1587: checking for _doprnt" >&5
+echo "configure:1620: 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
-#line 1592 "configure"
+#line 1625 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
@@ -1614,7 +1647,7 @@ _doprnt();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1618: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1651: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
@@ -1641,12 +1674,12 @@ fi
 for ac_func in memmem snprintf 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:1645: checking for $ac_func" >&5
+echo "configure:1678: 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
-#line 1650 "configure"
+#line 1683 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -1672,7 +1705,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1676: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
index 25bb9392bccf48f024e58a6283fd6d8ba559429c..aa9aa5f516b117db10cfe136e506d0cecf8848f4 100644 (file)
@@ -88,6 +88,8 @@ AC_SUBST(REVISION)
 AC_SUBST(AGE)
 AC_SUBST(PERL)
 
+AC_PATH_PROG(PERL, perl, error)
+
 AC_FUNC_MEMCMP
 AC_FUNC_VPRINTF
 AC_CHECK_FUNCS(memmem snprintf )
index fbbb1947128472ab38f6327f84a893c611d5bf18..53217650967f2e311583aee53f90d8686b80a43e 100644 (file)
@@ -3,9 +3,12 @@
 # Generated automatically by wild-perl 0.1
 # flower/lib/include/Makefile.am.wild
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 noinst_HEADERS = acursor.hh arithmetic-operator.hh assoc-iter.hh assoc.hh choleski.hh compare.hh cpu-timer.hh cursor.hh data-file.hh diagonal-storage.hh dictionary-iter.hh dictionary.hh directed-graph.hh dstream.hh flower-debug.hh fproto.hh full-storage.hh handle.hh international.hh interval.hh iterate.hh lgetopt.hh libc-extension.hh link.hh list.hh matrix-storage.hh matrix.hh nscalar.hh parray.hh path.hh pcursor.hh plist.hh pointer.hh pqueue.hh priorities.hh rational.hh real.hh scalar.hh string-convert.hh string-data.hh string-handle.hh string.hh text-db.hh text-stream.hh timer.hh unionfind.hh varray.hh vector.hh virtual-methods.hh cursor.icc full-storage.icc link.icc list.icc plist.icc string-data.icc string-handle.icc string.icc cursor.tcc interval.tcc list.tcc pcursor.tcc plist.tcc pointer.tcc
 
 EXTRA_DIST = Makefile.am.wild
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index ac36bc76efcf0f0b1d9b762952350808789d966c..5eb223087407d2f7371cbcdff1add36e3c9156a3 100644 (file)
@@ -1,5 +1,8 @@
 # flower/lib/include/Makefile.am.wild
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 noinst_HEADERS = $(wildcard *.hh *.icc *.tcc)
 
 EXTRA_DIST = Makefile.am.wild
index 2dfc1914bea1525ab65cd10c71b701957a05e2cf..7de221c8e110e0af956e6ebffb3e245256e53a8c 100644 (file)
@@ -15,6 +15,8 @@
 # Generated automatically by wild-perl 0.1
 # flower/lib/include/Makefile.am.wild
 
+# the wild-perl script needs this.
+
 
 SHELL = /bin/sh
 
@@ -80,6 +82,8 @@ RANLIB = @RANLIB@
 REVISION = @REVISION@
 VERSION = @VERSION@
 
+real_topdir = $(top_srcdir)/..
+
 noinst_HEADERS = acursor.hh arithmetic-operator.hh assoc-iter.hh assoc.hh choleski.hh compare.hh cpu-timer.hh cursor.hh data-file.hh diagonal-storage.hh dictionary-iter.hh dictionary.hh directed-graph.hh dstream.hh flower-debug.hh fproto.hh full-storage.hh handle.hh international.hh interval.hh iterate.hh lgetopt.hh libc-extension.hh link.hh list.hh matrix-storage.hh matrix.hh nscalar.hh parray.hh path.hh pcursor.hh plist.hh pointer.hh pqueue.hh priorities.hh rational.hh real.hh scalar.hh string-convert.hh string-data.hh string-handle.hh string.hh text-db.hh text-stream.hh timer.hh unionfind.hh varray.hh vector.hh virtual-methods.hh cursor.icc full-storage.icc link.icc list.icc plist.icc string-data.icc string-handle.icc string.icc cursor.tcc interval.tcc list.tcc pcursor.tcc plist.tcc pointer.tcc
 
 EXTRA_DIST = Makefile.am.wild
@@ -200,7 +204,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index b0207e0556f61d3997e76d8c79e5b386cbb757e6..7a868a31ab9b92b8eac30849c01eae4c092613ac 100644 (file)
@@ -86,6 +86,12 @@ struct Interval_t {
   String str() const;    
   void print () const;
   bool elt_b (T r);
+  void negate () {
+    T r = -left;
+    T l = -right;
+    left = l;
+    right =r;
+  }
 };
 
 
@@ -121,6 +127,23 @@ Interval_t<T> operator +(T a,Interval_t<T> i)
   return i;
 }
 
+template<class T>
+inline
+Interval_t<T> operator - (Interval_t<T> i, T a)
+{
+  i += -a;
+  return i;
+}
+
+template<class T>
+inline
+Interval_t<T> operator - (T a,Interval_t<T> i)
+{
+  i.negate ();
+  i += a;
+  return i;
+}
+
 template<class T>
 inline
 Interval_t<T> operator +(Interval_t<T> i,T a){
index 1aa34af3872d2ae126d3e63a4ade362d3a8f593c..c9521304263a309ddf4df13da6d1932498c843f0 100644 (file)
@@ -11,6 +11,9 @@
 #      Han-Wen Nienhuys <hanwen@stack.nl>
 #
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 # bin_PROGRAMS = test
 
 # TEST = test
@@ -27,4 +30,4 @@ noinst_HEADERS = flower-test.hh
 INCLUDES = -I../include
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 2346878f8020080db84bcf78c5938d73753ac18b..02f871025b7c995393a154fe14cdc2fad542de7f 100644 (file)
@@ -8,6 +8,9 @@
 #      Han-Wen Nienhuys <hanwen@stack.nl>
 #
 
+# the wild-perl script needs this.
+real_topdir = $(top_srcdir)/..
+
 # bin_PROGRAMS = test
 
 # TEST = test
index 9aa4333249d01e79596af30d928b600f9bc3c521..ef867cd485ba0c3a534a4cffd446952430550ba3 100644 (file)
 #      Han-Wen Nienhuys <hanwen@stack.nl>
 #
 
-# bin_PROGRAMS = test
-
-# TEST = test
-
-# can't link to libflower: has not been created yet...
-# test_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc
+# the wild-perl script needs this.
 
 
 SHELL = /bin/sh
@@ -95,6 +90,15 @@ RANLIB = @RANLIB@
 REVISION = @REVISION@
 VERSION = @VERSION@
 
+real_topdir = $(top_srcdir)/..
+
+# bin_PROGRAMS = test
+
+# TEST = test
+
+# can't link to libflower: has not been created yet...
+# test_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc
+
 EXTRA_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc
 
 EXTRA_DIST = result Makefile.am.wild $(EXTRA_SOURCES)
@@ -219,7 +223,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 31291ae66c80be27b84177322986e97b914561e4..21e4f1a98760d0125971be076fd4f65855080cdc 100644 (file)
@@ -3,23 +3,23 @@
 # Generated automatically by wild-perl 0.1
 # init/Makefile.am.wild
 
-INIFILES = deutsch.ly dynamic.ly engraver.ly italiano.ly lily-init.ly midi.ly nederlands.ly norsk.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly svenska.ly table11.ly table13.ly table16.ly table20.ly table26.ly
+INIFILES = deutsch.ly dynamic.ly engraver.ly feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly italiano.ly lily-init.ly midi.ly nederlands.ly norsk.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly svenska.ly table11.ly table13.ly table16.ly table20.ly table26.ly
 EXTRA_DIST = Makefile.am.wild $(INIFILES)
 
-CLEANFILES = 
+CLEANFILES = feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly
 
 FONT_FILES = ../mf/feta-beams16.mf ../mf/feta-beams20.mf ../mf/feta-beams26.mf ../mf/feta-black16.mf ../mf/feta-braces16.mf ../mf/feta-braces20.mf ../mf/feta-din10.mf ../mf/feta-nummer10.mf ../mf/feta-nummer12.mf ../mf/feta-nummer3.mf ../mf/feta-nummer4.mf ../mf/feta-nummer5.mf ../mf/feta-nummer6.mf ../mf/feta-nummer7.mf ../mf/feta-nummer8.mf ../mf/feta-test16.mf ../mf/feta-test20.mf ../mf/feta11.mf ../mf/feta13.mf ../mf/feta16.mf ../mf/feta19.mf ../mf/feta20.mf ../mf/feta23.mf ../mf/feta26.mf
 TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES))
 
-# localclean:
+# clean-local:
 #      rm -f $(TABLES)
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init
 
-uninstall-data:
+uninstall-local:
        for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done
        -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 8589be49c80aedf43fdd67f455ad96de209de722..24936bd1b2c0d8b5a9dd6a857a84ed39427f3a74 100644 (file)
@@ -8,13 +8,13 @@ CLEANFILES = $(wildcard feta*.ly)
 FONT_FILES = $(wildcard ../mf/*[0-9].mf)
 TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES))
 
-# localclean:
+# clean-local:
 #      rm -f $(TABLES)
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init
 
-uninstall-data:
+uninstall-local:
        for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done
        -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/
index b8347b24bc755c4b1f8225fcaeaf7dc9f55e9f2e..29093833f36c643c3cdecf5ff24fe4fee527c565 100644 (file)
@@ -99,10 +99,10 @@ YACC = @YACC@
 ZIP = @ZIP@
 absolute_builddir = @absolute_builddir@
 
-INIFILES = deutsch.ly dynamic.ly engraver.ly italiano.ly lily-init.ly midi.ly nederlands.ly norsk.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly svenska.ly table11.ly table13.ly table16.ly table20.ly table26.ly
+INIFILES = deutsch.ly dynamic.ly engraver.ly feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly italiano.ly lily-init.ly midi.ly nederlands.ly norsk.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly svenska.ly table11.ly table13.ly table16.ly table20.ly table26.ly
 EXTRA_DIST = Makefile.am.wild $(INIFILES)
 
-CLEANFILES = 
+CLEANFILES = feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly
 
 FONT_FILES = ../mf/feta-beams16.mf ../mf/feta-beams20.mf ../mf/feta-beams26.mf ../mf/feta-black16.mf ../mf/feta-braces16.mf ../mf/feta-braces20.mf ../mf/feta-din10.mf ../mf/feta-nummer10.mf ../mf/feta-nummer12.mf ../mf/feta-nummer3.mf ../mf/feta-nummer4.mf ../mf/feta-nummer5.mf ../mf/feta-nummer6.mf ../mf/feta-nummer7.mf ../mf/feta-nummer8.mf ../mf/feta-test16.mf ../mf/feta-test20.mf ../mf/feta11.mf ../mf/feta13.mf ../mf/feta16.mf ../mf/feta19.mf ../mf/feta20.mf ../mf/feta23.mf ../mf/feta26.mf
 TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES))
@@ -148,13 +148,13 @@ installcheck:
 install-exec: 
        @$(NORMAL_INSTALL)
 
-install-data: 
+install-data: install-data-local
        @$(NORMAL_INSTALL)
 
 install: install-exec install-data all
        @:
 
-uninstall: 
+uninstall: uninstall-local
 
 all: Makefile
 
@@ -195,18 +195,18 @@ distclean-generic clean-generic maintainer-clean-generic clean \
 mostlyclean distclean maintainer-clean
 
 
-# localclean:
+# clean-local:
 #      rm -f $(TABLES)
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init
 
-uninstall-data:
+uninstall-local:
        for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done
        -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 6ab87d1c812a756c3c982a1eed4022b253ceec80..f31288c87dd875c6b08aac95f0bc4b438d1d7281 100644 (file)
@@ -14,7 +14,9 @@ Staff = \translator {
          \consists "Staff_sym_engraver";
          \consists "Collision_engraver";
          \consists "Rest_collision_engraver";
+       \consists "Separating_line_group_engraver";
          \consists "Line_group_engraver";
+         
          \accepts "Voice";
 }
 
@@ -78,6 +80,7 @@ Lyric_voice =
 \translator{
        \type "Engraver_group_engraver";
 
+       \consists "Separating_line_group_engraver";
        \consists "Lyric_engraver";
        \consists "Line_group_engraver";
        \consists "Beam_req_swallow_translator";
diff --git a/init/feta11.ly b/init/feta11.ly
new file mode 100644 (file)
index 0000000..0e45818
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta11.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 4.12\pt -1.72\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 4.12\pt 0.00\pt 1.72\pt 
+        "0o"   "\\outsidewholerest"    -1.72\pt        5.84\pt -1.72\pt        0.28\pt 
+        "1o"   "\\outsidehalfrest"     -1.72\pt        5.84\pt -0.28\pt        1.72\pt 
+        "2"    "\\quartrest"   0.00\pt 2.97\pt 2.06\pt 9.90\pt 
+        "3"    "\\eighthrest"  0.00\pt 3.67\pt 2.75\pt 7.81\pt 
+        "4"    "\\sixteenthrest"       0.00\pt 4.27\pt 0.00\pt 7.81\pt 
+        "5"    "\\thirtysecondrest"    0.00\pt 4.81\pt 0.00\pt 10.56\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 5.16\pt 0.00\pt 13.31\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 5.75\pt 0.00\pt 16.06\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 3.03\pt -4.12\pt        4.12\pt 
+        "0"    "\\natural"     0.00\pt 1.83\pt -4.12\pt        4.12\pt 
+        "-1"   "\\flat"        -0.33\pt        2.20\pt -1.38\pt        5.50\pt 
+        "-2"   "\\flatflat"    -0.33\pt        3.99\pt -1.38\pt        5.50\pt 
+        "2"    "\\sharpsharp"  0.00\pt 2.75\pt -1.38\pt        1.38\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 1.24\pt -0.62\pt        0.62\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 1.24\pt -1.38\pt        1.38\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 5.50\pt -1.51\pt        1.51\pt 
+        "-1l"  "\\brevisledger"        -1.38\pt        6.88\pt -0.28\pt        0.28\pt 
+        "-2"   "\\longaball"   0.00\pt 5.50\pt -1.51\pt        1.51\pt 
+        "-2l"  "\\longaledger" -1.38\pt        6.88\pt -0.28\pt        0.28\pt 
+        "0"    "\\wholeball"   0.00\pt 5.45\pt -1.51\pt        1.51\pt 
+        "0l"   "\\wholeledger" -1.36\pt        6.81\pt -0.28\pt        0.28\pt 
+        "1"    "\\halfball"    0.00\pt 3.79\pt -1.51\pt        1.51\pt 
+        "1l"   "\\halfledger"  -0.95\pt        4.74\pt -0.28\pt        0.28\pt 
+        "2"    "\\quartball"   0.00\pt 3.63\pt -1.51\pt        1.51\pt 
+        "2l"   "\\quartledger" -0.91\pt        4.54\pt -0.28\pt        0.28\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -3.64\pt        3.64\pt -0.21\pt        3.99\pt 
+        "dfermata"     "\\dfermata"    -3.64\pt        3.64\pt -3.99\pt        0.21\pt 
+        "sforzato"     "\\sforzatoaccent"      -2.47\pt        2.47\pt -1.38\pt        1.38\pt 
+        "staccato"     "\\staccato"    -0.41\pt        0.41\pt -0.41\pt        0.41\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -0.55\pt        0.55\pt -0.20\pt        2.75\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -0.55\pt        0.55\pt -2.75\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -2.47\pt        2.47\pt -0.17\pt        0.17\pt 
+        "umarcato"     "\\umarcato"    -1.38\pt        1.38\pt 0.00\pt 3.03\pt 
+        "dmarcato"     "\\dmarcato"    -1.38\pt        1.38\pt -3.03\pt        0.00\pt 
+        "open" "\\ouvert"      -1.10\pt        1.10\pt -1.38\pt        1.38\pt 
+        "stopped"      "\\plusstop"    -1.51\pt        1.51\pt -1.51\pt        1.51\pt 
+        "upbow"        "\\upbow"       -1.79\pt        1.79\pt 0.00\pt 5.72\pt 
+        "downbow"      "\\downbow"     -2.06\pt        2.06\pt 0.00\pt 3.67\pt 
+        "turn" "\\turn"        -3.01\pt        3.01\pt -1.46\pt        1.46\pt 
+        "trill"        "\\trill"       -2.75\pt        2.75\pt 0.00\pt 6.19\pt 
+        "upedalheel"   "\\upedalheel"  -1.38\pt        1.38\pt -1.38\pt        1.83\pt 
+        "dpedalheel"   "\\dpedalheel"  -1.38\pt        1.38\pt -1.83\pt        1.38\pt 
+        "upedaltoe"    "\\upedaltoe"   -1.38\pt        1.38\pt 0.00\pt 4.12\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -1.38\pt        1.38\pt -4.12\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -1.47\pt        1.47\pt -1.47\pt        1.47\pt 
+        "trilelement"  "\\trilelement" -1.38\pt        0.72\pt -1.51\pt        1.51\pt 
+        "prall"        "\\prall"       -2.42\pt        2.42\pt -1.51\pt        1.51\pt 
+        "mordent"      "\\mordent"     -2.42\pt        2.42\pt -1.51\pt        1.51\pt 
+        "prallprall"   "\\prallprall"  -3.47\pt        3.47\pt -1.51\pt        1.51\pt 
+        "prallmordent" "\\prallmordent"        -3.47\pt        3.47\pt -1.51\pt        1.51\pt 
+        "upprall"      "\\upprall"     -3.47\pt        3.47\pt -1.51\pt        1.51\pt 
+        "downprall"    "\\downprall"   -3.47\pt        3.47\pt -1.51\pt        1.51\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.14\pt        3.39\pt -8.43\pt        0.14\pt 
+        "u4"   "\\sixteenthflag"       -0.14\pt        3.39\pt -9.80\pt        0.14\pt 
+        "u5"   "\\thirtysecondflag"    -0.14\pt        3.39\pt -11.87\pt       0.14\pt 
+        "u6"   "\\sixtyfourthflag"     -0.14\pt        3.39\pt -14.62\pt       0.14\pt 
+        "d3"   "\\deighthflag" -0.14\pt        3.76\pt -0.14\pt        8.02\pt 
+        "d4"   "\\dsixteenthflag"      -0.14\pt        3.76\pt -0.14\pt        8.43\pt 
+        "d5"   "\\dthirtysecondflag"   -0.14\pt        3.76\pt -0.14\pt        10.77\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.14\pt        3.76\pt -0.14\pt        12.14\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -2.75\pt        10.24\pt        -5.50\pt        5.50\pt 
+        "alto_change"  "\\caltoclef"   -2.20\pt        8.19\pt -4.40\pt        4.40\pt 
+        "bass" "\\bassclef"    -1.38\pt        9.90\pt -6.88\pt        2.75\pt 
+        "bass_change"  "\\cbassclef"   -1.10\pt        7.92\pt -5.50\pt        2.20\pt 
+        "violin"       "\\violinclef"  -2.40\pt        10.28\pt        -8.25\pt        13.75\pt        
+        "violin_change"        "\\cviolinclef" -2.08\pt        8.06\pt -6.60\pt        11.00\pt        
+        }
+    %  } % $name
diff --git a/init/feta13.ly b/init/feta13.ly
new file mode 100644 (file)
index 0000000..a4a20f7
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta13.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 4.88\pt -2.03\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 4.88\pt 0.00\pt 2.03\pt 
+        "0o"   "\\outsidewholerest"    -2.03\pt        6.91\pt -2.03\pt        0.33\pt 
+        "1o"   "\\outsidehalfrest"     -2.03\pt        6.91\pt -0.33\pt        2.03\pt 
+        "2"    "\\quartrest"   0.00\pt 3.51\pt 2.44\pt 11.70\pt        
+        "3"    "\\eighthrest"  0.00\pt 4.33\pt 3.25\pt 9.24\pt 
+        "4"    "\\sixteenthrest"       0.00\pt 5.04\pt 0.00\pt 9.24\pt 
+        "5"    "\\thirtysecondrest"    0.00\pt 5.69\pt 0.00\pt 12.49\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 6.10\pt 0.00\pt 15.74\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 6.79\pt 0.00\pt 18.99\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 3.58\pt -4.88\pt        4.88\pt 
+        "0"    "\\natural"     0.00\pt 2.17\pt -4.88\pt        4.88\pt 
+        "-1"   "\\flat"        -0.39\pt        2.60\pt -1.62\pt        6.50\pt 
+        "-2"   "\\flatflat"    -0.39\pt        4.71\pt -1.62\pt        6.50\pt 
+        "2"    "\\sharpsharp"  0.00\pt 3.25\pt -1.62\pt        1.62\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 1.46\pt -0.73\pt        0.73\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 1.46\pt -1.62\pt        1.62\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 6.50\pt -1.79\pt        1.79\pt 
+        "-1l"  "\\brevisledger"        -1.62\pt        8.12\pt -0.33\pt        0.33\pt 
+        "-2"   "\\longaball"   0.00\pt 6.50\pt -1.79\pt        1.79\pt 
+        "-2l"  "\\longaledger" -1.62\pt        8.12\pt -0.33\pt        0.33\pt 
+        "0"    "\\wholeball"   0.00\pt 6.44\pt -1.79\pt        1.79\pt 
+        "0l"   "\\wholeledger" -1.61\pt        8.04\pt -0.33\pt        0.33\pt 
+        "1"    "\\halfball"    0.00\pt 4.48\pt -1.79\pt        1.79\pt 
+        "1l"   "\\halfledger"  -1.12\pt        5.60\pt -0.33\pt        0.33\pt 
+        "2"    "\\quartball"   0.00\pt 4.29\pt -1.79\pt        1.79\pt 
+        "2l"   "\\quartledger" -1.07\pt        5.37\pt -0.33\pt        0.33\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -4.31\pt        4.31\pt -0.24\pt        4.71\pt 
+        "dfermata"     "\\dfermata"    -4.31\pt        4.31\pt -4.71\pt        0.24\pt 
+        "sforzato"     "\\sforzatoaccent"      -2.92\pt        2.92\pt -1.62\pt        1.62\pt 
+        "staccato"     "\\staccato"    -0.49\pt        0.49\pt -0.49\pt        0.49\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -0.65\pt        0.65\pt -0.20\pt        3.25\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -0.65\pt        0.65\pt -3.25\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -2.92\pt        2.92\pt -0.20\pt        0.20\pt 
+        "umarcato"     "\\umarcato"    -1.62\pt        1.62\pt 0.00\pt 3.58\pt 
+        "dmarcato"     "\\dmarcato"    -1.62\pt        1.62\pt -3.58\pt        0.00\pt 
+        "open" "\\ouvert"      -1.30\pt        1.30\pt -1.62\pt        1.62\pt 
+        "stopped"      "\\plusstop"    -1.79\pt        1.79\pt -1.79\pt        1.79\pt 
+        "upbow"        "\\upbow"       -2.11\pt        2.11\pt 0.00\pt 6.76\pt 
+        "downbow"      "\\downbow"     -2.44\pt        2.44\pt 0.00\pt 4.33\pt 
+        "turn" "\\turn"        -3.55\pt        3.55\pt -1.72\pt        1.72\pt 
+        "trill"        "\\trill"       -3.25\pt        3.25\pt 0.00\pt 7.31\pt 
+        "upedalheel"   "\\upedalheel"  -1.62\pt        1.62\pt -1.62\pt        2.17\pt 
+        "dpedalheel"   "\\dpedalheel"  -1.62\pt        1.62\pt -2.17\pt        1.62\pt 
+        "upedaltoe"    "\\upedaltoe"   -1.62\pt        1.62\pt 0.00\pt 4.88\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -1.62\pt        1.62\pt -4.88\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -1.73\pt        1.73\pt -1.73\pt        1.73\pt 
+        "trilelement"  "\\trilelement" -1.62\pt        0.85\pt -1.79\pt        1.79\pt 
+        "prall"        "\\prall"       -2.86\pt        2.86\pt -1.79\pt        1.79\pt 
+        "mordent"      "\\mordent"     -2.86\pt        2.86\pt -1.79\pt        1.79\pt 
+        "prallprall"   "\\prallprall"  -4.10\pt        4.10\pt -1.79\pt        1.79\pt 
+        "prallmordent" "\\prallmordent"        -4.10\pt        4.10\pt -1.79\pt        1.79\pt 
+        "upprall"      "\\upprall"     -4.10\pt        4.10\pt -1.79\pt        1.79\pt 
+        "downprall"    "\\downprall"   -4.10\pt        4.10\pt -1.79\pt        1.79\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.16\pt        4.01\pt -9.96\pt        0.16\pt 
+        "u4"   "\\sixteenthflag"       -0.16\pt        4.01\pt -11.59\pt       0.16\pt 
+        "u5"   "\\thirtysecondflag"    -0.16\pt        4.01\pt -14.02\pt       0.16\pt 
+        "u6"   "\\sixtyfourthflag"     -0.16\pt        4.01\pt -17.27\pt       0.16\pt 
+        "d3"   "\\deighthflag" -0.16\pt        4.44\pt -0.16\pt        9.47\pt 
+        "d4"   "\\dsixteenthflag"      -0.16\pt        4.44\pt -0.16\pt        9.96\pt 
+        "d5"   "\\dthirtysecondflag"   -0.16\pt        4.44\pt -0.16\pt        12.72\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.16\pt        4.44\pt -0.16\pt        14.35\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -3.25\pt        12.10\pt        -6.50\pt        6.50\pt 
+        "alto_change"  "\\caltoclef"   -2.60\pt        9.68\pt -5.20\pt        5.20\pt 
+        "bass" "\\bassclef"    -1.62\pt        11.70\pt        -8.12\pt        3.25\pt 
+        "bass_change"  "\\cbassclef"   -1.30\pt        9.36\pt -6.50\pt        2.60\pt 
+        "violin"       "\\violinclef"  -2.83\pt        12.15\pt        -9.75\pt        16.25\pt        
+        "violin_change"        "\\cviolinclef" -2.46\pt        9.52\pt -7.80\pt        13.00\pt        
+        }
+    %  } % $name
diff --git a/init/feta16.ly b/init/feta16.ly
new file mode 100644 (file)
index 0000000..bca45d1
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta16.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 6.00\pt -2.50\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 6.00\pt 0.00\pt 2.50\pt 
+        "0o"   "\\outsidewholerest"    -2.50\pt        8.50\pt -2.50\pt        0.40\pt 
+        "1o"   "\\outsidehalfrest"     -2.50\pt        8.50\pt -0.40\pt        2.50\pt 
+        "2"    "\\quartrest"   0.00\pt 4.32\pt 3.00\pt 14.40\pt        
+        "3"    "\\eighthrest"  0.00\pt 5.33\pt 4.00\pt 11.37\pt        
+        "4"    "\\sixteenthrest"       0.00\pt 6.21\pt 0.00\pt 11.37\pt        
+        "5"    "\\thirtysecondrest"    0.00\pt 7.00\pt 0.00\pt 15.37\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 7.51\pt 0.00\pt 19.37\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 8.36\pt 0.00\pt 23.37\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 4.40\pt -6.00\pt        6.00\pt 
+        "0"    "\\natural"     0.00\pt 2.67\pt -6.00\pt        6.00\pt 
+        "-1"   "\\flat"        -0.48\pt        3.20\pt -2.00\pt        8.00\pt 
+        "-2"   "\\flatflat"    -0.48\pt        5.80\pt -2.00\pt        8.00\pt 
+        "2"    "\\sharpsharp"  0.00\pt 4.00\pt -2.00\pt        2.00\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 1.80\pt -0.90\pt        0.90\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 1.80\pt -2.00\pt        2.00\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 8.00\pt -2.20\pt        2.20\pt 
+        "-1l"  "\\brevisledger"        -2.00\pt        10.00\pt        -0.40\pt        0.40\pt 
+        "-2"   "\\longaball"   0.00\pt 8.00\pt -2.20\pt        2.20\pt 
+        "-2l"  "\\longaledger" -2.00\pt        10.00\pt        -0.40\pt        0.40\pt 
+        "0"    "\\wholeball"   0.00\pt 7.92\pt -2.20\pt        2.20\pt 
+        "0l"   "\\wholeledger" -1.98\pt        9.90\pt -0.40\pt        0.40\pt 
+        "1"    "\\halfball"    0.00\pt 5.51\pt -2.20\pt        2.20\pt 
+        "1l"   "\\halfledger"  -1.38\pt        6.89\pt -0.40\pt        0.40\pt 
+        "2"    "\\quartball"   0.00\pt 5.28\pt -2.20\pt        2.20\pt 
+        "2l"   "\\quartledger" -1.32\pt        6.61\pt -0.40\pt        0.40\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -5.30\pt        5.30\pt -0.30\pt        5.80\pt 
+        "dfermata"     "\\dfermata"    -5.30\pt        5.30\pt -5.80\pt        0.30\pt 
+        "sforzato"     "\\sforzatoaccent"      -3.60\pt        3.60\pt -2.00\pt        2.00\pt 
+        "staccato"     "\\staccato"    -0.60\pt        0.60\pt -0.60\pt        0.60\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -0.80\pt        0.80\pt -0.20\pt        4.00\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -0.80\pt        0.80\pt -4.00\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -3.60\pt        3.60\pt -0.24\pt        0.24\pt 
+        "umarcato"     "\\umarcato"    -2.00\pt        2.00\pt 0.00\pt 4.40\pt 
+        "dmarcato"     "\\dmarcato"    -2.00\pt        2.00\pt -4.40\pt        0.00\pt 
+        "open" "\\ouvert"      -1.60\pt        1.60\pt -2.00\pt        2.00\pt 
+        "stopped"      "\\plusstop"    -2.20\pt        2.20\pt -2.20\pt        2.20\pt 
+        "upbow"        "\\upbow"       -2.60\pt        2.60\pt 0.00\pt 8.32\pt 
+        "downbow"      "\\downbow"     -3.00\pt        3.00\pt 0.00\pt 5.33\pt 
+        "turn" "\\turn"        -4.38\pt        4.38\pt -2.12\pt        2.12\pt 
+        "trill"        "\\trill"       -4.00\pt        4.00\pt 0.00\pt 9.00\pt 
+        "upedalheel"   "\\upedalheel"  -2.00\pt        2.00\pt -2.00\pt        2.67\pt 
+        "dpedalheel"   "\\dpedalheel"  -2.00\pt        2.00\pt -2.67\pt        2.00\pt 
+        "upedaltoe"    "\\upedaltoe"   -2.00\pt        2.00\pt 0.00\pt 6.00\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -2.00\pt        2.00\pt -6.00\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -2.13\pt        2.13\pt -2.13\pt        2.13\pt 
+        "trilelement"  "\\trilelement" -2.00\pt        1.05\pt -2.20\pt        2.20\pt 
+        "prall"        "\\prall"       -3.52\pt        3.52\pt -2.20\pt        2.20\pt 
+        "mordent"      "\\mordent"     -3.52\pt        3.52\pt -2.20\pt        2.20\pt 
+        "prallprall"   "\\prallprall"  -5.05\pt        5.05\pt -2.20\pt        2.20\pt 
+        "prallmordent" "\\prallmordent"        -5.05\pt        5.05\pt -2.20\pt        2.20\pt 
+        "upprall"      "\\upprall"     -5.05\pt        5.05\pt -2.20\pt        2.20\pt 
+        "downprall"    "\\downprall"   -5.05\pt        5.05\pt -2.20\pt        2.20\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.20\pt        4.94\pt -12.26\pt       0.20\pt 
+        "u4"   "\\sixteenthflag"       -0.20\pt        4.94\pt -14.26\pt       0.20\pt 
+        "u5"   "\\thirtysecondflag"    -0.20\pt        4.94\pt -17.26\pt       0.20\pt 
+        "u6"   "\\sixtyfourthflag"     -0.20\pt        4.94\pt -21.26\pt       0.20\pt 
+        "d3"   "\\deighthflag" -0.20\pt        5.46\pt -0.20\pt        11.66\pt        
+        "d4"   "\\dsixteenthflag"      -0.20\pt        5.46\pt -0.20\pt        12.26\pt        
+        "d5"   "\\dthirtysecondflag"   -0.20\pt        5.46\pt -0.20\pt        15.66\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.20\pt        5.46\pt -0.20\pt        17.66\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -4.00\pt        14.89\pt        -8.00\pt        8.00\pt 
+        "alto_change"  "\\caltoclef"   -3.20\pt        11.91\pt        -6.40\pt        6.40\pt 
+        "bass" "\\bassclef"    -2.00\pt        14.40\pt        -10.00\pt       4.00\pt 
+        "bass_change"  "\\cbassclef"   -1.60\pt        11.52\pt        -8.00\pt        3.20\pt 
+        "violin"       "\\violinclef"  -3.49\pt        14.95\pt        -12.00\pt       20.00\pt        
+        "violin_change"        "\\cviolinclef" -3.03\pt        11.72\pt        -9.60\pt        16.00\pt        
+        }
+    %  } % $name
diff --git a/init/feta19.ly b/init/feta19.ly
new file mode 100644 (file)
index 0000000..cb34017
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta19.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 7.12\pt -2.97\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 7.12\pt 0.00\pt 2.97\pt 
+        "0o"   "\\outsidewholerest"    -2.97\pt        10.09\pt        -2.97\pt        0.48\pt 
+        "1o"   "\\outsidehalfrest"     -2.97\pt        10.09\pt        -0.48\pt        2.97\pt 
+        "2"    "\\quartrest"   0.00\pt 5.13\pt 3.56\pt 17.10\pt        
+        "3"    "\\eighthrest"  0.00\pt 6.33\pt 4.75\pt 13.50\pt        
+        "4"    "\\sixteenthrest"       0.00\pt 7.37\pt 0.00\pt 13.50\pt        
+        "5"    "\\thirtysecondrest"    0.00\pt 8.32\pt 0.00\pt 18.25\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 8.92\pt 0.00\pt 23.00\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 9.93\pt 0.00\pt 27.75\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 5.23\pt -7.12\pt        7.12\pt 
+        "0"    "\\natural"     0.00\pt 3.17\pt -7.12\pt        7.12\pt 
+        "-1"   "\\flat"        -0.57\pt        3.80\pt -2.38\pt        9.50\pt 
+        "-2"   "\\flatflat"    -0.57\pt        6.89\pt -2.38\pt        9.50\pt 
+        "2"    "\\sharpsharp"  0.00\pt 4.75\pt -2.38\pt        2.38\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 2.14\pt -1.07\pt        1.07\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 2.14\pt -2.38\pt        2.38\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 9.50\pt -2.61\pt        2.61\pt 
+        "-1l"  "\\brevisledger"        -2.38\pt        11.88\pt        -0.48\pt        0.48\pt 
+        "-2"   "\\longaball"   0.00\pt 9.50\pt -2.61\pt        2.61\pt 
+        "-2l"  "\\longaledger" -2.38\pt        11.88\pt        -0.48\pt        0.48\pt 
+        "0"    "\\wholeball"   0.00\pt 9.41\pt -2.61\pt        2.61\pt 
+        "0l"   "\\wholeledger" -2.35\pt        11.76\pt        -0.48\pt        0.48\pt 
+        "1"    "\\halfball"    0.00\pt 6.54\pt -2.61\pt        2.61\pt 
+        "1l"   "\\halfledger"  -1.64\pt        8.18\pt -0.48\pt        0.48\pt 
+        "2"    "\\quartball"   0.00\pt 6.27\pt -2.61\pt        2.61\pt 
+        "2l"   "\\quartledger" -1.57\pt        7.84\pt -0.48\pt        0.48\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -6.29\pt        6.29\pt -0.36\pt        6.89\pt 
+        "dfermata"     "\\dfermata"    -6.29\pt        6.29\pt -6.89\pt        0.36\pt 
+        "sforzato"     "\\sforzatoaccent"      -4.27\pt        4.27\pt -2.38\pt        2.38\pt 
+        "staccato"     "\\staccato"    -0.71\pt        0.71\pt -0.71\pt        0.71\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -0.95\pt        0.95\pt -0.20\pt        4.75\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -0.95\pt        0.95\pt -4.75\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -4.27\pt        4.27\pt -0.29\pt        0.29\pt 
+        "umarcato"     "\\umarcato"    -2.38\pt        2.38\pt 0.00\pt 5.23\pt 
+        "dmarcato"     "\\dmarcato"    -2.38\pt        2.38\pt -5.23\pt        0.00\pt 
+        "open" "\\ouvert"      -1.90\pt        1.90\pt -2.38\pt        2.38\pt 
+        "stopped"      "\\plusstop"    -2.61\pt        2.61\pt -2.61\pt        2.61\pt 
+        "upbow"        "\\upbow"       -3.09\pt        3.09\pt 0.00\pt 9.88\pt 
+        "downbow"      "\\downbow"     -3.56\pt        3.56\pt 0.00\pt 6.33\pt 
+        "turn" "\\turn"        -5.20\pt        5.20\pt -2.51\pt        2.51\pt 
+        "trill"        "\\trill"       -4.75\pt        4.75\pt 0.00\pt 10.69\pt        
+        "upedalheel"   "\\upedalheel"  -2.38\pt        2.38\pt -2.38\pt        3.17\pt 
+        "dpedalheel"   "\\dpedalheel"  -2.38\pt        2.38\pt -3.17\pt        2.38\pt 
+        "upedaltoe"    "\\upedaltoe"   -2.38\pt        2.38\pt 0.00\pt 7.12\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -2.38\pt        2.38\pt -7.12\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -2.53\pt        2.53\pt -2.53\pt        2.53\pt 
+        "trilelement"  "\\trilelement" -2.38\pt        1.24\pt -2.61\pt        2.61\pt 
+        "prall"        "\\prall"       -4.18\pt        4.18\pt -2.61\pt        2.61\pt 
+        "mordent"      "\\mordent"     -4.18\pt        4.18\pt -2.61\pt        2.61\pt 
+        "prallprall"   "\\prallprall"  -5.99\pt        5.99\pt -2.61\pt        2.61\pt 
+        "prallmordent" "\\prallmordent"        -5.99\pt        5.99\pt -2.61\pt        2.61\pt 
+        "upprall"      "\\upprall"     -5.99\pt        5.99\pt -2.61\pt        2.61\pt 
+        "downprall"    "\\downprall"   -5.99\pt        5.99\pt -2.61\pt        2.61\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.24\pt        5.86\pt -14.56\pt       0.24\pt 
+        "u4"   "\\sixteenthflag"       -0.24\pt        5.86\pt -16.93\pt       0.24\pt 
+        "u5"   "\\thirtysecondflag"    -0.24\pt        5.86\pt -20.50\pt       0.24\pt 
+        "u6"   "\\sixtyfourthflag"     -0.24\pt        5.86\pt -25.25\pt       0.24\pt 
+        "d3"   "\\deighthflag" -0.24\pt        6.49\pt -0.24\pt        13.85\pt        
+        "d4"   "\\dsixteenthflag"      -0.24\pt        6.49\pt -0.24\pt        14.56\pt        
+        "d5"   "\\dthirtysecondflag"   -0.24\pt        6.49\pt -0.24\pt        18.60\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.24\pt        6.49\pt -0.24\pt        20.97\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -4.75\pt        17.68\pt        -9.50\pt        9.50\pt 
+        "alto_change"  "\\caltoclef"   -3.80\pt        14.14\pt        -7.60\pt        7.60\pt 
+        "bass" "\\bassclef"    -2.38\pt        17.10\pt        -11.88\pt       4.75\pt 
+        "bass_change"  "\\cbassclef"   -1.90\pt        13.68\pt        -9.50\pt        3.80\pt 
+        "violin"       "\\violinclef"  -4.14\pt        17.75\pt        -14.25\pt       23.75\pt        
+        "violin_change"        "\\cviolinclef" -3.60\pt        13.92\pt        -11.40\pt       19.00\pt        
+        }
+    %  } % $name
diff --git a/init/feta20.ly b/init/feta20.ly
new file mode 100644 (file)
index 0000000..573788d
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta20.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 7.50\pt -3.12\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 7.50\pt 0.00\pt 3.12\pt 
+        "0o"   "\\outsidewholerest"    -3.12\pt        10.62\pt        -3.12\pt        0.50\pt 
+        "1o"   "\\outsidehalfrest"     -3.12\pt        10.62\pt        -0.50\pt        3.12\pt 
+        "2"    "\\quartrest"   0.00\pt 5.40\pt 3.75\pt 18.00\pt        
+        "3"    "\\eighthrest"  0.00\pt 6.67\pt 5.00\pt 14.21\pt        
+        "4"    "\\sixteenthrest"       0.00\pt 7.76\pt 0.00\pt 14.21\pt        
+        "5"    "\\thirtysecondrest"    0.00\pt 8.75\pt 0.00\pt 19.21\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 9.38\pt 0.00\pt 24.21\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 10.45\pt        0.00\pt 29.21\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 5.50\pt -7.50\pt        7.50\pt 
+        "0"    "\\natural"     0.00\pt 3.33\pt -7.50\pt        7.50\pt 
+        "-1"   "\\flat"        -0.60\pt        4.00\pt -2.50\pt        10.00\pt        
+        "-2"   "\\flatflat"    -0.60\pt        7.25\pt -2.50\pt        10.00\pt        
+        "2"    "\\sharpsharp"  0.00\pt 5.00\pt -2.50\pt        2.50\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 2.25\pt -1.12\pt        1.12\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 2.25\pt -2.50\pt        2.50\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 10.00\pt        -2.75\pt        2.75\pt 
+        "-1l"  "\\brevisledger"        -2.50\pt        12.50\pt        -0.50\pt        0.50\pt 
+        "-2"   "\\longaball"   0.00\pt 10.00\pt        -2.75\pt        2.75\pt 
+        "-2l"  "\\longaledger" -2.50\pt        12.50\pt        -0.50\pt        0.50\pt 
+        "0"    "\\wholeball"   0.00\pt 9.90\pt -2.75\pt        2.75\pt 
+        "0l"   "\\wholeledger" -2.48\pt        12.38\pt        -0.50\pt        0.50\pt 
+        "1"    "\\halfball"    0.00\pt 6.89\pt -2.75\pt        2.75\pt 
+        "1l"   "\\halfledger"  -1.72\pt        8.61\pt -0.50\pt        0.50\pt 
+        "2"    "\\quartball"   0.00\pt 6.61\pt -2.75\pt        2.75\pt 
+        "2l"   "\\quartledger" -1.65\pt        8.26\pt -0.50\pt        0.50\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -6.63\pt        6.63\pt -0.38\pt        7.25\pt 
+        "dfermata"     "\\dfermata"    -6.63\pt        6.63\pt -7.25\pt        0.38\pt 
+        "sforzato"     "\\sforzatoaccent"      -4.50\pt        4.50\pt -2.50\pt        2.50\pt 
+        "staccato"     "\\staccato"    -0.75\pt        0.75\pt -0.75\pt        0.75\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -1.00\pt        1.00\pt -0.20\pt        5.00\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -1.00\pt        1.00\pt -5.00\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -4.50\pt        4.50\pt -0.30\pt        0.30\pt 
+        "umarcato"     "\\umarcato"    -2.50\pt        2.50\pt 0.00\pt 5.50\pt 
+        "dmarcato"     "\\dmarcato"    -2.50\pt        2.50\pt -5.50\pt        0.00\pt 
+        "open" "\\ouvert"      -2.00\pt        2.00\pt -2.50\pt        2.50\pt 
+        "stopped"      "\\plusstop"    -2.75\pt        2.75\pt -2.75\pt        2.75\pt 
+        "upbow"        "\\upbow"       -3.25\pt        3.25\pt 0.00\pt 10.40\pt        
+        "downbow"      "\\downbow"     -3.75\pt        3.75\pt 0.00\pt 6.67\pt 
+        "turn" "\\turn"        -5.47\pt        5.47\pt -2.65\pt        2.65\pt 
+        "trill"        "\\trill"       -5.00\pt        5.00\pt 0.00\pt 11.25\pt        
+        "upedalheel"   "\\upedalheel"  -2.50\pt        2.50\pt -2.50\pt        3.33\pt 
+        "dpedalheel"   "\\dpedalheel"  -2.50\pt        2.50\pt -3.33\pt        2.50\pt 
+        "upedaltoe"    "\\upedaltoe"   -2.50\pt        2.50\pt 0.00\pt 7.50\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -2.50\pt        2.50\pt -7.50\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -2.67\pt        2.67\pt -2.67\pt        2.67\pt 
+        "trilelement"  "\\trilelement" -2.50\pt        1.31\pt -2.75\pt        2.75\pt 
+        "prall"        "\\prall"       -4.40\pt        4.40\pt -2.75\pt        2.75\pt 
+        "mordent"      "\\mordent"     -4.40\pt        4.40\pt -2.75\pt        2.75\pt 
+        "prallprall"   "\\prallprall"  -6.31\pt        6.31\pt -2.75\pt        2.75\pt 
+        "prallmordent" "\\prallmordent"        -6.31\pt        6.31\pt -2.75\pt        2.75\pt 
+        "upprall"      "\\upprall"     -6.31\pt        6.31\pt -2.75\pt        2.75\pt 
+        "downprall"    "\\downprall"   -6.31\pt        6.31\pt -2.75\pt        2.75\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.25\pt        6.17\pt -15.33\pt       0.25\pt 
+        "u4"   "\\sixteenthflag"       -0.25\pt        6.17\pt -17.83\pt       0.25\pt 
+        "u5"   "\\thirtysecondflag"    -0.25\pt        6.17\pt -21.58\pt       0.25\pt 
+        "u6"   "\\sixtyfourthflag"     -0.25\pt        6.17\pt -26.58\pt       0.25\pt 
+        "d3"   "\\deighthflag" -0.25\pt        6.83\pt -0.25\pt        14.58\pt        
+        "d4"   "\\dsixteenthflag"      -0.25\pt        6.83\pt -0.25\pt        15.33\pt        
+        "d5"   "\\dthirtysecondflag"   -0.25\pt        6.83\pt -0.25\pt        19.58\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.25\pt        6.83\pt -0.25\pt        22.08\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -5.00\pt        18.61\pt        -10.00\pt       10.00\pt        
+        "alto_change"  "\\caltoclef"   -4.00\pt        14.89\pt        -8.00\pt        8.00\pt 
+        "bass" "\\bassclef"    -2.50\pt        18.00\pt        -12.50\pt       5.00\pt 
+        "bass_change"  "\\cbassclef"   -2.00\pt        14.40\pt        -10.00\pt       4.00\pt 
+        "violin"       "\\violinclef"  -4.36\pt        18.69\pt        -15.00\pt       25.00\pt        
+        "violin_change"        "\\cviolinclef" -3.79\pt        14.65\pt        -12.00\pt       20.00\pt        
+        }
+    %  } % $name
diff --git a/init/feta23.ly b/init/feta23.ly
new file mode 100644 (file)
index 0000000..2375eb3
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta23.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 8.44\pt -3.52\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 8.44\pt 0.00\pt 3.52\pt 
+        "0o"   "\\outsidewholerest"    -3.52\pt        11.95\pt        -3.52\pt        0.56\pt 
+        "1o"   "\\outsidehalfrest"     -3.52\pt        11.95\pt        -0.56\pt        3.52\pt 
+        "2"    "\\quartrest"   0.00\pt 6.08\pt 4.22\pt 20.25\pt        
+        "3"    "\\eighthrest"  0.00\pt 7.50\pt 5.62\pt 15.98\pt        
+        "4"    "\\sixteenthrest"       0.00\pt 8.73\pt 0.00\pt 15.98\pt        
+        "5"    "\\thirtysecondrest"    0.00\pt 9.85\pt 0.00\pt 21.61\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 10.56\pt        0.00\pt 27.23\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 11.75\pt        0.00\pt 32.86\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 6.19\pt -8.44\pt        8.44\pt 
+        "0"    "\\natural"     0.00\pt 3.75\pt -8.44\pt        8.44\pt 
+        "-1"   "\\flat"        -0.68\pt        4.50\pt -2.81\pt        11.25\pt        
+        "-2"   "\\flatflat"    -0.68\pt        8.16\pt -2.81\pt        11.25\pt        
+        "2"    "\\sharpsharp"  0.00\pt 5.62\pt -2.81\pt        2.81\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 2.53\pt -1.27\pt        1.27\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 2.53\pt -2.81\pt        2.81\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 11.25\pt        -3.09\pt        3.09\pt 
+        "-1l"  "\\brevisledger"        -2.81\pt        14.06\pt        -0.56\pt        0.56\pt 
+        "-2"   "\\longaball"   0.00\pt 11.25\pt        -3.09\pt        3.09\pt 
+        "-2l"  "\\longaledger" -2.81\pt        14.06\pt        -0.56\pt        0.56\pt 
+        "0"    "\\wholeball"   0.00\pt 11.14\pt        -3.09\pt        3.09\pt 
+        "0l"   "\\wholeledger" -2.78\pt        13.92\pt        -0.56\pt        0.56\pt 
+        "1"    "\\halfball"    0.00\pt 7.75\pt -3.09\pt        3.09\pt 
+        "1l"   "\\halfledger"  -1.94\pt        9.69\pt -0.56\pt        0.56\pt 
+        "2"    "\\quartball"   0.00\pt 7.43\pt -3.09\pt        3.09\pt 
+        "2l"   "\\quartledger" -1.86\pt        9.29\pt -0.56\pt        0.56\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -7.45\pt        7.45\pt -0.42\pt        8.16\pt 
+        "dfermata"     "\\dfermata"    -7.45\pt        7.45\pt -8.16\pt        0.42\pt 
+        "sforzato"     "\\sforzatoaccent"      -5.06\pt        5.06\pt -2.81\pt        2.81\pt 
+        "staccato"     "\\staccato"    -0.84\pt        0.84\pt -0.84\pt        0.84\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -1.13\pt        1.13\pt -0.20\pt        5.63\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -1.13\pt        1.13\pt -5.63\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -5.06\pt        5.06\pt -0.34\pt        0.34\pt 
+        "umarcato"     "\\umarcato"    -2.81\pt        2.81\pt 0.00\pt 6.19\pt 
+        "dmarcato"     "\\dmarcato"    -2.81\pt        2.81\pt -6.19\pt        0.00\pt 
+        "open" "\\ouvert"      -2.25\pt        2.25\pt -2.81\pt        2.81\pt 
+        "stopped"      "\\plusstop"    -3.09\pt        3.09\pt -3.09\pt        3.09\pt 
+        "upbow"        "\\upbow"       -3.66\pt        3.66\pt 0.00\pt 11.70\pt        
+        "downbow"      "\\downbow"     -4.22\pt        4.22\pt 0.00\pt 7.50\pt 
+        "turn" "\\turn"        -6.15\pt        6.15\pt -2.98\pt        2.98\pt 
+        "trill"        "\\trill"       -5.62\pt        5.62\pt 0.00\pt 12.66\pt        
+        "upedalheel"   "\\upedalheel"  -2.81\pt        2.81\pt -2.81\pt        3.75\pt 
+        "dpedalheel"   "\\dpedalheel"  -2.81\pt        2.81\pt -3.75\pt        2.81\pt 
+        "upedaltoe"    "\\upedaltoe"   -2.81\pt        2.81\pt 0.00\pt 8.44\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -2.81\pt        2.81\pt -8.44\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -3.00\pt        3.00\pt -3.00\pt        3.00\pt 
+        "trilelement"  "\\trilelement" -2.81\pt        1.47\pt -3.09\pt        3.09\pt 
+        "prall"        "\\prall"       -4.95\pt        4.95\pt -3.09\pt        3.09\pt 
+        "mordent"      "\\mordent"     -4.95\pt        4.95\pt -3.09\pt        3.09\pt 
+        "prallprall"   "\\prallprall"  -7.09\pt        7.09\pt -3.09\pt        3.09\pt 
+        "prallmordent" "\\prallmordent"        -7.09\pt        7.09\pt -3.09\pt        3.09\pt 
+        "upprall"      "\\upprall"     -7.09\pt        7.09\pt -3.09\pt        3.09\pt 
+        "downprall"    "\\downprall"   -7.09\pt        7.09\pt -3.09\pt        3.09\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.28\pt        6.94\pt -17.24\pt       0.28\pt 
+        "u4"   "\\sixteenthflag"       -0.28\pt        6.94\pt -20.05\pt       0.28\pt 
+        "u5"   "\\thirtysecondflag"    -0.28\pt        6.94\pt -24.27\pt       0.28\pt 
+        "u6"   "\\sixtyfourthflag"     -0.28\pt        6.94\pt -29.90\pt       0.28\pt 
+        "d3"   "\\deighthflag" -0.28\pt        7.68\pt -0.28\pt        16.40\pt        
+        "d4"   "\\dsixteenthflag"      -0.28\pt        7.68\pt -0.28\pt        17.24\pt        
+        "d5"   "\\dthirtysecondflag"   -0.28\pt        7.68\pt -0.28\pt        22.02\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.28\pt        7.68\pt -0.28\pt        24.83\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -5.62\pt        20.94\pt        -11.25\pt       11.25\pt        
+        "alto_change"  "\\caltoclef"   -4.50\pt        16.75\pt        -9.00\pt        9.00\pt 
+        "bass" "\\bassclef"    -2.81\pt        20.25\pt        -14.06\pt       5.62\pt 
+        "bass_change"  "\\cbassclef"   -2.25\pt        16.20\pt        -11.25\pt       4.50\pt 
+        "violin"       "\\violinclef"  -4.90\pt        21.02\pt        -16.88\pt       28.12\pt        
+        "violin_change"        "\\cviolinclef" -4.26\pt        16.48\pt        -13.50\pt       22.50\pt        
+        }
+    %  } % $name
diff --git a/init/feta26.ly b/init/feta26.ly
new file mode 100644 (file)
index 0000000..7784121
--- /dev/null
@@ -0,0 +1,88 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta26.log
+% name=\symboltables {
+    "rests"     = \table {
+        "0"    "\\wholerest"   0.00\pt 9.75\pt -4.06\pt        0.00\pt 
+        "1"    "\\halfrest"    0.00\pt 9.75\pt 0.00\pt 4.06\pt 
+        "0o"   "\\outsidewholerest"    -4.06\pt        13.81\pt        -4.06\pt        0.65\pt 
+        "1o"   "\\outsidehalfrest"     -4.06\pt        13.81\pt        -0.65\pt        4.06\pt 
+        "2"    "\\quartrest"   0.00\pt 7.02\pt 4.88\pt 23.40\pt        
+        "3"    "\\eighthrest"  0.00\pt 8.67\pt 6.50\pt 18.47\pt        
+        "4"    "\\sixteenthrest"       0.00\pt 10.08\pt        0.00\pt 18.47\pt        
+        "5"    "\\thirtysecondrest"    0.00\pt 11.38\pt        0.00\pt 24.97\pt        
+        "6"    "\\sixtyfourthrest"     0.00\pt 12.20\pt        0.00\pt 31.47\pt        
+        "7"    "\\hundredtwentyeighthrest"     0.00\pt 13.58\pt        0.00\pt 37.97\pt        
+        }
+    "accidentals"       = \table {
+        "1"    "\\sharp"       0.00\pt 7.15\pt -9.75\pt        9.75\pt 
+        "0"    "\\natural"     0.00\pt 4.33\pt -9.75\pt        9.75\pt 
+        "-1"   "\\flat"        -0.78\pt        5.20\pt -3.25\pt        13.00\pt        
+        "-2"   "\\flatflat"    -0.78\pt        9.42\pt -3.25\pt        13.00\pt        
+        "2"    "\\sharpsharp"  0.00\pt 6.50\pt -3.25\pt        3.25\pt 
+        }
+    "dots"      = \table {
+        "dot"  "\\dot" 0.00\pt 2.92\pt -1.46\pt        1.46\pt 
+        "repeatcolon"  "\\repeatcolon" 0.00\pt 2.92\pt -3.25\pt        3.25\pt 
+        }
+    "balls"     = \table {
+        "-1"   "\\brevisball"  0.00\pt 13.00\pt        -3.58\pt        3.58\pt 
+        "-1l"  "\\brevisledger"        -3.25\pt        16.25\pt        -0.65\pt        0.65\pt 
+        "-2"   "\\longaball"   0.00\pt 13.00\pt        -3.58\pt        3.58\pt 
+        "-2l"  "\\longaledger" -3.25\pt        16.25\pt        -0.65\pt        0.65\pt 
+        "0"    "\\wholeball"   0.00\pt 12.87\pt        -3.58\pt        3.58\pt 
+        "0l"   "\\wholeledger" -3.22\pt        16.09\pt        -0.65\pt        0.65\pt 
+        "1"    "\\halfball"    0.00\pt 8.95\pt -3.58\pt        3.58\pt 
+        "1l"   "\\halfledger"  -2.24\pt        11.19\pt        -0.65\pt        0.65\pt 
+        "2"    "\\quartball"   0.00\pt 8.59\pt -3.58\pt        3.58\pt 
+        "2l"   "\\quartledger" -2.15\pt        10.73\pt        -0.65\pt        0.65\pt 
+        }
+    "scripts"   = \table {
+        "ufermata"     "\\ufermata"    -8.61\pt        8.61\pt -0.49\pt        9.43\pt 
+        "dfermata"     "\\dfermata"    -8.61\pt        8.61\pt -9.43\pt        0.49\pt 
+        "sforzato"     "\\sforzatoaccent"      -5.85\pt        5.85\pt -3.25\pt        3.25\pt 
+        "staccato"     "\\staccato"    -0.98\pt        0.98\pt -0.98\pt        0.98\pt 
+        "ustaccatissimo"       "\\ustaccatissimo"      -1.30\pt        1.30\pt -0.20\pt        6.50\pt 
+        "dstaccatissimo"       "\\dstaccatissimo"      -1.30\pt        1.30\pt -6.50\pt        0.20\pt 
+        "tenuto"       "\\tenuto"      -5.85\pt        5.85\pt -0.39\pt        0.39\pt 
+        "umarcato"     "\\umarcato"    -3.25\pt        3.25\pt 0.00\pt 7.15\pt 
+        "dmarcato"     "\\dmarcato"    -3.25\pt        3.25\pt -7.15\pt        0.00\pt 
+        "open" "\\ouvert"      -2.60\pt        2.60\pt -3.25\pt        3.25\pt 
+        "stopped"      "\\plusstop"    -3.58\pt        3.58\pt -3.58\pt        3.58\pt 
+        "upbow"        "\\upbow"       -4.23\pt        4.23\pt 0.00\pt 13.52\pt        
+        "downbow"      "\\downbow"     -4.88\pt        4.88\pt 0.00\pt 8.67\pt 
+        "turn" "\\turn"        -7.11\pt        7.11\pt -3.44\pt        3.44\pt 
+        "trill"        "\\trill"       -6.50\pt        6.50\pt 0.00\pt 14.62\pt        
+        "upedalheel"   "\\upedalheel"  -3.25\pt        3.25\pt -3.25\pt        4.33\pt 
+        "dpedalheel"   "\\dpedalheel"  -3.25\pt        3.25\pt -4.33\pt        3.25\pt 
+        "upedaltoe"    "\\upedaltoe"   -3.25\pt        3.25\pt 0.00\pt 9.75\pt 
+        "dpedaltoe"    "\\dpedaltoe"   -3.25\pt        3.25\pt -9.75\pt        0.00\pt 
+        "flageolet"    "\\flageolet"   -3.47\pt        3.47\pt -3.47\pt        3.47\pt 
+        "trilelement"  "\\trilelement" -3.25\pt        1.70\pt -3.58\pt        3.58\pt 
+        "prall"        "\\prall"       -5.72\pt        5.72\pt -3.58\pt        3.58\pt 
+        "mordent"      "\\mordent"     -5.72\pt        5.72\pt -3.58\pt        3.58\pt 
+        "prallprall"   "\\prallprall"  -8.20\pt        8.20\pt -3.58\pt        3.58\pt 
+        "prallmordent" "\\prallmordent"        -8.20\pt        8.20\pt -3.58\pt        3.58\pt 
+        "upprall"      "\\upprall"     -8.20\pt        8.20\pt -3.58\pt        3.58\pt 
+        "downprall"    "\\downprall"   -8.20\pt        8.20\pt -3.58\pt        3.58\pt 
+        }
+    "flags"     = \table {
+        "u3"   "\\eighthflag"  -0.33\pt        8.02\pt -19.92\pt       0.33\pt 
+        "u4"   "\\sixteenthflag"       -0.33\pt        8.02\pt -23.17\pt       0.33\pt 
+        "u5"   "\\thirtysecondflag"    -0.33\pt        8.02\pt -28.05\pt       0.33\pt 
+        "u6"   "\\sixtyfourthflag"     -0.33\pt        8.02\pt -34.55\pt       0.33\pt 
+        "d3"   "\\deighthflag" -0.33\pt        8.88\pt -0.33\pt        18.95\pt        
+        "d4"   "\\dsixteenthflag"      -0.33\pt        8.88\pt -0.33\pt        19.92\pt        
+        "d5"   "\\dthirtysecondflag"   -0.33\pt        8.88\pt -0.33\pt        25.45\pt        
+        "d6"   "\\dsixtyfourthflag"    -0.33\pt        8.88\pt -0.33\pt        28.70\pt        
+        }
+    "clefs"     = \table {
+        "alto" "\\altoclef"    -6.50\pt        24.19\pt        -13.00\pt       13.00\pt        
+        "alto_change"  "\\caltoclef"   -5.20\pt        19.36\pt        -10.40\pt       10.40\pt        
+        "bass" "\\bassclef"    -3.25\pt        23.40\pt        -16.25\pt       6.50\pt 
+        "bass_change"  "\\cbassclef"   -2.60\pt        18.72\pt        -13.00\pt       5.20\pt 
+        "violin"       "\\violinclef"  -5.66\pt        24.29\pt        -19.50\pt       32.50\pt        
+        "violin_change"        "\\cviolinclef" -4.92\pt        19.04\pt        -15.60\pt       26.00\pt        
+        }
+    %  } % $name
index c609918c57c42a3227e97c2049bf8b160cbebf3b..1fb4992c05c4fa66181d22626b77635d19fadc6f 100644 (file)
@@ -6,7 +6,7 @@ breve = \duration { -1 0 }
 longa = \duration { -2 0 }
 
 \include "dynamic.ly"
-\include "dutch.ly" 
+\include "nederlands.ly"               % dutch
 \include "script.ly"
 
 
index 13c7ce38ba33c9c3ead3d7cc0db824187dfb2e76..9d878ca7bbf2bf305432902ee142f40c303b8bd6 100644 (file)
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
 Gourlay = 1.0
-\include "dutch.ly" 
+\include "nederlands.ly" 
 
 \include "paper16.ly"
 
index 169a97dc68e5ce385d9c79ff1be2d551a4246a7d..1b6aa6bf03cfebb27c99af4bc38d8c49e9681791 100644 (file)
@@ -3,7 +3,7 @@
 # Generated automatically by wild-perl 0.1
 # input/Makefile.am.wild
 
-LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly tril.ly twinkle-pop.ly twinkle.ly
+LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly test-lyrics.ly tril.ly twinkle-pop.ly twinkle.ly
 TEXFILES = dummy.tex
 M4FILES = dummy.m4
 EXTRA_DIST = Makefile.am.wild TODO $(LYFILES) $(TEXFILES) $(M4FILES)
@@ -13,4 +13,4 @@ OUTFILES = $(M4FILES:%.m4=%)
 default: all $(OUTFILES)
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index e5e3228abd14de20081cc295ce301c8d1ec18026..b250825e4c101eaacf30444f82c9607b4ea7a32a 100644 (file)
@@ -99,7 +99,7 @@ YACC = @YACC@
 ZIP = @ZIP@
 absolute_builddir = @absolute_builddir@
 
-LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly tril.ly twinkle-pop.ly twinkle.ly
+LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly test-lyrics.ly tril.ly twinkle-pop.ly twinkle.ly
 TEXFILES = dummy.tex
 M4FILES = dummy.m4
 EXTRA_DIST = Makefile.am.wild TODO $(LYFILES) $(TEXFILES) $(M4FILES)
@@ -197,7 +197,7 @@ mostlyclean distclean maintainer-clean
 default: all $(OUTFILES)
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/input/test-lyrics.ly b/input/test-lyrics.ly
new file mode 100644 (file)
index 0000000..7fb5d45
--- /dev/null
@@ -0,0 +1,10 @@
+
+\score
+{
+       < \type Staff 
+               \melodic { \octave c'; c4 e4 g4 e4  c4 e4 g4 e4  c4 e4 g4 e4  c4 e4 g4 e4  }
+       \type Lyrics
+               \lyric { LLLLLLLLLooooongggggggg2 Syyyyyyyyyyyyylllllllaaaaaabbble2 LLLLLLLLLooooongggggggg2 Syyyyyyyyyyyyylllllllaaaaaabbble2 LLLLLLLLLooooongggggggg2 Syyyyyyyyyyyyylllllllaaaaaabbble2 }
+       >
+}
+       
index 527470b7dd1011c813e2b7569ab903e4d18db744..5554677441da4f5d283fbedc906e1c39f0c70cea 100644 (file)
@@ -21,5 +21,7 @@ MODULE_CXXFLAGS += -D_REENTRANT
 
 EXTRA_DIST = Makefile.am.wild
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 1bd40b765febb44b1f27ab5f5613f0f3a4b1d168..3185791ed7d9b1bd433ffa013e300be3228bc659 100644 (file)
@@ -18,3 +18,5 @@ MODULE_CXXFLAGS += -D_REENTRANT
 
 EXTRA_DIST = Makefile.am.wild
 
+distclean-local:
+       -rm -rf .deps
index 76b5a65adfecfb018c06ae7d554f9c1990a1d6f4..e796b2ea38ec6628e6f97dc856ea709f0bc58458 100644 (file)
@@ -507,7 +507,7 @@ mostlyclean:  mostlyclean-recursive mostlyclean-am
 
 clean:  clean-recursive clean-am
 
-distclean:  distclean-recursive distclean-am
+distclean:  distclean-recursive distclean-am distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -534,8 +534,10 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
 MODULE_CXXFLAGS += -D_REENTRANT
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index caad0633b5d7d052f7efef5658378da1f883a37c..25185ebf6b7a367e9bf01c2024765d1e90b6eadf 100644 (file)
@@ -8,4 +8,4 @@ noinst_HEADERS = binary-source-file.hh duration-convert.hh duration.hh file-stor
 EXTRA_DIST = Makefile.am.wild
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index d265d91c2d04e47492bc46114379a00e0a2d1bec..2efb0f8fc0187bcf0737c8a0151d05279c54891a 100644 (file)
@@ -218,7 +218,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index b245e5a9c6fa7f62bc6ac64dd58c1b918aa1b95d..7262ac7da7ed16e093f2624b504c9fa69091ec44 100644 (file)
@@ -16,7 +16,7 @@ bin_PROGRAMS = lilypond
 # ignoring wildcards for `lexer.cc'
 # ignoring wildcards for `parser.cc'
  
-lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc elem-group.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-item.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc linear-programming.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy
+lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-elem.cc horizontal-group-item.cc horizontal-vertical-group-elem.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc linear-programming.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc rod.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc separating-group-spanner.cc separating-line-group-grav.cc single-malt-grouping-item.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-elem.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy
 noinst_HEADERS = parser.hh
 
 #lilypond_LDADD = -llily -lflower @LEXLIB@
@@ -24,9 +24,6 @@ lilypond_LDADD = $(top_builddir)/lib/liblily.la $(top_builddir)/flower/libflower
 
 lilypond_LDFLAGS = -L$(absolute_builddir)/lib/.libs -L$(absolute_builddir)/flower/.libs
 
-
-
 INCLUDES =  -I$(srcdir)/include -I$(srcdir)/../lib/include -I$(srcdir)/../flower/include 
 
 EXTRA_DIST = Makefile.am.wild GNUmakefile Stable.make VERSION
@@ -51,5 +48,7 @@ all-am: Makefile $(PROGRAMS) wild-check
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index b7584ca7bfeed32006bbdddf1d70a67875c5a022..f5050d47d044557b31c34355970cf829a94e00de 100644 (file)
@@ -20,9 +20,6 @@ lilypond_LDADD = $(top_builddir)/lib/liblily.la $(top_builddir)/flower/libflower
 
 lilypond_LDFLAGS = -L$(absolute_builddir)/lib/.libs -L$(absolute_builddir)/flower/.libs
 
-
-
 INCLUDES =  -I$(srcdir)/include -I$(srcdir)/../lib/include -I$(srcdir)/../flower/include 
 
 EXTRA_DIST = Makefile.am.wild GNUmakefile Stable.make VERSION
@@ -47,3 +44,5 @@ all-am: Makefile $(PROGRAMS) wild-check
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
 
+distclean-local:
+       -rm -rf .deps
index 7440c2f3e87945aa899589ee6c556f4648ba9e12..f847d9f7f35dc906ca50c595138731c10e48fbef 100644 (file)
@@ -112,7 +112,7 @@ bin_PROGRAMS = lilypond
 # ignoring wildcards for `lexer.cc'
 # ignoring wildcards for `parser.cc'
 
-lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc elem-group.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-item.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc linear-programming.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy
+lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-elem.cc horizontal-group-item.cc horizontal-vertical-group-elem.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc linear-programming.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc rod.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc separating-group-spanner.cc separating-line-group-grav.cc single-malt-grouping-item.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-elem.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy
 noinst_HEADERS = parser.hh
 
 #lilypond_LDADD = -llily -lflower @LEXLIB@
@@ -141,29 +141,31 @@ beam-swallow-trans.o beam.o bow.o boxes.o break-align-item.o break.o \
 change-iterator.o change-translator.o chord-iterator.o clef-grav.o \
 clef-item.o col-info.o colhpos.o collision-grav.o collision.o \
 command-request.o crescendo.o debug.o dimen.o directional-spanner.o \
-dot-column-grav.o dot-column.o dots.o dynamic-grav.o elem-group.o \
-engraver-group.o engraver.o general-script-def.o global-translator.o \
-gourlay-breaking.o graphical-element.o grouping.o head-grav.o header.o \
-horizontal-align-item.o horizontal-group-item.o \
-horizontal-vertical-group-item.o idealspacing.o identifier.o \
-ineq-constrained-qp.o item.o key-grav.o key-item.o key-performer.o \
-key.o keyword.o leastsquares.o lexerinit.o lily-version.o \
-line-group-grav.o line-spacer.o linear-programming.o local-key-grav.o \
-local-key-item.o lookup.o lyric-grav.o lyric-performer.o main.o \
-meter-grav.o meter-performer.o meter.o midi-def.o midi-item.o \
-midi-stream.o midi-walker.o misc.o molecule.o music-iterator.o \
-music-list.o music-output-def.o music.o musical-request.o \
-my-lily-lexer.o my-lily-parser.o note-column.o note-head.o \
-note-performer.o note.o notename-table.o offset.o outputter.o p-col.o \
-p-score.o paper-def.o performance.o performer-group-performer.o \
-performer.o pitch-squash-grav.o plet-engraver.o plet-spanner.o \
-plet-swallow-engraver.o priority-halign-grav.o property-iterator.o \
-ps-plet.o qlp.o qlpsolve.o request-iterator.o request.o \
-rest-collision-grav.o rest-collision.o rest-grav.o rest.o \
-rhythmic-column-grav.o rhythmic-head.o score-bar.o score-column.o \
-score-elem-info.o score-elem.o score-grav.o score-performer.o \
-score-priority-grav.o score.o scoreline.o scores.o script-column.o \
-script-def.o script-grav.o script.o slur-grav.o slur.o span-bar-grav.o \
+dot-column-grav.o dot-column.o dots.o dynamic-grav.o engraver-group.o \
+engraver.o general-script-def.o global-translator.o gourlay-breaking.o \
+graphical-element.o grouping.o head-grav.o header.o \
+horizontal-align-item.o horizontal-group-elem.o horizontal-group-item.o \
+horizontal-vertical-group-elem.o horizontal-vertical-group-item.o \
+idealspacing.o identifier.o ineq-constrained-qp.o item.o key-grav.o \
+key-item.o key-performer.o key.o keyword.o leastsquares.o lexerinit.o \
+lily-version.o line-group-grav.o line-spacer.o linear-programming.o \
+local-key-grav.o local-key-item.o lookup.o lyric-grav.o \
+lyric-performer.o main.o meter-grav.o meter-performer.o meter.o \
+midi-def.o midi-item.o midi-stream.o midi-walker.o misc.o molecule.o \
+music-iterator.o music-list.o music-output-def.o music.o \
+musical-request.o my-lily-lexer.o my-lily-parser.o note-column.o \
+note-head.o note-performer.o note.o notename-table.o offset.o \
+outputter.o p-col.o p-score.o paper-def.o performance.o \
+performer-group-performer.o performer.o pitch-squash-grav.o \
+plet-engraver.o plet-spanner.o plet-swallow-engraver.o \
+priority-halign-grav.o property-iterator.o ps-plet.o qlp.o qlpsolve.o \
+request-iterator.o request.o rest-collision-grav.o rest-collision.o \
+rest-grav.o rest.o rhythmic-column-grav.o rhythmic-head.o rod.o \
+score-bar.o score-column.o score-elem-info.o score-elem.o score-grav.o \
+score-performer.o score-priority-grav.o score.o scoreline.o scores.o \
+script-column.o script-def.o script-grav.o script.o \
+separating-group-spanner.o separating-line-group-grav.o \
+single-malt-grouping-item.o slur-grav.o slur.o span-bar-grav.o \
 span-bar.o span-score-bar-grav.o span-score-bar.o spanner.o \
 spring-spacer.o staff-info.o staff-performer.o staff-side.o \
 staff-sym-grav.o staff-sym.o stem-grav.o stem-info.o stem.o \
@@ -174,8 +176,8 @@ text-item.o text-spanner.o tie-grav.o tie.o time-description.o \
 timing-grav.o timing-translator.o translation-property.o \
 translator-ctors.o translator-group.o translator.o type-swallow-trans.o \
 version.o vertical-align-elem.o vertical-align-grav.o \
-vertical-align-spanner.o vertical-group-spanner.o voice-iterator.o \
-warn.o word-wrap.o lexer.o parser.o
+vertical-align-spanner.o vertical-group-elem.o vertical-group-spanner.o \
+voice-iterator.o warn.o word-wrap.o lexer.o parser.o
 lilypond_DEPENDENCIES =  $(top_builddir)/lib/liblily.la \
 $(top_builddir)/flower/libflower.la
 LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
@@ -389,7 +391,7 @@ abbrev.o: abbrev.cc include/abbrev.hh include/item.hh include/boxes.hh \
        include/direction.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/beam.hh include/directional-spanner.hh \
-       include/spanner.hh ../flower/include/plist.hh \
+       include/spanner.hh include/rod.hh ../flower/include/plist.hh \
        ../flower/include/list.hh ../flower/include/list.icc \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
@@ -429,9 +431,11 @@ abbreviation-beam-engraver.o: abbreviation-beam-engraver.cc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/abbreviation-beam.hh include/beam.hh \
        include/directional-spanner.hh include/spanner.hh \
-       include/musical-request.hh include/misc.hh include/grouping.hh
+       include/rod.hh include/musical-request.hh include/misc.hh \
+       include/grouping.hh
 abbreviation-beam.o: abbreviation-beam.cc include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -443,7 +447,7 @@ abbreviation-beam.o: abbreviation-beam.cc include/p-col.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -451,7 +455,7 @@ abbreviation-beam.o: abbreviation-beam.cc include/p-col.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/dimen.hh \
+       ../flower/include/plist.icc include/rod.hh include/dimen.hh \
        include/abbreviation-beam.hh include/beam.hh \
        include/directional-spanner.hh include/spanner.hh \
        include/misc.hh ../lib/include/moment.hh \
@@ -579,12 +583,12 @@ axis-group-item.o: axis-group-item.cc include/axis-group-item.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/drul-array.hh include/direction.hh \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh ../flower/include/plist.hh \
+       include/horizontal-group-elem.hh ../flower/include/plist.hh \
        ../flower/include/list.hh ../flower/include/list.icc \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc
+       ../flower/include/plist.icc include/rod.hh
 axis-group-spanner.o: axis-group-spanner.cc \
        include/axis-group-spanner.hh include/spanner.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
@@ -599,16 +603,17 @@ axis-group-spanner.o: axis-group-spanner.cc \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/axis-group-element.hh \
+       include/direction.hh include/rod.hh \
+       include/axis-group-element.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-item.hh ../flower/include/plist.hh \
-       ../flower/include/list.hh ../flower/include/list.icc \
-       ../flower/include/cursor.hh ../flower/include/link.hh \
-       ../flower/include/link.icc ../flower/include/pcursor.hh \
-       ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-item.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc
 axis.o: axis.cc include/axes.hh ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -636,7 +641,9 @@ bar-column-grav.o: bar-column-grav.cc include/bar-column-grav.hh \
        include/score-elem.hh ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        include/axis-group-administration.hh include/item.hh \
-       include/boxes.hh include/drul-array.hh include/elem-group.hh \
+       include/boxes.hh include/drul-array.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/script.hh include/staff-side.hh include/bar.hh
 bar-column.o: bar-column.cc include/bar.hh include/item.hh \
        include/boxes.hh ../flower/include/fproto.hh \
@@ -655,7 +662,9 @@ bar-column.o: bar-column.cc include/bar.hh include/item.hh \
        include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh
 bar-grav.o: bar-grav.cc include/bar-grav.hh include/engraver.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -758,10 +767,10 @@ beam-grav.o: beam-grav.cc ../lib/include/duration-convert.hh \
        ../flower/include/pcursor.hh ../flower/include/cursor.icc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/beam.hh include/directional-spanner.hh \
-       include/spanner.hh include/musical-request.hh \
+       include/spanner.hh include/rod.hh include/musical-request.hh \
        include/grouping.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh
 beam-swallow-trans.o: beam-swallow-trans.cc \
        include/type-swallow-trans.hh include/translator.hh \
@@ -781,8 +790,9 @@ beam-swallow-trans.o: beam-swallow-trans.cc \
        ../flower/include/interval.hh include/direction.hh \
        ../lib/include/duration.hh ../lib/include/plet.hh
 beam.o: beam.cc include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh ../flower/include/varray.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh \
@@ -792,7 +802,7 @@ beam.o: beam.cc include/p-col.hh include/horizontal-group-item.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -800,9 +810,9 @@ beam.o: beam.cc include/p-col.hh include/horizontal-group-item.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/dimen.hh include/beam.hh \
-       include/directional-spanner.hh include/spanner.hh \
-       include/abbreviation-beam.hh include/misc.hh \
+       ../flower/include/plist.icc include/rod.hh include/dimen.hh \
+       include/beam.hh include/directional-spanner.hh \
+       include/spanner.hh include/abbreviation-beam.hh include/misc.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
        ../flower/include/scalar.hh include/grouping.hh \
        include/minterval.hh include/debug.hh \
@@ -825,7 +835,7 @@ bow.o: bow.cc include/bow.hh include/directional-spanner.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/paper-def.hh \
+       include/direction.hh include/rod.hh include/paper-def.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
        include/music-output-def.hh ../flower/include/plist.hh \
        ../flower/include/list.hh ../flower/include/list.icc \
@@ -843,35 +853,35 @@ boxes.o: boxes.cc include/boxes.hh ../flower/include/fproto.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/varray.hh
 break-align-item.o: break-align-item.cc include/break-align-item.hh \
-       include/horizontal-align-item.hh include/elem-group.hh \
-       include/score-elem.hh ../flower/include/parray.hh \
-       ../flower/include/varray.hh \
-       ../flower/include/virtual-methods.hh \
-       ../flower/include/directed-graph.hh \
-       include/graphical-element.hh include/offset.hh \
-       ../flower/include/real.hh include/axes.hh \
+       include/horizontal-align-item.hh include/item.hh \
+       include/boxes.hh ../flower/include/fproto.hh \
+       ../flower/include/real.hh ../flower/include/interval.hh \
+       ../flower/include/compare.hh include/offset.hh include/axes.hh \
        ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
-       ../flower/include/fproto.hh ../flower/include/string-handle.hh \
-       ../flower/include/international.hh ../flower/include/compare.hh \
-       include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/item.hh \
-       include/boxes.hh include/drul-array.hh include/direction.hh
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh include/score-elem.hh \
+       ../flower/include/parray.hh ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/lily-proto.hh \
+       ../lib/include/proto.hh include/drul-array.hh \
+       include/direction.hh
 break.o: break.cc include/score-column.hh include/lily-proto.hh \
        ../lib/include/proto.hh ../flower/include/fproto.hh \
        ../flower/include/real.hh ../flower/include/varray.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
        ../flower/include/compare.hh \
        ../flower/include/arithmetic-operator.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        ../flower/include/string.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -879,14 +889,14 @@ break.o: break.cc include/score-column.hh include/lily-proto.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/break.hh include/colhpos.hh \
-       include/paper-def.hh include/music-output-def.hh \
-       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
-       include/line-spacer.hh ../flower/include/vector.hh \
-       include/debug.hh ../flower/include/dstream.hh \
-       ../lib/include/warn.hh include/scoreline.hh include/spanner.hh \
-       include/p-score.hh include/music-output.hh \
-       ../flower/include/cpu-timer.hh
+       ../flower/include/plist.icc include/rod.hh include/break.hh \
+       include/colhpos.hh include/paper-def.hh \
+       include/music-output-def.hh ../flower/include/dictionary.hh \
+       ../flower/include/assoc.hh include/line-spacer.hh \
+       ../flower/include/vector.hh include/debug.hh \
+       ../flower/include/dstream.hh ../lib/include/warn.hh \
+       include/scoreline.hh include/spanner.hh include/p-score.hh \
+       include/music-output.hh ../flower/include/cpu-timer.hh
 change-iterator.o: change-iterator.cc include/change-iterator.hh \
        include/music-iterator.hh include/lily-proto.hh \
        ../lib/include/proto.hh ../flower/include/fproto.hh \
@@ -995,7 +1005,8 @@ clef-item.o: clef-item.cc include/clef-item.hh include/item.hh \
        include/score-elem-info.hh include/staff-info.hh \
        include/translator.hh
 col-info.o: col-info.cc include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -1007,7 +1018,7 @@ col-info.o: col-info.cc include/p-col.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -1015,9 +1026,10 @@ col-info.o: col-info.cc include/p-col.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/col-info.hh \
-       ../flower/include/pointer.hh include/debug.hh \
-       ../flower/include/dstream.hh ../lib/include/warn.hh
+       ../flower/include/plist.icc include/rod.hh include/col-info.hh \
+       ../flower/include/pointer.hh ../flower/include/assoc.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh
 colhpos.o: colhpos.cc include/colhpos.hh ../flower/include/varray.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -1044,7 +1056,9 @@ collision-grav.o: collision-grav.cc include/note-column.hh \
        include/direction.hh include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/collision-grav.hh include/engraver.hh \
        include/request.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh ../lib/include/input.hh \
@@ -1071,17 +1085,18 @@ collision.o: collision.cc include/debug.hh ../flower/include/dstream.hh \
        ../flower/include/interval.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/drul-array.hh include/direction.hh \
-       include/elem-group.hh include/note-column.hh \
-       include/script-column.hh include/note-head.hh \
-       include/rhythmic-head.hh include/paper-def.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
-       include/music-output-def.hh ../flower/include/plist.hh \
-       ../flower/include/list.hh ../flower/include/list.icc \
-       ../flower/include/cursor.hh ../flower/include/link.hh \
-       ../flower/include/link.icc ../flower/include/pcursor.hh \
-       ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc ../flower/include/dictionary.hh \
-       ../flower/include/assoc.hh
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
+       include/note-column.hh include/script-column.hh \
+       include/note-head.hh include/rhythmic-head.hh \
+       include/paper-def.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh include/music-output-def.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc \
+       ../flower/include/dictionary.hh ../flower/include/assoc.hh
 command-request.o: command-request.cc include/command-request.hh \
        include/request.hh ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
@@ -1115,15 +1130,15 @@ crescendo.o: crescendo.cc include/molecule.hh include/lily-proto.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/spanner.hh \
-       include/drul-array.hh include/lookup.hh include/atom.hh \
-       ../flower/include/scalar.hh include/paper-def.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
-       include/music-output-def.hh ../flower/include/dictionary.hh \
-       ../flower/include/assoc.hh include/debug.hh \
-       ../flower/include/dstream.hh ../lib/include/warn.hh \
-       include/score-column.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/drul-array.hh include/rod.hh include/lookup.hh \
+       include/atom.hh ../flower/include/scalar.hh \
+       include/paper-def.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh include/music-output-def.hh \
+       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh include/score-column.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh
 debug.o: debug.cc include/debug.hh ../flower/include/dstream.hh \
@@ -1158,7 +1173,7 @@ directional-spanner.o: directional-spanner.cc \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh
+       include/direction.hh include/rod.hh
 dot-column-grav.o: dot-column-grav.cc
 dot-column.o: dot-column.cc include/dots.hh include/item.hh \
        include/boxes.hh ../flower/include/fproto.hh \
@@ -1174,8 +1189,8 @@ dot-column.o: dot-column.cc include/dots.hh include/item.hh \
        include/graphical-element.hh include/lily-proto.hh \
        ../lib/include/proto.hh include/drul-array.hh \
        include/direction.hh include/dot-column.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/rhythmic-head.hh
 dots.o: dots.cc include/dots.hh include/item.hh include/boxes.hh \
@@ -1214,7 +1229,7 @@ dynamic-grav.o: dynamic-grav.cc include/debug.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        ../flower/include/interval.hh include/direction.hh \
-       include/spanner.hh include/drul-array.hh \
+       include/spanner.hh include/drul-array.hh include/rod.hh \
        include/dynamic-grav.hh include/engraver.hh include/request.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
        ../lib/include/input.hh include/music.hh include/minterval.hh \
@@ -1232,11 +1247,13 @@ dynamic-grav.o: dynamic-grav.cc include/debug.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
        ../flower/include/plist.icc include/score-column.hh \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/staff-sym.hh include/note-column.hh \
        include/script-column.hh \
-       include/horizontal-vertical-group-item.hh
+       include/horizontal-vertical-group-item.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh
 elem-group.o: elem-group.cc include/elem-group.hh include/score-elem.hh \
        ../flower/include/parray.hh ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -1344,23 +1361,23 @@ gourlay-breaking.o: gourlay-breaking.cc include/gourlay-breaking.hh \
        ../flower/include/pcursor.hh ../flower/include/cursor.icc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/col-info.hh ../flower/include/pointer.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
+       ../flower/include/assoc.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh \
        ../flower/include/arithmetic-operator.hh include/debug.hh \
        ../flower/include/dstream.hh ../flower/include/string.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../lib/include/warn.hh \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh include/p-score.hh include/music-output.hh \
-       include/paper-def.hh include/music-output-def.hh \
-       ../flower/include/dictionary.hh ../flower/include/assoc.hh
+       include/direction.hh include/rod.hh include/p-score.hh \
+       include/music-output.hh include/paper-def.hh \
+       include/music-output-def.hh ../flower/include/dictionary.hh
 graphical-element.o: graphical-element.cc include/graphical-element.hh \
        include/offset.hh ../flower/include/real.hh include/axes.hh \
        ../flower/include/string.hh \
@@ -1423,7 +1440,23 @@ header.o: header.cc ../flower/include/string.hh \
        ../flower/include/varray.hh ../flower/include/dictionary.hh \
        include/header.hh
 horizontal-align-item.o: horizontal-align-item.cc \
-       include/horizontal-align-item.hh include/elem-group.hh \
+       include/horizontal-align-item.hh include/item.hh \
+       include/boxes.hh ../flower/include/fproto.hh \
+       ../flower/include/real.hh ../flower/include/interval.hh \
+       ../flower/include/compare.hh include/offset.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh include/score-elem.hh \
+       ../flower/include/parray.hh ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/lily-proto.hh \
+       ../lib/include/proto.hh include/drul-array.hh \
+       include/direction.hh include/debug.hh \
+       ../flower/include/dstream.hh ../lib/include/warn.hh
+horizontal-group-elem.o: horizontal-group-elem.cc \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -1435,13 +1468,14 @@ horizontal-align-item.o: horizontal-align-item.cc \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/drul-array.hh include/direction.hh \
        include/debug.hh ../flower/include/dstream.hh \
        ../lib/include/warn.hh
 horizontal-group-item.o: horizontal-group-item.cc include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -1453,7 +1487,7 @@ horizontal-group-item.o: horizontal-group-item.cc include/p-col.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -1461,7 +1495,27 @@ horizontal-group-item.o: horizontal-group-item.cc include/p-col.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc
+       ../flower/include/plist.icc include/rod.hh
+horizontal-vertical-group-elem.o: horizontal-vertical-group-elem.cc \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/offset.hh \
+       ../flower/include/real.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/fproto.hh ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../flower/include/compare.hh \
+       include/lily-proto.hh ../lib/include/proto.hh \
+       ../flower/include/interval.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-group-elem.hh include/item.hh \
+       include/boxes.hh include/drul-array.hh include/direction.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh
 horizontal-vertical-group-item.o: horizontal-vertical-group-item.cc \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
@@ -1479,19 +1533,22 @@ horizontal-vertical-group-item.o: horizontal-vertical-group-item.cc \
        ../flower/include/interval.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/drul-array.hh include/direction.hh \
-       include/elem-group.hh include/p-col.hh \
-       include/horizontal-group-item.hh ../flower/include/plist.hh \
-       ../flower/include/list.hh ../flower/include/list.icc \
-       ../flower/include/cursor.hh ../flower/include/link.hh \
-       ../flower/include/link.icc ../flower/include/pcursor.hh \
-       ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
+       include/p-col.hh include/horizontal-group-item.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc \
+       include/rod.hh
 idealspacing.o: idealspacing.cc include/idealspacing.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh ../flower/include/varray.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
@@ -1499,7 +1556,7 @@ idealspacing.o: idealspacing.cc include/idealspacing.hh \
        ../flower/include/arithmetic-operator.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -1507,7 +1564,7 @@ idealspacing.o: idealspacing.cc include/idealspacing.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/p-score.hh \
+       ../flower/include/plist.icc include/rod.hh include/p-score.hh \
        include/colhpos.hh include/music-output.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh
 identifier.o: identifier.cc include/midi-def.hh include/lily-proto.hh \
@@ -1570,10 +1627,10 @@ item.o: item.cc include/p-score.hh include/colhpos.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/drul-array.hh \
        include/direction.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
-       include/spanner.hh
+       include/rod.hh include/spanner.hh
 key-grav.o: key-grav.cc include/key-grav.hh include/engraver.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -1706,12 +1763,14 @@ line-group-grav.o: line-group-grav.cc include/staff-sym.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/vertical-group-spanner.hh \
-       include/axis-group-spanner.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
-       include/command-request.hh include/request.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
-       ../lib/include/input.hh include/music.hh include/minterval.hh \
+       include/direction.hh include/rod.hh \
+       include/vertical-group-spanner.hh include/axis-group-spanner.hh \
+       include/axis-group-element.hh \
+       include/axis-group-administration.hh \
+       include/vertical-group-elem.hh include/command-request.hh \
+       include/request.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh ../lib/include/input.hh \
+       include/music.hh include/minterval.hh \
        ../lib/include/duration.hh ../lib/include/plet.hh \
        include/bar.hh include/item.hh include/boxes.hh \
        include/debug.hh ../flower/include/dstream.hh \
@@ -1720,7 +1779,8 @@ line-group-grav.o: line-group-grav.cc include/staff-sym.hh \
        ../flower/include/scalar.hh include/staff-info.hh \
        include/translator.hh ../flower/include/dictionary.hh \
        ../flower/include/assoc.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/axis-group-item.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-item.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
        ../flower/include/list.icc ../flower/include/cursor.hh \
        ../flower/include/link.hh ../flower/include/link.icc \
@@ -1758,7 +1818,7 @@ local-key-grav.o: local-key-grav.cc include/musical-request.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/key-item.hh include/tie.hh include/bow.hh \
        include/directional-spanner.hh include/spanner.hh \
-       include/note-head.hh include/rhythmic-head.hh \
+       include/rod.hh include/note-head.hh include/rhythmic-head.hh \
        include/time-description.hh
 local-key-item.o: local-key-item.cc include/dimen.hh \
        ../flower/include/real.hh ../flower/include/string.hh \
@@ -2209,7 +2269,8 @@ my-lily-parser.o: my-lily-parser.cc include/my-lily-parser.hh \
        include/command-request.hh parser.hh include/header.hh \
        ../flower/include/dictionary.hh ../flower/include/assoc.hh
 note-column.o: note-column.cc include/dot-column.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -2221,12 +2282,14 @@ note-column.o: note-column.cc include/dot-column.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh include/note-column.hh \
        include/script-column.hh \
-       include/horizontal-vertical-group-item.hh include/script.hh \
+       include/horizontal-vertical-group-item.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/script.hh \
        include/staff-side.hh include/note-head.hh \
        include/rhythmic-head.hh include/stem.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
@@ -2346,8 +2409,9 @@ outputter.o: outputter.cc include/outputter.hh include/lily-proto.hh \
        include/direction.hh ../flower/include/varray.hh \
        include/dimen.hh include/tex.hh ../flower/include/scalar.hh
 p-col.o: p-col.cc include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh ../flower/include/varray.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh \
@@ -2357,7 +2421,7 @@ p-col.o: p-col.cc include/p-col.hh include/horizontal-group-item.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -2365,7 +2429,7 @@ p-col.o: p-col.cc include/p-col.hh include/horizontal-group-item.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/p-score.hh \
+       ../flower/include/plist.icc include/rod.hh include/p-score.hh \
        include/colhpos.hh include/music-output.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh
 p-score.o: p-score.cc include/main.hh include/lily-proto.hh \
@@ -2384,24 +2448,24 @@ p-score.o: p-score.cc include/main.hh include/lily-proto.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/lookup.hh include/atom.hh include/boxes.hh \
        ../flower/include/scalar.hh include/direction.hh \
-       include/spanner.hh include/drul-array.hh include/paper-def.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
-       include/music-output-def.hh ../flower/include/plist.hh \
-       ../flower/include/list.hh ../flower/include/list.icc \
-       ../flower/include/cursor.hh ../flower/include/link.hh \
-       ../flower/include/link.icc ../flower/include/pcursor.hh \
-       ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc ../flower/include/dictionary.hh \
-       ../flower/include/assoc.hh include/scoreline.hh \
-       include/colhpos.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/spanner.hh include/drul-array.hh include/rod.hh \
+       include/paper-def.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh include/music-output-def.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc \
+       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
+       include/scoreline.hh include/colhpos.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/p-score.hh include/music-output.hh \
        include/tex-stream.hh include/header.hh include/word-wrap.hh \
        include/break.hh include/gourlay-breaking.hh \
-       include/outputter.hh ../flower/include/plist.tcc \
-       ../flower/include/pcursor.tcc
+       include/outputter.hh ../flower/include/list.tcc \
+       ../flower/include/cursor.tcc
 paper-def.o: paper-def.cc ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -2576,15 +2640,16 @@ plet-engraver.o: plet-engraver.cc ../lib/include/proto.hh \
        include/directional-spanner.hh include/spanner.hh \
        include/score-elem.hh ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/text-def.hh include/general-script-def.hh \
-       include/beam.hh ../flower/include/plist.hh \
-       ../flower/include/list.hh ../flower/include/list.icc \
-       ../flower/include/cursor.hh ../flower/include/link.hh \
-       ../flower/include/link.icc ../flower/include/pcursor.hh \
-       ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/score-column.hh \
-       include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/rod.hh include/text-def.hh \
+       include/general-script-def.hh include/beam.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc \
+       include/score-column.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/stem.hh \
        include/molecule.hh
@@ -2606,18 +2671,20 @@ plet-spanner.o: plet-spanner.cc include/atom.hh \
        ../flower/include/pcursor.hh ../flower/include/cursor.icc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh ../flower/include/varray.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
-       include/graphical-element.hh include/axis-group-element.hh \
+       include/graphical-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
-       include/item.hh include/drul-array.hh include/paper-def.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
-       include/music-output-def.hh ../flower/include/dictionary.hh \
-       ../flower/include/assoc.hh include/plet-spanner.hh \
-       include/bow.hh include/directional-spanner.hh \
-       include/spanner.hh include/stem.hh include/text-def.hh \
+       include/item.hh include/drul-array.hh include/rod.hh \
+       include/paper-def.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh include/music-output-def.hh \
+       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
+       include/plet-spanner.hh include/bow.hh \
+       include/directional-spanner.hh include/spanner.hh \
+       include/stem.hh include/text-def.hh \
        include/general-script-def.hh ../lib/include/input.hh
 plet-swallow-engraver.o: plet-swallow-engraver.cc \
        include/musical-request.hh include/lily-proto.hh \
@@ -2652,9 +2719,7 @@ priority-halign-grav.o: priority-halign-grav.cc include/bar.hh \
        include/graphical-element.hh include/lily-proto.hh \
        ../lib/include/proto.hh include/drul-array.hh \
        include/direction.hh include/break-align-item.hh \
-       include/horizontal-align-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
-       include/axis-group-administration.hh \
+       include/horizontal-align-item.hh \
        include/priority-halign-grav.hh include/engraver.hh \
        include/request.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh ../lib/include/input.hh \
@@ -2789,7 +2854,9 @@ rest-collision-grav.o: rest-collision-grav.cc include/debug.hh \
        ../flower/include/dictionary.hh ../flower/include/assoc.hh \
        include/collision.hh include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/note-column.hh include/script-column.hh
 rest-collision.o: rest-collision.cc include/debug.hh \
        ../flower/include/dstream.hh ../flower/include/string.hh \
@@ -2809,7 +2876,9 @@ rest-collision.o: rest-collision.cc include/debug.hh \
        include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/stem.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh include/molecule.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
@@ -2899,7 +2968,9 @@ rhythmic-column-grav.o: rhythmic-column-grav.cc \
        include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/script.hh include/staff-side.hh include/dot-column.hh \
        include/horizontal-group-item.hh
 rhythmic-head.o: rhythmic-head.cc include/rhythmic-head.hh \
@@ -2930,6 +3001,30 @@ rhythmic-head.o: rhythmic-head.cc include/rhythmic-head.hh \
        include/axis-group-element.hh \
        include/axis-group-administration.hh include/p-score.hh \
        include/colhpos.hh include/music-output.hh
+rod.o: rod.cc include/rod.hh include/lily-proto.hh \
+       ../lib/include/proto.hh ../flower/include/fproto.hh \
+       ../flower/include/real.hh include/direction.hh \
+       include/drul-array.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/offset.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../flower/include/compare.hh \
+       ../flower/include/interval.hh \
+       include/axis-group-administration.hh include/axis-group-item.hh \
+       include/item.hh include/boxes.hh ../flower/include/plist.hh \
+       ../flower/include/list.hh ../flower/include/list.icc \
+       ../flower/include/cursor.hh ../flower/include/link.hh \
+       ../flower/include/link.icc ../flower/include/pcursor.hh \
+       ../flower/include/cursor.icc ../flower/include/iterate.hh \
+       ../flower/include/plist.icc include/debug.hh \
+       ../flower/include/dstream.hh ../lib/include/warn.hh
 score-bar.o: score-bar.cc include/score-bar.hh include/bar.hh \
        include/item.hh include/boxes.hh ../flower/include/fproto.hh \
        ../flower/include/real.hh ../flower/include/interval.hh \
@@ -2952,13 +3047,14 @@ score-column.o: score-column.cc include/debug.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../lib/include/warn.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -2966,8 +3062,9 @@ score-column.o: score-column.cc include/debug.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/score-column.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh
+       ../flower/include/plist.icc include/rod.hh \
+       include/score-column.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh
 score-elem-info.o: score-elem-info.cc include/score-elem-info.hh \
        ../flower/include/scalar.hh ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
@@ -3005,9 +3102,10 @@ score-elem.o: score-elem.cc include/outputter.hh include/lily-proto.hh \
        include/graphical-element.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/tex.hh include/dimen.hh include/spanner.hh \
-       include/drul-array.hh include/scoreline.hh include/item.hh \
-       include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/drul-array.hh include/rod.hh include/scoreline.hh \
+       include/item.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh
 score-grav.o: score-grav.cc include/super-elem.hh include/score-elem.hh \
        ../flower/include/parray.hh ../flower/include/varray.hh \
@@ -3022,7 +3120,7 @@ score-grav.o: score-grav.cc include/super-elem.hh include/score-elem.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/interval.hh include/scoreline.hh \
        include/colhpos.hh include/spanner.hh include/drul-array.hh \
-       include/direction.hh include/debug.hh \
+       include/direction.hh include/rod.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/item.hh include/boxes.hh include/score-grav.hh \
        include/engraver-group.hh ../flower/include/plist.hh \
@@ -3041,8 +3139,8 @@ score-grav.o: score-grav.cc include/super-elem.hh include/score-elem.hh \
        include/p-score.hh include/music-output.hh \
        include/musical-request.hh ../lib/include/duration.hh \
        ../lib/include/plet.hh include/score-column.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/command-request.hh include/paper-def.hh \
        include/music-output-def.hh
@@ -3079,7 +3177,8 @@ score-performer.o: score-performer.cc include/score-performer.hh \
        ../lib/include/source-file.hh ../lib/include/source.hh \
        include/audio-staff.hh
 score-priority-grav.o: score-priority-grav.cc \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -3091,7 +3190,7 @@ score-priority-grav.o: score-priority-grav.cc \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh include/score-priority-grav.hh \
@@ -3142,17 +3241,18 @@ scoreline.o: scoreline.cc include/scoreline.hh include/colhpos.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/dimen.hh include/atom.hh \
-       include/boxes.hh include/paper-def.hh ../lib/include/moment.hh \
-       ../flower/include/rational.hh include/music-output-def.hh \
-       ../flower/include/plist.hh ../flower/include/list.hh \
-       ../flower/include/list.icc ../flower/include/cursor.hh \
-       ../flower/include/link.hh ../flower/include/link.icc \
-       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
-       ../flower/include/iterate.hh ../flower/include/plist.icc \
-       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
-       include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/direction.hh include/rod.hh include/dimen.hh \
+       include/atom.hh include/boxes.hh include/paper-def.hh \
+       ../lib/include/moment.hh ../flower/include/rational.hh \
+       include/music-output-def.hh ../flower/include/plist.hh \
+       ../flower/include/list.hh ../flower/include/list.icc \
+       ../flower/include/cursor.hh ../flower/include/link.hh \
+       ../flower/include/link.icc ../flower/include/pcursor.hh \
+       ../flower/include/cursor.icc ../flower/include/iterate.hh \
+       ../flower/include/plist.icc ../flower/include/dictionary.hh \
+       ../flower/include/assoc.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/p-score.hh include/music-output.hh
 scores.o: scores.cc include/main.hh include/lily-proto.hh \
@@ -3192,10 +3292,11 @@ script-column.o: script-column.cc include/script-column.hh \
        ../flower/include/interval.hh \
        include/axis-group-administration.hh include/item.hh \
        include/boxes.hh include/drul-array.hh include/direction.hh \
-       include/elem-group.hh include/debug.hh \
-       ../flower/include/dstream.hh ../lib/include/warn.hh \
-       include/script.hh include/staff-side.hh include/note-head.hh \
-       include/rhythmic-head.hh include/stem.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh include/script.hh include/staff-side.hh \
+       include/note-head.hh include/rhythmic-head.hh include/stem.hh \
        ../lib/include/moment.hh ../flower/include/rational.hh \
        include/molecule.hh ../flower/include/plist.hh \
        ../flower/include/list.hh ../flower/include/list.icc \
@@ -3251,7 +3352,7 @@ script-grav.o: script-grav.cc include/script-grav.hh include/engraver.hh \
        ../flower/include/link.hh ../flower/include/link.icc \
        ../flower/include/pcursor.hh ../flower/include/cursor.icc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
-       include/staff-sym.hh include/spanner.hh \
+       include/staff-sym.hh include/spanner.hh include/rod.hh \
        include/general-script-def.hh
 script.o: script.cc include/script-def.hh ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
@@ -3279,6 +3380,86 @@ script.o: script.cc include/script-def.hh ../flower/include/string.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/stem.hh include/molecule.hh include/lookup.hh \
        include/atom.hh ../flower/include/scalar.hh
+separating-group-spanner.o: separating-group-spanner.cc \
+       include/separating-group-spanner.hh \
+       include/vertical-group-spanner.hh include/axis-group-spanner.hh \
+       include/spanner.hh include/lily-proto.hh \
+       ../lib/include/proto.hh ../flower/include/fproto.hh \
+       ../flower/include/real.hh include/score-elem.hh \
+       ../flower/include/parray.hh ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/offset.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../flower/include/compare.hh \
+       ../flower/include/interval.hh include/drul-array.hh \
+       include/direction.hh include/rod.hh \
+       include/axis-group-element.hh \
+       include/axis-group-administration.hh \
+       include/vertical-group-elem.hh \
+       include/single-malt-grouping-item.hh include/item.hh \
+       include/boxes.hh
+separating-line-group-grav.o: separating-line-group-grav.cc \
+       include/separating-line-group-grav.hh \
+       include/line-group-grav.hh include/engraver.hh \
+       include/lily-proto.hh ../lib/include/proto.hh \
+       ../flower/include/fproto.hh ../flower/include/real.hh \
+       ../flower/include/varray.hh include/request.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../flower/include/compare.hh \
+       ../lib/include/moment.hh ../flower/include/rational.hh \
+       ../flower/include/virtual-methods.hh ../lib/include/input.hh \
+       include/music.hh include/minterval.hh \
+       ../flower/include/interval.hh include/direction.hh \
+       include/score-elem-info.hh ../flower/include/scalar.hh \
+       include/staff-info.hh include/translator.hh \
+       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
+       ../flower/include/parray.hh include/separating-group-spanner.hh \
+       include/vertical-group-spanner.hh include/axis-group-spanner.hh \
+       include/spanner.hh include/score-elem.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/offset.hh include/axes.hh \
+       include/drul-array.hh include/rod.hh \
+       include/axis-group-element.hh \
+       include/axis-group-administration.hh \
+       include/vertical-group-elem.hh \
+       include/single-malt-grouping-item.hh include/item.hh \
+       include/boxes.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-item.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc
+single-malt-grouping-item.o: single-malt-grouping-item.cc \
+       include/single-malt-grouping-item.hh include/item.hh \
+       include/boxes.hh ../flower/include/fproto.hh \
+       ../flower/include/real.hh ../flower/include/interval.hh \
+       ../flower/include/compare.hh include/offset.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh include/score-elem.hh \
+       ../flower/include/parray.hh ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/lily-proto.hh \
+       ../lib/include/proto.hh include/drul-array.hh \
+       include/direction.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
+       include/axis-group-administration.hh include/axis-group-item.hh \
+       ../flower/include/plist.hh ../flower/include/list.hh \
+       ../flower/include/list.icc ../flower/include/cursor.hh \
+       ../flower/include/link.hh ../flower/include/link.icc \
+       ../flower/include/pcursor.hh ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/plist.icc \
+       include/rod.hh
 slur-grav.o: slur-grav.cc ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
@@ -3306,13 +3487,15 @@ slur-grav.o: slur-grav.cc ../lib/include/proto.hh \
        include/spanner.hh include/score-elem.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/drul-array.hh include/bow.hh include/debug.hh \
-       ../flower/include/dstream.hh ../lib/include/warn.hh \
-       include/note-column.hh include/item.hh include/boxes.hh \
-       include/script-column.hh \
+       include/drul-array.hh include/rod.hh include/bow.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh include/note-column.hh include/item.hh \
+       include/boxes.hh include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh
 slur.o: slur.cc include/slur.hh include/directional-spanner.hh \
        include/spanner.hh include/lily-proto.hh \
        ../lib/include/proto.hh ../flower/include/fproto.hh \
@@ -3326,9 +3509,9 @@ slur.o: slur.cc include/slur.hh include/directional-spanner.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/bow.hh ../flower/include/scalar.hh \
-       include/lookup.hh include/atom.hh include/boxes.hh \
-       include/paper-def.hh ../lib/include/moment.hh \
+       include/direction.hh include/rod.hh include/bow.hh \
+       ../flower/include/scalar.hh include/lookup.hh include/atom.hh \
+       include/boxes.hh include/paper-def.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh include/music-output-def.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
        ../flower/include/list.icc ../flower/include/cursor.hh \
@@ -3339,7 +3522,9 @@ slur.o: slur.cc include/slur.hh include/directional-spanner.hh \
        include/note-column.hh include/item.hh include/script-column.hh \
        include/horizontal-vertical-group-item.hh \
        include/axis-group-item.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
+       include/axis-group-administration.hh \
+       include/horizontal-vertical-group-elem.hh \
+       include/vertical-group-elem.hh include/horizontal-group-elem.hh \
        include/stem.hh include/molecule.hh include/p-col.hh \
        include/horizontal-group-item.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh
@@ -3364,9 +3549,7 @@ span-bar-grav.o: span-bar-grav.cc include/span-bar.hh include/bar.hh \
        include/staff-info.hh include/translator.hh \
        ../flower/include/dictionary.hh ../flower/include/assoc.hh \
        include/vertical-align-spanner.hh include/spanner.hh \
-       include/vertical-align-elem.hh include/elem-group.hh \
-       include/axis-group-element.hh \
-       include/axis-group-administration.hh
+       include/rod.hh include/vertical-align-elem.hh
 span-bar.o: span-bar.cc include/dimen.hh ../flower/include/real.hh \
        ../flower/include/string.hh \
        ../flower/include/arithmetic-operator.hh \
@@ -3390,9 +3573,7 @@ span-bar.o: span-bar.cc include/dimen.hh ../flower/include/real.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
        ../flower/include/plist.icc ../flower/include/dictionary.hh \
        ../flower/include/assoc.hh include/molecule.hh \
-       include/vertical-align-elem.hh include/elem-group.hh \
-       include/axis-group-element.hh \
-       include/axis-group-administration.hh
+       include/vertical-align-elem.hh
 span-score-bar-grav.o: span-score-bar-grav.cc include/span-score-bar.hh \
        include/span-bar.hh include/bar.hh include/item.hh \
        include/boxes.hh ../flower/include/fproto.hh \
@@ -3452,9 +3633,9 @@ spanner.o: spanner.cc include/debug.hh ../flower/include/dstream.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/direction.hh include/rod.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh ../flower/include/plist.hh \
        ../flower/include/list.hh ../flower/include/list.icc \
@@ -3474,28 +3655,29 @@ spring-spacer.o: spring-spacer.cc include/spring-spacer.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
        ../flower/include/plist.icc include/col-info.hh \
-       ../flower/include/pointer.hh include/colhpos.hh \
-       ../lib/include/moment.hh ../flower/include/rational.hh \
+       ../flower/include/pointer.hh ../flower/include/assoc.hh \
+       include/colhpos.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh \
        ../flower/include/arithmetic-operator.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        ../flower/include/string.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh \
-       include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh include/debug.hh \
+       include/direction.hh include/rod.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh \
        include/qlp.hh include/ineq-constrained-qp.hh \
        ../flower/include/matrix.hh ../flower/include/matrix-storage.hh \
        ../flower/include/unionfind.hh include/idealspacing.hh \
        ../flower/include/pointer.tcc include/score-column.hh \
        include/paper-def.hh include/music-output-def.hh \
-       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
-       include/dimen.hh include/main.hh
+       ../flower/include/dictionary.hh include/dimen.hh \
+       include/main.hh
 staff-info.o: staff-info.cc ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
@@ -3508,17 +3690,18 @@ staff-info.o: staff-info.cc ../lib/include/proto.hh \
        ../flower/include/varray.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh \
        ../flower/include/arithmetic-operator.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        ../flower/include/string.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh
+       include/direction.hh include/rod.hh
 staff-performer.o: staff-performer.cc include/staff-performer.hh \
        include/performer-group-performer.hh include/lily-proto.hh \
        ../lib/include/proto.hh ../flower/include/fproto.hh \
@@ -3565,7 +3748,7 @@ staff-side.o: staff-side.cc ../flower/include/interval.hh \
        ../flower/include/parray.hh ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
        include/direction.hh include/staff-sym.hh include/spanner.hh \
-       include/drul-array.hh include/debug.hh \
+       include/drul-array.hh include/rod.hh include/debug.hh \
        ../flower/include/dstream.hh ../lib/include/warn.hh
 staff-sym-grav.o: staff-sym-grav.cc include/staff-sym-grav.hh \
        include/engraver.hh include/lily-proto.hh \
@@ -3586,14 +3769,14 @@ staff-sym-grav.o: staff-sym-grav.cc include/staff-sym-grav.hh \
        include/spanner.hh include/score-elem.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/drul-array.hh include/score.hh \
+       include/drul-array.hh include/rod.hh include/score.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
        ../flower/include/list.icc ../flower/include/cursor.hh \
        ../flower/include/link.hh ../flower/include/link.icc \
        ../flower/include/pcursor.hh ../flower/include/cursor.icc \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh
 staff-sym.o: staff-sym.cc include/staff-sym.hh include/spanner.hh \
@@ -3609,8 +3792,8 @@ staff-sym.o: staff-sym.cc include/staff-sym.hh include/spanner.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/lookup.hh include/atom.hh \
-       include/boxes.hh ../flower/include/scalar.hh \
+       include/direction.hh include/rod.hh include/lookup.hh \
+       include/atom.hh include/boxes.hh ../flower/include/scalar.hh \
        include/paper-def.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh include/music-output-def.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
@@ -3703,12 +3886,13 @@ stem.o: stem.cc include/stem.hh include/item.hh include/boxes.hh \
        ../flower/include/assoc.hh include/note-head.hh \
        include/rhythmic-head.hh include/lookup.hh include/atom.hh \
        ../flower/include/scalar.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
-       include/axis-group-element.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
-       include/misc.hh include/grouping.hh include/minterval.hh \
-       include/beam.hh include/directional-spanner.hh \
-       include/spanner.hh include/rest.hh
+       include/rod.hh include/misc.hh include/grouping.hh \
+       include/minterval.hh include/beam.hh \
+       include/directional-spanner.hh include/spanner.hh \
+       include/rest.hh
 super-elem.o: super-elem.cc include/super-elem.hh include/score-elem.hh \
        ../flower/include/parray.hh ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -3722,7 +3906,7 @@ super-elem.o: super-elem.cc include/super-elem.hh include/score-elem.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/interval.hh include/scoreline.hh \
        include/colhpos.hh include/spanner.hh include/drul-array.hh \
-       include/direction.hh include/p-score.hh \
+       include/direction.hh include/rod.hh include/p-score.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
        ../flower/include/list.icc ../flower/include/cursor.hh \
        ../flower/include/link.hh ../flower/include/link.icc \
@@ -3785,7 +3969,8 @@ template1.o: template1.cc ../lib/include/proto.hh \
        ../flower/include/compare.hh ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
        ../flower/include/plist.icc include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -3795,10 +3980,10 @@ template1.o: template1.cc ../lib/include/proto.hh \
        ../flower/include/arithmetic-operator.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh include/musical-request.hh \
+       include/direction.hh include/rod.hh include/musical-request.hh \
        include/request.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh ../lib/include/input.hh \
        include/music.hh include/minterval.hh \
@@ -3838,22 +4023,7 @@ template4.o: template4.cc ../lib/include/proto.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/compare.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/audio-item.hh \
-       include/lily-proto.hh ../flower/include/string.hh \
-       ../flower/include/arithmetic-operator.hh \
-       ../flower/include/string-handle.hh \
-       ../flower/include/international.hh include/audio-element.hh \
-       ../flower/include/virtual-methods.hh include/audio-staff.hh \
-       include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/score-elem.hh \
-       ../flower/include/parray.hh ../flower/include/varray.hh \
-       ../flower/include/directed-graph.hh \
-       include/graphical-element.hh include/offset.hh include/axes.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/axis-group-item.hh \
-       include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh include/p-score.hh include/colhpos.hh \
-       include/music-output.hh ../flower/include/cursor.tcc \
+       ../flower/include/plist.icc ../flower/include/cursor.tcc \
        ../flower/include/list.tcc ../flower/include/pcursor.tcc \
        ../flower/include/plist.tcc
 template5.o: template5.cc ../lib/include/proto.hh \
@@ -4051,13 +4221,13 @@ text-spanner.o: text-spanner.cc include/molecule.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/drul-array.hh \
-       include/text-def.hh include/general-script-def.hh \
-       ../lib/include/input.hh include/debug.hh \
-       ../flower/include/dstream.hh ../lib/include/warn.hh \
-       include/paper-def.hh ../lib/include/moment.hh \
-       ../flower/include/rational.hh include/music-output-def.hh \
-       ../flower/include/dictionary.hh ../flower/include/assoc.hh \
-       include/atom.hh
+       include/rod.hh include/text-def.hh \
+       include/general-script-def.hh ../lib/include/input.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh include/paper-def.hh \
+       ../lib/include/moment.hh ../flower/include/rational.hh \
+       include/music-output-def.hh ../flower/include/dictionary.hh \
+       ../flower/include/assoc.hh include/atom.hh
 tie-grav.o: tie-grav.cc include/tie-grav.hh include/engraver.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
@@ -4077,7 +4247,7 @@ tie-grav.o: tie-grav.cc include/tie-grav.hh include/engraver.hh \
        include/directional-spanner.hh include/spanner.hh \
        include/score-elem.hh ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/drul-array.hh include/note-head.hh \
+       include/drul-array.hh include/rod.hh include/note-head.hh \
        include/rhythmic-head.hh include/item.hh include/boxes.hh \
        include/musical-request.hh ../lib/include/duration.hh \
        ../lib/include/plet.hh include/music-list.hh \
@@ -4106,10 +4276,11 @@ tie.o: tie.cc include/paper-def.hh include/lily-proto.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/drul-array.hh include/direction.hh include/note-head.hh \
-       include/rhythmic-head.hh include/item.hh include/boxes.hh \
-       include/p-col.hh include/horizontal-group-item.hh \
-       include/elem-group.hh include/axis-group-element.hh \
+       include/drul-array.hh include/direction.hh include/rod.hh \
+       include/note-head.hh include/rhythmic-head.hh include/item.hh \
+       include/boxes.hh include/p-col.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/debug.hh ../flower/include/dstream.hh \
        ../lib/include/warn.hh
@@ -4266,9 +4437,8 @@ version.o: version.cc include/main.hh include/lily-proto.hh \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh
 vertical-align-elem.o: vertical-align-elem.cc \
-       include/vertical-align-elem.hh include/elem-group.hh \
-       include/score-elem.hh ../flower/include/parray.hh \
-       ../flower/include/varray.hh \
+       include/vertical-align-elem.hh include/score-elem.hh \
+       ../flower/include/parray.hh ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
        ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh \
@@ -4278,10 +4448,10 @@ vertical-align-elem.o: vertical-align-elem.cc \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh
+       ../flower/include/interval.hh
 vertical-align-grav.o: vertical-align-grav.cc include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/parray.hh \
        ../flower/include/varray.hh \
        ../flower/include/virtual-methods.hh \
@@ -4293,7 +4463,7 @@ vertical-align-grav.o: vertical-align-grav.cc include/p-col.hh \
        ../flower/include/fproto.hh ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
-       ../flower/include/interval.hh include/axis-group-element.hh \
+       ../flower/include/interval.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
        include/direction.hh ../flower/include/plist.hh \
@@ -4301,15 +4471,16 @@ vertical-align-grav.o: vertical-align-grav.cc include/p-col.hh \
        ../flower/include/cursor.hh ../flower/include/link.hh \
        ../flower/include/link.icc ../flower/include/pcursor.hh \
        ../flower/include/cursor.icc ../flower/include/iterate.hh \
-       ../flower/include/plist.icc include/vertical-align-grav.hh \
-       include/engraver.hh include/request.hh ../lib/include/moment.hh \
+       ../flower/include/plist.icc include/rod.hh \
+       include/vertical-align-grav.hh include/engraver.hh \
+       include/request.hh ../lib/include/moment.hh \
        ../flower/include/rational.hh ../lib/include/input.hh \
        include/music.hh include/minterval.hh \
        include/score-elem-info.hh ../flower/include/scalar.hh \
        include/staff-info.hh include/translator.hh \
        ../flower/include/dictionary.hh ../flower/include/assoc.hh \
        include/vertical-align-spanner.hh include/spanner.hh \
-       include/vertical-align-elem.hh
+       include/vertical-align-elem.hh include/vertical-group-elem.hh
 vertical-align-spanner.o: vertical-align-spanner.cc \
        include/vertical-align-spanner.hh include/spanner.hh \
        include/lily-proto.hh ../lib/include/proto.hh \
@@ -4324,9 +4495,26 @@ vertical-align-spanner.o: vertical-align-spanner.cc \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/vertical-align-elem.hh \
-       include/elem-group.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh
+       include/direction.hh include/rod.hh \
+       include/vertical-align-elem.hh
+vertical-group-elem.o: vertical-group-elem.cc \
+       include/vertical-group-elem.hh include/axis-group-element.hh \
+       include/score-elem.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh \
+       ../flower/include/virtual-methods.hh \
+       ../flower/include/directed-graph.hh \
+       include/graphical-element.hh include/offset.hh \
+       ../flower/include/real.hh include/axes.hh \
+       ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/fproto.hh ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../flower/include/compare.hh \
+       include/lily-proto.hh ../lib/include/proto.hh \
+       ../flower/include/interval.hh \
+       include/axis-group-administration.hh include/item.hh \
+       include/boxes.hh include/drul-array.hh include/direction.hh \
+       include/debug.hh ../flower/include/dstream.hh \
+       ../lib/include/warn.hh
 vertical-group-spanner.o: vertical-group-spanner.cc \
        include/vertical-group-spanner.hh include/axis-group-spanner.hh \
        include/spanner.hh include/lily-proto.hh \
@@ -4341,10 +4529,12 @@ vertical-group-spanner.o: vertical-group-spanner.cc \
        ../flower/include/string-handle.hh \
        ../flower/include/international.hh ../flower/include/compare.hh \
        ../flower/include/interval.hh include/drul-array.hh \
-       include/direction.hh include/axis-group-element.hh \
-       include/axis-group-administration.hh include/elem-group.hh \
-       include/item.hh include/boxes.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/axis-group-item.hh \
+       include/direction.hh include/rod.hh \
+       include/axis-group-element.hh \
+       include/axis-group-administration.hh \
+       include/vertical-group-elem.hh include/item.hh include/boxes.hh \
+       include/p-col.hh include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-item.hh \
        ../flower/include/plist.hh ../flower/include/list.hh \
        ../flower/include/list.icc ../flower/include/cursor.hh \
        ../flower/include/link.hh ../flower/include/link.icc \
@@ -4411,13 +4601,13 @@ word-wrap.o: word-wrap.cc include/word-wrap.hh include/break.hh \
        ../flower/include/parray.hh include/music-output.hh \
        include/debug.hh ../flower/include/dstream.hh \
        ../lib/include/warn.hh include/p-col.hh \
-       include/horizontal-group-item.hh include/elem-group.hh \
+       include/horizontal-group-item.hh \
+       include/horizontal-group-elem.hh include/axis-group-element.hh \
        include/score-elem.hh ../flower/include/directed-graph.hh \
        include/graphical-element.hh include/offset.hh include/axes.hh \
-       include/axis-group-element.hh \
        include/axis-group-administration.hh include/axis-group-item.hh \
        include/item.hh include/boxes.hh include/drul-array.hh \
-       include/direction.hh include/spring-spacer.hh \
+       include/direction.hh include/rod.hh include/spring-spacer.hh \
        include/line-spacer.hh ../flower/include/vector.hh \
        include/col-info.hh ../flower/include/pointer.hh
 
@@ -4484,7 +4674,7 @@ mostlyclean:  mostlyclean-recursive mostlyclean-am
 
 clean:  clean-recursive clean-am
 
-distclean:  distclean-recursive distclean-am
+distclean:  distclean-recursive distclean-am distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -4529,8 +4719,10 @@ all-am: Makefile $(PROGRAMS) wild-check
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
 
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 8eb70f97cab8877d92907ea42d45562327ef8ac0..1d1ec0f441211df262115692e5507239f01439b3 100644 (file)
@@ -1,4 +1,4 @@
 MAJOR_VERSION = 0
 MINOR_VERSION = 1
-PATCH_LEVEL = 50
+PATCH_LEVEL = 52
 MY_PATCH_LEVEL =
index 8ef35c0beade7a6f7a30917827e143d744ab6d72..b97b94cf61556b8065abba8ed204b78bd6a75b9b 100644 (file)
@@ -57,3 +57,5 @@ Axis_group_element::Axis_group_element()
   transparent_b_ = true;
 }
 
+
+IMPLEMENT_IS_TYPE_B1(Axis_group_element, Score_elem);
index f22332098be9e7e77984fdb5b93d935c1e30c13a..8419f85ad5008eca6cad50699d6f48f6d8f0c35c 100644 (file)
@@ -42,7 +42,7 @@ Axis_group_item::do_breakable_col_processing()
            it_l->find_prebroken_piece (broken_to_drul_[j]->break_status_i_);
          ((Axis_group_item*)broken_to_drul_[j])->add_element (new_l);
        }
-      while ((j*=-1)!=LEFT);
+      while (flip(&j)!=LEFT);
     }
   Item::do_breakable_col_processing();
 }
index 42050ae5b4499fda404da13cd5c55757b7890361..5cace351e33134d0de7eb1b37d69726a5851c37a 100644 (file)
@@ -98,7 +98,7 @@ Axis_group_spanner::do_break_processing()
                  if (v)
                    v->add_element (my_item);
                }
-             while ((j*=-1) != LEFT);
+             while (flip(&j) != LEFT);
            }
        }
       else 
index cb6159ae09a108f8856bccb66ef86ddb52418f8b..a463ff233f0fbeaa4df7d94764ef592e53c6373e 100644 (file)
@@ -151,7 +151,7 @@ Beam::set_default_dir ()
       Stem *s = stems_[i];
       int current = s->dir_ 
        ? (1 + d * s->dir_)/2
-       : s->get_center_distance (Direction (-d));
+       : s->get_center_distance ((Direction)-d);
 
       if (current)
        {
@@ -159,12 +159,12 @@ Beam::set_default_dir ()
          count[d] ++;
        }
 
-    } while ((d *= -1) != DOWN);
+    } while (flip(&d) != DOWN);
   
    do {
     if (!total[d])
       count[d] = 1;
-  } while ((d *= -1) != DOWN);
+  } while (flip(&d) != DOWN);
   
   /* 
 
index 8475f79db4aa4f73f55d3c860bd8292841a782a2..2b29b433f502ded30c7a87bb5489d11e50e85ad5 100644 (file)
@@ -135,16 +135,13 @@ Break_algorithm::feasible (Line_of_cols curline) const
   if (linelength <=  0)
     return true;
 
-  Real l =0;
   for (int i=0; i < curline.size (); i++)
     {
       if (i && i < curline.size () -1
          && ((Score_column*)curline[i])->forced_break_b ())
        return false;
-      
-      l +=curline[i]->width ().length ();
     }
-  return l < linelength;
+  return true;
 }
 
 void
index 83c7f61fbc0296646a13f91b386dbd0dc2065ab9..9fa43ef8d30f09257fd61f767e3481129299b28f 100644 (file)
@@ -15,7 +15,7 @@ Colinfo::print() const
 {
 #ifndef NPRINT
   DOUT << "column { ";
-  if (fixed())
+  if (fixed_b())
     DOUT << "fixed at " << fixed_position()<<", ";
   assert (pcol_l_);
   DOUT << width_.str();
@@ -41,3 +41,20 @@ Colinfo::Colinfo()
   pcol_l_ =0;
 }
 
+bool
+Colinfo::fixed_b () const
+{
+ return fixpos_p_.get_C();
+}
+
+Real
+Colinfo::fixed_position () const
+{
+  return *fixpos_p_;
+}
+
+int
+Colinfo::rank_i () const
+{
+  return pcol_l_->rank_i ();
+}
index 22920506ec5759aaf4d231c4736e616ee05dc13b..400b6709a05b68821543ff39e10f35e409a056f0 100644 (file)
@@ -53,7 +53,7 @@ Crescendo::get_symbol() const
   do {
     Score_column* s = (Score_column* )spanned_drul_[d] ; // UGH
     broken[d] = (!s->musical_b());
-  } while ((d *= -1) != LEFT);
+  } while (flip(&d) != LEFT);
   
 
   bool continued = broken[(Direction)-grow_dir_];
index 69859a59c3f424c7128d3a55a33e818a2820283b..c4fe4b46af53fd41695d53255e390b3f827337bb 100644 (file)
@@ -50,7 +50,7 @@ Dynamic_engraver::do_process_requests()
       if (dreq_l->absdynamic())
        {
          Text_def * td_p = new Text_def;
-         td_p->align_i_ = 0;
+         td_p->align_i_ = CENTER;
          String loud = dreq_l->absdynamic()->loudness_str ();
          td_p->text_str_ = paper()->lookup_l ()->dynamic (loud).tex_;
          td_p->style_str_ = "dynamic";
diff --git a/lily/elem-group.cc b/lily/elem-group.cc
deleted file mode 100644 (file)
index 4e21538..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-  elem-group.cc -- implement Horizontal_vertical_group_element
-
-  source file of the GNU LilyPond music typesetter
-
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
-*/
-
-#include "elem-group.hh"
-#include "interval.hh"
-#include "item.hh"
-#include "debug.hh"
-
-
-void
-Vertical_group_element::add_element (Graphical_element*e)
-{
-  axis_admin_.add_element (e, this, Y_AXIS, Y_AXIS);
-}
-
-void
-Vertical_group_element::remove_element (Graphical_element*e)
-{
-  axis_admin_.remove_element (e, Y_AXIS, Y_AXIS);
-}
-
-
-Interval
-Vertical_group_element::do_height() const
-{
-  return axis_admin_.extent (Y_AXIS);
-}
-void
-Vertical_group_element::remove_all()
-{
-  axis_admin_.remove_all (Y_AXIS,Y_AXIS);
-}
-
-// ****************
-
-void
-Horizontal_group_element::remove_all()
-{
-  axis_admin_.remove_all (X_AXIS,X_AXIS);
-}
-
-void
-Horizontal_group_element::add_element (Graphical_element*e)
-{
-  axis_admin_.add_element (e,this, X_AXIS,X_AXIS);
-}
-
-void
-Horizontal_group_element::remove_element (Graphical_element*e)
-{
-  axis_admin_.remove_element (e,X_AXIS,X_AXIS);
-}
-
-
-Interval
-Horizontal_group_element::do_width() const
-{
-  return axis_admin_.extent (X_AXIS);
-}
-
-
-// ****************
-
-void
-Horizontal_vertical_group_element::remove_all()
-{
-  axis_admin_.remove_all (X_AXIS,Y_AXIS);
-}
-void
-Horizontal_vertical_group_element::add_element (Graphical_element *e)
-{
-  axis_admin_.add_element (e, this, X_AXIS, Y_AXIS);
-}
-
-void
-Horizontal_vertical_group_element::remove_element (Graphical_element*e)
-{
-  axis_admin_.remove_element (e, X_AXIS, Y_AXIS);
-}
-
-
-
-IMPLEMENT_IS_TYPE_B1(Axis_group_element, Score_elem);
-IMPLEMENT_IS_TYPE_B1(Horizontal_group_element, Axis_group_element);
-IMPLEMENT_IS_TYPE_B1(Vertical_group_element, Axis_group_element);
-IMPLEMENT_IS_TYPE_B2(Horizontal_vertical_group_element, Horizontal_group_element, Vertical_group_element);
index 66370135f8b66d4a3869f46788a2d73fd5b7286d..e434e356092447ab4361a7362875402019341aaf 100644 (file)
@@ -71,3 +71,11 @@ General_script_def::get_atom (Paper_def*, Direction) const
 }
 
 IMPLEMENT_IS_TYPE_B(General_script_def);
+
+
+Interval
+General_script_def::width (Paper_def*) const
+{
+  Interval t;
+  return t;
+}
diff --git a/lily/horizontal-group-elem.cc b/lily/horizontal-group-elem.cc
new file mode 100644 (file)
index 0000000..85ca745
--- /dev/null
@@ -0,0 +1,34 @@
+
+#include "horizontal-group-elem.hh"
+#include "interval.hh"
+#include "item.hh"
+#include "debug.hh"
+
+
+IMPLEMENT_IS_TYPE_B1(Horizontal_group_element, Axis_group_element);
+
+void
+Horizontal_group_element::remove_all()
+{
+  axis_admin_.remove_all (X_AXIS,X_AXIS);
+}
+
+void
+Horizontal_group_element::add_element (Graphical_element*e)
+{
+  axis_admin_.add_element (e,this, X_AXIS,X_AXIS);
+}
+
+void
+Horizontal_group_element::remove_element (Graphical_element*e)
+{
+  axis_admin_.remove_element (e,X_AXIS,X_AXIS);
+}
+
+
+Interval
+Horizontal_group_element::do_width() const
+{
+  return axis_admin_.extent (X_AXIS);
+}
+
diff --git a/lily/horizontal-vertical-group-elem.cc b/lily/horizontal-vertical-group-elem.cc
new file mode 100644 (file)
index 0000000..6b5ddd7
--- /dev/null
@@ -0,0 +1,26 @@
+
+#include "horizontal-vertical-group-elem.hh"
+#include "interval.hh"
+#include "item.hh"
+#include "debug.hh"
+
+void
+Horizontal_vertical_group_element::remove_all()
+{
+  axis_admin_.remove_all (X_AXIS,Y_AXIS);
+}
+void
+Horizontal_vertical_group_element::add_element (Graphical_element *e)
+{
+  axis_admin_.add_element (e, this, X_AXIS, Y_AXIS);
+}
+
+void
+Horizontal_vertical_group_element::remove_element (Graphical_element*e)
+{
+  axis_admin_.remove_element (e, X_AXIS, Y_AXIS);
+}
+
+
+
+IMPLEMENT_IS_TYPE_B2(Horizontal_vertical_group_element, Horizontal_group_element, Vertical_group_element);
index 33cc6f410aa5ee05b0f7d072a60f6162d4cad355..bcef2c017fa7d4b0e03b31a76eec4d310d3d4430 100644 (file)
@@ -3,9 +3,9 @@
 # Generated automatically by wild-perl 0.1
 # lily/include/Makefile.am.wild
 
-noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-item.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linear-programming.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc
+noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-elem.hh horizontal-group-item.hh horizontal-vertical-group-elem.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linear-programming.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh rod.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh separating-group-spanner.hh separating-line-group-grav.hh single-malt-grouping-item.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-elem.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc
 
 EXTRA_DIST = Makefile.am.wild
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 7da93c0656f79bcc1670d7b82d246a431f52710c..b51e7448b831ad1947937545620df587c06fdc6f 100644 (file)
@@ -99,7 +99,7 @@ YACC = @YACC@
 ZIP = @ZIP@
 absolute_builddir = @absolute_builddir@
 
-noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-item.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linear-programming.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc
+noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-elem.hh horizontal-group-item.hh horizontal-vertical-group-elem.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linear-programming.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh rod.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh separating-group-spanner.hh separating-line-group-grav.hh single-malt-grouping-item.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-elem.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc
 
 EXTRA_DIST = Makefile.am.wild
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
@@ -218,7 +218,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 50944b6fc43d2f0f2cf66989c26dcc3218161c62..405712e99db1bc047d5cae34fa248f274dd492b6 100644 (file)
 #include "lily-proto.hh"
 #include "pointer.hh"
 #include "interval.hh"
+#include "assoc.hh"
 
 /// helper struct for #Spacing_problem#
 struct Colinfo {
   Paper_column *pcol_l_;
   P<Real> fixpos_p_;
+  Assoc<int, Real> min_dists_assoc_;
   Interval width_;
   int rank_i_;
   /// did some tricks to make this column come out.
@@ -26,9 +28,10 @@ struct Colinfo {
   Colinfo();
   Colinfo (Paper_column *,Real const *);
 
+  int rank_i () const;
   void print() const;
-  bool fixed() const { return fixpos_p_.get_C();}
-  Real fixed_position() const { return *fixpos_p_; }
+  bool fixed_b() const ;
+  Real fixed_position() const ;
 };
 
 #endif // COL_INFO_HH
index d02274f6c1e762923ae9786dc989620aae39b5a4..66abd5f379f570a878220d1e9063236f846c04ba 100644 (file)
@@ -19,9 +19,17 @@ enum Direction
   CENTER=0,
   SMALLER=-1,
   BIGGER=1,
-
 };
 
+inline Direction
+flip (Direction *i) {
+  if (*i == (Direction)1)
+    *i = (Direction)-1;
+  else if (*i == (Direction)-1)
+    *i = (Direction)1;
+  return *i;
+}
+
 /**
    if d > 0: the max operator
    if d < 0: the min operator
index 69db537a9b60c225c8bfbb188c850376c7bd91e1..962fd2b6c21d2a7e8b98f6de03e19974c52a5370 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "direction.hh"
 
+#include <assert.h>
+
 /**
   Left/right or Up/down arrays. Drul is nicer sounding than udlr
  */
index 82ab4cc787517a1883e8bd518cd0d92aea0e4298..59bb03cdf052c0ad86b357eb622ac569f13d11d5 100644 (file)
 
 
 
-/**
-  Treat a group of elements a unity in horizontal sense .
-  A column is a typical Vertical_group.
- */
-class Horizontal_group_element : public virtual Axis_group_element {
-protected:
-    virtual void remove_all();
-    virtual Interval do_width() const;
-
-public:
-    DECLARE_MY_RUNTIME_TYPEINFO;
-    virtual void add_element (Graphical_element*);
-    virtual void remove_element (Graphical_element*);
-
-};
-/**
-  Like Horizontal_group_element, but in X direction
- */
-class Vertical_group_element : public virtual Axis_group_element {
-protected:
-    virtual Interval do_height() const;
-    virtual void remove_all();
-
-public:
-    virtual void add_element (Graphical_element*);
-    virtual void remove_element (Graphical_element*);
-    DECLARE_MY_RUNTIME_TYPEINFO;
-};
-
-/** A class to treat a group of elements as a single entity. The
-  dimensions are the unions of the dimensions of what it contains.
-  Translation means translating the contents.
-  */
-class Horizontal_vertical_group_element : public Vertical_group_element, 
-                                 public Horizontal_group_element 
-{  
-protected:
-    virtual void remove_all();
-public:
-    virtual void add_element (Graphical_element*);
-    virtual void remove_element (Graphical_element*);
-    
-    DECLARE_MY_RUNTIME_TYPEINFO;    
-};
 
+#error
 #endif // ELEM_GROUP_HH
index 3788df867cbd0fddc933595376e7b05076ddd891..4faf568ae939bde4788dedb4f3799fc8844d0b56 100644 (file)
  */
 class General_script_def : public Input {
 public:
-    VIRTUAL_COPY_CONS(General_script_def,General_script_def);
-    DECLARE_MY_RUNTIME_TYPEINFO;
-    virtual Direction staff_dir() const;
-    void print() const;
-    virtual Direction rel_stem_dir() const;
-    virtual int priority_i() const;
-    virtual bool inside_b() const;
-    virtual Atom get_atom (Paper_def* p, Direction dir_) const;
-    bool equal_b (General_script_def const&) const;
-    virtual ~General_script_def() {}
+  VIRTUAL_COPY_CONS(General_script_def,General_script_def);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  virtual Direction staff_dir() const;
+  void print() const;
+  virtual Direction rel_stem_dir() const;
+  virtual int priority_i() const;
+  virtual bool inside_b() const;
+  virtual Atom get_atom (Paper_def* p, Direction dir_) const;
+  bool equal_b (General_script_def const&) const;
+  virtual ~General_script_def() {}
     
+  virtual Interval width (Paper_def *) const;
 protected:
-    virtual bool do_equal_b (General_script_def const *) const;
-    virtual void do_print() const;
+  virtual bool do_equal_b (General_script_def const *) const;
+  virtual void do_print() const;
 };
 
 #endif // GENERAL_SCRIPT_DEF_HH
index f223e07be10d03556be8a80acfcc130c5b61dd2d..7ae19db88ba0a1a4b55810b37e3ea201077d5515 100644 (file)
@@ -9,7 +9,7 @@
 
 #ifndef HORIZONTAL_ALIGN_ITEM_HH
 #define HORIZONTAL_ALIGN_ITEM_HH
-#include "elem-group.hh"
+
 #include "item.hh"
 
 /**
diff --git a/lily/include/horizontal-group-elem.hh b/lily/include/horizontal-group-elem.hh
new file mode 100644 (file)
index 0000000..8d3adfb
--- /dev/null
@@ -0,0 +1,33 @@
+/*   
+  horizontal-group-elem.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef HORIZONTAL_GROUP_ELEM_HH
+#define HORIZONTAL_GROUP_ELEM_HH
+
+#include "axis-group-element.hh"
+
+/**
+  Treat a group of elements a unity in horizontal sense .
+  A column is a typical Vertical_group.
+ */
+class Horizontal_group_element : public virtual Axis_group_element {
+protected:
+    virtual void remove_all();
+    virtual Interval do_width() const;
+
+public:
+    DECLARE_MY_RUNTIME_TYPEINFO;
+    virtual void add_element (Graphical_element*);
+    virtual void remove_element (Graphical_element*);
+
+};
+
+
+#endif /* HORIZONTAL_GROUP_ELEM_HH */
+
index 10d8106b1d5eb790fe6ede1ef08d765e9b22e30e..568c257c64bfc0d890d02310f92950207f8b2f4b 100644 (file)
@@ -10,7 +10,7 @@
 #ifndef HORIZONTAL_GROUP_ITEM_HH
 #define HORIZONTAL_GROUP_ITEM_HH
 
-#include "elem-group.hh"
+#include "horizontal-group-elem.hh"
 #include "axis-group-item.hh"
 
 /**
diff --git a/lily/include/horizontal-vertical-group-elem.hh b/lily/include/horizontal-vertical-group-elem.hh
new file mode 100644 (file)
index 0000000..9080872
--- /dev/null
@@ -0,0 +1,35 @@
+/*   
+  horizontal-vertical-group-elem.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef HORIZONTAL_VERTICAL_GROUP_ELEM_HH
+#define HORIZONTAL_VERTICAL_GROUP_ELEM_HH
+
+#include "vertical-group-elem.hh"
+#include "horizontal-group-elem.hh"
+
+/** A class to treat a group of elements as a single entity. The
+  dimensions are the unions of the dimensions of what it contains.
+  Translation means translating the contents.
+  */
+class Horizontal_vertical_group_element : public Vertical_group_element, 
+                                 public Horizontal_group_element 
+{  
+protected:
+    virtual void remove_all();
+public:
+    virtual void add_element (Graphical_element*);
+    virtual void remove_element (Graphical_element*);
+    
+    DECLARE_MY_RUNTIME_TYPEINFO;    
+};
+
+
+#endif /* HORIZONTAL_VERTICAL_GROUP_ELEM_HH */
+
+
index 733ff639bda653b427a01c914c3dee44373354d8..1aa8c8b82ca5254d09d91afd42f7845800ef29e2 100644 (file)
@@ -11,7 +11,7 @@
 #define HORIZONTAL_VERTICAL_GROUP_ITEM_HH
 
 #include "axis-group-item.hh"
-#include "elem-group.hh"
+#include "horizontal-vertical-group-elem.hh"
 
 
 /**
index df5b6757ec1383895b5d957f5dc140105262e3de..64bcca5e700ba347abe2d38d2d66e18db446e5af 100644 (file)
@@ -31,12 +31,12 @@ public:
 
   /// should be put in a breakable col.
   bool breakable_b_;
-  int break_status_i_;
+  Direction break_status_i_;
   int break_priority_i_;
   
   /// nobreak = 0, pre = -1, post = 1
   int break_status_i() const;
-  Item * find_prebroken_piece (int) const;
+  Item * find_prebroken_piece (Direction) const;
   Item * find_prebroken_piece (Line_of_score*) const;    
 
   virtual Item *item() { return this; }
@@ -44,6 +44,7 @@ public:
   Real hpos_f() const;
   DECLARE_MY_RUNTIME_TYPEINFO;
   virtual Line_of_score * line_l() const;
+  virtual Paper_column * column_l () const;
     
   static int left_right_compare (Item const *, Item const*);
 protected:
index 8f11061320f2ec7349100c1ca8bab29c45935b6e..809bb015ca49c7e8892f1c66d2f583060ab0bf52 100644 (file)
@@ -176,6 +176,8 @@ struct Rhythmic_grouping;
 struct Rhythmic_head;
 struct Rhythmic_grouping_req;
 struct Rhythmic_req;
+struct Single_malt_grouping_item;
+struct Separating_group_spanner;
 struct Score;
 struct Score_column;
 struct Score_elem;
@@ -226,6 +228,7 @@ struct Timing_req;
 struct Vertical_brace;
 struct Vertical_spanner;
 struct Vertical_group_element;
+struct Vertical_group_spanner;
 struct Vertical_align_spanner;
 struct Vertical_align_engraver;
 struct Vertical_align_element;
index ac57f9ab6a5679d7b636f0911504bff54f488b6d..5316de9a8a8bf46a2aa17a8e46e75bb6b39bed24 100644 (file)
 #define LINE_GROUP_GRAV_HH
 
 #include "engraver.hh"
+#include "lily-proto.hh"
 
 /**
   Engravers put elements on the same or lowel level in a line
   */
 class Line_group_engraver : public Engraver{
+protected:
+
   Vertical_group_spanner *staffline_p_;   
 
-protected:
+
+  virtual void create_line_spanner ();
   virtual void do_creation_processing();
   virtual void do_removal_processing();
   virtual void acknowledge_element (Score_elem_info);
index 28fa8d04aa45c86caba4551572f370807d25045f..ff5303d5f608f1abd8a6f20c103a6de87609a4db 100644 (file)
@@ -165,9 +165,9 @@ public:
 class Span_req  : public virtual Musical_req  {
 public:
   /// should the spanner start or stop, or is it unwanted?
-  enum {
+  enum Spantype {
     NOSPAN, START, STOP
-  } spantype ;
+  } spantype;
   bool do_equal_b (Request*) const;
   REQUESTMETHODS(Span_req,span);
 
index c297bb78430b8a0ddc5cd718144c69601611f60a..0a5487a13868e90b5361edcc39c99eac271f6e65 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "horizontal-group-item.hh"
 #include "plist.hh"
+#include "rod.hh"
+
 
 /**
    stuff grouped vertically.
@@ -30,6 +32,11 @@ class Paper_column : public Horizontal_group_item {
 public:
   DECLARE_MY_RUNTIME_TYPEINFO;
   SCORE_ELEM_CLONE(Paper_column);
+  Drul_array< Array<Column_rod> > minimal_dists_arr_drul_;
+
+  void preprocess ();
+  /// set a minimum distance
+  void add_rod (Paper_column * to, Real distance, Direction d);
   
   /** prebreak is put before end of line.
     if broken here, then (*this) column is discarded, and prebreak
@@ -39,7 +46,8 @@ public:
 
   /// postbreak at beginning of the new line
   Paper_column *postbreak_l() const;
-    
+
+  virtual Paper_column * column_l () const;
   /// if lines are broken then this column is in #line#
   Line_of_score *line_l_;
 
diff --git a/lily/include/rod.hh b/lily/include/rod.hh
new file mode 100644 (file)
index 0000000..42509d4
--- /dev/null
@@ -0,0 +1,37 @@
+/*   
+  rod.hh -- declare Rod, Column_rod
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef ROD_HH
+#define ROD_HH
+#include "lily-proto.hh"
+#include "direction.hh"
+#include "drul-array.hh"
+
+struct Column_rod {
+  Paper_column *other_l_;
+  Real distance_f_;
+  Direction dir_;
+  Column_rod ();
+  static int compare (const Column_rod &r1, const Column_rod &r2);
+  void print () const;
+};
+
+struct Rod
+{
+  Drul_array <Item*> item_l_drul_;
+  Real distance_f_;
+  void add_to_cols ();
+
+  Rod (Item*,Item*);
+  Rod ();
+};
+
+
+#endif /* ROD_HH */
+
index 64ec7fcbe19899d8cf40257ef6fcd22b6b0024fe..5757d074e80e20a43a00209b51c49bfa768c8784 100644 (file)
@@ -97,6 +97,9 @@ protected:
   /// do calculations before determining horizontal spacing
   virtual void do_pre_processing();
 
+  /// generate rods & springs
+  virtual void do_space_processing ();
+
   virtual void do_breakable_col_processing();
   /// do calculations after determining horizontal spacing
   virtual void do_post_processing();
diff --git a/lily/include/separating-group-spanner.hh b/lily/include/separating-group-spanner.hh
new file mode 100644 (file)
index 0000000..6ec7d0f
--- /dev/null
@@ -0,0 +1,29 @@
+/*   
+  separating-group-spanner.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef SEPARATING_GROUP_SPANNER_HH
+#define SEPARATING_GROUP_SPANNER_HH
+
+#include "vertical-group-spanner.hh"
+
+
+class Separating_group_spanner : public Spanner
+{
+  Link_array<Single_malt_grouping_item> spacing_unit_l_arr_;
+public:
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  void add_spacing_unit (Single_malt_grouping_item*);
+protected:
+  SCORE_ELEM_CLONE (Separating_group_spanner);
+  virtual Array<Rod> get_rods () const;
+  virtual void do_substitute_dependency (Score_elem*,Score_elem*);
+};
+
+#endif /* SEPARATING_GROUP_SPANNER_HH */
+
diff --git a/lily/include/separating-line-group-grav.hh b/lily/include/separating-line-group-grav.hh
new file mode 100644 (file)
index 0000000..17e83aa
--- /dev/null
@@ -0,0 +1,34 @@
+/*   
+  separating-line-group-grav.hh -- declare Separating_line_group_engraver
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef SEPARATING_LINE_GROUP_GRAV_HH
+#define SEPARATING_LINE_GROUP_GRAV_HH
+
+#include "line-group-grav.hh"
+
+class Separating_line_group_engraver : public Line_group_engraver
+{
+protected:
+  Single_malt_grouping_item * break_malt_p_;
+  Single_malt_grouping_item* nobreak_malt_p_;
+  Separating_group_spanner * sep_span_p_;
+  
+  virtual void acknowledge_element (Score_elem_info);
+  virtual void do_creation_processing ();
+  virtual void do_removal_processing ();
+  virtual void do_pre_move_processing ();
+public:
+  Separating_line_group_engraver ();
+  TRANSLATOR_CLONE (Separating_line_group_engraver);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+};
+
+
+#endif /* SEPARATING_LINE_GROUP_GRAV_HH */
+
diff --git a/lily/include/single-malt-grouping-item.hh b/lily/include/single-malt-grouping-item.hh
new file mode 100644 (file)
index 0000000..4b74897
--- /dev/null
@@ -0,0 +1,35 @@
+/*   
+  single-malt-grouping-item.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef SINGLE_MALT_GROUPING_ITEM_HH
+#define SINGLE_MALT_GROUPING_ITEM_HH
+
+#include "item.hh"
+
+/** Calc dimensions for the Separating_group_spanner; this has to be
+   an itme to get dependencies correct.  It can't be an element_group
+   since these usually are in a different X_group 
+
+   It's 1 30 am.  Naming suggestions appreciated.  */
+class Single_malt_grouping_item : public Item
+{
+  SCORE_ELEM_CLONE (Single_malt_grouping_item);
+  Link_array<Item> item_l_arr_;
+public:
+  Single_malt_grouping_item ();
+  Interval do_width () const;
+  void add (Item*);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+protected:
+  virtual  void do_substitute_dependency (Score_elem*, Score_elem*);
+
+};
+
+#endif /* SINGLE_MALT_GROUPING_ITEM_HH */
+
index ad205fcbf01b122590c68ed87ca9152be857d89f..0559dce40dd6a5841a625f290f065911c522357d 100644 (file)
@@ -10,6 +10,7 @@
 #include "lily-proto.hh"
 #include "score-elem.hh"
 #include "drul-array.hh"
+#include "rod.hh"
 
 /** A symbol which is attached between two columns. A spanner is a
   symbol which spans across several columns, so its final appearance
@@ -41,7 +42,7 @@ public:
   virtual Spanner* spanner() { return this; }    
   Spanner();
   bool broken_b() const;
-
+  virtual Array<Rod> get_rods () const;
   Spanner* find_broken_piece (Line_of_score*) const;
 protected:
   void set_my_columns();
@@ -57,6 +58,7 @@ protected:
   virtual void do_unlink();
   virtual void do_junk_links();
   virtual void do_brew_molecule ();
+  virtual void do_space_processing ();
   virtual void do_break_processing();
   virtual Interval do_width() const;
   virtual void do_print() const;
index 04c9184f56ada169f9c916f4c682dd0c92f4560f..ffd59f5f688407efffe80be7f757179ad91bbe0e 100644 (file)
@@ -69,6 +69,7 @@ class Spring_spacer : public Line_spacer {
 
   void handle_loose_cols();
   void position_loose_cols (Vector &) const;
+  bool try_initial_solution_and_tell (Vector&)const;
   Vector try_initial_solution() const;
   void calc_idealspacing();
   void set_fixed_cols (Mixed_qp&) const;
index 74bfda66916466a5981474197e776f0cc7ad3093..e5e43938876f129ac0460afbb459b763dbfcab46 100644 (file)
@@ -21,6 +21,7 @@ public:
     void add_broken_line (Line_of_score*);
   Super_elem();
 
+  void space_processing ();
   void pre_processing();
   void breakable_col_processing();
   void break_processing();
index 6624959140b8e9f5dce4a7fda8bdb81707225f42..13fb25511bc27e6ae93f1cf40a97813a2c13174e 100644 (file)
 class Text_def : public General_script_def 
 {
 public:
-    DECLARE_MY_RUNTIME_TYPEINFO;
-    VIRTUAL_COPY_CONS(Text_def,General_script_def);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  VIRTUAL_COPY_CONS(Text_def,General_script_def);
 
-    /**
-      centered , or aligned?
+  /**
+     centered , or aligned?
 
-      -1 = raggedright, 0 = center, 1 = raggedleft
-     */
-    Direction align_i_;
+     -1 = raggedright, 0 = center, 1 = raggedleft
+  */
+  Direction align_i_;
 
-    String text_str_;
-    String style_str_;
+  String text_str_;
+  String style_str_;
     
-    virtual void do_print() const;
-    virtual Direction staff_dir() const;
-    virtual Atom get_atom (Paper_def* p, Direction dir_) const;
-    virtual ~Text_def() {};
-    virtual bool do_equal_b (const General_script_def*) const;
-    Text_def();
-    virtual void print() const;
-    Interval width (Paper_def*) const;
+  virtual void do_print() const;
+  virtual Direction staff_dir() const;
+  virtual Atom get_atom (Paper_def* p, Direction dir_) const;
+  virtual ~Text_def() {};
+  virtual bool do_equal_b (const General_script_def*) const;
+  Text_def();
+  virtual void print() const;
+  virtual Interval width (Paper_def*) const;
 };
 
 #endif // TEXT_DEF_HH
index bb6b7ed48f937217b1eefa836eb5537b9895d6af..a01e2c5164c045e212a16e5f75957f02ad351e80 100644 (file)
@@ -10,7 +10,7 @@
 #ifndef VERTICAL_ALIGN_ITEM_HH
 #define VERTICAL_ALIGN_ITEM_HH
 
-#include "elem-group.hh"
+#include "score-elem.hh"
 
 /**
   Order elements top to bottom.
diff --git a/lily/include/vertical-group-elem.hh b/lily/include/vertical-group-elem.hh
new file mode 100644 (file)
index 0000000..5e46c66
--- /dev/null
@@ -0,0 +1,29 @@
+/*   
+  vertical-group-elem.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#ifndef VERTICAL_GROUP_ELEM_HH
+#define VERTICAL_GROUP_ELEM_HH
+
+#include "axis-group-element.hh"
+/**
+  Like Horizontal_group_element, but in X direction
+ */
+class Vertical_group_element : public virtual Axis_group_element {
+protected:
+    virtual Interval do_height() const;
+    virtual void remove_all();
+
+public:
+    virtual void add_element (Graphical_element*);
+    virtual void remove_element (Graphical_element*);
+    DECLARE_MY_RUNTIME_TYPEINFO;
+};
+
+#endif /* VERTICAL_GROUP_ELEM_HH */
+
index 3c9ef948bce9628af57447bedf1494ca75f49c50..405c65a0b7ff86de93cc937b553b8abf389abf2f 100644 (file)
@@ -11,7 +11,7 @@
 #define SPAN_VERTICAL_GROUP_HH
 
 #include "axis-group-spanner.hh"
-#include "elem-group.hh"
+#include "vertical-group-elem.hh"
 
 /** An element which groups a line. 
  */
@@ -28,4 +28,5 @@ public:
   virtual void remove_element (Graphical_element*e) { Vertical_group_element::remove_element (e); }  
 };
 
+
 #endif // SPAN_VERTICAL_GROUP_HH
index daaf880a96abd8b5df2add34fdef3f979637af09..11d4568635be2aae04a6d092b9bb733c7470dbc6 100644 (file)
 #include "debug.hh"
 #include "item.hh"
 #include "p-col.hh"
-#include "elem-group.hh"
+// #include "elem-group.hh"
 #include "spanner.hh"
 
 Item::Item()
 {
   break_priority_i_ = 0;
   breakable_b_ = false;
-  break_status_i_ = 0;
+  break_status_i_ = CENTER;
   broken_to_drul_[LEFT] = broken_to_drul_[RIGHT]=0;
 }
 
@@ -67,7 +67,7 @@ Item::copy_breakable_items()
       item_p->handle_prebroken_dependencies();
       new_copies[i] =item_p;
     }
-  while ((i *= -1) != LEFT);
+  while (flip(&i) != LEFT);
   broken_to_drul_= new_copies;
 }
 
@@ -102,12 +102,12 @@ Item::find_prebroken_piece (Line_of_score*l) const
 }
 
 Item*
-Item::find_prebroken_piece (int breakstatus) const
+Item::find_prebroken_piece (Direction breakstatus) const
 {
   if (!breakstatus)
     return (Item *) this;      // ugh
   else
-    return (Item*) broken_to_drul_[(Direction)breakstatus];
+    return (Item*) broken_to_drul_[breakstatus];
 }
 
 void
@@ -158,3 +158,9 @@ Item::do_unlink()
   }
   attached_span_l_arr_.set_size (0);
 }
+
+Paper_column *
+Item::column_l () const
+{
+  return axis_group_l_a_[X_AXIS]->item ()->column_l ();
+}
index ab718a97f76bca922a7deed174a2836cbdb00469..0f1568f29f82f44f2ac714b2e1d064666a685dbd 100644 (file)
@@ -1,4 +1,5 @@
 #include "leastsquares.hh"
+
 void
 Least_squares::OK() const
 {
@@ -9,6 +10,7 @@ Least_squares::OK() const
 
   assert (dx);
 }
+
 void
 Least_squares::minimise (Real &coef, Real &offset)
 {
index a975b75cc6622ce93bd49cb4af0051eca5892645..465a23d819a2717009f2822df294601973c091e5 100644 (file)
@@ -23,7 +23,7 @@ void
 Line_group_engraver::acknowledge_element (Score_elem_info  elem)
 {
   if (!elem.elem_l_->axis_group_l_a_[Y_AXIS])
-       staffline_p_->add_element (elem.elem_l_);
+    staffline_p_->add_element (elem.elem_l_);
 }
 
 
@@ -38,13 +38,19 @@ Line_group_engraver::do_removal_processing()
 void
 Line_group_engraver::do_creation_processing()
 {
-  staffline_p_ = new Vertical_group_spanner ;
+  create_line_spanner ();
   staffline_p_->set_bounds(LEFT,get_staff_info().command_pcol_l ());
 
   // don't broadcast to self.
   announce_element (Score_elem_info (staffline_p_,0));
 }
 
+void
+Line_group_engraver::create_line_spanner ()
+{
+  staffline_p_ = new Vertical_group_spanner ;
+}
+
 
 
 IMPLEMENT_IS_TYPE_B1(Line_group_engraver,Engraver);
index 6f9c317fd94eff93985fc008805d2958b15c7505..3e518e022c403babb123774c961bd8e81ea556ee 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  line-spacer.cc -- implement 
+  line-spacer.cc -- implement Line_spacer
 
   source file of the GNU LilyPond music typesetter
 
index bc46309810682d6bad89d9c4e7c7eac3872acbf7..c84b92ee0fdebbe2671c8cf442fe742cc6ddff3e 100644 (file)
@@ -207,7 +207,7 @@ Rhythmic_req::duration() const
 Lyric_req::Lyric_req (Text_def* def_p)
   :Text_req (0, def_p)
 {
-  def_p->align_i_ = 0; // centre
+  def_p->align_i_ = CENTER;    // centre
   dir_ = DOWN;         // lyrics below (invisible) staff
 }
 
index 06fae0d37fb468d15f2e512400f58f651a62f024..898c7357ab7826525be8b7bab1d7886c03ef9dea 100644 (file)
 #include "p-score.hh"
 #include "debug.hh"
 
+void
+Paper_column::add_rod (Paper_column * p, Real d, Direction dir)
+{
+  assert( sign (p->rank_i ()  - rank_i ()) == dir);
+  for (int i=0; i < minimal_dists_arr_drul_[dir].size (); i++)
+    {
+      Column_rod &rod = minimal_dists_arr_drul_[dir][i];
+      if (rod.other_l_ == p)
+       {
+         rod.distance_f_ = rod.distance_f_ >? d;
+         return ;
+       }
+    }
+
+  Column_rod cr;
+  cr.distance_f_ = d;
+  cr.other_l_ = p;
+  cr.dir_ = dir;
+
+  minimal_dists_arr_drul_[dir].push (cr);
+      
+}
 
 int
 Paper_column::rank_i() const
@@ -44,10 +66,15 @@ Paper_column::do_print() const
     } 
   if (break_status_i_)
     {
-      DOUT <<'\n' << ((break_status_i_ == -1)? "prebreak" : "postbreak");
+      DOUT <<'\n' << ((break_status_i_ == LEFT) ? "prebreak" : "postbreak");
       DOUT << '\n';
     }
   // DOUT << "extent: " << width().str () << "\n";
+
+  for (int i=0; i < minimal_dists_arr_drul_[RIGHT].size (); i++)
+    {
+      minimal_dists_arr_drul_[RIGHT][i].print ();
+    }
 #endif 
 }
 
@@ -96,3 +123,16 @@ Paper_column::used_b() const
 
 IMPLEMENT_IS_TYPE_B1(Paper_column, Horizontal_group_item);
 
+Paper_column*
+Paper_column::column_l () const
+{
+  return (Paper_column*)this;
+}
+
+
+void
+Paper_column::preprocess ()
+{
+  minimal_dists_arr_drul_[LEFT].sort (Column_rod::compare);
+  minimal_dists_arr_drul_[RIGHT].sort (Column_rod::compare);  
+}
index 437efdc694073b51358dc32fb31db12b47e56fca..e53985fa4e6ada010850302abe8c29069887d481 100644 (file)
@@ -25,8 +25,8 @@
 #include "outputter.hh"
 
 // sucking Cygnus egcs - w32
-#include "plist.tcc"
-#include "pcursor.tcc"
+#include "list.tcc"
+#include "cursor.tcc"
 
 Paper_score::Paper_score ()
 {
@@ -185,7 +185,9 @@ Paper_score::process ()
   *mlog << _("Preprocessing elements... ") <<flush;
   super_elem_l_->breakable_col_processing ();
   super_elem_l_->pre_processing ();
+  
   *mlog << _("\nCalculating column positions ... ") <<flush;
+  super_elem_l_->space_processing ();
   calc_breaking ();
   *mlog << _("\nPostprocessing elements...") << endl;
   super_elem_l_->post_processing ();
index 7c9149b7e5b6fd9ff402de327cdb5ec94f1e567a..584b05711b18cc5e5c27c9e8fffe5bc3f0c4c9fd 100644 (file)
 #include "duration-convert.hh"
 #include "change-translator.hh"
 
+// needed for bison.simple's malloc() and free()
+#include <malloc.h>
+
 int const GUESS_PLET = 5;
 int guess_plet_a[GUESS_PLET] =
 { 
@@ -151,7 +154,7 @@ int guess_plet_a[GUESS_PLET] =
 #define yyerror THIS->parser_error
 
 
-#line 68 "parser.yy"
+#line 71 "parser.yy"
 typedef union {
     Array<Interval>* intarr;
     Array<Melodic_req*> *melreqvec;/* should clean up naming */
@@ -191,7 +194,7 @@ typedef union {
     int pair[2];
     int ii[10];
 } YYSTYPE;
-#line 107 "parser.yy"
+#line 110 "parser.yy"
 
 
 int
@@ -355,29 +358,29 @@ static const short yyrhs[] = {    -1,
 
 #if YYDEBUG != 0
 static const short yyrline[] = { 0,
-   258,   259,   263,   266,   267,   268,   269,   272,   285,   288,
-   291,   294,   300,   304,   311,   318,   322,   331,   335,   342,
-   347,   351,   355,   359,   363,   367,   371,   374,   377,   381,
-   384,   391,   396,   401,   406,   411,   415,   424,   428,   442,
-   445,   448,   451,   456,   459,   464,   468,   473,   475,   484,
-   489,   493,   496,   500,   501,   504,   507,   511,   515,   520,
-   524,   531,   537,   540,   544,   548,   552,   557,   570,   576,
-   581,   586,   588,   593,   600,   601,   602,   603,   604,   605,
-   608,   610,   613,   614,   615,   618,   631,   645,   647,   651,
-   653,   659,   665,   670,   683,   688,   689,   692,   694,   697,
-   707,   709,   712,   716,   721,   726,   731,   736,   744,   747,
-   750,   754,   758,   764,   769,   778,   782,   791,   793,   796,
-   800,   803,   815,   820,   823,   829,   835,   841,   850,   858,
-   864,   872,   877,   885,   893,   900,   909,   913,   916,   919,
-   922,   925,   929,   941,   949,   958,   962,   965,   968,   970,
-   976,   980,   989,  1000,  1005,  1009,  1015,  1026,  1036,  1038,
-  1039,  1040,  1041,  1042,  1043,  1048,  1050,  1051,  1057,  1059,
-  1060,  1063,  1066,  1075,  1080,  1084,  1094,  1098,  1104,  1108,
-  1113,  1115,  1118,  1122,  1126,  1132,  1138,  1148,  1151,  1154,
-  1157,  1163,  1167,  1177,  1185,  1191,  1203,  1206,  1211,  1215,
-  1219,  1223,  1226,  1233,  1237,  1246,  1251,  1252,  1253,  1254,
-  1260,  1264,  1268,  1271,  1275,  1281,  1285,  1287,  1294,  1300,
-  1307,  1315
+   261,   262,   266,   269,   270,   271,   272,   275,   288,   291,
+   294,   297,   303,   307,   314,   321,   325,   334,   338,   345,
+   350,   354,   358,   362,   366,   370,   374,   377,   380,   384,
+   387,   394,   399,   404,   409,   414,   418,   427,   431,   445,
+   448,   451,   454,   459,   462,   467,   471,   476,   478,   487,
+   492,   496,   499,   503,   504,   507,   510,   514,   518,   523,
+   527,   534,   540,   543,   547,   551,   555,   560,   573,   579,
+   584,   589,   591,   596,   603,   604,   605,   606,   607,   608,
+   611,   613,   616,   617,   618,   621,   634,   648,   650,   654,
+   656,   662,   668,   673,   686,   691,   692,   695,   697,   700,
+   710,   712,   715,   719,   724,   729,   734,   739,   747,   750,
+   753,   757,   761,   767,   772,   781,   785,   794,   796,   799,
+   803,   806,   818,   823,   826,   832,   838,   844,   853,   861,
+   867,   875,   880,   888,   896,   903,   912,   916,   919,   922,
+   925,   928,   932,   944,   952,   961,   965,   968,   971,   973,
+   979,   983,   992,  1003,  1008,  1012,  1018,  1029,  1039,  1041,
+  1042,  1043,  1044,  1045,  1046,  1051,  1053,  1054,  1060,  1062,
+  1063,  1066,  1069,  1078,  1083,  1087,  1097,  1101,  1107,  1111,
+  1116,  1118,  1121,  1125,  1129,  1135,  1141,  1151,  1154,  1157,
+  1160,  1166,  1170,  1180,  1188,  1194,  1206,  1209,  1214,  1218,
+  1222,  1226,  1229,  1236,  1240,  1249,  1254,  1255,  1256,  1257,
+  1263,  1267,  1271,  1274,  1278,  1284,  1288,  1290,  1297,  1303,
+  1310,  1318
 };
 #endif
 
@@ -1220,32 +1223,32 @@ yyreduce:
   switch (yyn) {
 
 case 2:
-#line 259 "parser.yy"
+#line 262 "parser.yy"
 {
                delete THIS->default_header_p_ ;
                THIS->default_header_p_ = yyvsp[0].header;
        ;
     break;}
 case 3:
-#line 263 "parser.yy"
+#line 266 "parser.yy"
 {
                add_score (yyvsp[0].score);
        ;
     break;}
 case 4:
-#line 266 "parser.yy"
+#line 269 "parser.yy"
 { ;
     break;}
 case 6:
-#line 268 "parser.yy"
+#line 271 "parser.yy"
 { ;
     break;}
 case 7:
-#line 269 "parser.yy"
+#line 272 "parser.yy"
 { ;
     break;}
 case 8:
-#line 273 "parser.yy"
+#line 276 "parser.yy"
 {
                if (String (*yyvsp[-1].string) != MUDELA_VERSION) {
                        if (THIS->ignore_version_b_) {
@@ -1258,31 +1261,31 @@ case 8:
        ;
     break;}
 case 10:
-#line 289 "parser.yy"
+#line 292 "parser.yy"
 {
        ;
     break;}
 case 11:
-#line 291 "parser.yy"
+#line 294 "parser.yy"
 {
                THIS->clear_notenames ();
        ;
     break;}
 case 12:
-#line 294 "parser.yy"
+#line 297 "parser.yy"
 {
                THIS->add_notename (*yyvsp[-2].string, yyvsp[0].melreq);
                delete yyvsp[-2].string;
        ;
     break;}
 case 13:
-#line 301 "parser.yy"
+#line 304 "parser.yy"
 {
                yyval.header = new Header;
        ;
     break;}
 case 14:
-#line 304 "parser.yy"
+#line 307 "parser.yy"
 {
                (*yyval.header)[*yyvsp[-3].string] = *yyvsp[-1].string;
                delete yyvsp[-3].string;
@@ -1290,31 +1293,31 @@ case 14:
        ;
     break;}
 case 15:
-#line 312 "parser.yy"
+#line 315 "parser.yy"
 {
                yyval.header = yyvsp[-1].header;
        ;
     break;}
 case 16:
-#line 319 "parser.yy"
+#line 322 "parser.yy"
 {
                yyval.string = new String;
        ;
     break;}
 case 17:
-#line 322 "parser.yy"
+#line 325 "parser.yy"
 {
                *yyval.string += *yyvsp[0].string;
        ;
     break;}
 case 18:
-#line 332 "parser.yy"
+#line 335 "parser.yy"
 {
                THIS->remember_spot ();
        ;
     break;}
 case 19:
-#line 335 "parser.yy"
+#line 338 "parser.yy"
 {
            THIS->lexer_p_->set_identifier (*yyvsp[-3].string, yyvsp[0].id);
            yyvsp[0].id->init_b_ = THIS->init_parse_b_;
@@ -1322,98 +1325,98 @@ case 19:
        ;
     break;}
 case 20:
-#line 343 "parser.yy"
+#line 346 "parser.yy"
 {
                yyval.id = new Score_id (yyvsp[0].score, SCORE_IDENTIFIER);
 
        ;
     break;}
 case 21:
-#line 347 "parser.yy"
+#line 350 "parser.yy"
 {
                yyval.id = new Paper_def_id (yyvsp[0].paper, PAPER_IDENTIFIER);
 
        ;
     break;}
 case 22:
-#line 351 "parser.yy"
+#line 354 "parser.yy"
 {
                yyval.id = new Midi_def_id (yyvsp[0].midi, MIDI_IDENTIFIER);
 
        ;
     break;}
 case 23:
-#line 355 "parser.yy"
+#line 358 "parser.yy"
 {
                yyval.id = new Script_id (yyvsp[0].script, SCRIPT_IDENTIFIER);
 
        ;
     break;}
 case 24:
-#line 359 "parser.yy"
+#line 362 "parser.yy"
 {
                yyval.id = new Music_id (yyvsp[0].music, MUSIC_IDENTIFIER);
 
        ;
     break;}
 case 25:
-#line 363 "parser.yy"
+#line 366 "parser.yy"
 {
                yyval.id = new Lookup_id (yyvsp[0].lookup, IDENTIFIER);
 
        ;
     break;}
 case 26:
-#line 367 "parser.yy"
+#line 370 "parser.yy"
 {
                yyval.id = new Real_id (new Real (yyvsp[0].real), REAL_IDENTIFIER);
 
        ;
     break;}
 case 27:
-#line 371 "parser.yy"
+#line 374 "parser.yy"
 {
                yyval.id = new Int_id (new int (yyvsp[0].i), INT_IDENTIFIER);
        ;
     break;}
 case 28:
-#line 374 "parser.yy"
+#line 377 "parser.yy"
 {
                yyval.id = new Request_id (yyvsp[0].request, POST_REQUEST_IDENTIFIER);
        ;
     break;}
 case 29:
-#line 377 "parser.yy"
+#line 380 "parser.yy"
 {
                yyval.id = new Request_id (yyvsp[0].melreq, MELODIC_REQUEST_IDENTIFIER);
 
        ;
     break;}
 case 30:
-#line 381 "parser.yy"
+#line 384 "parser.yy"
 {
                yyval.id = new Translator_id (yyvsp[0].trans, TRANS_IDENTIFIER);
        ;
     break;}
 case 31:
-#line 384 "parser.yy"
+#line 387 "parser.yy"
 {
                yyval.id = new Duration_id (yyvsp[0].duration, DURATION_IDENTIFIER);
        ;
     break;}
 case 32:
-#line 393 "parser.yy"
+#line 396 "parser.yy"
 { yyval.trans = yyvsp[-1].trans; ;
     break;}
 case 33:
-#line 397 "parser.yy"
+#line 400 "parser.yy"
 {
                yyval.trans = yyvsp[0].id->translator ();
                yyval.trans-> set_spot (THIS->here_input ());
        ;
     break;}
 case 34:
-#line 401 "parser.yy"
+#line 404 "parser.yy"
 {
                yyval.trans = get_translator_l (*yyvsp[-1].string)->clone ();
                yyval.trans->set_spot (THIS->here_input ());
@@ -1421,7 +1424,7 @@ case 34:
        ;
     break;}
 case 35:
-#line 406 "parser.yy"
+#line 409 "parser.yy"
 {
                yyval.trans-> set_property (*yyvsp[-3].string, *yyvsp[-1].scalar);
                delete yyvsp[-3].string;
@@ -1429,27 +1432,27 @@ case 35:
        ;
     break;}
 case 36:
-#line 411 "parser.yy"
+#line 414 "parser.yy"
 {
                yyval.trans->group_l ()->consists_str_arr_.push (*yyvsp[-1].string);
                delete yyvsp[-1].string;
        ;
     break;}
 case 37:
-#line 415 "parser.yy"
+#line 418 "parser.yy"
 {
                yyval.trans->group_l ()->accepts_str_arr_.push (*yyvsp[-1].string);
                delete yyvsp[-1].string;
        ;
     break;}
 case 38:
-#line 425 "parser.yy"
+#line 428 "parser.yy"
 { THIS->remember_spot ();
                THIS->error_level_i_ =0;
        ;
     break;}
 case 39:
-#line 428 "parser.yy"
+#line 431 "parser.yy"
 {
                yyval.score = yyvsp[-1].score;
                yyval.score->set_spot (THIS->pop_spot ());
@@ -1464,25 +1467,25 @@ case 39:
        ;
     break;}
 case 40:
-#line 442 "parser.yy"
+#line 445 "parser.yy"
 {
                yyval.score = new Score;
        ;
     break;}
 case 41:
-#line 445 "parser.yy"
+#line 448 "parser.yy"
 {
                yyval.score = yyvsp[0].id->score ();
        ;
     break;}
 case 42:
-#line 448 "parser.yy"
+#line 451 "parser.yy"
 {
                yyval.score->header_p_ = yyvsp[0].header;
        ;
     break;}
 case 43:
-#line 451 "parser.yy"
+#line 454 "parser.yy"
 {
                if (yyval.score->music_p_)
                        yyvsp[0].music->warning ("More than one music block");  
@@ -1490,149 +1493,149 @@ case 43:
        ;
     break;}
 case 44:
-#line 456 "parser.yy"
+#line 459 "parser.yy"
 {
                yyval.score->add (yyvsp[0].outputdef);
        ;
     break;}
 case 45:
-#line 459 "parser.yy"
+#line 462 "parser.yy"
 {
 
        ;
     break;}
 case 46:
-#line 465 "parser.yy"
+#line 468 "parser.yy"
 {
                yyval.outputdef = yyvsp[0].paper;
        ;
     break;}
 case 47:
-#line 468 "parser.yy"
+#line 471 "parser.yy"
 {
                yyval.outputdef= yyvsp[0].midi;
        ;
     break;}
 case 48:
-#line 474 "parser.yy"
+#line 477 "parser.yy"
 { yyval.intvec =new Array<int>; ;
     break;}
 case 49:
-#line 475 "parser.yy"
+#line 478 "parser.yy"
 {
                yyval.intvec->push (yyvsp[-2].i); yyval.intvec->push (yyvsp[0].i);
        ;
     break;}
 case 50:
-#line 486 "parser.yy"
+#line 489 "parser.yy"
 { yyval.paper = yyvsp[-1].paper; ;
     break;}
 case 51:
-#line 490 "parser.yy"
+#line 493 "parser.yy"
 {
                yyval.paper = THIS->default_paper ();
        ;
     break;}
 case 52:
-#line 493 "parser.yy"
+#line 496 "parser.yy"
 {
                yyval.paper = yyvsp[0].id->paperdef ();
        ;
     break;}
 case 53:
-#line 496 "parser.yy"
+#line 499 "parser.yy"
 { 
                yyval.paper->outfile_str_ = *yyvsp[-1].string;
                delete yyvsp[-1].string;
        ;
     break;}
 case 54:
-#line 500 "parser.yy"
+#line 503 "parser.yy"
 { yyval.paper->set (yyvsp[0].lookup); ;
     break;}
 case 55:
-#line 501 "parser.yy"
+#line 504 "parser.yy"
 {
                yyval.paper->set_var (*yyvsp[-3].string, yyvsp[-1].real);
        ;
     break;}
 case 56:
-#line 504 "parser.yy"
+#line 507 "parser.yy"
 {
                yyval.paper->set_var (*yyvsp[-3].string, yyvsp[-1].real);
        ;
     break;}
 case 57:
-#line 507 "parser.yy"
+#line 510 "parser.yy"
 {
                yyval.paper-> assign_translator (*yyvsp[-2].string, yyvsp[0].trans);
                delete yyvsp[-2].string;
        ;
     break;}
 case 58:
-#line 511 "parser.yy"
+#line 514 "parser.yy"
 {
                yyval.paper->shape_int_a_ = *yyvsp[-1].intarr;
                delete yyvsp[-1].intarr;
        ;
     break;}
 case 59:
-#line 515 "parser.yy"
+#line 518 "parser.yy"
 {
 
        ;
     break;}
 case 60:
-#line 521 "parser.yy"
+#line 524 "parser.yy"
 {
                yyval.intarr = new Array<Interval>;
        ;
     break;}
 case 61:
-#line 524 "parser.yy"
+#line 527 "parser.yy"
 {
                yyval.intarr->push(Interval(yyvsp[-1].real, yyvsp[-1].real + yyvsp[0].real));
        ;
     break;}
 case 62:
-#line 534 "parser.yy"
+#line 537 "parser.yy"
 { yyval.midi = yyvsp[-1].midi; ;
     break;}
 case 63:
-#line 537 "parser.yy"
+#line 540 "parser.yy"
 {
                yyval.midi = THIS->default_midi ();
        ;
     break;}
 case 64:
-#line 540 "parser.yy"
+#line 543 "parser.yy"
 {
                yyval.midi-> assign_translator (*yyvsp[-2].string, yyvsp[0].trans);
                delete yyvsp[-2].string;
        ;
     break;}
 case 65:
-#line 544 "parser.yy"
+#line 547 "parser.yy"
 {
                yyval.midi->outfile_str_ = *yyvsp[-1].string;
                delete yyvsp[-1].string;
        ;
     break;}
 case 66:
-#line 548 "parser.yy"
+#line 551 "parser.yy"
 {
                yyval.midi->set_tempo (yyvsp[-1].tempo->dur_.length (), yyvsp[-1].tempo->metronome_i_);
                delete yyvsp[-1].tempo;
        ;
     break;}
 case 67:
-#line 552 "parser.yy"
+#line 555 "parser.yy"
 {
 
        ;
     break;}
 case 68:
-#line 558 "parser.yy"
+#line 561 "parser.yy"
 {
                yyval.tempo = new Tempo_req;
                yyval.tempo->dur_ = *yyvsp[-2].duration;
@@ -1641,30 +1644,30 @@ case 68:
        ;
     break;}
 case 69:
-#line 571 "parser.yy"
+#line 574 "parser.yy"
 {
                yyval.musiclist = yyvsp[-1].musiclist;
        ;
     break;}
 case 70:
-#line 577 "parser.yy"
+#line 580 "parser.yy"
 {
                yyval.musiclist = new Voice;
                yyval.musiclist->set_spot (THIS->here_input ());
        ;
     break;}
 case 71:
-#line 581 "parser.yy"
+#line 584 "parser.yy"
 {
                yyval.musiclist->add (yyvsp[0].music);
        ;
     break;}
 case 72:
-#line 587 "parser.yy"
+#line 590 "parser.yy"
 { yyval.music = yyvsp[0].music; ;
     break;}
 case 73:
-#line 588 "parser.yy"
+#line 591 "parser.yy"
 {
                yyval.music = yyvsp[0].music;
                yyval.music->translator_type_str_ = *yyvsp[-1].string;
@@ -1672,7 +1675,7 @@ case 73:
        ;
     break;}
 case 74:
-#line 593 "parser.yy"
+#line 596 "parser.yy"
 {
                yyval.music = yyvsp[0].music;
                yyval.music->translator_type_str_ = *yyvsp[-3].string;
@@ -1682,43 +1685,43 @@ case 74:
        ;
     break;}
 case 75:
-#line 600 "parser.yy"
+#line 603 "parser.yy"
 { yyval.music = yyvsp[0].musiclist; ;
     break;}
 case 76:
-#line 601 "parser.yy"
+#line 604 "parser.yy"
 { yyval.music = yyvsp[0].chord; ;
     break;}
 case 77:
-#line 602 "parser.yy"
+#line 605 "parser.yy"
 { yyval.music = yyvsp[0].music; ;
     break;}
 case 78:
-#line 603 "parser.yy"
+#line 606 "parser.yy"
 { yyval.music = yyvsp[0].id->music (); ;
     break;}
 case 79:
-#line 604 "parser.yy"
+#line 607 "parser.yy"
 { yyval.music = yyvsp[-1].id->music (); ;
     break;}
 case 80:
-#line 606 "parser.yy"
+#line 609 "parser.yy"
 { THIS->lexer_p_->push_note_state (); ;
     break;}
 case 81:
-#line 608 "parser.yy"
+#line 611 "parser.yy"
 { yyval.music=yyvsp[0].music; THIS->lexer_p_->pop_state (); ;
     break;}
 case 82:
-#line 611 "parser.yy"
+#line 614 "parser.yy"
 { THIS->lexer_p_->push_lyric_state (); ;
     break;}
 case 83:
-#line 613 "parser.yy"
+#line 616 "parser.yy"
 { yyval.music = yyvsp[0].music; THIS->lexer_p_->pop_state (); ;
     break;}
 case 86:
-#line 619 "parser.yy"
+#line 622 "parser.yy"
 {
                Change_translator * t = new Change_translator;
                t-> change_to_type_str_ = *yyvsp[-2].string;
@@ -1731,7 +1734,7 @@ case 86:
        ;
     break;}
 case 87:
-#line 632 "parser.yy"
+#line 635 "parser.yy"
 {
                Translation_property *t = new Translation_property;
                t-> translator_type_str_ = *yyvsp[-4].string;
@@ -1745,26 +1748,26 @@ case 87:
        ;
     break;}
 case 88:
-#line 646 "parser.yy"
+#line 649 "parser.yy"
 { yyval.scalar = new Scalar (*yyvsp[0].string); delete yyvsp[0].string; ;
     break;}
 case 89:
-#line 647 "parser.yy"
+#line 650 "parser.yy"
 { yyval.scalar = new Scalar (yyvsp[0].i); ;
     break;}
 case 90:
-#line 652 "parser.yy"
+#line 655 "parser.yy"
 { yyval.chord  = yyvsp[-1].chord; ;
     break;}
 case 91:
-#line 653 "parser.yy"
+#line 656 "parser.yy"
 {
                yyval.chord = yyvsp[0].chord;
                yyval.chord->multi_level_i_=yyvsp[-1].i;
        ;
     break;}
 case 92:
-#line 660 "parser.yy"
+#line 663 "parser.yy"
 {
                yyval.chord = new Chord;
                yyval.chord-> multi_level_i_ = 1;
@@ -1772,13 +1775,13 @@ case 92:
        ;
     break;}
 case 93:
-#line 665 "parser.yy"
+#line 668 "parser.yy"
 {
                yyval.chord->add (yyvsp[0].music);
        ;
     break;}
 case 94:
-#line 671 "parser.yy"
+#line 674 "parser.yy"
 {
                yyval.music = yyvsp[0].music;
                yyval.music -> transpose (yyvsp[-1].melreq);
@@ -1787,18 +1790,18 @@ case 94:
        ;
     break;}
 case 95:
-#line 684 "parser.yy"
+#line 687 "parser.yy"
 {
                THIS->add_requests ((Chord*)yyvsp[-1].music);//ugh
                yyval.music = yyvsp[-1].music;
        ;
     break;}
 case 97:
-#line 689 "parser.yy"
+#line 692 "parser.yy"
 { yyval.music = 0; ;
     break;}
 case 100:
-#line 698 "parser.yy"
+#line 701 "parser.yy"
 {
                yyval.music = new Request_chord;
                yyval.music-> set_spot (THIS->here_input ());
@@ -1808,30 +1811,30 @@ case 100:
        ;
     break;}
 case 102:
-#line 709 "parser.yy"
+#line 712 "parser.yy"
 { yyval.request = yyvsp[-1].request; ;
     break;}
 case 103:
-#line 713 "parser.yy"
+#line 716 "parser.yy"
 {
                yyval.request = new Barcheck_req;
        ;
     break;}
 case 104:
-#line 716 "parser.yy"
+#line 719 "parser.yy"
 {
                yyval.request = yyvsp[0].id->request ();
        ;
     break;}
 case 105:
-#line 722 "parser.yy"
+#line 725 "parser.yy"
 {
                yyval.request = new Bar_req (*yyvsp[0].string);
                delete yyvsp[0].string;
        ;
     break;}
 case 106:
-#line 726 "parser.yy"
+#line 729 "parser.yy"
 {
                Break_force_req * f = new Break_force_req;
                f-> set_spot (THIS->here_input ());
@@ -1839,7 +1842,7 @@ case 106:
        ;
     break;}
 case 107:
-#line 731 "parser.yy"
+#line 734 "parser.yy"
 {
                Meter_change_req *m = new Meter_change_req;
                m->set (yyvsp[-2].i,yyvsp[0].i);
@@ -1847,7 +1850,7 @@ case 107:
        ;
     break;}
 case 108:
-#line 736 "parser.yy"
+#line 739 "parser.yy"
 {
                Skip_req * skip_p = new Skip_req;
                skip_p->duration_.set_plet (yyvsp[0].moment->num (),
@@ -1858,33 +1861,33 @@ case 108:
        ;
     break;}
 case 109:
-#line 744 "parser.yy"
+#line 747 "parser.yy"
 {
                yyval.request = yyvsp[0].tempo;
        ;
     break;}
 case 110:
-#line 747 "parser.yy"
+#line 750 "parser.yy"
 {
                yyval.request = new Cadenza_req (yyvsp[0].i);
        ;
     break;}
 case 111:
-#line 750 "parser.yy"
+#line 753 "parser.yy"
 {
                yyval.request = new Partial_measure_req (*yyvsp[0].moment);
                delete yyvsp[0].moment;
        ;
     break;}
 case 112:
-#line 754 "parser.yy"
+#line 757 "parser.yy"
 {
                yyval.request = new Clef_change_req (*yyvsp[0].string);
                delete yyvsp[0].string;
        ;
     break;}
 case 113:
-#line 758 "parser.yy"
+#line 761 "parser.yy"
 {
                Key_change_req *key_p= new Key_change_req;
                key_p->melodic_p_arr_ = *yyvsp[0].melreqvec;
@@ -1893,13 +1896,13 @@ case 113:
        ;
     break;}
 case 114:
-#line 764 "parser.yy"
+#line 767 "parser.yy"
 {
                yyval.request = get_grouping_req (*yyvsp[0].intvec); delete yyvsp[0].intvec;
        ;
     break;}
 case 115:
-#line 770 "parser.yy"
+#line 773 "parser.yy"
 {
                /* something silly happened.  Junk this stuff*/
                if (!THIS->post_reqs.empty ())
@@ -1910,14 +1913,14 @@ case 115:
        ;
     break;}
 case 116:
-#line 778 "parser.yy"
+#line 781 "parser.yy"
 {
                yyvsp[0].request->set_spot (THIS->here_input ());
                THIS->post_reqs.push (yyvsp[0].request);
        ;
     break;}
 case 117:
-#line 782 "parser.yy"
+#line 785 "parser.yy"
 {
                Array<Request*>& r = *THIS->get_parens_request (yyvsp[0].i);
                for (int i = 0; i < r.size (); i++ )
@@ -1927,19 +1930,19 @@ case 117:
        ;
     break;}
 case 120:
-#line 797 "parser.yy"
+#line 800 "parser.yy"
 {
                yyval.request = (Request*)yyvsp[0].id->request ();
        ;
     break;}
 case 121:
-#line 800 "parser.yy"
+#line 803 "parser.yy"
 {
                yyval.request = yyvsp[0].request;
        ;
     break;}
 case 122:
-#line 803 "parser.yy"
+#line 806 "parser.yy"
 {
                Abbreviation_req* a = new Abbreviation_req;
                a->type_i_ = yyvsp[0].i;
@@ -1947,27 +1950,27 @@ case 122:
        ;
     break;}
 case 123:
-#line 816 "parser.yy"
+#line 819 "parser.yy"
 {
                yyval.melreq = yyvsp[0].melreq->clone ()->musical ()->melodic ();
                yyval.melreq->octave_i_ += THIS->default_octave_i_;
        ;
     break;}
 case 124:
-#line 820 "parser.yy"
+#line 823 "parser.yy"
 {
                yyval.melreq-> octave_i_ += yyvsp[0].i;
        ;
     break;}
 case 125:
-#line 823 "parser.yy"
+#line 826 "parser.yy"
 {
                yyval.melreq = yyvsp[0].melreq;
                yyvsp[0].melreq-> octave_i_ -= yyvsp[-1].i;
        ;
     break;}
 case 126:
-#line 830 "parser.yy"
+#line 833 "parser.yy"
 {
                yyval.notereq = new Note_req;
                * (Melodic_req *) yyval.notereq = *yyvsp[0].melreq;
@@ -1975,13 +1978,13 @@ case 126:
        ;
     break;}
 case 127:
-#line 835 "parser.yy"
+#line 838 "parser.yy"
 {
                yyval.notereq->forceacc_b_ = ! yyval.notereq->forceacc_b_;
        ;
     break;}
 case 128:
-#line 842 "parser.yy"
+#line 845 "parser.yy"
 {/* ugh */
                yyval.melreq = new Melodic_req;
                yyval.melreq->octave_i_ = yyvsp[-3].i;
@@ -1990,7 +1993,7 @@ case 128:
        ;
     break;}
 case 129:
-#line 851 "parser.yy"
+#line 854 "parser.yy"
 {
                yyval.duration = new Duration;
                yyval.duration-> durlog_i_ = yyvsp[-2].i;
@@ -1998,7 +2001,7 @@ case 129:
        ;
     break;}
 case 130:
-#line 859 "parser.yy"
+#line 862 "parser.yy"
 {
                Absolute_dynamic_req *ad_p = new Absolute_dynamic_req;
                ad_p ->loudness_ = (Dynamic_req::Loudness)yyvsp[-1].i;
@@ -2006,23 +2009,23 @@ case 130:
        ;
     break;}
 case 131:
-#line 864 "parser.yy"
+#line 867 "parser.yy"
 {
                Span_dynamic_req * sp_p = new Span_dynamic_req;
-               sp_p->spantype = yyvsp[-1].i;
-               sp_p-> dynamic_dir_  = yyvsp[-2].i;
+               sp_p->spantype = (Span_req::Spantype)yyvsp[-1].i;
+               sp_p-> dynamic_dir_  = (Direction)yyvsp[-2].i;
                yyval.request = sp_p;
        ;
     break;}
 case 132:
-#line 873 "parser.yy"
+#line 876 "parser.yy"
 {
                yyval.pair[0] = yyvsp[-2].i;
                yyval.pair[1] = yyvsp[0].i;
        ;
     break;}
 case 133:
-#line 878 "parser.yy"
+#line 881 "parser.yy"
 {
                int num = yyvsp[0].i >? 1;
                yyval.pair[0] = guess_plet_a[(num <? GUESS_PLET) - 1];
@@ -2030,7 +2033,7 @@ case 133:
        ;
     break;}
 case 134:
-#line 886 "parser.yy"
+#line 889 "parser.yy"
 {
                yyval.i = MAEBTELP;
                THIS->plet_.type_i_ = yyvsp[0].pair[1];
@@ -2040,7 +2043,7 @@ case 134:
        ;
     break;}
 case 135:
-#line 893 "parser.yy"
+#line 896 "parser.yy"
 {
                yyval.i = TELP;
                THIS->plet_.type_i_ = 1;
@@ -2050,7 +2053,7 @@ case 135:
        ;
     break;}
 case 136:
-#line 900 "parser.yy"
+#line 903 "parser.yy"
 {
                yyval.i = TELP;
                THIS->plet_.type_i_ = yyvsp[0].pair[1];
@@ -2060,42 +2063,42 @@ case 136:
        ;
     break;}
 case 137:
-#line 910 "parser.yy"
+#line 913 "parser.yy"
 {
                yyval.i = '~';
        ;
     break;}
 case 138:
-#line 913 "parser.yy"
+#line 916 "parser.yy"
 {
                yyval.i='(';
        ;
     break;}
 case 139:
-#line 916 "parser.yy"
+#line 919 "parser.yy"
 {
                yyval.i = ']';
        ;
     break;}
 case 140:
-#line 919 "parser.yy"
+#line 922 "parser.yy"
 {
                yyval.i = '<';
        ;
     break;}
 case 141:
-#line 922 "parser.yy"
+#line 925 "parser.yy"
 {
                yyval.i = '>';
        ;
     break;}
 case 142:
-#line 925 "parser.yy"
+#line 928 "parser.yy"
 {
        ;
     break;}
 case 143:
-#line 930 "parser.yy"
+#line 933 "parser.yy"
 {
                yyval.c = '[';
                if (!Duration::duration_type_b (yyvsp[0].i))
@@ -2107,7 +2110,7 @@ case 143:
        ;
     break;}
 case 144:
-#line 942 "parser.yy"
+#line 945 "parser.yy"
 {
                yyval.i = BEAMPLET;
                THIS->plet_.type_i_ = yyvsp[0].pair[1];
@@ -2117,7 +2120,7 @@ case 144:
        ;
     break;}
 case 145:
-#line 949 "parser.yy"
+#line 952 "parser.yy"
 {
                yyval.i = PLET;
                THIS->plet_.type_i_ = yyvsp[0].pair[1];
@@ -2127,39 +2130,39 @@ case 145:
        ;
     break;}
 case 146:
-#line 959 "parser.yy"
+#line 962 "parser.yy"
 {
                yyval.i = '!';
        ;
     break;}
 case 147:
-#line 962 "parser.yy"
+#line 965 "parser.yy"
 {
                yyval.i=')';
        ;
     break;}
 case 148:
-#line 965 "parser.yy"
+#line 968 "parser.yy"
 {
                yyval.i='[';
        ;
     break;}
 case 149:
-#line 968 "parser.yy"
+#line 971 "parser.yy"
 {
        ;
     break;}
 case 150:
-#line 970 "parser.yy"
+#line 973 "parser.yy"
 {
        ;
     break;}
 case 151:
-#line 977 "parser.yy"
+#line 980 "parser.yy"
 { yyval.script = yyvsp[-1].script; ;
     break;}
 case 152:
-#line 981 "parser.yy"
+#line 984 "parser.yy"
 {
                Script_def *s = new Script_def;
                s->set_from_input (*yyvsp[-5].string,yyvsp[-4].i, yyvsp[-3].i,yyvsp[-2].i,yyvsp[-1].i, yyvsp[0].i);
@@ -2168,39 +2171,39 @@ case 152:
        ;
     break;}
 case 153:
-#line 990 "parser.yy"
+#line 993 "parser.yy"
 {
                Musical_script_req *m = new Musical_script_req;
                yyval.request = m;
                m->scriptdef_p_ = yyvsp[0].script;
                m->set_spot (THIS->here_input ());
                if (!m->dir_)
-                 m->dir_  = yyvsp[-1].i;
+                 m->dir_  = (Direction)yyvsp[-1].i;
        ;
     break;}
 case 154:
-#line 1001 "parser.yy"
+#line 1004 "parser.yy"
 { 
                yyval.script = yyvsp[0].textdef;
                ((Text_def*) yyval.script)->align_i_ = CENTER; /* UGH */
        ;
     break;}
 case 155:
-#line 1005 "parser.yy"
+#line 1008 "parser.yy"
 { 
                yyval.script = yyvsp[0].script;
                yyval.script-> set_spot (THIS->here_input ());
        ;
     break;}
 case 156:
-#line 1009 "parser.yy"
+#line 1012 "parser.yy"
 {
                yyval.script = yyvsp[0].textdef;
                ((Text_def*)yyval.script)->align_i_ = CENTER;
        ;
     break;}
 case 157:
-#line 1016 "parser.yy"
+#line 1019 "parser.yy"
 {
                Text_def *t  = new Text_def;
                yyval.textdef = t;
@@ -2211,7 +2214,7 @@ case 157:
        ;
     break;}
 case 158:
-#line 1027 "parser.yy"
+#line 1030 "parser.yy"
 {
                Text_def* t  = new Text_def;
                yyval.textdef = t;
@@ -2221,69 +2224,69 @@ case 158:
        ;
     break;}
 case 159:
-#line 1037 "parser.yy"
+#line 1040 "parser.yy"
 { yyval.string = get_scriptdef ('^'); ;
     break;}
 case 160:
-#line 1038 "parser.yy"
+#line 1041 "parser.yy"
 { yyval.string = get_scriptdef ('+'); ;
     break;}
 case 161:
-#line 1039 "parser.yy"
+#line 1042 "parser.yy"
 { yyval.string = get_scriptdef ('-'); ;
     break;}
 case 162:
-#line 1040 "parser.yy"
+#line 1043 "parser.yy"
 { yyval.string = get_scriptdef ('|'); ;
     break;}
 case 163:
-#line 1041 "parser.yy"
+#line 1044 "parser.yy"
 { yyval.string = get_scriptdef ('o'); ;
     break;}
 case 164:
-#line 1042 "parser.yy"
+#line 1045 "parser.yy"
 { yyval.string = get_scriptdef ('>'); ;
     break;}
 case 165:
-#line 1043 "parser.yy"
+#line 1046 "parser.yy"
 {
                yyval.string = get_scriptdef ('.');
        ;
     break;}
 case 166:
-#line 1049 "parser.yy"
+#line 1052 "parser.yy"
 { yyval.script = yyvsp[0].id->script (); ;
     break;}
 case 167:
-#line 1050 "parser.yy"
+#line 1053 "parser.yy"
 { yyval.script = yyvsp[0].script; ;
     break;}
 case 168:
-#line 1051 "parser.yy"
+#line 1054 "parser.yy"
 {
                yyval.script = THIS->lexer_p_->lookup_identifier (*yyvsp[0].string)->script ();
                delete yyvsp[0].string;
        ;
     break;}
 case 169:
-#line 1058 "parser.yy"
+#line 1061 "parser.yy"
 { yyval.i = -1; ;
     break;}
 case 170:
-#line 1059 "parser.yy"
+#line 1062 "parser.yy"
 { yyval.i = 1; ;
     break;}
 case 171:
-#line 1060 "parser.yy"
+#line 1063 "parser.yy"
 { yyval.i = 0; ;
     break;}
 case 172:
-#line 1064 "parser.yy"
+#line 1067 "parser.yy"
 {
        ;
     break;}
 case 173:
-#line 1066 "parser.yy"
+#line 1069 "parser.yy"
 {
                Array<Request*>& r = *THIS->get_parens_request (yyvsp[0].i);
                for (int i = 0; i < r.size (); i++ )
@@ -2293,21 +2296,21 @@ case 173:
        ;
     break;}
 case 174:
-#line 1076 "parser.yy"
+#line 1079 "parser.yy"
 {
                THIS->set_duration_mode (*yyvsp[0].string);
                delete yyvsp[0].string;
        ;
     break;}
 case 175:
-#line 1080 "parser.yy"
+#line 1083 "parser.yy"
 {
                THIS->set_default_duration (yyvsp[0].duration);
                delete yyvsp[0].duration;
        ;
     break;}
 case 176:
-#line 1084 "parser.yy"
+#line 1087 "parser.yy"
 {
                /*
                        This is weird, but default_octave_i_
@@ -2319,67 +2322,67 @@ case 176:
                THIS->default_octave_i_ = 1; ;
     break;}
 case 177:
-#line 1094 "parser.yy"
+#line 1097 "parser.yy"
 {
                THIS->default_octave_i_ = yyvsp[0].melreq->octave_i_;
                delete yyvsp[0].melreq;
        ;
     break;}
 case 178:
-#line 1098 "parser.yy"
+#line 1101 "parser.yy"
 {
                THIS->textstyle_str_ = *yyvsp[0].string;
                delete yyvsp[0].string;
        ;
     break;}
 case 179:
-#line 1105 "parser.yy"
+#line 1108 "parser.yy"
 {
                yyval.moment = new Moment (0,1);
        ;
     break;}
 case 180:
-#line 1108 "parser.yy"
+#line 1111 "parser.yy"
 {
                *yyval.moment += yyvsp[0].duration->length ();
        ;
     break;}
 case 181:
-#line 1114 "parser.yy"
+#line 1117 "parser.yy"
 { yyval.i = 1; ;
     break;}
 case 182:
-#line 1115 "parser.yy"
+#line 1118 "parser.yy"
 { yyval.i ++; ;
     break;}
 case 183:
-#line 1119 "parser.yy"
+#line 1122 "parser.yy"
 {
                yyval.duration = new Duration (THIS->default_duration_);
        ;
     break;}
 case 184:
-#line 1122 "parser.yy"
+#line 1125 "parser.yy"
 {
                yyval.duration = new Duration (THIS->default_duration_);
                yyval.duration->dots_i_  = yyvsp[0].i;
        ;
     break;}
 case 185:
-#line 1126 "parser.yy"
+#line 1129 "parser.yy"
 {
                THIS->set_last_duration (yyvsp[0].duration);
                yyval.duration = yyvsp[0].duration;
        ;
     break;}
 case 186:
-#line 1133 "parser.yy"
+#line 1136 "parser.yy"
 {
                yyval.duration = yyvsp[0].duration;
        ;
     break;}
 case 187:
-#line 1139 "parser.yy"
+#line 1142 "parser.yy"
 {
                yyval.duration = new Duration;
                if (!Duration::duration_type_b (yyvsp[0].i))
@@ -2391,37 +2394,37 @@ case 187:
        ;
     break;}
 case 188:
-#line 1148 "parser.yy"
+#line 1151 "parser.yy"
 {
                yyval.duration = yyvsp[0].id->duration ();
        ;
     break;}
 case 189:
-#line 1151 "parser.yy"
+#line 1154 "parser.yy"
 {
                yyval.duration->dots_i_ ++;
        ;
     break;}
 case 190:
-#line 1154 "parser.yy"
+#line 1157 "parser.yy"
 {
                yyval.duration->plet_.iso_i_ = yyvsp[0].i;
        ;
     break;}
 case 191:
-#line 1157 "parser.yy"
+#line 1160 "parser.yy"
 {
                yyval.duration->plet_.type_i_ = yyvsp[0].i;
        ;
     break;}
 case 192:
-#line 1164 "parser.yy"
+#line 1167 "parser.yy"
 {
                yyval.i =0;
        ;
     break;}
 case 193:
-#line 1167 "parser.yy"
+#line 1170 "parser.yy"
 {
                if (!Duration::duration_type_b (yyvsp[0].i))
                        THIS->parser_error ("3:Not a duration");
@@ -2431,7 +2434,7 @@ case 193:
        ;
     break;}
 case 194:
-#line 1178 "parser.yy"
+#line 1181 "parser.yy"
 {
                if (!THIS->lexer_p_->note_state_b ())
                        THIS->parser_error ("have to be in Note mode for notes");
@@ -2441,14 +2444,14 @@ case 194:
        ;
     break;}
 case 195:
-#line 1185 "parser.yy"
+#line 1188 "parser.yy"
 {
                yyval.music = THIS->get_rest_element (*yyvsp[-1].string, yyvsp[0].duration);
                delete yyvsp[-1].string;
        ;
     break;}
 case 196:
-#line 1192 "parser.yy"
+#line 1195 "parser.yy"
 {
        /* this sux! text-def should be feature of lyric-engraver. */
                if (!THIS->lexer_p_->lyric_state_b ())
@@ -2458,43 +2461,43 @@ case 196:
        ;
     break;}
 case 197:
-#line 1203 "parser.yy"
+#line 1206 "parser.yy"
 {
                yyval.melreqvec = new Array<Melodic_req*>;
        ;
     break;}
 case 198:
-#line 1206 "parser.yy"
+#line 1209 "parser.yy"
 {
                yyval.melreqvec->push (yyvsp[0].melreq->clone ()->musical ()->melodic ());
        ;
     break;}
 case 199:
-#line 1212 "parser.yy"
+#line 1215 "parser.yy"
 {
                yyval.i = yyvsp[0].i;
        ;
     break;}
 case 200:
-#line 1215 "parser.yy"
+#line 1218 "parser.yy"
 {
                yyval.i = yyvsp[0].i;
        ;
     break;}
 case 201:
-#line 1220 "parser.yy"
+#line 1223 "parser.yy"
 {
                yyval.i = yyvsp[0].i;
        ;
     break;}
 case 202:
-#line 1223 "parser.yy"
+#line 1226 "parser.yy"
 {
                yyval.i = -yyvsp[0].i;
        ;
     break;}
 case 203:
-#line 1226 "parser.yy"
+#line 1229 "parser.yy"
 {
                int *i_p = yyvsp[0].id->intid ();
                yyval.i = *i_p;
@@ -2502,13 +2505,13 @@ case 203:
        ;
     break;}
 case 204:
-#line 1234 "parser.yy"
+#line 1237 "parser.yy"
 {
                yyval.real = yyvsp[0].real;
        ;
     break;}
 case 205:
-#line 1237 "parser.yy"
+#line 1240 "parser.yy"
 {
                Real *r_p = yyvsp[0].id->real ();
                yyval.real = * r_p;
@@ -2516,65 +2519,65 @@ case 205:
        ;
     break;}
 case 206:
-#line 1247 "parser.yy"
+#line 1250 "parser.yy"
 { yyval.real = yyvsp[-1].real*yyvsp[0].real; ;
     break;}
 case 207:
-#line 1251 "parser.yy"
+#line 1254 "parser.yy"
 { yyval.real = 1 CM; ;
     break;}
 case 208:
-#line 1252 "parser.yy"
+#line 1255 "parser.yy"
 { yyval.real = 1 INCH; ;
     break;}
 case 209:
-#line 1253 "parser.yy"
+#line 1256 "parser.yy"
 { yyval.real = 1 MM; ;
     break;}
 case 210:
-#line 1254 "parser.yy"
+#line 1257 "parser.yy"
 { yyval.real = 1 PT; ;
     break;}
 case 211:
-#line 1261 "parser.yy"
+#line 1264 "parser.yy"
 { yyval.lookup = yyvsp[-1].lookup; ;
     break;}
 case 212:
-#line 1265 "parser.yy"
+#line 1268 "parser.yy"
 {
                yyval.lookup = new Lookup;
        ;
     break;}
 case 213:
-#line 1268 "parser.yy"
+#line 1271 "parser.yy"
 {
                yyval.lookup = yyvsp[0].id->lookup ();
        ;
     break;}
 case 214:
-#line 1271 "parser.yy"
+#line 1274 "parser.yy"
 {
                yyval.lookup->texsetting = *yyvsp[0].string;
                delete yyvsp[0].string;
        ;
     break;}
 case 215:
-#line 1275 "parser.yy"
+#line 1278 "parser.yy"
 {
                yyval.lookup->add (*yyvsp[-2].string, yyvsp[0].symtable);
                delete yyvsp[-2].string;
        ;
     break;}
 case 216:
-#line 1282 "parser.yy"
+#line 1285 "parser.yy"
 { yyval.symtable = yyvsp[-1].symtable; ;
     break;}
 case 217:
-#line 1286 "parser.yy"
+#line 1289 "parser.yy"
 { yyval.symtable = new Symtable; ;
     break;}
 case 218:
-#line 1287 "parser.yy"
+#line 1290 "parser.yy"
 {
                yyval.symtable->add (*yyvsp[-1].string, *yyvsp[0].symbol);
                delete yyvsp[-1].string;
@@ -2582,7 +2585,7 @@ case 218:
        ;
     break;}
 case 219:
-#line 1295 "parser.yy"
+#line 1298 "parser.yy"
 {
                yyval.symbol = new Atom (*yyvsp[-1].string, *yyvsp[0].box);
                delete yyvsp[-1].string;
@@ -2590,7 +2593,7 @@ case 219:
        ;
     break;}
 case 220:
-#line 1300 "parser.yy"
+#line 1303 "parser.yy"
 {
                Box b (Interval (0,0), Interval (0,0));
                yyval.symbol = new Atom (*yyvsp[0].string, b);
@@ -2598,7 +2601,7 @@ case 220:
        ;
     break;}
 case 221:
-#line 1308 "parser.yy"
+#line 1311 "parser.yy"
 {
                yyval.box = new Box (*yyvsp[-1].interval, *yyvsp[0].interval);
                delete yyvsp[-1].interval;
@@ -2606,7 +2609,7 @@ case 221:
        ;
     break;}
 case 222:
-#line 1315 "parser.yy"
+#line 1318 "parser.yy"
 {
                yyval.interval = new Interval (yyvsp[-1].real, yyvsp[0].real);
        ;
@@ -2809,7 +2812,7 @@ yyerrhandle:
   yystate = yyn;
   goto yynewstate;
 }
-#line 1320 "parser.yy"
+#line 1323 "parser.yy"
 
 
 void
index 4be93f095718cf675154d9225be6d33f203a038a..842423e0ea9cf72b0122bdfdf7b7ae0b5bee2c4c 100644 (file)
@@ -40,6 +40,9 @@
 #include "duration-convert.hh"
 #include "change-translator.hh"
 
+// needed for bison.simple's malloc() and free()
+#include <malloc.h>
+
 int const GUESS_PLET = 5;
 int guess_plet_a[GUESS_PLET] =
 { 
@@ -863,8 +866,8 @@ dynamic_req:
        }
        | SPANDYNAMIC '{' int int '}' {
                Span_dynamic_req * sp_p = new Span_dynamic_req;
-               sp_p->spantype = $4;
-               sp_p-> dynamic_dir_  = $3;
+               sp_p->spantype = (Span_req::Spantype)$4;
+               sp_p-> dynamic_dir_  = (Direction)$3;
                $$ = sp_p;
        }
        ;
@@ -993,7 +996,7 @@ script_req:
                m->scriptdef_p_ = $2;
                m->set_spot (THIS->here_input ());
                if (!m->dir_)
-                 m->dir_  = $1;
+                 m->dir_  = (Direction)$1;
        }
        ;
 
index 6eebc48f04ca0815f3e0f8e851bf275b4d54253f..6787088b0e2bf4d9c014508b8c92e7d91bea601e 100644 (file)
@@ -85,7 +85,7 @@ Plet_spanner::do_add_processing ()
   do {
     if (!stem_l_drul_[d])
       new_stem_drul[d] = stem_l_drul_[(Direction)-d];
-  } while ( (d *= -1) != LEFT);
+  } while (flip(&d) != LEFT);
   stem_l_drul_ = new_stem_drul;
 }
   
@@ -110,7 +110,7 @@ Plet_spanner::do_post_processing ()
       if (d == RIGHT)
         dx_f_drul_[d] = nw_f;
     }
-  while ( (d *= -1) != LEFT);
+  while (flip(&d) != LEFT);
 }
 
 void
diff --git a/lily/rod.cc b/lily/rod.cc
new file mode 100644 (file)
index 0000000..707f557
--- /dev/null
@@ -0,0 +1,54 @@
+/*   
+  rod.cc --  implement Rod, Column_rod
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+#include "rod.hh"
+#include "p-col.hh"
+#include "debug.hh"
+
+Rod::Rod (Item *l, Item *r)
+{
+  item_l_drul_[LEFT] =l;
+  item_l_drul_[RIGHT]=r;
+  distance_f_ = l->width () [RIGHT] + r->width ()[LEFT];
+}
+         
+Rod::Rod ()
+{
+  distance_f_ = 0.0;
+  item_l_drul_[LEFT] = item_l_drul_[RIGHT] =0;
+}
+
+void
+Column_rod::print () const
+{
+#ifndef NDEBUG
+  DOUT << "Column_rod { rank = "
+       << other_l_->rank_i () << ", dist = " << distance_f_ << "}\n";   
+#endif
+}
+
+Column_rod::Column_rod ()
+{
+  distance_f_ = 0;
+  dir_ = CENTER;
+  other_l_ = 0;
+}
+  
+int
+Column_rod::compare (const Column_rod &r1, const Column_rod &r2)
+{
+  return r1.other_l_->rank_i() - r2.other_l_->rank_i();
+}
+void
+Rod::add_to_cols ()
+{
+  item_l_drul_[RIGHT]->column_l ()->add_rod
+    (item_l_drul_[LEFT]->column_l (), distance_f_, LEFT);
+  item_l_drul_[LEFT]->column_l ()->add_rod
+    (item_l_drul_[RIGHT]->column_l (), distance_f_,RIGHT);
+}
index bd1a3527b451947376b2aa48a87226c7d82a5e26..0da2f640cbd0b024cc89f4b0b9156424ccf1d750 100644 (file)
@@ -42,6 +42,7 @@ Moment_compare (Moment const &m1, Moment const &m2)
 void
 Score_column::preprocess()
 {
+  Paper_column ::preprocess ();
   durations.sort (Moment_compare);
 }
 
index 1a6ec4105ef78f8975e9cff4eb42e8009145000d..e81d7e0563e8609d7f44b034afdaafa493b5ab77 100644 (file)
@@ -191,6 +191,11 @@ Score_elem::do_pre_processing()
 {
 }
 
+void
+Score_elem::do_space_processing ()
+{
+}
+
 void
 Score_elem::do_add_processing()
 {
index 8e28c11280b062365657f0a0dada02b5e4ba08e2..06f54eca515ee4ce47b96cf2a11efdcf9f406fde 100644 (file)
@@ -144,7 +144,7 @@ Score_engraver::typeset_all()
                s->set_bounds(d, command_column_l_);
                warning ("Unbound spanner");
              }
-         } while ((d *= -1) != LEFT);
+         } while (flip(&d) != LEFT);
        }
       else 
        {
index 0979cfe8245a61d38c8637c698ea9fca39d3a360..f5333cea467b70c69ab3847c3d913be080a2127d 100644 (file)
@@ -54,7 +54,7 @@ Script::set_default_dir()
   if (s_i)
     {
       if (stem_l_)
-       dir_ = stem_l_->dir_ * s_i;
+       dir_ = Direction(stem_l_->dir_ * s_i);
       else
        {
          specs_l_->warning (_("Script needs stem direction"));
diff --git a/lily/separating-group-spanner.cc b/lily/separating-group-spanner.cc
new file mode 100644 (file)
index 0000000..eca012b
--- /dev/null
@@ -0,0 +1,52 @@
+/*   
+  separating-group-spanner.cc --  implement Separating_group_spanner
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#include "separating-group-spanner.hh"
+#include "single-malt-grouping-item.hh"
+
+Array<Rod>
+Separating_group_spanner::get_rods () const
+{
+  Array<Rod> a;
+
+  for (int i=0; i < spacing_unit_l_arr_.size () -1; i++)
+    {
+      a.push (Rod (spacing_unit_l_arr_[i], spacing_unit_l_arr_[i+1]));    
+      if (spacing_unit_l_arr_[i]->breakable_b_)
+       {
+         a.push (Rod (spacing_unit_l_arr_[i]->find_prebroken_piece (RIGHT), spacing_unit_l_arr_[i+1]));
+       }
+      if (spacing_unit_l_arr_[i+1]->breakable_b_)
+       {
+         a.push (Rod (spacing_unit_l_arr_[i], spacing_unit_l_arr_[i+1]->find_prebroken_piece (LEFT)));
+       }
+    }
+      
+  return a;
+}
+
+void
+Separating_group_spanner::add_spacing_unit (Single_malt_grouping_item*i)
+{
+  spacing_unit_l_arr_.push (i);
+  add_dependency (i);
+}
+
+IMPLEMENT_IS_TYPE_B1(Separating_group_spanner, Spanner);
+
+void
+Separating_group_spanner::do_substitute_dependency (Score_elem*o, Score_elem*n)
+{
+  if (o->is_type_b (Single_malt_grouping_item::static_name ()))
+    {
+      Single_malt_grouping_item*ns = n ? (Single_malt_grouping_item*)n->item () : 0;
+      spacing_unit_l_arr_.substitute ((Single_malt_grouping_item*)o->item (), ns);
+    }
+}
+
diff --git a/lily/separating-line-group-grav.cc b/lily/separating-line-group-grav.cc
new file mode 100644 (file)
index 0000000..889c8db
--- /dev/null
@@ -0,0 +1,77 @@
+/*   
+  separating-line-group-grav.cc --  implement Separating_line_group_engraver
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#include "separating-line-group-grav.hh"
+#include "separating-group-spanner.hh"
+#include "single-malt-grouping-item.hh"
+#include "p-col.hh"
+
+Separating_line_group_engraver::Separating_line_group_engraver ()
+{
+  sep_span_p_ = 0;
+  break_malt_p_ = 0;
+  nobreak_malt_p_ =0;
+}
+
+void
+Separating_line_group_engraver::do_creation_processing ()
+{
+  sep_span_p_ = new Separating_group_spanner;
+  announce_element ( Score_elem_info (sep_span_p_, 0));
+  sep_span_p_->set_bounds (LEFT, get_staff_info ().command_pcol_l ());
+}
+
+void
+Separating_line_group_engraver::do_removal_processing ()
+{
+  sep_span_p_->set_bounds (RIGHT, get_staff_info ().command_pcol_l ());
+  typeset_element (sep_span_p_);
+  sep_span_p_ =0;
+}
+
+void
+Separating_line_group_engraver::acknowledge_element (Score_elem_info i)
+{
+  Item * it = i.elem_l_->item ();
+  if (it && !it->axis_group_l_a_[X_AXIS])
+    {
+      Single_malt_grouping_item *&p_ref_ (it->breakable_b_ ?
+                                         break_malt_p_ : nobreak_malt_p_);
+
+      if (!p_ref_)
+       {
+         p_ref_ = new Single_malt_grouping_item;
+         p_ref_->breakable_b_ = it->breakable_b_;
+         announce_element (Score_elem_info (p_ref_, 0));
+       }
+      p_ref_->add (it);
+    }
+}
+
+void
+Separating_line_group_engraver::do_pre_move_processing ()
+{
+  if (break_malt_p_)
+    {
+      sep_span_p_->add_spacing_unit (break_malt_p_);
+      
+      typeset_element (break_malt_p_);
+      break_malt_p_ =0;
+    }
+  if (nobreak_malt_p_)
+    {
+      sep_span_p_->add_spacing_unit (nobreak_malt_p_);
+      typeset_element (nobreak_malt_p_);
+      nobreak_malt_p_ =0;
+    }
+}
+
+
+IMPLEMENT_IS_TYPE_B1 (Separating_line_group_engraver, Line_group_engraver);
+ADD_THIS_TRANSLATOR( Separating_line_group_engraver);
diff --git a/lily/single-malt-grouping-item.cc b/lily/single-malt-grouping-item.cc
new file mode 100644 (file)
index 0000000..f6975f7
--- /dev/null
@@ -0,0 +1,50 @@
+/*   
+  single-malt-grouping-item.cc --  implement Single_malt_grouping_item
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1998 Han-Wen Nienhuys <hanwen@cs.ruu.nl>
+  
+ */
+
+#include "single-malt-grouping-item.hh"
+#include "p-col.hh"
+
+Single_malt_grouping_item ::Single_malt_grouping_item()
+{
+  transparent_b_ = true;
+}
+
+void
+Single_malt_grouping_item::add (Item* i)
+{
+  assert (i);
+  item_l_arr_.push (i);
+  add_dependency (i);
+}
+
+Interval
+Single_malt_grouping_item::do_width () const
+{
+  Paper_column * pc = column_l ();
+  Interval w;
+  for (int i=0; i < item_l_arr_.size (); i++)
+    {
+      Item *il = item_l_arr_[i];
+      assert (pc == il->column_l ());
+      w.unite  (il->width () + il->relative_coordinate (pc, X_AXIS));
+    }
+  
+  return w + (- relative_coordinate (pc, X_AXIS)); // TODO
+}
+
+IMPLEMENT_IS_TYPE_B1(Single_malt_grouping_item, Item);
+
+void
+Single_malt_grouping_item::do_substitute_dependency (Score_elem*o, Score_elem*n)
+{
+  if (o->item ())
+    {
+      item_l_arr_.unordered_substitute (o->item (),  n ? n->item () : 0);
+    }
+}
index 88b2c6cc3378661071b2dd6b018bdaac21e8e447..f8142f23ee55a6a9a7c07df59385594ed3cc03ff 100644 (file)
@@ -127,7 +127,7 @@ Slur::do_post_processing ()
        }
       dy_f_drul_[d] += dir_ * interline_f;
     }
-  while ((d *= -1) != LEFT);
+  while (flip(&d) != LEFT);
 }
 
 Real
index a10cf1446f3cee6378d278b618615500ec8b457d..85221d3c94a9f141dea8472b026dbc152a02454c 100644 (file)
@@ -46,9 +46,9 @@ Spanner::break_into_pieces ()
       left = break_cols[i-1];
       right = break_cols[i];
       if (!right->line_l())
-       right = right->find_prebroken_piece(-1);
+       right = right->find_prebroken_piece(LEFT);
       if (!left->line_l())
-       left = left->find_prebroken_piece(1);
+       left = left->find_prebroken_piece(RIGHT);
 
             assert (left&&right && left->line_l() == right->line_l());
 
@@ -69,9 +69,9 @@ Spanner::set_my_columns()
   do 
     {
       if (!spanned_drul_[i]->line_l())
-       set_bounds(i,spanned_drul_[i]->find_prebroken_piece(-i));
+       set_bounds(i,spanned_drul_[i]->find_prebroken_piece((Direction)-i));
     } 
-  while ((i*=-1) != 1);
+  while (flip(&i) != 1);
 }       
 
 
@@ -172,3 +172,20 @@ Spanner::do_junk_links()
 {
   spanned_drul_[LEFT] = spanned_drul_[RIGHT] =0;
 }
+
+Array<Rod>
+Spanner::get_rods () const
+{
+  Array<Rod> r;
+  return r;
+}
+
+void
+Spanner::do_space_processing ()
+{
+  Array<Rod> rs (get_rods ());
+  for (int i=0; i < rs.size (); i++)
+    {
+      rs[i].add_to_cols ();
+    }
+}
index 91e0ba704852f44c724d8abe75cbcb3693d1cbe7..fffd8318df6df91f5e13d2fad1ff9eec2b6709eb 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1996,1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c) 1996, 1997, 1998 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
 
@@ -71,7 +71,7 @@ Spring_spacer::handle_loose_cols()
       connected.connect (i->left_i_,i->right_i_);
     }
   for (int i = 0; i < cols.size(); i++)
-    if (cols[i].fixed())
+    if (cols[i].fixed_b())
       fixed.push (i);
   for (int i=1; i < fixed.size(); i++)
     connected.connect (fixed[i-1], fixed[i]);
@@ -152,61 +152,77 @@ Spring_spacer::check_constraints (Vector v) const
 
   for (int i=0; i < dim; i++)
     {
-
-      if (cols[i].fixed()&&
+      if (cols[i].fixed_b() &&
          abs (cols[i].fixed_position() - v (i)) > COLFUDGE)
        return false;
 
-      if (!i)
-       continue;
-
-      Real mindist=cols[i-1].width_[RIGHT]
-       -cols[i].width_[LEFT];
-
-      // ugh... compares
-      Real dif =v (i) - v (i-1)- mindist;
-      bool b = (dif > - COLFUDGE);
-
-
-      if (!b)
-       return false;
+      Array<Column_rod> &rods (cols[i].pcol_l_->minimal_dists_arr_drul_[RIGHT]);
+      for (int j =0; j < rods.size (); j++)
+       {
+         int delta_idx=  rods[j].other_l_->rank_i () - cols[i].rank_i ();
+         if (i + delta_idx >= dim )
+           break;
+         if (rods[j].other_l_ != cols[i + delta_idx].pcol_l_)
+           continue;
+         if (v (i + delta_idx) - v (i) < rods[j].distance_f_)
+           return false;
+       }
 
     }
   return true;
 }
 
-/// try to generate a solution which obeys the min distances and fixed
-/// positions
+/** try to generate a solution which obeys the min distances and fixed positions
+ */
 Vector
 Spring_spacer::try_initial_solution() const
+{
+  Vector v;
+  if (try_initial_solution_and_tell (v))
+    warning ("I'm too fat; call Oprah");
+  return v;
+
+}
+
+bool
+Spring_spacer::try_initial_solution_and_tell (Vector &v) const
 {
   int dim=cols.size();
+  bool succeeded = true;
   Vector initsol (dim);
   for (int i=0; i < dim; i++)
     {
-      if (cols[i].fixed())
-       {
-         initsol (i)=cols[i].fixed_position();
+      int first_rank = cols[0].rank_i ();
+      int last_rank = cols.top ().rank_i ();
 
-         if (i > 0)
-           {
-             Real r =initsol (i-1)  + cols[i-1].width_[RIGHT];
-             if (initsol (i) < r)
-                 initsol (i) =r;
-           }
+      Real min_x = i ?  initsol (i-1) : 0.0;
+      for (int j=0; j < cols[i].pcol_l_->minimal_dists_arr_drul_[LEFT].size (); j++)
+       {
+         Column_rod cr (cols[i].pcol_l_->minimal_dists_arr_drul_[LEFT] [j]);
+         if (cr.other_l_->rank_i () < first_rank)
+           break;
 
+         int idx = cr.other_l_->rank_i () - first_rank;
+         assert (i > idx && idx >= 0);
+         if (cr.other_l_->break_status_i_ !=  cols[idx].pcol_l_->break_status_i_ )
+           continue;
+         
+         min_x = min_x >? (initsol (idx) + cr.distance_f_);
        }
-      else
+      
+      if (cols[i].fixed_b())
        {
-         Real mindist=cols[i-1].width_[RIGHT]
-           - cols[i].width_[LEFT];
-         if (mindist < 0.0)
-           warning (_("Excentric column"));
-         initsol (i)=initsol (i-1)+mindist;
+         initsol (i)=cols[i].fixed_position();
+         if (initsol (i) < min_x )
+           {
+             initsol (i) = min_x;
+             succeeded = false;
+           }
        }
     }
-
-  return initsol;
+  v = initsol;
+  
+  return succeeded;
 }
 
 
@@ -240,7 +256,7 @@ void
 Spring_spacer::set_fixed_cols (Mixed_qp &qp) const
 {
   for (int j=0; j < cols.size(); j++)
-    if (cols[j].fixed())
+    if (cols[j].fixed_b())
       qp.add_fixed_var (j,cols[j].fixed_position());
 } 
 
@@ -249,18 +265,30 @@ void
 Spring_spacer::make_constraints (Mixed_qp& lp) const
 {
   int dim=cols.size();
-  for (int j=0; j < dim; j++)
+  int last_rank = cols.top ().pcol_l_->rank_i ();
+  
+  for (int j=0; j < dim -1; j++)
     {
-      Colinfo c=cols[j];
-      if (j > 0)
+      Paper_column* lc = cols[j].pcol_l_;
+      int my_rank = lc->rank_i();
+      for (int i = 0; i < lc->minimal_dists_arr_drul_[RIGHT].size (); i++)
        {
          Vector c1(dim);
+         Column_rod & cr = lc->minimal_dists_arr_drul_[RIGHT][i];
+         int right_rank = cr.other_l_->rank_i ();
 
-         c1(j)=1.0 ;
-         c1(j-1)=-1.0 ;
+         cout << "lr, rr, last = " << my_rank << ", " <<right_rank << ", " << last_rank << endl;
 
-         lp.add_inequality_cons (c1, cols[j-1].width_[RIGHT] 
-                                 - cols[j].width_[LEFT]);
+         if (right_rank > last_rank)
+           break;
+             
+         int right_idx = right_rank - my_rank + j;
+         cout << "li, ri = " << j << "," << right_idx;
+         cout << "lr, rr = " << my_rank << ", " <<right_rank << endl;
+         c1(right_idx)=1.0 ;
+         c1(j)=-1.0 ;
+
+         lp.add_inequality_cons (c1, cr.distance_f_);
        }
     }
 }
@@ -337,6 +365,8 @@ Spring_spacer::add_column (Paper_column  *col, bool fixed, Real fixpos)
   else
     c.rank_i_ = 0;
   cols.push (c);
+
+  
 }
 
 Line_of_cols
@@ -524,7 +554,7 @@ Spring_spacer::calc_idealspacing()
 
   /* 
      First do all non-musical columns
-   */
+  */
   for (int i=0; i < cols.size(); i++)
     {
       if (!scol_l (i)->musical_b() && i+1 < cols.size())
@@ -551,7 +581,7 @@ Spring_spacer::calc_idealspacing()
 
   /* 
      Then musicals
-     */
+  */
   for (int i=0; i < cols.size(); i++)
     {
       if (scol_l (i)->musical_b())
index 1a552bcf2c03a642a9aaf20bf7e146a9dd2152ca..544da9c59f1a47dfbb4c1273de9700b2ecec81b8 100644 (file)
@@ -77,7 +77,7 @@ Stem_engraver::do_pre_move_processing()
   if (stem_p_)
     {
       Scalar prop = get_property ("ydirection");
-      dir_ = prop.isnum_b () ? int(prop) : CENTER;
+      dir_ = prop.isnum_b () ? (Direction)int(prop) : CENTER;
       if (dir_)
        stem_p_->dir_ = dir_;
 
index 0cc425198ca0726dc7e30bb582c8391d6cb7cd86..3e9d8d0f70a439b95dc4348a03e8ee235a420171 100644 (file)
@@ -52,6 +52,8 @@ enum Score_elem_status {
   PREBROKEN,
   PRECALCING,
   PRECALCED,           // calcs before spacing done
+  SPACING,
+  SPACED,
   BROKEN,
   POSTCALCING,         // busy calculating. This is used to trap cyclic deps.
   POSTCALCED,          // after spacing calcs done
@@ -67,6 +69,12 @@ Super_elem::pre_processing ()
   calcalute_dependencies (PRECALCING, PRECALCED, &Score_elem::do_pre_processing);
 }
 
+void
+Super_elem::space_processing ()
+{
+  calcalute_dependencies (SPACING, SPACED, &Score_elem::do_space_processing);
+}
+
 /* for break processing, use only one status, because copies have to
   have correct status. (Previously,
   Score_elem::handle_[pre]broken_dependencies assigned to status_i_
index 8975172e83fd9065e116b50cf0ce8cbe53931b27..820b07be3d5e8469cb6838479b2c8b51a832d058 100644 (file)
@@ -9,10 +9,12 @@
 #include "proto.hh"
 #include "pcursor.hh"
 #include "plist.hh"
+/*
 #include "audio-item.hh"
 #include "audio-staff.hh"
 #include "p-col.hh"
 #include "p-score.hh"
+*/
 #include "cursor.tcc"
 #include "list.tcc"
 #include "pcursor.tcc"
index 8fb616fcb747ce0ef6916686b09a0e8d1872ac57..9e116df08ee99c1a93ebb9a4ebb01e35a0b5de1d 100644 (file)
@@ -179,7 +179,7 @@ Lookup::ps_slur (Real dy , Real dx, Real ht, Real dir) const
 Atom
 Lookup::tex_slur (int dy , Real &dx, Direction dir) const
 {
-  assert (abs (dir) <= 1);
+  assert (abs ((int)dir) <= 1);
   Atom s;
   Direction y_sign = (Direction) sign (dy);
 
index 952e917052ac4fac493f9d55eedfcf7e9d51f93d..c471fa1453f7c96c82c8ec14a077c1c319d74f06 100644 (file)
@@ -65,10 +65,9 @@ Text_item::brew_molecule_p () const
 {
   Atom a (tdef_p_->get_atom (paper (), dir_));
 
-  /*
-    if (fat_b_)
-    a.sym.dim.x = tdef_p_->width (paper ());
-    */
+
+  if (fat_b_)
+    a.dim_[X_AXIS] = tdef_p_->width (paper ());
   Molecule* mol_p = new Molecule (a);
 
   if (dir_<0)          // should do something better anyway.
index fb929047e6eb2f572d5670c0a7b443fdea11c840..de7b328b11c695583703b317ae3427b795120efe 100644 (file)
@@ -53,7 +53,7 @@ Tie::do_add_processing()
   do {
     if (!head_l_drul_[d])
       new_head_drul[d] = head_l_drul_[(Direction)-d];
-  } while ((d *= -1) != LEFT);
+  } while (flip(&d) != LEFT);
   head_l_drul_ = new_head_drul;
 }
 
@@ -86,7 +86,7 @@ Tie::do_post_processing()
                       ? head_l_drul_[d]->position_i_
                       : head_l_drul_[(Direction)-d]->position_i_);
     }
-  while ((d *= -1) != LEFT);
+  while (flip(&d) != LEFT);
 
   do
     {
@@ -108,7 +108,7 @@ Tie::do_post_processing()
                                -0.5 * nw_f);
        }
     }
-  while ((d *= -1) != LEFT);
+  while (flip(&d) != LEFT);
 }
 
 void
index 94f5d0520437e3da70de61835c5c920c39731380..fe773a9375ac5a2dea9da15c57c91555b112143e 100644 (file)
@@ -9,6 +9,7 @@
 #include "p-col.hh"
 #include "vertical-align-grav.hh"
 #include "vertical-align-spanner.hh"
+#include "vertical-group-elem.hh"
 
 Vertical_align_engraver::Vertical_align_engraver()
 {
diff --git a/lily/vertical-group-elem.cc b/lily/vertical-group-elem.cc
new file mode 100644 (file)
index 0000000..ade65c5
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+  vertical-group-elem.cc -- implement Horizontal_vertical_group_element
+
+  source file of the GNU LilyPond music typesetter
+
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+*/
+
+#include "vertical-group-elem.hh"
+#include "interval.hh"
+#include "item.hh"
+#include "debug.hh"
+
+void
+Vertical_group_element::add_element (Graphical_element*e)
+{
+  axis_admin_.add_element (e, this, Y_AXIS, Y_AXIS);
+}
+
+void
+Vertical_group_element::remove_element (Graphical_element*e)
+{
+  axis_admin_.remove_element (e, Y_AXIS, Y_AXIS);
+}
+
+
+Interval
+Vertical_group_element::do_height() const
+{
+  return axis_admin_.extent (Y_AXIS);
+}
+void
+Vertical_group_element::remove_all()
+{
+  axis_admin_.remove_all (Y_AXIS,Y_AXIS);
+}
+
+IMPLEMENT_IS_TYPE_B1(Vertical_group_element, Axis_group_element);
index 2e11db74207ec83dabd550be07a2a953205c977d..abae14aa028ab466049e15537af1f28d1a9b5f6e 100644 (file)
@@ -11,3 +11,4 @@
 #include "p-col.hh"
 
 IMPLEMENT_IS_TYPE_B2(Vertical_group_spanner, Axis_group_spanner, Vertical_group_element);
+
index 6b7abf398bd089b3512dc3128adcddc43ba07759..c41e3ed9b2eff346b1beabbf061779abbc6b8f65 100644 (file)
@@ -41,6 +41,7 @@ Word_wrap::do_solve() const
       // do  another line
       line_no_i ++;
       Paper_column *post = breakpoints[break_idx_i]->postbreak_l();
+      int start_break_idx = break_idx_i;
       current.add (post);
       curcol++;                // skip the breakable.
       break_idx_i++;
@@ -75,7 +76,6 @@ Word_wrap::do_solve() const
            }
          else
            {
-
              current.solve_line();
              current.print();
            }
@@ -83,7 +83,13 @@ Word_wrap::do_solve() const
          delete current.spacer_l_;
          current.spacer_l_ =0;
 
-         // update minimum, or backup.
+         if (!current.satisfies_constraints_b_ && start_break_idx == break_idx_i - 1)
+           {
+             warning ( _ ("I don't fit.  Put me on Montignac"));
+             minimum = current;
+             break;
+           }
+
          if (current.energy_f_ < minimum.energy_f_ || current.energy_f_ < 0)
            {
              minimum = current;
index ec0a09f422634b2edb5a374a254f5dce8b2e3355..76713abe78c9a2614c085edf1db5557bd42fe523 100644 (file)
@@ -36,4 +36,4 @@ lilypond.spec: lilypond.spec.in ../VERSION
        cat $< | $(SED_VERSION) | $(SED_DATE) > $@
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index cbd578ad79fbe3067de6a57879b17c4f0e183a5a..0d96b7effb77a372ce3c9e4744b63c6a27769b5b 100644 (file)
@@ -220,7 +220,7 @@ lilypond.spec: lilypond.spec.in ../VERSION
        cat $< | $(SED_VERSION) | $(SED_DATE) > $@
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 4718bdc78efbb9ccf0d923824e5a5cbd81693fa1..df611c045a0902a2a39c22e045d8fbcb73bf6533 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Titel: LilyPond
 Versie: 
-Inschrijf datum: 27MAR98
+Inschrijf datum: 31MAR98
 Beschrijving: LilyPond is de muziek typesetter van het GNU Project.  
                Het programma genereert muziek in zichtbare of 
                hoorbare vorm uit uit een muzikale definitie file: 
index 0b8664a06bf7320fbadf53f4158f98fb00d78ac7..6b44b2b0dd581860e73d7a0314817e7e2b7de648 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title: LilyPond
 Version: 
-Entered-date: 27MAR98
+Entered-date: 31MAR98
 Description: LilyPond is the GNU Project music typesetter.  The program
                generates visual or auditive output from a music 
                definition file: it can typeset formatted sheet music 
index 1d9ea56f927fc07b0b4ed68d11033f8d6a3940d7..da643e9d464577c7e8f25b41f48936e8cbc6883e 100644 (file)
@@ -32,7 +32,7 @@ make -C Documentation gifs
 make prefix="$RPM_BUILD_ROOT/usr" install
 %files
 %doc Documentation/AUTHORS.txt Documentation/CodingStyle.txt Documentation/INSTALL.txt Documentation/MANIFESTO.txt Documentation/PATCHES.txt Documentation/convert-mudela.txt Documentation/faq.txt Documentation/gnu-music.txt Documentation/index.txt Documentation/internals.txt Documentation/language.txt Documentation/lilypond.txt Documentation/links.txt Documentation/literature.txt Documentation/ly2dvi.txt Documentation/mi2mu.txt Documentation/mudela-book.txt Documentation/mutopia.txt Documentation/other-packages.txt BUGS TODO NEWS DEDICATION ANNOUNCE README
-%doc input/beam-bug.ly input/beams.ly input/cadenza.ly input/collisions.ly input/coriolan-alto.ly input/denneboom.ly input/dummy.tex input/font-body.ly input/font.ly input/font11.ly input/font13.ly input/font16.ly input/font20.ly input/font26.ly input/gourlay.ly input/keys.ly input/kortjakje.ly input/multi.ly input/pedal.ly input/praeludium-fuga-E.ly input/rhythm.ly input/scales.ly input/scripts.ly input/sleur.ly input/slurs.ly input/spacing.ly input/stem.ly input/tril.ly input/twinkle-pop.ly input/twinkle.ly Documentation/introduction.doc Documentation/mudela-course.doc Documentation/mudela-man.doc 
+%doc input/beam-bug.ly input/beams.ly input/cadenza.ly input/collisions.ly input/coriolan-alto.ly input/denneboom.ly input/dummy.tex input/font-body.ly input/font.ly input/font11.ly input/font13.ly input/font16.ly input/font20.ly input/font26.ly input/gourlay.ly input/keys.ly input/kortjakje.ly input/multi.ly input/pedal.ly input/praeludium-fuga-E.ly input/rhythm.ly input/scales.ly input/scripts.ly input/sleur.ly input/slurs.ly input/spacing.ly input/stem.ly input/test-lyrics.ly input/tril.ly input/twinkle-pop.ly input/twinkle.ly Documentation/introduction.doc Documentation/mudela-course.doc Documentation/mudela-man.doc 
 %doc Documentation/out/lelie_logo.gif
 /usr/bin/convert-mudela
 /usr/bin/mudela-book
index 91a0273e89867b3417fec68eebfe4c638361498f..625a9a8808a7774c05b749d6e34d2c96941330b4 100644 (file)
@@ -25,21 +25,34 @@ texout = $(depth)/tex
 LYTABLES = $(addprefix $(lyout)/, $(FET_FILES:.mf=.ly))
 TEXTABLES = $(addprefix $(texout)/, $(FET_FILES:.mf=.tex))
 
-default: all $(LYTABLES) $(TEXTABLES)
 
-localclean:
-       rm -f $(LYTABLES) $(TEXTABLES) 
+all-local: $(LYTABLES) $(TEXTABLES)
 
-localrealclean: 
-       rm -f $(MFDEPS)
+dist-hook: $(LYTABLES) $(TEXTABLES)
 
-localinstall:
+clean-local:
+       -rm -f $(LYTABLES) $(TEXTABLES)
+       -rm -f *.log
+
+distclean-local:
+       -rm -f $(MFDEPS)
+
+install-data-local:
        $(INSTALL) -d $(MFDIR)/public/lilypond
+       $(INSTALL) -d $(TEXDIR)/lilypond
+       $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(MFFILES) $(MFDIR)/public/lilypond/
+       $(INSTALL) -m 644 $(TEXTABLES) $(TEXDIR)/lilypond
+       $(INSTALL) -m 644 $(LYTABLES) $(datadir)/lilypond/init/
 
-localuninstall:
-       for i in $(MFFILES) ; do rm -f $(MFDIR)/lilypond/$$i; done
-       -rmdir $(MFDIR)/public/lilypond/
+uninstall-local:
+       for i in $(MFFILES) ; do rm -f $(MFDIR)/public/lilypond/$$i; done
+       for i in $(TEXTABLES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
+       for i in $LYTABLES) ; do rm -f $(datadir)/lilypond/init/$$i; done
+       -rmdir $(MFDIR)/public/lilypond
+       -rmdir $(TEXDIR)/lilypond
+       -rmdir $(datadir)/lilypond/init
+       -rmdir $(datadir)/lilypond
 
 include $(srcdir)/Rules.make
 
@@ -47,6 +60,5 @@ include $(srcdir)/Rules.make
 #
 include $(MFDEPS)
 #
-
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index b12f046b9c4ca8ccba1e67499d38d514368fb410..245d7f7eb63eedec12c9cb278d1774acd0b0b005 100644 (file)
@@ -22,21 +22,34 @@ texout = $(depth)/tex
 LYTABLES = $(addprefix $(lyout)/, $(FET_FILES:.mf=.ly))
 TEXTABLES = $(addprefix $(texout)/, $(FET_FILES:.mf=.tex))
 
-default: all $(LYTABLES) $(TEXTABLES)
 
-localclean:
-       rm -f $(LYTABLES) $(TEXTABLES) 
+all-local: $(LYTABLES) $(TEXTABLES)
 
-localrealclean: 
-       rm -f $(MFDEPS)
+dist-hook: $(LYTABLES) $(TEXTABLES)
 
-localinstall:
+clean-local:
+       -rm -f $(LYTABLES) $(TEXTABLES)
+       -rm -f *.log
+
+distclean-local:
+       -rm -f $(MFDEPS)
+
+install-data-local:
        $(INSTALL) -d $(MFDIR)/public/lilypond
+       $(INSTALL) -d $(TEXDIR)/lilypond
+       $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(MFFILES) $(MFDIR)/public/lilypond/
-
-localuninstall:
-       for i in $(MFFILES) ; do rm -f $(MFDIR)/lilypond/$$i; done
-       -rmdir $(MFDIR)/public/lilypond/
+       $(INSTALL) -m 644 $(TEXTABLES) $(TEXDIR)/lilypond
+       $(INSTALL) -m 644 $(LYTABLES) $(datadir)/lilypond/init/
+
+uninstall-local:
+       for i in $(MFFILES) ; do rm -f $(MFDIR)/public/lilypond/$$i; done
+       for i in $(TEXTABLES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
+       for i in $LYTABLES) ; do rm -f $(datadir)/lilypond/init/$$i; done
+       -rmdir $(MFDIR)/public/lilypond
+       -rmdir $(TEXDIR)/lilypond
+       -rmdir $(datadir)/lilypond/init
+       -rmdir $(datadir)/lilypond
 
 include $(srcdir)/Rules.make
 
@@ -44,4 +57,3 @@ include $(srcdir)/Rules.make
 #
 include $(MFDEPS)
 #
-
index c107b24b5dd6f01fbe68d40a0b0f1b550a1de948..d7563987589af5b0aaf5f5bb8add5f2bb7524629 100644 (file)
@@ -155,6 +155,7 @@ distdir: $(DISTFILES)
          || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
          || cp -p $$d/$$file $(distdir)/$$file; \
        done
+       $(MAKE) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook
 info:
 dvi:
 check: all
@@ -163,15 +164,15 @@ installcheck:
 install-exec: 
        @$(NORMAL_INSTALL)
 
-install-data: 
+install-data: install-data-local
        @$(NORMAL_INSTALL)
 
 install: install-exec install-data all
        @:
 
-uninstall: 
+uninstall: uninstall-local
 
-all: Makefile
+all: Makefile all-local
 
 install-strip:
        $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
@@ -194,9 +195,9 @@ maintainer-clean-generic:
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 mostlyclean:  mostlyclean-generic
 
-clean:  clean-generic mostlyclean
+clean:  clean-generic mostlyclean clean-local
 
-distclean:  distclean-generic clean
+distclean:  distclean-generic clean distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -210,21 +211,33 @@ distclean-generic clean-generic maintainer-clean-generic clean \
 mostlyclean distclean maintainer-clean
 
 
-default: all $(LYTABLES) $(TEXTABLES)
+all-local: $(LYTABLES) $(TEXTABLES)
 
-localclean:
-       rm -f $(LYTABLES) $(TEXTABLES) 
+dist-hook: $(LYTABLES) $(TEXTABLES)
 
-localrealclean: 
-       rm -f $(MFDEPS)
+clean-local:
+       -rm -f $(LYTABLES) $(TEXTABLES)
+       -rm -f *.log
 
-localinstall:
+distclean-local:
+       -rm -f $(MFDEPS)
+
+install-data-local:
        $(INSTALL) -d $(MFDIR)/public/lilypond
+       $(INSTALL) -d $(TEXDIR)/lilypond
+       $(INSTALL) -d $(datadir)/lilypond/init
        $(INSTALL) -m 644 $(MFFILES) $(MFDIR)/public/lilypond/
-
-localuninstall:
-       for i in $(MFFILES) ; do rm -f $(MFDIR)/lilypond/$$i; done
-       -rmdir $(MFDIR)/public/lilypond/
+       $(INSTALL) -m 644 $(TEXTABLES) $(TEXDIR)/lilypond
+       $(INSTALL) -m 644 $(LYTABLES) $(datadir)/lilypond/init/
+
+uninstall-local:
+       for i in $(MFFILES) ; do rm -f $(MFDIR)/public/lilypond/$$i; done
+       for i in $(TEXTABLES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
+       for i in $LYTABLES) ; do rm -f $(datadir)/lilypond/init/$$i; done
+       -rmdir $(MFDIR)/public/lilypond
+       -rmdir $(TEXDIR)/lilypond
+       -rmdir $(datadir)/lilypond/init
+       -rmdir $(datadir)/lilypond
 
 include $(srcdir)/Rules.make
 
@@ -232,9 +245,8 @@ include $(srcdir)/Rules.make
 #
 include $(MFDEPS)
 #
-
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 2b98699c08ffc0a2dca69ef16a596c39cf2a03e5..bffa487cb29240ad215c4242720ca9c9ae5d7af3 100644 (file)
@@ -13,7 +13,7 @@ SUBDIRS = include
 
 bin_PROGRAMS = mi2mu
 
-mi2mu_SOURCES = main.cc mi2mu-version.cc midi-parser.cc midi-score-parser.cc midi-track-parser.cc mudela-column.cc mudela-item.cc mudela-score.cc mudela-staff.cc mudela-stream.cc mudela-voice.cc template.cc version.cc
+mi2mu_SOURCES = main.cc mi2mu-version.cc midi-parser.cc midi-score-parser.cc midi-track-parser.cc mudela-column.cc mudela-item.cc mudela-score.cc mudela-staff.cc mudela-stream.cc mudela-voice.cc template9.cc version.cc
 
 # ugh -lfl bo lib/FlexLexer stuff
 #mi2mu_LDADD = -llily -lflower -lfl
@@ -31,5 +31,8 @@ all-am: Makefile $(PROGRAMS) wild-check
 
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
+
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 46079471217638afc04c67c4aefabccf59165488..cced5f03007171bf7260bde03c39d46574a8587c 100644 (file)
@@ -28,3 +28,6 @@ all-am: Makefile $(PROGRAMS) wild-check
 
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
+
+distclean-local:
+       -rm -rf .deps
index 4401cee22fffade7f256069e610d9ad119dd03fd..61945fc469db90529d8d701129d900f223d68274 100644 (file)
@@ -109,7 +109,7 @@ SUBDIRS = include
 
 bin_PROGRAMS = mi2mu
 
-mi2mu_SOURCES = main.cc mi2mu-version.cc midi-parser.cc midi-score-parser.cc midi-track-parser.cc mudela-column.cc mudela-item.cc mudela-score.cc mudela-staff.cc mudela-stream.cc mudela-voice.cc template.cc version.cc
+mi2mu_SOURCES = main.cc mi2mu-version.cc midi-parser.cc midi-score-parser.cc midi-track-parser.cc mudela-column.cc mudela-item.cc mudela-score.cc mudela-staff.cc mudela-stream.cc mudela-voice.cc template9.cc version.cc
 
 # ugh -lfl bo lib/FlexLexer stuff
 #mi2mu_LDADD = -llily -lflower -lfl
@@ -131,8 +131,8 @@ LDFLAGS = @LDFLAGS@
 LIBS = @LIBS@
 mi2mu_OBJECTS =  main.o mi2mu-version.o midi-parser.o \
 midi-score-parser.o midi-track-parser.o mudela-column.o mudela-item.o \
-mudela-score.o mudela-staff.o mudela-stream.o mudela-voice.o template.o \
-version.o
+mudela-score.o mudela-staff.o mudela-stream.o mudela-voice.o \
+template9.o version.o
 mi2mu_DEPENDENCIES =  $(top_builddir)/lib/liblily.la \
 $(top_builddir)/flower/libflower.la
 mi2mu_LDFLAGS = 
@@ -429,7 +429,8 @@ mudela-score.o: mudela-score.cc ../lib/include/moment.hh \
        ../flower/include/iterate.hh ../flower/include/plist.icc \
        include/mudela-item.hh include/mudela-score.hh \
        ../flower/include/parray.hh include/mudela-staff.hh \
-       include/mudela-stream.hh
+       include/mudela-stream.hh ../flower/include/list.tcc \
+       ../flower/include/cursor.tcc
 mudela-staff.o: mudela-staff.cc ../lib/include/moment.hh \
        ../flower/include/rational.hh ../flower/include/compare.hh \
        ../flower/include/arithmetic-operator.hh \
@@ -493,6 +494,25 @@ template.o: template.cc ../lib/include/proto.hh \
        ../lib/include/plet.hh include/mudela-column.hh \
        include/mudela-staff.hh include/mudela-voice.hh \
        ../flower/include/plist.tcc
+template9.o: template9.cc ../lib/include/proto.hh \
+       ../flower/include/fproto.hh ../flower/include/real.hh \
+       ../flower/include/list.hh ../flower/include/list.icc \
+       ../flower/include/cursor.hh ../flower/include/link.hh \
+       ../flower/include/link.icc ../flower/include/compare.hh \
+       ../flower/include/pcursor.hh ../flower/include/plist.hh \
+       ../flower/include/plist.icc ../flower/include/cursor.icc \
+       ../flower/include/iterate.hh ../flower/include/list.tcc \
+       ../flower/include/cursor.tcc include/mudela-item.hh \
+       include/mi2mu-proto.hh ../flower/include/string.hh \
+       ../flower/include/arithmetic-operator.hh \
+       ../flower/include/string-handle.hh \
+       ../flower/include/international.hh ../lib/include/moment.hh \
+       ../flower/include/rational.hh ../lib/include/duration.hh \
+       ../lib/include/plet.hh include/mudela-column.hh \
+       include/mudela-staff.hh include/mudela-voice.hh \
+       include/mudela-score.hh ../flower/include/parray.hh \
+       ../flower/include/varray.hh ../flower/include/pcursor.tcc \
+       ../flower/include/plist.tcc
 version.o: version.cc ../lib/include/proto.hh \
        ../flower/include/fproto.hh ../flower/include/real.hh \
        ../flower/include/string.hh \
@@ -563,7 +583,7 @@ mostlyclean:  mostlyclean-recursive mostlyclean-am
 
 clean:  clean-recursive clean-am
 
-distclean:  distclean-recursive distclean-am
+distclean:  distclean-recursive distclean-am distclean-local
        -rm -f config.status
        -rm -f libtool
 
@@ -593,8 +613,11 @@ all-am: Makefile $(PROGRAMS) wild-check
 
 # dummy target for non-GNU makes; is overridden in GNUmakefile
 wild-check:
+
+distclean-local:
+       -rm -rf .deps
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 63032f9bbfd476bb8838f47c387a8f7705ca99ea..ca22f222b5b52bada04c63e5f34febd05c454cec 100644 (file)
@@ -8,4 +8,4 @@ noinst_HEADERS = mi2mu-global.hh mi2mu-proto.hh midi-parser.hh midi-score-parser
 EXTRA_DIST = Makefile.am.wild
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 10a1bfd1370c32c9bfa51ca2a871d493938b8d88..cb195580938c844a326afcf6389844fbd041ffa5 100644 (file)
@@ -218,7 +218,7 @@ mostlyclean distclean maintainer-clean
 
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index bf025d7ca0795a5b236db8b0c574aa34041141b4..3f8573c96fa07068cc22335a5aa986860842c9c0 100644 (file)
 #include "mudela-staff.hh"
 #include "mudela-stream.hh"
 
+// ugh, cygnus' b19 gcc
+#include "list.tcc"
+#include "cursor.tcc"
+
 //static Mudela_key key_c (0, 0);
 static Mudela_meter meter_4 (4, 2, 24, 8);
 // useconds per 4: 250000 === 60 4 per minute
@@ -258,3 +262,4 @@ Mudela_score::settle_columns()
       start_i = end_i = 0;
     }
 }
+
diff --git a/mi2mu/template.cc b/mi2mu/template.cc
deleted file mode 100644 (file)
index 856ff12..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-// template.cc -- implementemplate
-//
-// copyright 1997 Jan Nieuwenhuizen <jan@digicash.com>
-
-#include "proto.hh"
-#include "list.hh"
-#include "list.tcc"
-#include "cursor.tcc"
-
-class istream;
-class ostream;
-
-#include "mudela-item.hh"
-#include "mudela-column.hh"
-#include "mudela-staff.hh"
-#include "mudela-voice.hh"
-#include "plist.hh"
-#include "plist.tcc"
-
-POINTERLIST_INSTANTIATE(Mudela_item);
-POINTERLIST_INSTANTIATE(Mudela_staff);
-POINTERLIST_INSTANTIATE(Mudela_voice);
-POINTERLIST_INSTANTIATE(Mudela_voice);
-POINTERLIST_INSTANTIATE(Mudela_column);
-
index bf2a5e5cd6ddbf8f698d583b0b6ab7a0dfdf3ebd..f61b26330855ca2ead1fe6f032f3e6e4e8268319 100644 (file)
@@ -13,4 +13,4 @@ OUTFILES = $(M4FILES:%.m4=%)
 default: all $(OUTFILES)
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 8e8f9f535c600817509a3a225e8f1ec60c0ee675..79863de42fa920f2717b7bde2ad963ccd48f7933 100644 (file)
@@ -197,7 +197,7 @@ mostlyclean distclean maintainer-clean
 default: all $(OUTFILES)
 
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 0b9e7fcabcbedd9d736477601da48c2d90741431..a2bd3542b2c8efa15d9869488b7087817fed1929 100644 (file)
-\header{
-filename =      "wohltemperirt.ly";
-title =         "Fuga a 3";
-description =   "Das Wohltemperierte Clavier I, Fuga II (c-minor)";
-opus =  "BWV 847-Fuga";
-source =        "Henle's Urtext";
-composer =      "Johann Sebastian Bach (1685-1750)";
-enteredby =     "HWN and Werner Lemberg";
-copyright =     "Public Domain";
+\header {
+  filename =    "wtk1-fugue2.ly";
+  title =       "Fuga a 3";
+  description = "Das Wohltemperierte Clavier I, Fuga II (c-minor)";
+  opus =        "BWV 847-Fuga";
+  source =      "Henle's Urtext";
+  composer =    "Johann Sebastian Bach (1685-1750)";
+  enteredby =   "HWN, WL";
+  copyright =   "Public Domain";
 }
+
 %{
  Tested Features: stem direction, multivoice, forced accidentals.
 %}
 
 \version "0.1.9";
 
-keyCminor = \melodic \key bes es as;
-                                    % should add \need{dutch.ini} for
-                                    % correct parsing of note names
+\include "dutch.ly"                 % for correct parsing of note names
 
 global = \melodic {
-         \meter 4/4;                % should be \meter C
-         \keyCminor 
-        \skip 1*31;
-        \bar "|."; |
+  \meter 4/4;
+  \key bes es as;
+  \skip 1*31;
+  \bar "|."; |
 }
   
 dux = \melodic {
-        \clef "violin";
-        \octave c';
+  \clef violin;
+  \octave c';
 
-        \stemdown
-        r8 [c'16 b] [c'8 g] [as c'16 b] [c'8 d'] |
-        [g c'16 b] [c'8 d'] [f16 g] as4 [g16 f] |
-        [es c' b a] [g f! es d] [c8 es' d' c'] |
-        [bes a bes c'] [fis g a fis] |
+  \stemdown
+  r8 [c'16 b] [c'8 g] [as c'16 b] [c'8 d'] |
+  [g c'16 b] [c'8 d'] [f16 g] as4 [g16 f] |
+  [es c' b a] [g f! es d] [c8 es' d' c'] |
+  [bes a bes c'] [fis g a fis] |
 %% 5
-        g4 r16 [c d es] [f g as8~] [as16 d es f] |
-        [g a bes8~] [bes16 es f g] [as g f es] [d8 c'16 b!] |
+  g4 r16 [c d es] [f g as8~] [as16 d es f] |
+  [g a bes8] ~ [bes16 es f g] [as g f es] [d8 c'16 b!] |
                                                     % forced accident!
-        c'4 r4 r8 [f' es' d'] |
-        r8 [as g f] [g f16 es] [f8 d] | 
-        g4 r8 b [c' c'16 b] [c'8 g] |
+  c'4 r4 r8 [f' es' d'] |
+  r8 [as g f] [g f16 es] [f8 d] | 
+  g4 r8 b [c' c'16 b] [c'8 g] |
 %% 10   
-        as4 r8 a [bes bes16 a] [bes8 f] |
-        g4 r8 g [as as g f] |
-       \translator Staff=bass \stemup
-        \octave c; r8 [as bes c'] r8 [as16 g] [as8 f8] |
-        [bes8 c' bes as] [bes g f es] |
-        [f des' c' bes] [c' as g f] |
+  as4 r8 a [bes bes16 a] [bes8 f] |
+  g4 r8 g [as as g f] |
+  \translator Staff = bass \stemup \octave c;
+   r8 [as bes c'] r8 [as16 g] [as8 f8] |
+  [bes8 c' bes as] [bes g f es] |
+  [f des' c' bes] [c' as g f] |
 %% 15
-       \translator Staff=treble \stemdown
-        g8 \octave c'; [g16 fis] [g8 c] [es g16 fis!] [g8 a] |
-        [d g16 fis] [g8 a!] [c16 d] es4 [d16 c] |
-                                                    % forced accident!
-        'bes8 r8 r16 [d e fis] [g a bes8~] [bes16 e f g] |
-        [a bes c'8~] [c'16 fis16 g a] [bes8 es!16 d] [es8 'g] |
-        ['as f16 es] [f8 'a8] ['bes g16 f] [g8 'b] |
+  g8
+   \translator Staff = treble \stemdown \octave c';
+   [g16 fis] [g8 c] [es g16 fis!] [g8 a] |
+  [d g16 fis] [g8 a!] [c16 d] es4 [d16 c] |         % forced accident!
+  'bes8 r8 r16 [d e fis] [g a bes8] ~ [bes16 e f g] |
+  [a bes c'8] ~ [c'16 fis16 g a] [bes8 es!16 d] [es8 'g] |
+  ['as f16 es] [f8 'a8] ['bes g16 f] [g8 'b] |
 %% 20
-        [c16 f es d] [c Bes! As G] [F8 as g f] |
-        [es d es f] [B c d B] |
-        c4 r8 e8 [f f16 e] [f8 c] |
-        d4 r8 d8 [es8 es16 d] [es8 Bes] |
-        c2 ~  [c8 d16 es][ f es f d] |
+  [c16 f es d] [c Bes! As G] [F8 as g f] |
+  [es d es f] [B c d B] |
+  c4 r8 e8 [f f16 e] [f8 c] |
+  d4 r8 d8 [es8 es16 d] [es8 Bes] |
+  c2 ~ [c8 d16 es] [f es f d] |
 %% 25
-        B8 r8 r B c r r es |
-        d r r f~ f r r f |
-        [es as g f] [es d es f] |
-        [B c d B] [B c] r c |
-        [f16 d es c]~ [c8 B] c4 r8 e |
+  B8 r8 r B c r r es |
+  d r r f ~ f r r f |
+  [es as g f] [es d es f] |
+  [B c d B] [B c] r c |
+  [f16 d es c] ~ [c8 B] c4 r8 e |
 %% 30
-        f4 r8 f [f es16 d] [es8 <f as]> |
-        <B d> r <B d> r <G2 c> |
+  f4 r8 f [f es16 d] [es8 <f as]> |
+  <B d> r <B d> r <G2 c> |
 }
 
 
 comes = \melodic {
-        \octave c'';
-        \stemup
-        r1 |
-        r1 |
-        r8 [g16 fis] [g8 c] [es g16 fis] [g8 a] |
-        [d8 g16 fis] [g8 a] [c16 d] es4 [d16 c] |
+  \octave c'';
+  \stemup
+
+  r1 |
+  r1 |
+  r8 [g16 fis] [g8 c] [es g16 fis] [g8 a] |
+  [d8 g16 fis] [g8 a] [c16 d] es4 [d16 c] |
 %% 5
-        ['bes8 es16 d] [es8 'g8] ['as f16 es] [f8 'a] 
-        ['bes8 g16 f] [g8 'b] [c8 d16 es] f4~ |
-        [f8 es16 d] [c16 'bes! 'as 'g] ['f8 as g f] 
-        [es d es f] ['b c d 'b] |
-        [c g16 fis] [g8 d] es4 r8 e8 |
+  ['bes8 es16 d] [es8 'g8] ['as f16 es] [f8 'a] 
+  ['bes8 g16 f] [g8 'b] [c8 d16 es] f4 ~ |
+  [f8 es16 d] [c16 'bes! 'as 'g] ['f8 as g f] 
+  [es d es f] ['b c d 'b] |
+  [c g16 fis] [g8 d] es4 r8 e8 |
 %% 10 
-        [f f16 e] [f8 c8] d4 r8 d |
-        [es8 es16 d] [es8 'bes] [c es16 d] [es8 f] |
-        ['bes es16 d] [es8 f] ['as16 'bes] c4 ['bes16 'as] |
-        [G16 Es F G] [As Bes c d] [es d c d] [es f g a] |
-        [bes F G As] [Bes c d e] [f es d es] [ f g a b] |
+  [f f16 e] [f8 c8] d4 r8 d |
+  [es8 es16 d] [es8 'bes] [c es16 d] [es8 f] |
+  \stemboth ['bes es16 d] [es8 f] ['as16 'bes] c4 ['bes16 'as] |
+  [G16 Es F G] [As Bes c d] [es d c d] [es f g a] |
+  [bes F G As] [Bes c d e] [f es d es] [ f g a b] |
 %% 15
-        [c'8 b16 a] [g f! es d] [c8 es d c] |
-        [Bes A Bes c] [Fis! G A Fis] |
-                                                    % forced accident
-        [G8 d16 c] d8 r8 r8 [e16 d] e8 r8 |
-        r [fis16 e] fis8 r r [G16 F] G8 r8 |
-        r8 [A16 G] A8 r r [B16 A] B8 r |
+  \stemup [c'8 b16 a] [g f! es d] [c8 es d c] |
+  [Bes A Bes c] [Fis! G A Fis] |                    % forced accident
+  [G8 d16 c] d8 r8 r8 [e16 d] e8 r8 |
+  r [fis16 e] fis8 r r [G16 F] G8 r8 |
+  r8 [A16 G] A8 r r [B16 A] B8 r |
 %% 20
-        r8 [c16 'b] [c8 'g] [As c16 'b] [c8 d] |
-        [G c16 B] [c8 d] [F16 G] As4 [G16 F] |
-        [Es8 c16 B] [c8 G] As4 r8 A |
-        [Bes8 Bes16 A] [Bes8 F8] 'g4 r8 G~ |
-        [G As16 Bes] [c B c As] F2~ |
+  r8 [c16 'b] [c8 'g] [As c16 'b] [c8 d] |
+  [G c16 B] [c8 d] [F16 G] As4 [G16 F] |
+  [Es8 c16 B] [c8 G] As4 r8 A |
+  [Bes8 Bes16 A] [Bes8 F8] 'g4 r8 G ~ |
+  [G As16 Bes] [c B c As] F2 ~ |
 %% 25
-        [F8 d16 c] [d8 F] [Es es16 d] [es8 G] |
-        [F f16 es] [f8 As] [G16 f es d] [c B A G] |
-        [c8 f es d] r [As G F] |
-        [G F16 Es] [F8 D] [As G] r A |
-        [B c] [F16 Es D C] C8 [c16 B] [c8 G] |
+  [F8 d16 c] [d8 F] [Es es16 d] [es8 G] |
+  [F f16 es] [f8 As] [G16 f es d] [c B A G] |
+  [c8 f es d] r [As G F] |
+  [G F16 Es] [F8 D] [As G] r A |
+  [B c] [F16 Es D C] C8 [c16 B] [c8 G] |
 %% 30
-        [As c16 B] [c8 <d 'b! 'as!]> [G8 c16 B] [c8 d] |
-        [F16 G] As4 [G16 F] E2 |
+  [As c16 B] [c8 <d 'b! 'as!]> [G8 c16 B] [c8 d] |
+  [F16 G] As4 [G16 F] E2 |
 }
 
+
 bassdux = \melodic {
-        \clef "bass";
-        \octave c';
-        r1 |
-        r |
-        r |
-        r |
+  \clef bass;
+  \octave c';
+
+  r1 |
+  r |
+  r |
+  r |
 %% 5
-        r |
-        r1 |
-        r8 [c16 B] [c8 G] [As c16 B] [c8 d] |
-        [G c16 B] [c8 d] [F16 G] As4 [G16 F] | 
-        \octave c; [es c' b a] [g f es d] [c d es d] [c Bes! As! G] |
+  r |
+  r1 |
+  r8 [c16 B] [c8 G] [As c16 B] [c8 d] |
+  [G c16 B] [c8 d] [F16 G] As4 [G16 F] | 
+  \octave c; [es c' b a] [g f es d] [c d es d] [c Bes! As! G] |
                                                     % -> \classic_accidentals
 %% 10
-        [F bes as g] [f es d c] [Bes c d c] [Bes As G F] |
-        [Es as g f] [es des c Bes] [As8 c' bes as] |
-        [g8 f g as] [d es f d] |
-        [es as g f] [g es d c] |
-        [d bes as g] [as f es d!] |
+  [F bes as g] [f es d c] [Bes c d c] [Bes As G F] |
+  [Es as g f] [es des c Bes] [As8 c' bes as] |
+  [g8 f g as] [d es f d] |
+  [es as g f] [g es d c] |
+  [d bes as g] [as f es d!] |
 %% 15
-        es8 r8 r4 r8 [c Bes A] |
-        r [es d c] [d c16 Bes] [c8 d] |
-        [G8 bes16 a] [bes8 d] [es c'16 bes] [c'8 e] |
-        [f d'16 c'] [d'8 fis] g4 r16 [G A B] |
-        [c16 d es8~] [es16 A Bes c] [d es f8~] [f16 'b c d] |
+  es8 r8 r4 r8 [c Bes A] |
+  r [es d c] [d c16 Bes] [c8 d] |
+  [G8 bes16 a] [bes8 d] [es c'16 bes] [c'8 e] |
+  [f d'16 c'] [d'8 fis] g4 r16 [G A B] |
+  [c16 d es8~] [es16 A Bes c] [d es f8~] [f16 'b c d] |
 %% 20    
-        es8 r r e [f F Es! D] |                     % -> \classic_accidentals
-        r [As G F] [G F16 Es] [F8 G] |
-        [c16 d  es d] [c Bes As G] [F bes as g] [f es d c] |
-        [Bes c d c] [Bes As G F] [Es as g f] [es d c Bes] |
-        [As Bes c Bes] [As G F Es] [D g f es] [d c B A] |
+  es8 r r e [f F Es! D] |                           % -> \classic_accidentals
+  r [As G F] [G F16 Es] [F8 G] |
+  [c16 d  es d] [c Bes As G] [F bes as g] [f es d c] |
+  [Bes c d c] [Bes As G F] [Es as g f] [es d c Bes] |
+  [As Bes c Bes] [As G F Es] [D g f es] [d c B A] |
 %% 25
-        G4 r4 r16 [G A B] [c d es f] |
-        [g f as g] [f es d c] [B8 c16 B] [c8 G] |
-        [As c16 B] [c8 d] [G c16 B] [c8 d] |
-        [F16 G] As4 [G16 F] Es4 r8 es |
-        [d c g G]
+  G4 r4 r16 [G A B] [c d es f] |
+  [g f as g] [f es d c] [B8 c16 B] [c8 G] |
+  [As c16 B] [c8 d] [G c16 B] [c8 d] |
+  [F16 G] As4 [G16 F] Es4 r8 es |
+  [d c g G]
 %% 30
-        \multi 2 <
-               { \stemup c2~ | c1~ | c1 }
-               { \stemdown C2~ | C1~ | C1 }
-        >
-    }
+  \multi 2 <
+    { \stemup c2 ~ | c1 ~ | c1 }
+    { \stemdown C2 ~ | C1 ~ | C1 }
+  >
+}
 
         
 \score {
-       \type Grandstaff < 
-       \type Staff=treble  < 
-                       \global 
-                       \dux
-                       \comes 
-                 >
-       \type Staff=bass  <
-                       \global
-                       \bassdux
-                 >
+  \melodic {
+    \type Grandstaff < 
+      \type Staff = treble < 
+        \global 
+        \dux
+        \comes 
+      >
+      \type Staff = bass <
+        \global
+        \bassdux
+      >
     >
+  }
+
+  \paper {
+    gourlay_maxmeasures = 5.;
+  }
 
-    \paper{
-       gourlay_maxmeasures =5.;
-       
-    }
-    \midi {
-        \tempo 4 = 84;
-    }
+  \midi {
+    \tempo 4 = 84;
+  }
 }
 
 % EOF
index 836601b477412a29515a5cde828c9a21b23c1544..25d76365b60db6ce21ba44f218957455386c5fb8 100644 (file)
@@ -14,4 +14,4 @@ OUTFILES = $(M4FILES:%.m4=%)
 
 default: all $(OUTFILES)
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index dc925d97cdf819a5ecbd9c89015d47666e4b88b2..aaf6dca564f3b1aa7d13be5a97037296c3521442 100644 (file)
@@ -285,7 +285,7 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
 default: all $(OUTFILES)
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index c8167ad27bd22c9237639f7106e80118019fc5a8..927786c873abfd83ea2433dfc2fe7930252fb8f4 100644 (file)
@@ -3,17 +3,17 @@
 # Generated automatically by wild-perl 0.1
 # tex/Makefile.am.wild
 
-TEXFILES = dyndefs.tex eglerdefs.tex fetdefs.tex lily-mf-defs.tex lily-ps-defs.tex lilyponddefs.tex ltest.tex taupindefs.tex titledefs.tex
+TEXFILES = dyndefs.tex eglerdefs.tex feta11.tex feta13.tex feta16.tex feta19.tex feta20.tex feta23.tex feta26.tex fetdefs.tex lily-mf-defs.tex lily-ps-defs.tex lilyponddefs.tex ltest.tex taupindefs.tex titledefs.tex
 EXTRA_DIST = Makefile.am.wild $(TEXFILES)
 
-CLEANFILES = 
+CLEANFILES = feta11.tex feta13.tex feta16.tex feta19.tex feta20.tex feta23.tex feta26.tex
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(TEXDIR)/lilypond
        $(INSTALL) -m 644 $(TEXFILES) $(TEXDIR)/lilypond/
 
-uninstall-data:
+uninstall-local:
        for i in $(TEXFILES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
        -rmdir $(TEXDIR)/lilypond/
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
\ No newline at end of file
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
\ No newline at end of file
index 1bd3e8c8a15477a5a37fa968eb53fae067346c49..f9e538d1403f6c69193154b2167cef745f336cc4 100644 (file)
@@ -5,10 +5,10 @@ EXTRA_DIST = Makefile.am.wild $(TEXFILES)
 
 CLEANFILES = $(wildcard feta*.tex)
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(TEXDIR)/lilypond
        $(INSTALL) -m 644 $(TEXFILES) $(TEXDIR)/lilypond/
 
-uninstall-data:
+uninstall-local:
        for i in $(TEXFILES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
        -rmdir $(TEXDIR)/lilypond/
index 09c27e43824d6683846fb56d2d32fcc430569d17..96a0f969338cb4e3f8d49d9b50fa79bb8a1e5528 100644 (file)
@@ -99,10 +99,10 @@ YACC = @YACC@
 ZIP = @ZIP@
 absolute_builddir = @absolute_builddir@
 
-TEXFILES = dyndefs.tex eglerdefs.tex fetdefs.tex lily-mf-defs.tex lily-ps-defs.tex lilyponddefs.tex ltest.tex taupindefs.tex titledefs.tex
+TEXFILES = dyndefs.tex eglerdefs.tex feta11.tex feta13.tex feta16.tex feta19.tex feta20.tex feta23.tex feta26.tex fetdefs.tex lily-mf-defs.tex lily-ps-defs.tex lilyponddefs.tex ltest.tex taupindefs.tex titledefs.tex
 EXTRA_DIST = Makefile.am.wild $(TEXFILES)
 
-CLEANFILES = 
+CLEANFILES = feta11.tex feta13.tex feta16.tex feta19.tex feta20.tex feta23.tex feta26.tex
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = ../lib/config.hh
 CONFIG_CLEAN_FILES = 
@@ -145,13 +145,13 @@ installcheck:
 install-exec: 
        @$(NORMAL_INSTALL)
 
-install-data: 
+install-data: install-data-local
        @$(NORMAL_INSTALL)
 
 install: install-exec install-data all
        @:
 
-uninstall: 
+uninstall: uninstall-local
 
 all: Makefile
 
@@ -192,15 +192,15 @@ distclean-generic clean-generic maintainer-clean-generic clean \
 mostlyclean distclean maintainer-clean
 
 
-install-data:
+install-data-local:
        $(INSTALL) -d $(TEXDIR)/lilypond
        $(INSTALL) -m 644 $(TEXFILES) $(TEXDIR)/lilypond/
 
-uninstall-data:
+uninstall-local:
        for i in $(TEXFILES) ; do rm -f $(TEXDIR)/lilypond/$$i; done
        -rmdir $(TEXDIR)/lilypond/
 $(srcdir)/Makefile.am: $(srcdir)/Makefile.am.wild
-       $(PERL) $(top_srcdir)/bin/wild-perl < $< > $@
+       $(PERL) $(top_srcdir)/bin/wild-perl --top-srcdir="$(real_topdir)" < $< > $@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tex/feta11.tex b/tex/feta11.tex
new file mode 100644 (file)
index 0000000..51cd339
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta11.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta13.tex b/tex/feta13.tex
new file mode 100644 (file)
index 0000000..be72ab4
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta13.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta16.tex b/tex/feta16.tex
new file mode 100644 (file)
index 0000000..bf27fbc
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta16.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta19.tex b/tex/feta19.tex
new file mode 100644 (file)
index 0000000..29ccfc6
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta19.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta20.tex b/tex/feta20.tex
new file mode 100644 (file)
index 0000000..03aa808
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta20.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta23.tex b/tex/feta23.tex
new file mode 100644 (file)
index 0000000..f4619e0
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta23.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+
diff --git a/tex/feta26.tex b/tex/feta26.tex
new file mode 100644 (file)
index 0000000..76079b0
--- /dev/null
@@ -0,0 +1,87 @@
+% Creator: mf-to-table.py version 0.5
+% Automatically generated on
+% Do not edit
+% input from feta26.log
+% name
+% rests
+\fetdef\wholerest{0}
+\fetdef\halfrest{1}
+\fetdef\outsidewholerest{2}
+\fetdef\outsidehalfrest{3}
+\fetdef\quartrest{4}
+\fetdef\eighthrest{5}
+\fetdef\sixteenthrest{6}
+\fetdef\thirtysecondrest{7}
+\fetdef\sixtyfourthrest{8}
+\fetdef\hundredtwentyeighthrest{9}
+
+% accidentals
+\fetdef\sharp{10}
+\fetdef\natural{11}
+\fetdef\flat{12}
+\fetdef\flatflat{13}
+\fetdef\sharpsharp{14}
+
+% dots
+\fetdef\dot{15}
+\fetdef\repeatcolon{16}
+
+% balls
+\fetdef\brevisball{17}
+\fetdef\brevisledger{18}
+\fetdef\longaball{19}
+\fetdef\longaledger{20}
+\fetdef\wholeball{21}
+\fetdef\wholeledger{22}
+\fetdef\halfball{23}
+\fetdef\halfledger{24}
+\fetdef\quartball{25}
+\fetdef\quartledger{26}
+
+% scripts
+\fetdef\ufermata{27}
+\fetdef\dfermata{28}
+\fetdef\sforzatoaccent{29}
+\fetdef\staccato{30}
+\fetdef\ustaccatissimo{31}
+\fetdef\dstaccatissimo{32}
+\fetdef\tenuto{33}
+\fetdef\umarcato{34}
+\fetdef\dmarcato{35}
+\fetdef\ouvert{36}
+\fetdef\plusstop{37}
+\fetdef\upbow{38}
+\fetdef\downbow{39}
+\fetdef\turn{40}
+\fetdef\trill{41}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
+\fetdef\trilelement{47}
+\fetdef\prall{48}
+\fetdef\mordent{49}
+\fetdef\prallprall{50}
+\fetdef\prallmordent{51}
+\fetdef\upprall{52}
+\fetdef\downprall{53}
+
+% flags
+\fetdef\eighthflag{54}
+\fetdef\sixteenthflag{55}
+\fetdef\thirtysecondflag{56}
+\fetdef\sixtyfourthflag{57}
+\fetdef\deighthflag{58}
+\fetdef\dsixteenthflag{59}
+\fetdef\dthirtysecondflag{60}
+\fetdef\dsixtyfourthflag{61}
+
+% clefs
+\fetdef\altoclef{62}
+\fetdef\caltoclef{63}
+\fetdef\bassclef{64}
+\fetdef\cbassclef{65}
+\fetdef\violinclef{66}
+\fetdef\cviolinclef{67}
+