]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 0.1.47 release/0.1.47
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 6 Mar 1998 01:15:37 +0000 (02:15 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 6 Mar 1998 01:15:37 +0000 (02:15 +0100)
97 files changed:
AUTHORS.txt
BUGS
Documentation/INSTALL.pod
Documentation/Makefile
Documentation/Rules.make
Documentation/introduction.doc [new file with mode: 0644]
Documentation/other-packages.pod
INSTALL.txt
NEWS
TODO
VERSION
bin/convert-mudela.pl
bin/convert-mudela.py [new file with mode: 0644]
bin/cvm.py [new file with mode: 0644]
bin/genheader.py
bin/ly2dvi.sh
bin/make-docxx.sh
bin/make-website.py
bin/mudela-book.pl
configure
configure.in
debian/out/dummy.dep [new file with mode: 0644]
flower/dictionary.cc [new file with mode: 0644]
flower/include/full-storage.icc
flower/include/interval.hh
flower/include/interval.tcc
flower/interval.cc
flower/string.cc
flower/test/main.cc
init/feta11.ly
init/feta13.ly
init/feta16.ly
init/feta19.ly
init/feta20.ly
init/feta23.ly
init/feta26.ly
init/paper16.ly
init/script.ly
init/simple-init.ly [new file with mode: 0644]
input/font-body.ly
input/praeludium-fuga-E.ly [new file with mode: 0644]
input/toccata-fuga-E.ly [deleted file]
lily/Makefile
lily/VERSION
lily/abbrev.cc [new file with mode: 0644]
lily/clef-grav.cc
lily/clef-item.cc
lily/debug.cc
lily/identifier.cc
lily/include/abbrev.hh [new file with mode: 0644]
lily/include/direction.hh
lily/include/engraver.hh
lily/include/lily-proto.hh
lily/include/linespace.hh
lily/include/minmax.tcc [new file with mode: 0644]
lily/include/spring-spacer.hh
lily/include/stem-grav.hh
lily/include/stem.hh
lily/include/timing-translator.hh
lily/midi-item.cc
lily/musical-request.cc
lily/parser.y
lily/score-elem.cc
lily/score.cc
lily/spring-spacer.cc
lily/stem-grav.cc
lily/stem.cc
lily/symtable.cc
lily/tex-stream.cc
lily/timing-translator.cc
make/Rules.make
make/Variables.make
make/lelievijver.lsm
make/lilypond.lsm
make/lilypond.spec
mf/Makefile
mf/TODO
mf/feta-generic.mf
mf/feta-schrift.mf
mf/grayimagen.mf [new file with mode: 0644]
mf/mf.dep [deleted file]
mutopia/J.S.Bach/preludes-1.ly
mutopia/J.S.Bach/preludes-2.ly
mutopia/J.S.Bach/preludes-3.ly.m4
mutopia/J.S.Bach/preludes-4.ly
mutopia/J.S.Bach/preludes-5.ly
mutopia/J.S.Bach/preludes-6.ly
mutopia/out/dummy.dep [new file with mode: 0644]
tex/feta11.tex
tex/feta13.tex
tex/feta16.tex
tex/feta19.tex
tex/feta20.tex
tex/feta23.tex
tex/feta26.tex
tex/lily-ps-defs.tex
tex/lilyponddefs.tex

index 415b79c60d1563f81741fe95c2a94c83becd66e7..a57e2b1cb2f48b4e457d45ad66fa8762fc042582 100644 (file)
@@ -61,7 +61,7 @@ CONTRIBUTORS
 
 
 
 
 
 
-29/Jan/98                LilyPond 0.1.46                        1
+29/Jan/98                LilyPond 0.1.47                        1
 
 
 
 
 
 
@@ -127,6 +127,6 @@ AUTHORS(1)            LilyPond documentation           AUTHORS(1)
 
 
 
 
 
 
-29/Jan/98                LilyPond 0.1.46                        2
+29/Jan/98                LilyPond 0.1.47                        2
 
 
 
 
diff --git a/BUGS b/BUGS
index 810766b46ed396d25b94e59c66651af9b86f0fe7..10c0b999d26629d4bb5068a11231c3532d012c28 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -8,6 +8,10 @@ and before. Glibc upto 2.0.5 also has problems with memmem (), but
 these should not affect LilyPond.
 
 
 these should not affect LilyPond.
 
 
+[IRIX (5.3?)]
+
+coredump from strstream::strstream () upon the first read of a file
+
 [Linux Intel]
 
 LilyPond occasionally crashes while parsing the initialisation files.
 [Linux Intel]
 
 LilyPond occasionally crashes while parsing the initialisation files.
index d724945a9a70d87fd20a97c6bbd79bdd112464b4..33e6b0d44fe2a201e024257070323ebd8d5e5430 100644 (file)
@@ -25,15 +25,15 @@ For compilation you need.
 =item *
 
 A GNU system: GNU LilyPond is known to run on these GNU systems: Linux
 =item *
 
 A GNU system: GNU LilyPond is known to run on these GNU systems: Linux
-(PPC, intel), FreeBSD, AIX, NeXTStep, Digital Unix and Solaris.
+(PPC, intel), FreeBSD, AIX, NeXTStep, IRIX, Digital Unix and Solaris.
 
 If you have the Cygnus WINDOWS32 port of the GNU utils, it will even
 work in Windows NT/95, but we don't promise to support it.
 
 =item *
 
 
 If you have the Cygnus WINDOWS32 port of the GNU utils, it will even
 work in Windows NT/95, but we don't promise to support it.
 
 =item *
 
-GNU C++ v2.7 or better, with libg++ installed.  Version 2.7.2
-or better recommended. 
+GNU C++ v2.7 or better, with libg++ installed.  If you use gcc 2.8 or
+egcs then you should install a matching libg++  (ie. 2.8) version.
 
 =item *
 
 
 =item *
 
@@ -197,10 +197,10 @@ contain all files generated during compilation).
 =head2 Building for multiple hosts
 
 LilyPond does not follow the GNU standards when it comes to
 =head2 Building for multiple hosts
 
 LilyPond does not follow the GNU standards when it comes to
-configuring and making Makefiles. In LilyPond, F<make> generates I<all>
-output in output directories (called F<out/>, by default). 
-You can have multiple compiles from the same source-tree, by
-overriding the setting for the output directory.
+configuring and making Makefiles. In LilyPond, F<make> generates
+I<all> output in output directories (called F<out/>, by default).  You
+can have multiple compiles from the same source-tree, by overriding
+the setting for the output directory.
 
 Example: on my system, I do debugging and lots compiling. For this I
 use the configuration as follows:
 
 Example: on my system, I do debugging and lots compiling. For this I
 use the configuration as follows:
@@ -218,8 +218,9 @@ and I want to do profiling. For that I use
 
 These two commands build two entirely separate versions of
 LilyPond. In Real Life, you would probably also want to have two
 
 These two commands build two entirely separate versions of
 LilyPond. In Real Life, you would probably also want to have two
-different prefixes. On my machine this is no problem; I never do 
-C<make install>. My prefix dirs are linked back to my source directory.
+different prefixes. On my machine this is no problem; I never do
+C<make install>. My prefix dirs are linked back to my source
+directory.
 
 
 =head1 INSTALLING
 
 
 =head1 INSTALLING
index 48df92b09df5f5ec6701420b9cdbe7c31e8468aa..d6a4cf732e55abb5e39def924a50d2d6ab0c7924 100644 (file)
@@ -58,7 +58,7 @@ include $(depth)/make/Rules.make
 #
 
 localclean:
 #
 
 localclean:
-       rm -f `find $(outdir)`
+       rm -f `find $(outdir) -type f`
 
 
 
 
 
 
index fc9a6198f1ebefd3792ba251beee5455c976d677..c32f9214ffa28332977e4f784ee5816936c811f7 100644 (file)
@@ -24,14 +24,19 @@ $(outdir)/%.txt: $(outdir)/%.1
 $(depth)/%.txt: $(outdir)/%.txt
        cp $< $@
 
 $(depth)/%.txt: $(outdir)/%.txt
        cp $< $@
 
-do_pod2html=$(pod2html) $<
+do_pod2html=$(pod2html) --infile $< --outfile=$@
+# do this for perl 5.003
+#      do_pod2html=$(pod2html) $<
+#      mv $(notdir $@) $(outdir)/
+
 
 # do this for perl 5.004
 #       $ make do_pod2html='$(pod2html) --infile $< --outfile=$@' html
 
 # do this for perl 5.004
 #       $ make do_pod2html='$(pod2html) --infile $< --outfile=$@' html
-#
+
+
 $(outdir)/%.html: %.pod $(depth)/VERSION
        $(do_pod2html) 
 $(outdir)/%.html: %.pod $(depth)/VERSION
        $(do_pod2html) 
-       mv $(notdir $@) $(outdir)/
+#
 
 $(outdir)/%.5: %.pod
        $(pod2groff)
 
 $(outdir)/%.5: %.pod
        $(pod2groff)
diff --git a/Documentation/introduction.doc b/Documentation/introduction.doc
new file mode 100644 (file)
index 0000000..0b40054
--- /dev/null
@@ -0,0 +1,191 @@
+% -*-latex-*-
+
+% this document should be run through the mudela-book script after lilypond
+% has been installed.  The rules have been precooked into the
+% Documentation/Rules.make file; do 
+%
+%   make out/introduction.dvi
+%
+% or
+%
+%   mudela-book --outdir=out/ --outname=introduction.mudtex introduction.doc
+%   latex '\nonstopmode \input out/introduction.mudtex'
+
+
+\documentclass{article}
+\usepackage{a4wide}
+\title{Introduction to GNU LilyPond}
+\author{Jan Nieuwenhuizen}
+\date{March 2, 1998}
+
+% ugh: trick to get examples not generate par
+% these are for 16pt
+\def\mudelapaperlinewidth{-28.452756}%
+\def\mudelapaperindent{28.452756}%
+\def\mudelapaperrulethickness{0.400000}%
+\def\mudelapaperbarsize{16.000000}%
+\def\mudelapaperinterline{4.000000}%
+\def\mudelapapernotewidth{5.930000}%
+\def\mudelapaperwholewidth{8.640000}%
+\def\mudelapaperunitspace{22.000000}%
+\def\mudelapaperbasicspace{4.000000}%
+\def\mudelapapergeometric{0.000000}%
+\def\mudelapaperarithmetic_basicspace{2.000000}%
+\def\mudelapaperarithmetic_multiplier{4.800000}%
+\def\mudelapaperinterbeam{3.140000}%
+\def\mudelapapergourlay_energybound{100000.000000}%
+\def\mudelapapergourlay_maxmeasures{14.000000}%
+
+% ful of pars, needs the above
+\input lilyponddefs
+% generates par
+\musixsixteendefs
+\def\musixsixteendefs{}
+% generates par
+\turnOnPostScript%
+\def\turnOnPostScript{}
+% 
+
+\begin{document}
+\maketitle
+
+\def\interexample{\hskip15mm$\Longrightarrow$\hskip15mm}
+\def\preexample{}
+\def\postexample{\par\medskip}
+
+% ugh, howto?
+% \def\frag{\vbox to 2\mudelapaperbarsize pt{\vss}
+% \def\interexample{\vss}\hskip15mm$\Longrightarrow$\hskip15mm}
+% \def\preexample{\vbox to 2\mudelabarsize pt{\vss}
+% \def\postexample{\vss}\par\medskip}
+
+\def\file#1{{\texttt{#1}}}
+\setcounter{secnumdepth}{-1}
+
+\emph{\Large ***Under construction***}
+
+\section{Introduction}
+This document should provide a gentle introduction to 
+LilyPond's input language, Mudela.
+For completeness and nifty features see 
+\verb+input/*.ly+
+and
+\verb+lily/parser.y, lily/lexer.l+.
+
+
+\section{Notes: pitches and durations}
+
+\begin[fragment,verbatim]{mudela}
+c
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+c d e f g a b
+\end{mudela}
+
+Durations are entered as reciproce values
+\begin[fragment,verbatim]{mudela}
+a1 | a2 a | a4 a a a
+\end{mudela}
+and default to the last previously used duration.
+
+Now we can write a little tune
+\begin[fragment,verbatim]{mudela}
+c d e c | c d e c | e f g2 | e4 f g2
+\end{mudela}
+note the explicit duration change for 
+the quarter e in the last measure.
+
+Same for notes with flags
+\begin[fragment,verbatim]{mudela}
+a8 a16 a32 a64 a128
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+c c' c''
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+a 'a ''a
+\end{mudela}
+
+\section{Slurs and Ties}
+
+A tie connects two adjacent noteheads
+
+\begin[fragment,verbatim]{mudela}
+c' ~ c
+\end{mudela}
+
+Whereas a slur rather connects `chords', 
+and tries to avoid crossing stems.
+
+\begin[fragment,verbatim]{mudela}
+c'( )c
+\end{mudela}
+
+A (legato) slur can span several notes
+\begin[fragment,verbatim]{mudela}
+c'( d e )c
+\end{mudela}
+
+\section{Beams and plets}
+
+\begin[fragment,verbatim]{mudela}
+[a8 a] [a16 a a a]
+\end{mudela}
+
+% [2/3 a8 a a]1/1
+\begin[fragment,verbatim]{mudela}
+[/3 a8 a a]/1
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+\[/3 a4 a8\]
+\end{mudela}
+
+\section{Commands}
+
+\begin[fragment,verbatim]{mudela}
+\clef "bass"; 'c
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+\meter 3/4; c g g |
+\end{mudela}
+
+\begin[fragment,verbatim]{mudela}
+\key fis cis;
+'g 'a 'b cis d e fis g'
+\end{mudela}
+
+\section{Example}
+
+A Mudela file needs some red tape
+
+\begin[verbatim]{mudela}
+\score{
+       \melodic{
+               \octave c';
+               c d e c
+       }
+}
+\end{mudela}
+
+\section{Lyrics}
+
+% this nesting syntax sucks
+\begin[verbatim]{mudela}
+\score{
+       < 
+               \melodic \type Staff = bla < \melodic{\octave c'; c d e c} >
+% huh?
+%              \lyric \type Lyrics = bli < \lyric{Fre- re Ja- que} >
+        >
+}
+\end{mudela}
+
+\section{Variables}
+
+\end{document}
+
index b04410aa3e6e535aa6f2299b8497fdc69afd099c..56cd0f9c831cb5059e601a25b1479f535d89ed68 100644 (file)
@@ -11,7 +11,7 @@ packages. Feel free to add info (and mail it to me).
 
 =over 4
 
 
 =over 4
 
-=item Rosegarden, http://www.bath.ac.uk/~masjpf/rose.html
+=item Rosegarden, http://www.bath.ac.uk/~masjpf/rose.html.
 
 A Notation editor/Sequencer for X. Also outputs musictex.
 
 
 A Notation editor/Sequencer for X. Also outputs musictex.
 
@@ -171,6 +171,8 @@ clones.  It uses MIDI-keyboard input
 
 =head2 Unknown
 
 
 =head2 Unknown
 
+=over 4
+
 =item MusE, [no WWW address known]
 
 A-R Music Engraving, by A-R Editions, Inc. Professional engraving on
 =item MusE, [no WWW address known]
 
 A-R Music Engraving, by A-R Editions, Inc. Professional engraving on
@@ -189,12 +191,24 @@ Dominique Montel (a professional music typesetter) is now working
 together with computer scientists on his own software for music
 publishing, called "Berlioz".
 
 together with computer scientists on his own software for music
 publishing, called "Berlioz".
 
+=back
+
 =head2 Other stuff
 
 =head2 Other stuff
 
+=over 4
+
 =item Sonata, http://www.adobe.com/type/browser/F/F_SONA.html
 
 The music font by Adobe.
 
 =item Sonata, http://www.adobe.com/type/browser/F/F_SONA.html
 
 The music font by Adobe.
 
+=item Haskore, http://haskell.systemscz.cs.yale.edu/haskore/onlinetutorial/index.html
+
+A programming system for music, based on Haskell, a functional
+programming language.  It outputs MIDI, CSound, NeXTStep MusicKit and
+CMN.
+
 
 
 
 
+=back
+
 
 
index 966420ae5a2d75bbb27bd6c5e85f54ff9b87f45a..1e8ba2b80f4331aad9bfd6395defb40e14a6ad9c 100644 (file)
@@ -25,14 +25,15 @@ PREREQUISITES
 
        o    A GNU system: GNU LilyPond is known to run on these
             GNU systems: Linux (PPC, intel), FreeBSD, AIX,
 
        o    A GNU system: GNU LilyPond is known to run on these
             GNU systems: Linux (PPC, intel), FreeBSD, AIX,
-            NeXTStep, Digital Unix and Solaris.
+            NeXTStep, IRIX, Digital Unix and Solaris.
 
             If you have the Cygnus WINDOWS32 port of the GNU
             utils, it will even work in Windows NT/95, but we
             don't promise to support it.
 
 
             If you have the Cygnus WINDOWS32 port of the GNU
             utils, it will even work in Windows NT/95, but we
             don't promise to support it.
 
-       o    GNU C++ v2.7 or better, with libg++ installed.
-            Version 2.7.2 or better recommended.
+       o    GNU C++ v2.7 or better, with libg++ installed.  If
+            you use gcc 2.8 or egcs then you should install a
+            matching libg++  (ie. 2.8) version.
 
        o    GNU make.
 
 
        o    GNU make.
 
@@ -60,8 +61,7 @@ RECOMMENDED
 
 
 
 
 
 
-
-28/Jan/98                LilyPond 0.1.46                        1
+6/Mar/98                 LilyPond 0.1.47                        1
 
 
 
 
 
 
@@ -127,7 +127,7 @@ CONFIGURING and COMPILING
 
 
 
 
 
 
-28/Jan/98                LilyPond 0.1.46                        2
+6/Mar/98                 LilyPond 0.1.47                        2
 
 
 
 
 
 
@@ -193,7 +193,7 @@ INSTALL(1)            LilyPond documentation           INSTALL(1)
 
 
 
 
 
 
-28/Jan/98                LilyPond 0.1.46                        3
+6/Mar/98                 LilyPond 0.1.47                        3
 
 
 
 
 
 
@@ -259,7 +259,7 @@ EXAMPLE
 
 
 
 
 
 
-28/Jan/98                LilyPond 0.1.46                        4
+6/Mar/98                 LilyPond 0.1.47                        4
 
 
 
 
 
 
@@ -325,7 +325,7 @@ MUSIXTEX
 
 
 
 
 
 
-28/Jan/98                LilyPond 0.1.46                        5
+6/Mar/98                 LilyPond 0.1.47                        5
 
 
 
 
 
 
@@ -391,6 +391,6 @@ AUTHORS
 
 
 
 
 
 
-28/Jan/98                LilyPond 0.1.46                        6
+6/Mar/98                 LilyPond 0.1.47                        6
 
 
 
 
diff --git a/NEWS b/NEWS
index 13e1992ee0ccaf105fb5619b0e51607aee789bb9..60d9a467b54ab82ff7124d8a7d770e9fdbfa519e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,17 @@
+pl 47
+       - Abbreviation now a separate item.
+       - bf'd some gcc 2.8 warnings.
+       - bf'd spurious space in autodep.
+       - more clefs (MB)
+
+pl 46.jcn1
+       - start mudela introduction
+       - plet-fraction abbrev by guessing; /3 -> 2/3 etc.
+       - bf's: preludes-*
+
+*******
+feb 27
+
 pl 46
        - span-bar at upstep.
        - bf: \score { \score_identifier }
 pl 46
        - span-bar at upstep.
        - bf: \score { \score_identifier }
diff --git a/TODO b/TODO
index ae2a8a6eb31cd25d28038abb65de883455307a99..e966bc71f18f1a67e553dd9271736e29397ef1e3 100644 (file)
--- a/TODO
+++ b/TODO
@@ -42,6 +42,24 @@ grep for TODO and ugh/ugr
 
        * bf: abbrevs over whole note
 
 
        * bf: abbrevs over whole note
 
+       * spanner that is not spanned gives assert ().
+
+* the warning about the negative slur/tie length appears twice
+which is irritating.
+
+* The `3' in the meter key is a one or two pixels too thin (at 600dpi)
+in the middle:
+* better hshift (dots, distance, head dependent)
+
+* tie/slur dir & curvature
+
+* stem len adjustable
+
+* mindist for spanners
+
+       
+
 STUFF
 
 
 STUFF
 
 
@@ -81,6 +99,8 @@ STUFF
 
 3RD PARTY BUGS:
 
 
 3RD PARTY BUGS:
 
+       * gdb on RedHat 5
+
        * xdvi: PS magnifying glass.
 
        * Rational infty(HUGE_VAL) on glibc / w32
        * xdvi: PS magnifying glass.
 
        * Rational infty(HUGE_VAL) on glibc / w32
diff --git a/VERSION b/VERSION
index 4bdb5e852183a89bf47210dfa21e9e3deb6dcc80..cab5f19d385771ed66905adec4217bc7df390bc0 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,6 +1,6 @@
 TOPLEVEL_MAJOR_VERSION = 0
 TOPLEVEL_MINOR_VERSION = 1
 TOPLEVEL_MAJOR_VERSION = 0
 TOPLEVEL_MINOR_VERSION = 1
-TOPLEVEL_PATCH_LEVEL = 46
+TOPLEVEL_PATCH_LEVEL = 47
 TOPLEVEL_MY_PATCH_LEVEL = 
 
 # use the above to send patches, always empty for released version:
 TOPLEVEL_MY_PATCH_LEVEL = 
 
 # use the above to send patches, always empty for released version:
index 06578f3157fe4dfd2f3ede34960a8eeae71ac9f6..3be80d97daba3aa3c70f0fe79b327c0131cca6b0 100644 (file)
@@ -336,7 +336,7 @@ sub do_one_arg
 identify;
 
 
 identify;
 
 
-GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules");
+GetOptions ("help", "output=s", "from=s", "to=s", "minor=i", "edit", "show-rules");
 
 if ($opt_help) {
     usage();
 
 if ($opt_help) {
     usage();
diff --git a/bin/convert-mudela.py b/bin/convert-mudela.py
new file mode 100644 (file)
index 0000000..9654db9
--- /dev/null
@@ -0,0 +1,318 @@
+#!@PYTHON@ -w
+# -*-perl-*-
+
+version = "0.2";
+
+################################################################
+
+sub no_conv
+{
+}
+sub convert_0_0_52_to_0_0_53
+{
+
+    s/include \"/$1\\include \"/g;
+}
+
+  
+sub convert_0_0_54_to_0_0_55
+{
+    s/%{/% {/g;
+}
+
+  
+sub convert_0_0_53_to_0_0_54
+{
+    print STDERR "Not smart enough to convert \\transpose\n"    if (/\\transpose/) ;
+}
+
+# we-re not at 58 yet, but this is at least one of the rules
+sub convert_0_0_55_to_0_0_56
+{
+    s/\"\|\|\"/\"|.\"/g;
+}
+
+sub convert_0_0_56_to_0_0_57
+{
+    s/\(([ \]\[|\t-\.>]|\\[<!>a-z]+)*\)/\~ $1/g;
+}
+
+sub convert_0_0_57_to_0_0_58
+{
+    s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g;
+}
+
+sub convert_0_0_58_to_0_0_59
+{
+    die "Not smart enough to convert 0.0.58 to 0.0.59\n";
+}
+
+sub convert_0_0_59_to_0_0_60
+{
+    s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g;
+    s/(\\output \"[^\"]+\")/$1;/;
+    s/(\\tempo  [0-9: ]+)/$1;/;
+}
+
+sub convert_0_0_60_to_0_0_61
+{
+    s/(\\unitspace|\\geometric|\\width)/$1=/g;
+   
+}
+
+sub convert_0_1_0_to_0_1_1
+{
+    s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g
+}
+
+sub convert_0_1_2_to_0_1_3
+{
+    s/\\stem *(\\up|1) *;/\\stemup/g;
+    s/\\stem *(\\down|-1) *;/\\stemdown/g;
+    s/\\stem *0 *;/\\stemboth/g;
+    s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g;
+}
+
+my $header_b = 0;
+
+sub generic_conversion_scan
+{
+    if (/\\header *\{/)
+    {
+       $header_b = 1;
+    }
+    if ($header_b && /^ *\}/)
+    {
+       $header_b = 0;
+    }
+}
+sub convert_0_1_4_to_0_1_5
+{
+    s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/;    
+    s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/;
+}
+
+       
+sub convert_0_1_5_to_0_1_6
+{
+    s/< *\\multi (.*);/\\multi $1 </;
+}
+
+sub convert_0_1_6_to_0_1_7
+{
+    if ($header_b) 
+    {
+       s/^([a-zA-z]+)[ \t]+(.*)$/$1 =\t \"$2\";/;
+       s/^([ \t])+(.*)$/$1 \"$2\";/;
+    }
+}  
+
+sub convert_0_1_7_to_0_1_8
+{
+    s/\\plet *1 *\/ *1 *;/\\]/;    
+    s/\\plet *([1-9][0-9]*) *\/ *([2-9][0-9]*) *;/\\[$1\/$2/;    
+}  
+
+sub convert_0_1_8_to_0_1_9
+{
+# sticky plet shorthand...
+#  print "introduced plet and finger shorthands...\n";
+}
+
+###############################################################
+
+sub    last_conversion
+{
+    my @v = &versions;
+    return pop @v;
+}
+sub identify
+{
+    
+    print STDERR "This is convert-mudela " . $convert_mudela_version . 
+       " (up to mudela version ", last_conversion,     ")\n";
+}
+  
+  
+ sub usage
+  {
+     print STDERR "Usage: convert-mudela [options] [mudela-file]...\n"
+     . "Convert old mudela source from mudela-file or stdin\n\n"
+     . "Options:\n"
+     . "  -e, --edit             perform in-place conversion\n"
+     . "  -f, --from=PATHLEVEL   use source version 0.0.PATCHLEVEL\n"
+     . "  -h, --help             print this help\n"
+     . "  -o, --output=FILE      name output file\n"
+     . "  -s, --show-rules       print all known conversion rules\n"
+     . "  -t, --to=VERSION       convert to version VERSION\n"
+  }
+      
+
+my %minor_conversions = ("0.0.50" => \&no_conv,
+                        "0.0.52" => \&convert_0_0_50_to_0_0_52,
+                        "0.0.53" => \&convert_0_0_52_to_0_0_53,
+                        "0.0.54" => \&convert_0_0_53_to_0_0_54,
+                        "0.0.55" => \&convert_0_0_54_to_0_0_55,
+                        "0.0.56" => \&convert_0_0_55_to_0_0_56,
+                        "0.0.57" => \&convert_0_0_56_to_0_0_57,
+                        "0.0.58" => \&convert_0_0_57_to_0_0_58,
+                        "0.0.59" => \&convert_0_0_58_to_0_0_59,
+                        "0.0.60" => \&convert_0_0_59_to_0_0_60,
+                        "0.0.61" => \&convert_0_0_60_to_0_0_61,
+                        "0.1.1" => \&convert_0_1_0_to_0_1_1,
+                        "0.1.2" => \&no_conv,
+                        "0.1.3" => \&convert_0_1_2_to_0_1_3,
+                        "0.1.4" => \&no_conv,
+                        "0.1.5" => \&convert_0_1_4_to_0_1_5,
+                        "0.1.6" => \&convert_0_1_5_to_0_1_6
+                        ,"0.1.7" => \&convert_0_1_6_to_0_1_7
+                        ,"0.1.8" => \&convert_0_1_7_to_0_1_8
+                        ,"0.1.9" => \&convert_0_1_8_to_0_1_9
+                        );
+
+
+sub versions 
+{
+    return (sort { cmpver; } (keys %minor_conversions));
+}
+
+
+sub show_rules
+{
+    my (@v) = versions;
+
+    print "Rules: ", join(", ", @v), "\n";
+    
+}
+
+sub do_conversion
+{
+    my ($from,$to) = @_;
+
+    my @applicable_conversion;
+    my @mudela_levels;
+    
+    my @v = versions;
+    foreach $ver (@v) {
+       if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ 
+           push @applicable_conversion, $minor_conversions{$ver};
+           push @mudela_levels, $ver;
+       }
+    }
+    
+    print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n";
+
+    while (<INLY>) {
+       generic_conversion_scan;
+       foreach $subroutine (@applicable_conversion) {
+       
+           &$subroutine;
+           
+       }
+       version_string_conv $from, $to;
+       print OUTLY;
+    }
+}
+
+sub get_auto_from
+{
+    my ($fn)=@_;
+    my ($ver);
+    open INLY, $fn || die "Can't open";
+
+    while (<INLY>) {
+       s/^.*\\version \"([^\"]*)\".*$//;
+       if (defined ($1)) {
+           print STDERR "Guessing version: ", $1, ".. ";
+           $ver = $1;
+           last;
+       }
+    }
+    if (!defined($ver)){
+       print STDERR "can't determine mudela version in $fn.\n";
+       my $u;
+       return $u;
+    }
+    close INLY;
+    return $ver;
+}   
+
+sub  set_files 
+{
+    $infile = "-";
+    $outfile = "-";
+    $outfile = $opt_output if (defined($opt_output));
+
+    if ($ARGV [0])  {
+       $infile = $ARGV[0];
+    } 
+    if (!(-f $infile) && !($infile =~ /\.ly$/s)) {
+       $infile .= ".ly";
+    }
+    if ($opt_edit && $infile ne "-") {
+       $opt_edit = 1;
+       $outfile = "$infile.NEW";
+       $infile = "$infile";
+    }
+    print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. ";
+
+}
+
+sub do_one_arg
+{
+    set_files;
+
+    local ($from_version, $to_version);
+    $from_version = $opt_from;
+    $to_version = $opt_to;
+    
+    ($from_version = get_auto_from $infile) unless defined($opt_from);
+    return if (!defined($from_version));
+    
+    ($to_version =  last_conversion) unless (defined($opt_to));
+
+    die "can't open \`$infile\'" unless open INLY,$infile ;
+    die "can't open \`$outfile\'" unless open OUTLY, ">$outfile";
+    
+    do_conversion $from_version, $to_version;
+    close INLY;
+    close OUTLY;
+
+    if ($opt_edit) {
+       rename $infile, "$infile~";
+       rename $outfile, "$infile";
+    }
+}
+
+## "main"
+
+identify;
+
+
+GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules");
+
+if ($opt_help) {
+    usage();
+    $opt_help = 0;     # to extinguish typo check.
+    exit 0;
+}
+
+if ($opt_show_rules) { 
+    show_rules ;
+    $opt_show_rules = 0;       # to extinguish typo check.
+    exit 0;
+}
+
+local ( $infile,$outfile);
+my $processed_one=0;
+
+while (defined($ARGV[0])) {
+    do_one_arg;
+    shift @ARGV;
+    $processed_one = 1;
+}
+do_one_arg unless ($processed_one);
+
+    
diff --git a/bin/cvm.py b/bin/cvm.py
new file mode 100644 (file)
index 0000000..9654db9
--- /dev/null
@@ -0,0 +1,318 @@
+#!@PYTHON@ -w
+# -*-perl-*-
+
+version = "0.2";
+
+################################################################
+
+sub no_conv
+{
+}
+sub convert_0_0_52_to_0_0_53
+{
+
+    s/include \"/$1\\include \"/g;
+}
+
+  
+sub convert_0_0_54_to_0_0_55
+{
+    s/%{/% {/g;
+}
+
+  
+sub convert_0_0_53_to_0_0_54
+{
+    print STDERR "Not smart enough to convert \\transpose\n"    if (/\\transpose/) ;
+}
+
+# we-re not at 58 yet, but this is at least one of the rules
+sub convert_0_0_55_to_0_0_56
+{
+    s/\"\|\|\"/\"|.\"/g;
+}
+
+sub convert_0_0_56_to_0_0_57
+{
+    s/\(([ \]\[|\t-\.>]|\\[<!>a-z]+)*\)/\~ $1/g;
+}
+
+sub convert_0_0_57_to_0_0_58
+{
+    s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g;
+}
+
+sub convert_0_0_58_to_0_0_59
+{
+    die "Not smart enough to convert 0.0.58 to 0.0.59\n";
+}
+
+sub convert_0_0_59_to_0_0_60
+{
+    s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g;
+    s/(\\output \"[^\"]+\")/$1;/;
+    s/(\\tempo  [0-9: ]+)/$1;/;
+}
+
+sub convert_0_0_60_to_0_0_61
+{
+    s/(\\unitspace|\\geometric|\\width)/$1=/g;
+   
+}
+
+sub convert_0_1_0_to_0_1_1
+{
+    s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g
+}
+
+sub convert_0_1_2_to_0_1_3
+{
+    s/\\stem *(\\up|1) *;/\\stemup/g;
+    s/\\stem *(\\down|-1) *;/\\stemdown/g;
+    s/\\stem *0 *;/\\stemboth/g;
+    s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g;
+}
+
+my $header_b = 0;
+
+sub generic_conversion_scan
+{
+    if (/\\header *\{/)
+    {
+       $header_b = 1;
+    }
+    if ($header_b && /^ *\}/)
+    {
+       $header_b = 0;
+    }
+}
+sub convert_0_1_4_to_0_1_5
+{
+    s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/;    
+    s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/;
+}
+
+       
+sub convert_0_1_5_to_0_1_6
+{
+    s/< *\\multi (.*);/\\multi $1 </;
+}
+
+sub convert_0_1_6_to_0_1_7
+{
+    if ($header_b) 
+    {
+       s/^([a-zA-z]+)[ \t]+(.*)$/$1 =\t \"$2\";/;
+       s/^([ \t])+(.*)$/$1 \"$2\";/;
+    }
+}  
+
+sub convert_0_1_7_to_0_1_8
+{
+    s/\\plet *1 *\/ *1 *;/\\]/;    
+    s/\\plet *([1-9][0-9]*) *\/ *([2-9][0-9]*) *;/\\[$1\/$2/;    
+}  
+
+sub convert_0_1_8_to_0_1_9
+{
+# sticky plet shorthand...
+#  print "introduced plet and finger shorthands...\n";
+}
+
+###############################################################
+
+sub    last_conversion
+{
+    my @v = &versions;
+    return pop @v;
+}
+sub identify
+{
+    
+    print STDERR "This is convert-mudela " . $convert_mudela_version . 
+       " (up to mudela version ", last_conversion,     ")\n";
+}
+  
+  
+ sub usage
+  {
+     print STDERR "Usage: convert-mudela [options] [mudela-file]...\n"
+     . "Convert old mudela source from mudela-file or stdin\n\n"
+     . "Options:\n"
+     . "  -e, --edit             perform in-place conversion\n"
+     . "  -f, --from=PATHLEVEL   use source version 0.0.PATCHLEVEL\n"
+     . "  -h, --help             print this help\n"
+     . "  -o, --output=FILE      name output file\n"
+     . "  -s, --show-rules       print all known conversion rules\n"
+     . "  -t, --to=VERSION       convert to version VERSION\n"
+  }
+      
+
+my %minor_conversions = ("0.0.50" => \&no_conv,
+                        "0.0.52" => \&convert_0_0_50_to_0_0_52,
+                        "0.0.53" => \&convert_0_0_52_to_0_0_53,
+                        "0.0.54" => \&convert_0_0_53_to_0_0_54,
+                        "0.0.55" => \&convert_0_0_54_to_0_0_55,
+                        "0.0.56" => \&convert_0_0_55_to_0_0_56,
+                        "0.0.57" => \&convert_0_0_56_to_0_0_57,
+                        "0.0.58" => \&convert_0_0_57_to_0_0_58,
+                        "0.0.59" => \&convert_0_0_58_to_0_0_59,
+                        "0.0.60" => \&convert_0_0_59_to_0_0_60,
+                        "0.0.61" => \&convert_0_0_60_to_0_0_61,
+                        "0.1.1" => \&convert_0_1_0_to_0_1_1,
+                        "0.1.2" => \&no_conv,
+                        "0.1.3" => \&convert_0_1_2_to_0_1_3,
+                        "0.1.4" => \&no_conv,
+                        "0.1.5" => \&convert_0_1_4_to_0_1_5,
+                        "0.1.6" => \&convert_0_1_5_to_0_1_6
+                        ,"0.1.7" => \&convert_0_1_6_to_0_1_7
+                        ,"0.1.8" => \&convert_0_1_7_to_0_1_8
+                        ,"0.1.9" => \&convert_0_1_8_to_0_1_9
+                        );
+
+
+sub versions 
+{
+    return (sort { cmpver; } (keys %minor_conversions));
+}
+
+
+sub show_rules
+{
+    my (@v) = versions;
+
+    print "Rules: ", join(", ", @v), "\n";
+    
+}
+
+sub do_conversion
+{
+    my ($from,$to) = @_;
+
+    my @applicable_conversion;
+    my @mudela_levels;
+    
+    my @v = versions;
+    foreach $ver (@v) {
+       if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ 
+           push @applicable_conversion, $minor_conversions{$ver};
+           push @mudela_levels, $ver;
+       }
+    }
+    
+    print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n";
+
+    while (<INLY>) {
+       generic_conversion_scan;
+       foreach $subroutine (@applicable_conversion) {
+       
+           &$subroutine;
+           
+       }
+       version_string_conv $from, $to;
+       print OUTLY;
+    }
+}
+
+sub get_auto_from
+{
+    my ($fn)=@_;
+    my ($ver);
+    open INLY, $fn || die "Can't open";
+
+    while (<INLY>) {
+       s/^.*\\version \"([^\"]*)\".*$//;
+       if (defined ($1)) {
+           print STDERR "Guessing version: ", $1, ".. ";
+           $ver = $1;
+           last;
+       }
+    }
+    if (!defined($ver)){
+       print STDERR "can't determine mudela version in $fn.\n";
+       my $u;
+       return $u;
+    }
+    close INLY;
+    return $ver;
+}   
+
+sub  set_files 
+{
+    $infile = "-";
+    $outfile = "-";
+    $outfile = $opt_output if (defined($opt_output));
+
+    if ($ARGV [0])  {
+       $infile = $ARGV[0];
+    } 
+    if (!(-f $infile) && !($infile =~ /\.ly$/s)) {
+       $infile .= ".ly";
+    }
+    if ($opt_edit && $infile ne "-") {
+       $opt_edit = 1;
+       $outfile = "$infile.NEW";
+       $infile = "$infile";
+    }
+    print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. ";
+
+}
+
+sub do_one_arg
+{
+    set_files;
+
+    local ($from_version, $to_version);
+    $from_version = $opt_from;
+    $to_version = $opt_to;
+    
+    ($from_version = get_auto_from $infile) unless defined($opt_from);
+    return if (!defined($from_version));
+    
+    ($to_version =  last_conversion) unless (defined($opt_to));
+
+    die "can't open \`$infile\'" unless open INLY,$infile ;
+    die "can't open \`$outfile\'" unless open OUTLY, ">$outfile";
+    
+    do_conversion $from_version, $to_version;
+    close INLY;
+    close OUTLY;
+
+    if ($opt_edit) {
+       rename $infile, "$infile~";
+       rename $outfile, "$infile";
+    }
+}
+
+## "main"
+
+identify;
+
+
+GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules");
+
+if ($opt_help) {
+    usage();
+    $opt_help = 0;     # to extinguish typo check.
+    exit 0;
+}
+
+if ($opt_show_rules) { 
+    show_rules ;
+    $opt_show_rules = 0;       # to extinguish typo check.
+    exit 0;
+}
+
+local ( $infile,$outfile);
+my $processed_one=0;
+
+while (defined($ARGV[0])) {
+    do_one_arg;
+    shift @ARGV;
+    $processed_one = 1;
+}
+do_one_arg unless ($processed_one);
+
+    
index 4a68b3b80d32c320b145a07342fb400c47255ede..57f0e9fb8f93176193f3433af8c4ef2fc17b552c 100644 (file)
@@ -47,7 +47,7 @@ def project_str():
     if regex.search('flower', cwd) <> -1:
        PROJECT = "the Flower Library"
     elif regex.search('mf$', cwd) <> -1:
     if regex.search('flower', cwd) <> -1:
        PROJECT = "the Flower Library"
     elif regex.search('mf$', cwd) <> -1:
-       PROJECT = "the Feta (Font-En-Tja) music font"
+       PROJECT = "the Feta (defintively not an abbreviation for Font-En-Tja) music font"
     else:
        PROJECT = "the GNU LilyPond music typesetter"
     return PROJECT
     else:
        PROJECT = "the GNU LilyPond music typesetter"
     return PROJECT
index 2698d77d17951dc0ac5c2cd5b655e0bbe1ad2bf5..005a311196f7135bf23bcea57187971a36e1ae07 100644 (file)
@@ -14,6 +14,10 @@ IDENTIFICATION="$NAME $VERSION"
 NOW=`date`
 echo "$IDENTIFICATION" 1>&2
 
 NOW=`date`
 echo "$IDENTIFICATION" 1>&2
 
+# TODO
+
+# should detect crashing lilypond
+
 # NEWS
     
 # 0.6.hwn1.jaf
 # NEWS
     
 # 0.6.hwn1.jaf
index ba04446924c754cfa11e1e4a5d353559d1f38d06..b274731309e4e2ec4093275de632767ea6eb4e33 100644 (file)
@@ -5,4 +5,4 @@ then
 fi
 p1=`find $LILYTOP -name '*.hh' |egrep -v out/` 
 p2=`find $LILYTOP -name '*.cc' |egrep -v out/`
 fi
 p1=`find $LILYTOP -name '*.hh' |egrep -v out/` 
 p2=`find $LILYTOP -name '*.cc' |egrep -v out/`
-doc++ -d docxx/ -S -k -p $BANNEROPT $p1 $p2
+doc++ -f -d docxx/ -S -k -p $BANNEROPT $p1 $p2
index 15da0c6e43d93f25b3b714dc0d85403c63a53ac2..a2243a78f913e0e884e98bfa06cdcf80e1f8c7ca 100644 (file)
@@ -95,7 +95,7 @@ def my_system(cmds):
 base="lilypond/";
 
 examples=["twinkle-pop", 
 base="lilypond/";
 
 examples=["twinkle-pop", 
-         "toccata-fuga-E", 
+         "praeludium-fuga-E", 
          "cadenza", 
          "twinkle", 
          "collisions",
          "cadenza", 
          "twinkle", 
          "collisions",
@@ -123,8 +123,11 @@ def gen_examples(inputs):
     print 'generating examples:\n'
     outputs = []
     for i in inputs:
     print 'generating examples:\n'
     outputs = []
     for i in inputs:
-       located = multiple_find ([i + '.ly'], include_path) [0]
-
+       try:
+               located = multiple_find ([i + '.ly'], include_path) [0]
+       except IndexError:
+               print 'continuing dazed & confused (%s) ' % i
+               continue
        outputs.append (located)
        if not file_exist_b(i + '.dvi'):
            my_system (['ly2dvi %s' % located])
        outputs.append (located)
        if not file_exist_b(i + '.dvi'):
            my_system (['ly2dvi %s' % located])
@@ -275,6 +278,7 @@ def edit_html():
        s = regsub.sub ('</BODY>', footstr('index.html') + makewebsite_id + '</BODY>', s)
        s = regsub.sub('<TITLE>\(.*\)</TITLE>$', 
                       '<TITLE>LilyPond WWW: \\1</TITLE>', s)
        s = regsub.sub ('</BODY>', footstr('index.html') + makewebsite_id + '</BODY>', s)
        s = regsub.sub('<TITLE>\(.*\)</TITLE>$', 
                       '<TITLE>LilyPond WWW: \\1</TITLE>', s)
+
        dump_file (f,s)
 
 
        dump_file (f,s)
 
 
index bf65dd7806e80896244491bf2adfb05b309baebf..a5ed477aeaa819352910c619018d44a4a7328abe 100644 (file)
@@ -83,7 +83,7 @@ sub open_mudela
        print BOOK "\\begin{verbatim}\n";
     }
     if ($fragment_b) {
        print BOOK "\\begin{verbatim}\n";
     }
     if ($fragment_b) {
-       print MUDELA "\\score { \\melodic {";
+       print MUDELA "\\score { \\melodic {\\octave c';";
     }
 
 }
     }
 
 }
index eba42b2cdaf7a665765ab68cf314d467327e77f5..3cd69740dd1098b34b938d64c3f37e7d3c78459e 100755 (executable)
--- a/configure
+++ b/configure
@@ -12,7 +12,7 @@ ac_help=
 ac_default_prefix=/usr/local
 # Any additions from configure.in:
 ac_help="$ac_help
 ac_default_prefix=/usr/local
 # Any additions from configure.in:
 ac_help="$ac_help
-  enable-printing         turn on debug printing"
+  enable-printing         turn on debug printing. Default: off"
 ac_help="$ac_help
   enable-checking         set runtime checks (assert calls). Default: on"
 ac_help="$ac_help
 ac_help="$ac_help
   enable-checking         set runtime checks (assert calls). Default: on"
 ac_help="$ac_help
index 31fb7264115e4ec58678cbdfdb0850ee0f67e1f1..53928a8cd416fed23766a3d3472c72dca4e89139 100644 (file)
@@ -27,7 +27,7 @@ profile_b=no
 AC_LANG_CPLUSPLUS
 
 AC_ARG_ENABLE(printing,
 AC_LANG_CPLUSPLUS
 
 AC_ARG_ENABLE(printing,
-    [  enable-printing         turn on debug printing],
+    [  enable-printing         turn on debug printing. Default: off],
     [printing_b=$enableval])
 
        
     [printing_b=$enableval])
 
        
diff --git a/debian/out/dummy.dep b/debian/out/dummy.dep
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/flower/dictionary.cc b/flower/dictionary.cc
new file mode 100644 (file)
index 0000000..d8e5028
--- /dev/null
@@ -0,0 +1,37 @@
+
+#if 0
+
+
+/**
+   neuk. hsearch_* is te dom.
+ */
+template<class T>
+class Dictionary<T>
+{
+  hsearch_data * hash_p_;
+  
+public:
+  Dictionary ();
+  ~Dictionary ();
+  Dictionary (Dictionary const&);
+  T &elem (String s);
+  T const &elem (String s) const;
+  bool elt_b (String s) const;
+  void add (String, T);
+  void clear ();
+}
+
+Dictionary::Dictionary ()
+{
+  hash_p_ = new hsearch_data;
+  hash_p_->table = 0;
+
+  int start_size = 51;
+  int retval = hcreate_r (start_size, hash_p_);
+
+  assert (retval);
+}
+
+
+
+#endif
index a8ad166711c53e39a65d1f089489a3bf65373eb1..359edb6b4ceca3d4780ef7cad25d397b190be7a4 100644 (file)
@@ -27,6 +27,7 @@ Full_storage::valid (int i, int j) const
 
 INLINE
 Full_storage::Full_storage (Full_storage const&s)
 
 INLINE
 Full_storage::Full_storage (Full_storage const&s)
+  : Matrix_storage (s)
 {
   init();
   (*this) = s;
 {
   init();
   (*this) = s;
index 2fd76090a327ec3187352016d1c7fc94718ed6dd..d236759219e1f66887b988b4111cfb1739bda840 100644 (file)
@@ -83,6 +83,7 @@ struct Interval_t {
     return *this;
   }
   String str() const;    
     return *this;
   }
   String str() const;    
+  void print () const;
   bool elt_b (T r);
 };
 
   bool elt_b (T r);
 };
 
index 1a483b5f188a58a8f527a3429767e283b0b310ba..88dc1a7016716b10d8de1710664d7522761297b1 100644 (file)
 #include <math.h>
 #include "interval.hh"
 #include "string.hh"
 #include <math.h>
 #include "interval.hh"
 #include "string.hh"
+#include "flower-debug.hh"
 
 
+template<class T>
+void
+Interval_t<T>::print () const
+{
+  fdebug << str ();
+}
 
 template<class T>
 int
 
 template<class T>
 int
index f425bfd2951c22244d831b6d0870d9e59128faa5..7d2c0098393d7d5c5e29c7a660dd094e172d20b8 100644 (file)
@@ -14,6 +14,8 @@
 
 template INTERVAL__INSTANTIATE(Real);
 
 
 template INTERVAL__INSTANTIATE(Real);
 
+
+
 Real
 Interval_t<Real>::infinity() 
 {
 Real
 Interval_t<Real>::infinity() 
 {
index 9f5fca9dad2178726f8cc34ce18f7294369aef5d..0e479de3e55bb37bc364c85c28d50a048cc0dc1e 100644 (file)
@@ -6,6 +6,10 @@
 
  */
 
 
  */
 
+#ifndef _GNU_SOURCE // we want memmem
+#define _GNU_SOURCE
+#endif
+
 #include <stdlib.h>
 #include <stdio.h>
 
 #include <stdlib.h>
 #include <stdio.h>
 
index 8cd10797c50e6682b9ee7474cf6a58a547d8a38f..26aaf3cff991479ce3e9a1e80772ba3952cbcbed 100644 (file)
@@ -13,8 +13,9 @@ void reg_test (fptr f)
 int
 main ()
 {
 int
 main ()
 {
- if (test_arr_p) {
-  for (int i=0; i < test_arr_p->size (); i++)
-    (*test_arr_p)[i] ();
- }
+ if (test_arr_p)
+   {
+     for (int i=0; i < test_arr_p->size (); i++)
+       (*test_arr_p)[i] ();
+   }
 }
 }
index 0ecd6c7adad63da38fdcc60b018e93305b17eae9..f874201e801ac312ec7d419370d7d7d73f64fedb 100644 (file)
@@ -4,8 +4,8 @@
 % input from out/feta11.log
 % name=\symboltables {
     "rests"     = \table {
 % input from out/feta11.log
 % name=\symboltables {
     "rests"     = \table {
-        "0"    "\\wholerest"   -0.00\pt        4.13\pt -1.72\pt        0.00\pt 
-        "1"    "\\halfrest"    -0.00\pt        4.13\pt -0.00\pt        1.72\pt 
+        "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 
         "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 
@@ -16,8 +16,8 @@
         "7"    "\\hundredtwentyeighthrest"     -0.00\pt        5.75\pt -0.00\pt        16.06\pt        
         }
     "accidentals"       = \table {
         "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.13\pt        4.13\pt 
-        "0"    "\\natural"     -0.00\pt        1.83\pt -4.13\pt        4.13\pt 
+        "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 
         "-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 
         "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 
         "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 
-        "pedalheel"    "\\pedalheel"   -1.38\pt        1.38\pt -1.38\pt        1.83\pt 
-        "pedaltoe"     "\\pedaltoe"    -1.38\pt        1.38\pt -0.00\pt        4.13\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -1.47\pt        1.47\pt -1.47\pt        1.47\pt 
         }
     "flags"     = \table {
index 2cec6814a74816f8abe63e5f1c442cacd40ec8bb..4be008a65751f87fd5934cfa95be99df4f46a6f7 100644 (file)
     "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 
     "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.63\pt        6.50\pt 
-        "-2"   "\\flatflat"    -0.39\pt        4.71\pt -1.63\pt        6.50\pt 
-        "2"    "\\sharpsharp"  -0.00\pt        3.25\pt -1.63\pt        1.63\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 
         }
     "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.63\pt        1.63\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 
         }
     "balls"     = \table {
         "-1"   "\\brevisball"  -0.00\pt        6.50\pt -1.79\pt        1.79\pt 
-        "-1l"  "\\brevisledger"        -1.63\pt        8.13\pt -0.33\pt        0.33\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 
         "-2"   "\\longaball"   -0.00\pt        6.50\pt -1.79\pt        1.79\pt 
-        "-2l"  "\\longaledger" -1.63\pt        8.13\pt -0.33\pt        0.33\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 
         "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 
     "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 
     "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.63\pt        1.63\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 
         "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.63\pt        1.63\pt -0.00\pt        3.58\pt 
-        "dmarcato"     "\\dmarcato"    -1.63\pt        1.63\pt -3.58\pt        0.00\pt 
-        "open" "\\ouvert"      -1.30\pt        1.30\pt -1.63\pt        1.63\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 
         "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 
-        "pedalheel"    "\\pedalheel"   -1.63\pt        1.63\pt -1.63\pt        2.17\pt 
-        "pedaltoe"     "\\pedaltoe"    -1.63\pt        1.63\pt -0.00\pt        4.88\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -1.73\pt        1.73\pt -1.73\pt        1.73\pt 
         }
     "flags"     = \table {
@@ -71,7 +73,7 @@
     "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 
     "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.63\pt        11.70\pt        -8.13\pt        3.25\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        
         "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        
index 520fde4b340c8c5c247773605f6aa428c7e0b8e1..c8bcf1ee2d568a2920ababc6f349907642a84112 100644 (file)
         "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 
         "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 
-        "pedalheel"    "\\pedalheel"   -2.00\pt        2.00\pt -2.00\pt        2.67\pt 
-        "pedaltoe"     "\\pedaltoe"    -2.00\pt        2.00\pt -0.00\pt        6.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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -2.13\pt        2.13\pt -2.13\pt        2.13\pt 
         }
     "flags"     = \table {
index 1b8d266f5cab62dbecc8cc6a8161613db861b53f..146a35974e3f11a936378b4eaa2866f7ea8b0c2e 100644 (file)
@@ -4,8 +4,8 @@
 % input from out/feta19.log
 % name=\symboltables {
     "rests"     = \table {
 % input from out/feta19.log
 % name=\symboltables {
     "rests"     = \table {
-        "0"    "\\wholerest"   -0.00\pt        7.13\pt -2.97\pt        0.00\pt 
-        "1"    "\\halfrest"    -0.00\pt        7.13\pt -0.00\pt        2.97\pt 
+        "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        
         "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        
@@ -16,8 +16,8 @@
         "7"    "\\hundredtwentyeighthrest"     -0.00\pt        9.93\pt -0.00\pt        27.75\pt        
         }
     "accidentals"       = \table {
         "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.13\pt        7.13\pt 
-        "0"    "\\natural"     -0.00\pt        3.17\pt -7.13\pt        7.13\pt 
+        "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 
         "-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 
         "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        
         "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        
-        "pedalheel"    "\\pedalheel"   -2.38\pt        2.38\pt -2.38\pt        3.17\pt 
-        "pedaltoe"     "\\pedaltoe"    -2.38\pt        2.38\pt -0.00\pt        7.13\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -2.53\pt        2.53\pt -2.53\pt        2.53\pt 
         }
     "flags"     = \table {
index b11fd20be05374713d88622e891dab775bc765f3..13488ac1cac5cf33498a7a6acb4af6b5530db87b 100644 (file)
@@ -4,10 +4,10 @@
 % input from out/feta20.log
 % name=\symboltables {
     "rests"     = \table {
 % input from out/feta20.log
 % name=\symboltables {
     "rests"     = \table {
-        "0"    "\\wholerest"   -0.00\pt        7.50\pt -3.13\pt        0.00\pt 
-        "1"    "\\halfrest"    -0.00\pt        7.50\pt -0.00\pt        3.13\pt 
-        "0o"   "\\outsidewholerest"    -3.13\pt        10.62\pt        -3.13\pt        0.50\pt 
-        "1o"   "\\outsidehalfrest"     -3.13\pt        10.62\pt        -0.50\pt        3.13\pt 
+        "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        
         "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        
@@ -23,7 +23,7 @@
         "2"    "\\sharpsharp"  -0.00\pt        5.00\pt -2.50\pt        2.50\pt 
         }
     "dots"      = \table {
         "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.13\pt        1.13\pt 
+        "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 {
         "repeatcolon"  "\\repeatcolon" -0.00\pt        2.25\pt -2.50\pt        2.50\pt 
         }
     "balls"     = \table {
         "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        
         "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        
-        "pedalheel"    "\\pedalheel"   -2.50\pt        2.50\pt -2.50\pt        3.33\pt 
-        "pedaltoe"     "\\pedaltoe"    -2.50\pt        2.50\pt -0.00\pt        7.50\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -2.67\pt        2.67\pt -2.67\pt        2.67\pt 
         }
     "flags"     = \table {
index bdebc4e99670445a5d74a268f881bc8da4dce82e..e1ad925c23e863d994fa6e91c214cb19589d9b06 100644 (file)
@@ -9,7 +9,7 @@
         "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        
         "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.63\pt 15.98\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        
         "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        
@@ -20,7 +20,7 @@
         "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        
         "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.63\pt -2.81\pt        2.81\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 
         }
     "dots"      = \table {
         "dot"  "\\dot" -0.00\pt        2.53\pt -1.27\pt        1.27\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 
         "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.63\pt        5.63\pt -0.00\pt        12.66\pt        
-        "pedalheel"    "\\pedalheel"   -2.81\pt        2.81\pt -2.81\pt        3.75\pt 
-        "pedaltoe"     "\\pedaltoe"    -2.81\pt        2.81\pt -0.00\pt        8.44\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -3.00\pt        3.00\pt -3.00\pt        3.00\pt 
         }
     "flags"     = \table {
@@ -69,9 +71,9 @@
         "d6"   "\\dsixtyfourthflag"    -0.28\pt        7.68\pt -0.28\pt        24.83\pt        
         }
     "clefs"     = \table {
         "d6"   "\\dsixtyfourthflag"    -0.28\pt        7.68\pt -0.28\pt        24.83\pt        
         }
     "clefs"     = \table {
-        "alto" "\\altoclef"    -5.63\pt        20.94\pt        -11.25\pt       11.25\pt        
+        "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 
         "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.63\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        
         "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        
index ac951291abd8f7ec2476797f63d525e5ff7e6243..eeafb7884800da4617ca4a139c05fad75654bb02 100644 (file)
         "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        
         "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        
-        "pedalheel"    "\\pedalheel"   -3.25\pt        3.25\pt -3.25\pt        4.33\pt 
-        "pedaltoe"     "\\pedaltoe"    -3.25\pt        3.25\pt -0.00\pt        9.75\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 
         }
     "flags"     = \table {
         "flageolet"    "\\flageolet"   -3.47\pt        3.47\pt -3.47\pt        3.47\pt 
         }
     "flags"     = \table {
index 69cac7239525fea9c25dbff5d465cdb98384f0b6..8abf148a52e1841300e35b6ba8b89f12eacce469 100644 (file)
@@ -32,7 +32,9 @@ paper_sixteen = \paper {
        % ( beam_thickness = 0.48 interline for now...)
        % interbeam = interline - (beam_thickness + staffline_thickness) / 2
        % interbeam = 2.84;
        % ( beam_thickness = 0.48 interline for now...)
        % interbeam = interline - (beam_thickness + staffline_thickness) / 2
        % interbeam = 2.84;
-       % ugh: interline *in fact* is rule_thickness + "interline"?
+       % ugh: interline *in fact* is rule_thickness + "interline"? --jcn
+
+       % No --hwn
        interbeam = 3.14;
 
        gourlay_energybound = 100000.;
        interbeam = 3.14;
 
        gourlay_energybound = 100000.;
index 8db8016258fda467ded4ca4a73939e512263b868..7b70c66a4a21f811fbde47b78e5aaeb6197aa7d7 100644 (file)
@@ -13,10 +13,10 @@ staccato = \script { "staccato" 1 -1 0 0 0 }
 tenuto = \script {"tenuto" 0 -1 0 0 0 }
 upbow = \script { "upbow" 0 0 1 0 0 }
 downbow = \script { "downbow" 0 0 1 0 0 }
 tenuto = \script {"tenuto" 0 -1 0 0 0 }
 upbow = \script { "upbow" 0 0 1 0 0 }
 downbow = \script { "downbow" 0 0 1 0 0 }
-lheel = \script { "pedalheel" 0 0 -1  0 0 }
-rheel = \script { "pedalheel" 0 0 1 0 0 }
-ltoe = \script { "pedaltoe" 0 0 -1 0 0 }
-rtoe = \script { "pedaltoe" 0 0 1 0 0 }
+lheel = \script { "upedalheel" 0 0 -1  0 0 }
+rheel = \script { "dpedalheel" 0 0 1 0 0 }
+ltoe = \script { "upedaltoe" 0 0 -1 0 0 }
+rtoe = \script { "dpedaltoe" 0 0 1 0 0 }
 turn = \script { "turn" 0 0 1 0 0 }
 open = \script { "open" 0 0 1 0 0 }
 flageolet = \script { "flageolet"  0 0 1 0 0 }
 turn = \script { "turn" 0 0 1 0 0 }
 open = \script { "open" 0 0 1 0 0 }
 flageolet = \script { "flageolet"  0 0 1 0 0 }
diff --git a/init/simple-init.ly b/init/simple-init.ly
new file mode 100644 (file)
index 0000000..13c7ce3
--- /dev/null
@@ -0,0 +1,11 @@
+% Toplevel initialisation file. 
+Gourlay = 1.0
+\include "dutch.ly" 
+
+\include "paper16.ly"
+
+default_paper = \paper{
+       \paper_sixteen
+}
+
+
index cd6938ef44913e700cb3f70266864102a3233991..f4314227c241bc141036eaa0be8d4987c3f97ca9 100644 (file)
@@ -25,7 +25,7 @@ FontBody=     \melodic{
                \clef "violin";
                e8_. g'8-> e16^^ g'16_^ 
                e32 _| g'32^| g''32-\ltoe g''32-\lheel
                \clef "violin";
                e8_. g'8-> e16^^ g'16_^ 
                e32 _| g'32^| g''32-\ltoe g''32-\lheel
-               e64 g'64 c4... |
+               e64-\rtoe g'64-\rheel c4... |
 
                \octave c'';
                \meter 4/4;
 
                \octave c'';
                \meter 4/4;
diff --git a/input/praeludium-fuga-E.ly b/input/praeludium-fuga-E.ly
new file mode 100644 (file)
index 0000000..23c66d0
--- /dev/null
@@ -0,0 +1,188 @@
+\header {
+  filename =    "praeludium-fuga-E.ly";
+  title =       "praeludium and fuga in E-major";
+  opus =        "BWV 566";
+  description = "Praeludium 3 bar excerpt, "
+                "2nd fuga transposed subject -- 4 bar excerpt.  "
+                "We try to imitate the Griepenkerl/Keller edition which "
+                "gives the best approximation to Bach's original layout.";
+  composer =    "Johann Sebastian Bach (1685-1750)";
+  enteredby =   "JCN, WL";
+  copyright =   "public domain";
+}
+
+%{
+ Tested Features:
+ purpose of this file is testing: 
+   * real-life collisions
+   * multi-voice input --- splitting?
+   * organ staff...
+%}
+
+
+\version "0.1.9";
+
+praeludium_commands = \melodic {
+  \meter 4/4;
+  \key fis cis gis dis;             % E-major
+}
+
+doshift = \property Voice.hshift = 1
+noshift = \property Voice.hshift = 0
+
+praeludium_right = \melodic {
+  \$praeludium_commands
+  \octave c';
+  \clef violin;
+
+  % 13 -- how to type -- where to split -- this more neatly?
+  \multi 2 <
+    { \stemup r4 dis'4 e'4. e'8 ~ |
+      \doshift e'4 [d'8 fis'8]
+       \noshift gis'4 ~ [gis'8 fis'16 e'16] |
+      fis'4 ~ [fis'8 e'16 dis'16] e'4 r8 e'8 }
+    { \stemup  r4 bis4 cis'4 cis'4 |
+      \noshift a'4 ~ [a'16 gis'16 a'16 b'16]
+       \doshift dis'4 cis'4 ~ |
+      [cis'8 dis'16 ais16] bis4 cis'4 r8 b8 }
+    { \stemup \property Voice.hshift = 2 s4 gis4 }
+    { \stemdown \property Voice.hshift = 2 r4 fis4
+       \noshift gis4 gis4 |
+      a4. cis'8 gis2 |
+      fis4 gis4 gis4 r8 e8 }
+  > |
+  % 16
+}
+
+praeludium_left = \melodic {
+  \$praeludium_commands
+  \octave c;
+  \clef bass;
+
+  % 13
+  \multi 2 <
+    { \stemup r4 dis'4 cis'4 cis'4 ~ |
+      [cis'8 a8 d'8 cis'8] [bis8 gis8] cis'4 |
+      dis'2 cis'4 r8 cis'8 }
+    { \stemup bis2 }
+    { \stemup \doshift r4 gis4 ~
+       [gis 8 gis8] ~ \stemdown \noshift gis4 |
+      a4. fis8 gis4. a8 ~ |
+      a4 gis4 gis4 r8 gis8 }
+    { \stemup \property Voice.hshift = 2 s4 fis4 e}
+    { \stemdown s4 dis4 cis4 }
+  > |
+  % 16
+}
+
+praeludium_pedal = \melodic {
+  \$praeludium_commands  
+  \octave c;
+  \clef bass;
+
+  % 13
+  r4 'fis4-\ltoe 'e4.-\lheel e8-\rheel | 
+  fis4.-\rtoe fis8-\rtoe fis4-\rtoe [e8-\ltoe a8-\rtoe] | 
+  dis4-\ltoe gis4-\rtoe [cis8-\ltoe 'b!8-\lheel 'ais8-\rtoe 'gis8-\ltoe] |
+  % 16
+}
+
+
+fuga2_commands = \melodic{
+  \meter 3/4;
+  \key fis cis gis dis;             % E-major
+}
+
+fuga2_right = \melodic {
+  \$fuga2_commands
+  \octave c';
+  \clef violin;
+
+  % 15
+  \multi 2 <
+    { \stemup [b8 fis8] b4 }
+    { \stemdown fis2 }
+  >
+   %{ this chord is usually set like this:
+        |
+       x|| 
+        x||
+         x|
+      |x
+      |
+   %}
+   \multi 2 <
+     { \stemup \noshift e'4 }
+     { \stemup \doshift cis'4 }
+     { \stemup \property Voice.hshift = 2 ais4 }
+     { \stemdown fis4 }
+   > |
+  % 16
+  \multi 2 <
+    { \stemup dis'2 dis'4 |
+      cis'2 cis'4 |
+      b4. [cis'8 dis'8 e'8] }
+    { \stemup \doshift [b8 fis8] b2 ~ |
+      [b8 a!16 gis16] a2 ~ |
+      a4 gis2 }
+    { \stemdown fis2. ~ |
+      fis2. ~ |
+      fis4 e2 }
+  > |
+  % 19
+}
+
+fuga2_left = \melodic {
+  \$fuga2_commands  
+  \octave c;
+  \clef bass;
+
+  % 15
+  \multi 2 < 
+    { \stemdown b2 \stemup ais4 |
+      b2 b4 }
+    { \stemdown s2 e4 |
+      fis2 fis4 }
+  >
+  \stemdown cis'2 e'4 |
+  b4. b8 b4 |
+  % 19
+}
+
+fuga2_pedal = \melodic {
+  \$fuga2_commands  
+  \octave c;
+  \clef bass;
+
+  % 15
+  dis4.-\ltoe e8-\rtoe cis4 |
+  'b4.-\lheel [cis8-\ltoe dis8-\rtoe e8-\rheel] |
+  fis4.-\rtoe [e8-\rheel dis8-\rtoe cis8-\ltoe] |
+  dis4-\rtoe e4-\rheel 'e4-\ltoe |
+  % 19
+}
+
+break = \melodic { 
+  %\meter 4/4;
+  r1
+}
+
+
+% these should be two separate scores...
+\score{
+  \type Score <
+    \type Grandstaff <
+      \type Staff = treble {
+        \praeludium_right \break \fuga2_right }
+      \type Staff = bass { 
+        \praeludium_left \break \fuga2_left }
+    > 
+    \type Staff = pedal {
+      \praeludium_pedal \break \fuga2_pedal }
+  >
+
+  \paper{}
+
+  \midi {
+    \tempo 4 = 96; }
+}
diff --git a/input/toccata-fuga-E.ly b/input/toccata-fuga-E.ly
deleted file mode 100644 (file)
index 1c5c9c4..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-\header{
-filename =      "toccata-fuga-E.ly";
-title =         "toccata and fuga in E-major ";
-opus =  "BWV 566";
-description = "toccata 3 bar excerpt, "
-        "2nd fuga      transposed subject --- 4 bar excerpt";
-
-composer =      "Johann Sebastian Bach (1685-1750)";
-enteredby =     "JCN";
-copyright =     "public domain";
-
-}
-
-%{
- Tested Features:
- purpose of this file is testing: 
-     * real-life collisions
-     * multi-voice input --- splitting?
-     * organ staff...
-%}
-
-
-\version "0.1.9";
-
-toccata_commands = \melodic{
-       \meter 4/4;
-       \key fis cis gis dis; % E-major
-}
-
-toccata_right = \melodic{ 
-       \$toccata_commands 
-       % 13 -- how to type -- where to split -- this more neatly ?
-       \octave c';
-       \multi 2 <
-               { \stemup r4 dis'4 e'4.-. e'8( | \property Voice.hshift = 1 )e'4 [d'8 fis'8] \property Voice.hshift = 0 gis'4 [gis'8 fis'16 e'16] | fis'4~  [fis'8 e'16 dis'16] e'4 r8 e'8 }
-               { \stemup \property Voice.hshift = 1 r4 bis4 cis'4-. cis'4 | \property Voice.hshift = 0 a'4~  [a'16 gis'16 a'16 b'16] \property Voice.hshift = 1 dis'4 cis'4~  [cis'8 dis'16 a16] bis4 cis'4 r8 b8 }
-               { \stemdown r4 < gis4 fis4 dis4 > gis4-. gis4 | a4. cis'8 gis2 | fis4 gis4 gis4 r8 e8 }
-       > |
-       % 16
-}
-
-toccata_left = \melodic{ 
-       \$toccata_commands  
-       \octave c;
-       \clef bass;
-       % 13
-       \multi 2 <
-               { \stemup bis2 cis'4-. cis'4~  [cis'8 a8 d'8 cis'8] [bis8 gis8] cis'4 | dis'2 cis'4 r8 cis'8 }
-               { \stemup \property Voice.hshift = 1 r4 gis4. gis8~  gis4 | \stemdown \property Voice.hshift = 0 a4. fis8 gis4. a8~  a4 gis4-. gis4 r8 gis8 }
-               { \stemdown r4 < dis4 fis4 > < cis4 e4 > }
-       > |
-       % 16
-}
-
-toccata_pedal = \melodic{
-       \$toccata_commands  
-       \octave c;
-       \clef bass;
-       % 13
-       r4 'fis4-\ltoe 'e4.-\lheel e8-\rheel | 
-       % 14
-       fis4.-\rtoe fis8-.-\rtoe fis4-\rtoe [e8-\ltoe a8-\rtoe] | 
-       % 15
-       dis4-\ltoe gis4-\rtoe [cis8-\ltoe 'b8-\lheel 'a8-\rtoe 'gis8-\ltoe] |
-       % 16
-}
-
-fuga2_commands = \melodic{
-       \meter 3/4;
-       \key fis cis gis dis; % E-major
-}
-
-fuga2_right = \melodic{
-       \$fuga2_commands  
-       \clef violin;
-       % 15
-       \octave c';
-       \multi 2 <
-               { \stemup [b8 fis8] b4 }
-               { \stemdown fis2 }
-       >
-       %{ this chord is usually set like this:
-            |
-            x|| 
-             x||
-              x|
-           |x
-           |
-       %}
-       \multi 2 <
-               { \stemup \property Voice.hshift = 0 e'4 }
-               { \stemup \property Voice.hshift = 1 cis'4 }
-               { \stemup \property Voice.hshift = 2 ais4 }
-               { \stemdown fis4 }
-       > |
-       % 16
-       \multi 2 <
-               { \stemup dis'2 dis'4 | cis'2 cis'4 | b4~  [b8 cis'8 dis'8 e'8] }
-               { \stemup \property Voice.hshift = 1 [b8 fis8] b2~  [b8 a16 g16] a2 | a4 gis2 }
-               { \stemdown fis2.~  fis2.~  fis4 e2 }
-       > |
-       % 19
-}
-
-fuga2_left = \melodic{
-       \$fuga2_commands  
-       \octave c;
-       \clef bass;
-       % 15
-       b2 
-       \multi 2 < 
-               { \stemup ais4 | bes2. }
-               { \stemdown e4  | fis2 fis4 }
-       >
-       % 17
-       cis'2 e'4 |
-       % 18
-       b4. b8 b4 |
-}
-
-fuga2_pedal = \melodic{
-       \$fuga2_commands  
-       \octave c;
-       \clef bass;
-       % 15
-       dis4.-\ltoe e8-\rtoe cis4 |
-       % 16
-       'b4.-\lheel [c8-\ltoe dis8-\rtoe e8-\rheel] |
-       % 17
-       fis4.-\rtoe [e8-\rheel dis8-\rtoe cis8-\ltoe] |
-       % 18
-       dis4-\rtoe e4-\rheel 'e4-\ltoe |
-}
-
-break = \melodic{ 
-       %\meter 4/4;
-       r1
-}
-
-% these should be two separate scores...
-\score{
-        \type Score <
-               \type Grandstaff <
-                  \type Staff=treble {
-                        \toccata_right \break \fuga2_right 
-                  }
-                  \type Staff=bass { 
-                       \toccata_left \break \fuga2_left 
-                  }
-               > 
-               \type Staff=pedal {  \toccata_pedal \break \fuga2_pedal }
-       >
-       \paper{}
-       \midi{
-               \tempo 4 = 96;
-       }
-}
-
index 16f59f5d5c660768787c8965626f5875ecefe313..be43876df37bd7eb11c9ba0e77df5714bb5f267f 100644 (file)
@@ -38,13 +38,16 @@ EXTRA_DISTFILES = VERSION
 # list of custom libraries:
 #
 MODULE_LIBDEPS= check-flower-deps check-lib-deps 
 # list of custom libraries:
 #
 MODULE_LIBDEPS= check-flower-deps check-lib-deps 
-MODULE_LIBES= -llily -lflower
+MODULE_LIBES= -llily -lflower  -lmcheck
 
 #
 
 # main target of this module:
 #
 
 #
 
 # main target of this module:
 #
+
 default: $(EXECUTABLE)
 default: $(EXECUTABLE)
+
+out/engraver.o: include/engraver.hh
 #
 include ./$(depth)/make/Files.make 
 
 #
 include ./$(depth)/make/Files.make 
 
index 60de7033458d7d2bd0222d2a2102de125568fcd8..9da9e31cad325fe91dca3b25db10fb4f9e59d9db 100644 (file)
@@ -1,4 +1,4 @@
 MAJOR_VERSION = 0
 MINOR_VERSION = 1
 MAJOR_VERSION = 0
 MINOR_VERSION = 1
-PATCH_LEVEL = 46
+PATCH_LEVEL = 47
 MY_PATCH_LEVEL =
 MY_PATCH_LEVEL =
diff --git a/lily/abbrev.cc b/lily/abbrev.cc
new file mode 100644 (file)
index 0000000..d91899c
--- /dev/null
@@ -0,0 +1,99 @@
+/*   
+  abbrev.cc --  implement Abbreviation
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#include "abbrev.hh"
+#include "debug.hh"
+#include "beam.hh"
+#include "paper-def.hh"
+#include "lookup.hh"
+#include "stem.hh"
+#include "dimen.hh"
+
+Abbreviation::Abbreviation ()
+{
+  stem_l_ = 0;
+  abbrev_flags_i_ = 1;
+}
+
+void
+Abbreviation::do_print () const
+{
+  DOUT << "abbrev_flags_i_ " << abbrev_flags_i_;
+}
+
+Molecule*
+Abbreviation::brew_molecule_p () const
+{
+  Real dy = paper ()->interbeam_f ();
+  Real w = 1.5 * paper ()->lookup_l ()->ball (2).dim_.x ().length ();
+  Real interline_f = paper ()->interline_f ();
+  Real beamdy = interline_f/2;
+
+  int beams_i = 0;
+  Real slope_f = paper ()->internote_f () / 4;
+
+  if (stem_l_ && stem_l_->beam_l_) {
+    // huh?
+    slope_f = 2 * stem_l_->beam_l_->slope_f_;
+    // ugh, rather calc from Abbreviation_req
+    beams_i = stem_l_->beams_right_i_ >? stem_l_->beams_left_i_;
+  }
+  paper ()->lookup_l ()->beam (slope_f, 20 PT, 1 PT);
+
+  Atom a (paper ()->lookup_l ()->beam (slope_f, w, .48 * interline_f));
+  a.translate (Offset (-w/2, w / 2 * slope_f));
+
+  Molecule *beams= new Molecule; 
+  for (int i = 0; i < abbrev_flags_i_; i++)
+    {
+      Atom b (a);
+      b.translate_axis (dy * i, Y_AXIS);
+      beams->add (b);
+    }
+  beams->translate_axis (-beams->extent ()[Y_AXIS].center (), Y_AXIS);
+
+  if (stem_l_)
+    {
+      /* Try to be in the middle of the open part of the stem and
+        between on the staff.
+
+        (urgh)
+      */
+      Direction sd  = stem_l_->dir_;
+      Interval empty_stem (stem_l_->chord_start_f () * sd ,
+                          (stem_l_->stem_end_f ()* sd) - beams_i * dy);
+      empty_stem *= sd;
+      
+      Interval instaff = empty_stem;
+      instaff.intersect (interline_f * Interval (-2,2));
+      if (instaff.empty_b ())
+       instaff = empty_stem;
+
+      instaff.print (); 
+      beams->translate (Offset(stem_l_->hpos_f () - hpos_f (),
+                         instaff.center ()));
+    }
+  
+  return beams;
+}
+
+void
+Abbreviation::do_substitute_dependent (Score_elem*o, Score_elem*n)
+{
+  if (stem_l_ == o)
+    stem_l_ = n ? (Stem*)n->item () : 0;
+}
+
+
+void
+Abbreviation::set_stem (Stem *s)
+{
+  stem_l_ = s;
+  add_dependency (s);
+}
index 6bb055c2faeea36a0459d67bdbf0e7714389a4d4..589dbf328273522401f73ff49b27339f1cbd3acf 100644 (file)
@@ -30,6 +30,10 @@ Clef_engraver::set_type (String s)
     {
       c0_position_i_= -6;
     }
     {
       c0_position_i_= -6;
     }
+  else if (clef_type_str_ == "soprano")
+    {
+      c0_position_i_= -4;
+    }
   else if (clef_type_str_ == "alto")
     {
       c0_position_i_= 0;
   else if (clef_type_str_ == "alto")
     {
       c0_position_i_= 0;
index 927d3f2335f15dc7f3c8e3cb024db6aa22a94183..a63d8b72bd5d910910b6a56c1c34f0519d3d6f83 100644 (file)
@@ -38,17 +38,25 @@ void
 Clef_item::read (String t)
 {
   symbol_= t;
 Clef_item::read (String t)
 {
   symbol_= t;
-  if (t == "violin")
+  if (t == "violin") {
     y_position_i_ = -2;
     y_position_i_ = -2;
-  if (t == "alto")
+  }
+  else if (t == "soprano") {
+    symbol_="alto";
+    y_position_i_ = -4;
+  }
+  else if (t == "alto") {
     y_position_i_ = 0;
     y_position_i_ = 0;
-  if (t == "tenor") {
+  }
+  else if (t == "tenor") {
     symbol_="alto";
     y_position_i_ = 2;
   }
     symbol_="alto";
     y_position_i_ = 2;
   }
-  if (t == "bass")
+  else if (t == "bass") {
     y_position_i_ = 2;
     y_position_i_ = 2;
+  }
 }
 }
+
 void
 Clef_item::read (Clef_engraver const &k)
 {
 void
 Clef_item::read (Clef_engraver const &k)
 {
index c369f070ee96c5f93fc5e01ad73ba505a9972613..f90e2e49eb1767375760d4241c25176d231e6000 100644 (file)
@@ -8,7 +8,9 @@
  */
 #include <fstream.h>
 #include <signal.h>
  */
 #include <fstream.h>
 #include <signal.h>
-#include <std/new.h>
+
+// libg++ 2.8.0
+// #include <std/new.h>
 #include <stdlib.h>
 #include "debug.hh"
 #include "dstream.hh"
 #include <stdlib.h>
 #include "debug.hh"
 #include "dstream.hh"
@@ -59,7 +61,8 @@ debug_init()
 {
   rat_printer = print_rat;
 #ifndef NDEBUG
 {
   rat_printer = print_rat;
 #ifndef NDEBUG
-  set_new_handler (&mynewhandler);
+  // libg++ 2.8.0 doesn't have set_new_handler
+  // set_new_handler (&mynewhandler);
 #endif
   set_flower_debug (*monitor, check_debug);
 
 #endif
   set_flower_debug (*monitor, check_debug);
 
@@ -74,6 +77,9 @@ bool check_malloc_b = false;
 // #define MEMORY_PARANOID
 
 #ifdef MEMORY_PARANOID
 // #define MEMORY_PARANOID
 
 #ifdef MEMORY_PARANOID
+
+#include <malloc.h>
+
 void *
 operator new (size_t size)
 {
 void *
 operator new (size_t size)
 {
@@ -103,5 +109,10 @@ set_debug (bool b)
   check_debug =b;
   set_flower_debug (*monitor, check_debug);
   check_malloc_b = experimental_features_global_b;
   check_debug =b;
   set_flower_debug (*monitor, check_debug);
   check_malloc_b = experimental_features_global_b;
+#ifdef MEMORY_PARANOID
+  if (check_malloc_b)
+    if (mcheck (0))
+      warning ("Can't set mem-checking!");
+#endif
 }
 
 }
 
index 62f0a3a8408323387db16b0a826d02ddcb73abd2..107bd2417da618b97ad3e08e563afdc1c728d187 100644 (file)
@@ -118,7 +118,8 @@ IMPLEMENT_ID_CLASS(Request_id, Request, request);
 IMPLEMENT_ID_CLASS(Midi_def_id, Midi_def, mididef);
 IMPLEMENT_ID_CLASS(Paper_def_id, Paper_def, paperdef);
 
 IMPLEMENT_ID_CLASS(Midi_def_id, Midi_def, mididef);
 IMPLEMENT_ID_CLASS(Paper_def_id, Paper_def, paperdef);
 
-Identifier::Identifier (Identifier const&)
+Identifier::Identifier (Identifier const&s)
+  : Input (s)
 {
   assert (false);
 }
 {
   assert (false);
 }
diff --git a/lily/include/abbrev.hh b/lily/include/abbrev.hh
new file mode 100644 (file)
index 0000000..9428be7
--- /dev/null
@@ -0,0 +1,27 @@
+/*   
+  abbrev.hh -- declare Abbreviation
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#ifndef ABBREV_HH
+#define ABBREV_HH
+
+#include "item.hh"
+class Abbreviation : public Item {
+  Stem * stem_l_;
+protected:
+  virtual void do_print () const;
+  virtual Molecule *brew_molecule_p () const;
+  virtual void do_substitute_dependent (Score_elem*, Score_elem*);
+public:
+  int abbrev_flags_i_;
+  Abbreviation ();
+  void set_stem (Stem *);
+};
+
+#endif /* ABBREV_HH */
+
index 032effc64f1da59ce37b1e4514dd7452efa61ec4..d02274f6c1e762923ae9786dc989620aae39b5a4 100644 (file)
@@ -22,5 +22,11 @@ enum Direction
 
 };
 
 
 };
 
+/**
+   if d > 0: the max operator
+   if d < 0: the min operator
+ */
+template<class T> minmax (Direction d, T, T);
+
 
 #endif // DIRECTION_HH
 
 #endif // DIRECTION_HH
index b0f466d3ddeabfb8529caacd4e968b7248e11c18..4efd405f46a74c72597d65a2847782471acf5616 100644 (file)
@@ -64,7 +64,6 @@ public:
   Engraver () {}
 
   DECLARE_MY_RUNTIME_TYPEINFO;
   Engraver () {}
 
   DECLARE_MY_RUNTIME_TYPEINFO;
-  void print() const;
   virtual Engraver * engraver_l () { return this; }
 };
 
   virtual Engraver * engraver_l () { return this; }
 };
 
index 48d8e9872378572662707e05f3458e5c3dba7539..1d39aad2430580677d2001f4ffb21d346169490d 100644 (file)
@@ -12,6 +12,7 @@
 
 
 struct Absolute_dynamic_req;
 
 
 struct Absolute_dynamic_req;
+struct Abbreviation;
 struct Abbreviation_req;
 struct Abbreviation_beam_req;
 struct Abbreviation_beam_engraver;
 struct Abbreviation_req;
 struct Abbreviation_beam_req;
 struct Abbreviation_beam_engraver;
index 12058cfc8e3f9c47a5e87f93875626521dfee0c8..396c840a12b5a85e45b43b9668cefcb3338cf12c 100644 (file)
@@ -68,14 +68,6 @@ class Spacing_problem {
 
     void handle_loose_cols();
     void position_loose_cols (Vector &) const;
 
     void handle_loose_cols();
     void position_loose_cols (Vector &) const;
-   /**
-       add a idealspacing to the problem.
-      
-    One pair of columns can have no, one or more idealspacings,
-    since they can be "summed" if the columns to which #i# refers are
-    not in this problem, the spacing is ignored.
-    */
-    void add_ideal (Idealspacing const *i);
     void print_ideal (Idealspacing const *) const; 
     Vector try_initial_solution() const;
     void calcideal();
     void print_ideal (Idealspacing const *) const; 
     Vector try_initial_solution() const;
     void calcideal();
diff --git a/lily/include/minmax.tcc b/lily/include/minmax.tcc
new file mode 100644 (file)
index 0000000..5f3fa89
--- /dev/null
@@ -0,0 +1,17 @@
+
+/*   
+  minmax.cc --  implement minmax()
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+template<class T>
+minmax (Direction d, T t1, T t2)
+{
+  if (d > 0) return t1 >? t2;
+  else return t1 <? t2;
+}
+
index 7d30e4493ada5904609b0365de048fd72ec700dd..04c9184f56ada169f9c916f4c682dd0c92f4560f 100644 (file)
@@ -69,14 +69,6 @@ class Spring_spacer : public Line_spacer {
 
   void handle_loose_cols();
   void position_loose_cols (Vector &) const;
 
   void handle_loose_cols();
   void position_loose_cols (Vector &) const;
-  /**
-    add a idealspacing to the problem.
-      
-    One pair of columns can have no, one or more idealspacings,
-    since they can be "summed" if the columns to which #i# refers are
-    not in this problem, the spacing is ignored.
-    */
-  void add_ideal (Idealspacing const *i);
   Vector try_initial_solution() const;
   void calc_idealspacing();
   void set_fixed_cols (Mixed_qp&) const;
   Vector try_initial_solution() const;
   void calc_idealspacing();
   void set_fixed_cols (Mixed_qp&) const;
index b5a77589ec8519f0d6c55cc74f85c1aa48631a86..d0695a395f202b88849dd5c32bfa16c735572fb6 100644 (file)
@@ -20,6 +20,7 @@ class Stem_engraver : public Engraver
   Direction dir_;
   int default_abbrev_i_;
   Stem *stem_p_;
   Direction dir_;
   int default_abbrev_i_;
   Stem *stem_p_;
+  Abbreviation *abbrev_p_;
   Rhythmic_req *rhythmic_req_l_;
   Abbreviation_req* abbrev_req_l_;
 protected:
   Rhythmic_req *rhythmic_req_l_;
   Abbreviation_req* abbrev_req_l_;
 protected:
index 8020d14f726fad6f2cd5901e2fe5235a0881d599..1a63a17eb06df23b565cbc1ab5b76aba6d2fb288 100644 (file)
@@ -29,7 +29,6 @@
   */
 class Stem : public Item {
 
   */
 class Stem : public Item {
 
-  Molecule abbrev_mol () const;
     
   Drul_array<Real> yextent_drul_;
     
     
   Drul_array<Real> yextent_drul_;
     
@@ -51,8 +50,6 @@ class Stem : public Item {
   Link_array<Rest> rest_l_arr_;
     
 public:
   Link_array<Rest> rest_l_arr_;
     
 public:
-  /// abbrev flag? + count
-  int abbrev_flag_i_;
 
   /// how many abbrev beam don't reach stem?
   int beam_gap_i_;
 
   /// how many abbrev beam don't reach stem?
   int beam_gap_i_;
@@ -79,7 +76,8 @@ public:
 
   DECLARE_MY_RUNTIME_TYPEINFO;
 
 
   DECLARE_MY_RUNTIME_TYPEINFO;
 
-  Real hpos_f() const;
+  Real hpos_f () const;
+  Real chord_start_f () const;
   
   int type_i () const;
 
   
   int type_i () const;
 
index f03459bfc45cace5473205109d6bb6f544643f4d..cd8248aaf0a313f2149d557e59e8f7124aa0a568 100644 (file)
@@ -26,6 +26,7 @@ public:
   Rhythmic_grouping  default_grouping_;
   Link_array<Timing_req> timing_req_l_arr_;
 protected: 
   Rhythmic_grouping  default_grouping_;
   Link_array<Timing_req> timing_req_l_arr_;
 protected: 
+  virtual void do_print () const;
   virtual void do_creation_processing ();
   virtual bool do_try_request (Request *req_l);
   virtual void do_process_requests();
   virtual void do_creation_processing ();
   virtual bool do_try_request (Request *req_l);
   virtual void do_process_requests();
index 24f297942d2ccc5b61a8f29e271a2a0912a8995d..f688baf6d59988d22d8571ddff7bfdd7893ba6df 100644 (file)
@@ -119,7 +119,7 @@ Midi_header::Midi_header (int format_i, int tracks_i, int clocks_per_4_i)
 char const* const instrument_name_sz_a_[ ] = {
 
   /* default is usually piano */
 char const* const instrument_name_sz_a_[ ] = {
 
   /* default is usually piano */
-  /* 0 */ "piano",
+  /* 0 "piano", */
 
          /* (1-8 piano) */
          /* 1 */ "acoustic grand",
 
          /* (1-8 piano) */
          /* 1 */ "acoustic grand",
@@ -535,7 +535,8 @@ Midi_track::Midi_track ()
 void 
 Midi_track::add (Moment delta_time_mom, Midi_item* mitem_p)
 {
 void 
 Midi_track::add (Moment delta_time_mom, Midi_item* mitem_p)
 {
-  assert (delta_time_mom >= 0);
+  assert (delta_time_mom >= Moment (0));
+
   event_p_list_.bottom ().add (new Midi_event (delta_time_mom, mitem_p));
 }
 
   event_p_list_.bottom ().add (new Midi_event (delta_time_mom, mitem_p));
 }
 
index bf2fe3590b9cddb92c3705be72f0b6c659993e79..bc46309810682d6bad89d9c4e7c7eac3872acbf7 100644 (file)
@@ -198,7 +198,8 @@ Rhythmic_req::do_print() const
 
 
 Moment
 
 
 Moment
-Rhythmic_req::duration() const {
+Rhythmic_req::duration() const
+{
   return duration_.length();
 }
 /* *************** */
   return duration_.length();
 }
 /* *************** */
index 159978d3dcd8fb0e5c6b3289e498110f9534e509..13cc69a973e6a366512bb923d1f7e85a19b54d5f 100644 (file)
 #include "duration-convert.hh"
 #include "change-translator.hh"
 
 #include "duration-convert.hh"
 #include "change-translator.hh"
 
+int const GUESS_PLET = 5;
+int guess_plet_a[GUESS_PLET] =
+{ 
+  1,
+  3,
+  2,
+  3,
+  4
+};
+
 #ifndef NDEBUG
 #define YYDEBUG 1
 #endif
 #ifndef NDEBUG
 #define YYDEBUG 1
 #endif
     char c;
     const char *consstr;
     int i;
     char c;
     const char *consstr;
     int i;
+    int pair[2];
     int ii[10];
 }
 %{
     int ii[10];
 }
 %{
@@ -224,6 +235,7 @@ yylex (YYSTYPE *s,  void * v_l)
 %type <real>   unit
 %type <request> abbrev_command_req
 %type <request>        post_request structured_post_request
 %type <real>   unit
 %type <request> abbrev_command_req
 %type <request>        post_request structured_post_request
+%type <pair>   plet_fraction
 %type <request> command_req verbose_command_req
 %type <request>        script_req  dynamic_req
 %type <score>  score_block score_body
 %type <request> command_req verbose_command_req
 %type <request>        script_req  dynamic_req
 %type <score>  score_block score_body
@@ -846,13 +858,26 @@ dynamic_req:
        }
        ;
 
        }
        ;
 
+plet_fraction:
+       unsigned '/' unsigned {
+               $$[0] = $1;
+               $$[1] = $3;
+       }
+       |
+       '/' unsigned {
+               int num = $2 >? 1;
+               $$[0] = guess_plet_a[(num <? GUESS_PLET) - 1];
+               $$[1] = num;
+       }
+       ;
+
 close_plet_parens:
 close_plet_parens:
-       ']' unsigned '/' unsigned {
+       ']' plet_fraction {
                $$ = MAEBTELP;
                $$ = MAEBTELP;
-               THIS->plet_.type_i_ = $4;
-               THIS->plet_.iso_i_ = $2;
-               THIS->default_duration_.plet_.type_i_ = $4;
-               THIS->default_duration_.plet_.iso_i_ = $2;
+               THIS->plet_.type_i_ = $2[1];
+               THIS->plet_.iso_i_ = $2[0];
+               THIS->default_duration_.plet_.type_i_ = $2[1];
+               THIS->default_duration_.plet_.iso_i_ = $2[0];
        }
        | TELP {
                $$ = TELP;
        }
        | TELP {
                $$ = TELP;
@@ -861,12 +886,12 @@ close_plet_parens:
                THIS->default_duration_.plet_.iso_i_ = 1;
                THIS->default_duration_.plet_.type_i_ = 1;
        }
                THIS->default_duration_.plet_.iso_i_ = 1;
                THIS->default_duration_.plet_.type_i_ = 1;
        }
-       | TELP unsigned '/' unsigned {
+       | TELP plet_fraction {
                $$ = TELP;
                $$ = TELP;
-               THIS->plet_.type_i_ = $4;
-               THIS->plet_.iso_i_ = $2;
-               THIS->default_duration_.plet_.type_i_ = $4;
-               THIS->default_duration_.plet_.iso_i_ = $2;
+               THIS->plet_.type_i_ = $2[1];
+               THIS->plet_.iso_i_ = $2[0];
+               THIS->default_duration_.plet_.type_i_ = $2[1];
+               THIS->default_duration_.plet_.iso_i_ = $2[0];
        }
        ;
 
        }
        ;
 
@@ -903,19 +928,19 @@ open_abbrev_parens:
        ;
 
 open_plet_parens:
        ;
 
 open_plet_parens:
-       '[' unsigned '/' unsigned {
+       '[' plet_fraction {
                $$ = BEAMPLET;
                $$ = BEAMPLET;
-               THIS->plet_.type_i_ = $4;
-               THIS->plet_.iso_i_ = $2;
-               THIS->default_duration_.plet_.type_i_ = $4;
-               THIS->default_duration_.plet_.iso_i_ = $2;
+               THIS->plet_.type_i_ = $2[1];
+               THIS->plet_.iso_i_ = $2[0];
+               THIS->default_duration_.plet_.type_i_ = $2[1];
+               THIS->default_duration_.plet_.iso_i_ = $2[0];
        }
        }
-       | PLET unsigned '/' unsigned {
+       | PLET plet_fraction {
                $$ = PLET;
                $$ = PLET;
-               THIS->plet_.type_i_ = $4;
-               THIS->plet_.iso_i_ = $2;
-               THIS->default_duration_.plet_.type_i_ = $4;
-               THIS->default_duration_.plet_.iso_i_ = $2;
+               THIS->plet_.type_i_ = $2[1];
+               THIS->plet_.iso_i_ = $2[0];
+               THIS->default_duration_.plet_.type_i_ = $2[1];
+               THIS->default_duration_.plet_.iso_i_ = $2[0];
        }
        ;
 
        }
        ;
 
index beb8797ac9c9fea9946cb43043fd0b524229ca8f..1a6ec4105ef78f8975e9cff4eb42e8009145000d 100644 (file)
@@ -27,7 +27,7 @@ Score_elem::Score_elem()
 }
 
 Score_elem::Score_elem (Score_elem const&s)
 }
 
 Score_elem::Score_elem (Score_elem const&s)
-  : Graphical_element (s)
+  :  Directed_graph_node (s), Graphical_element (s)
 {
   /* called from derived ctor, so most info points to the same deps
      as (Directed_graph_node&)s. Nobody points to us, so don't copy
 {
   /* called from derived ctor, so most info points to the same deps
      as (Directed_graph_node&)s. Nobody points to us, so don't copy
index b62844147539607001d06401a6d49fc8c7650c5a..5dac6960869f16ae5024ca9aefa9f694ae2d8c51 100644 (file)
@@ -30,6 +30,7 @@ Score::Score()
 }
 
 Score::Score (Score const &s)
 }
 
 Score::Score (Score const &s)
+  : Input (s)
 {
   music_p_ = (s.music_p_) ? s.music_p_->clone() : 0;
   for (int i=0; i < s.def_p_arr_.size (); i++)
 {
   music_p_ = (s.music_p_) ? s.music_p_->clone() : 0;
   for (int i=0; i < s.def_p_arr_.size (); i++)
index 2b030e6c71bc555cc0741cb7983883df846c786b..bf5a8094a52ff932d9b016ac27cae99ef30686d6 100644 (file)
@@ -531,15 +531,15 @@ Spring_spacer::calc_idealspacing()
          Real durational_distance = 0;
 
          
          Real durational_distance = 0;
 
          
-             Moment delta_t =  scol_l (i+1)->when() - scol_l (i)->when () ;
+         Moment delta_t =  scol_l (i+1)->when() - scol_l (i)->when () ;
 
 
-             Real k=  paper_l()->arithmetic_constant(context_shortest_arr[i]);
-             /*
-               ugh should use shortest_playing distance
-               */
-             if (delta_t)
-               durational_distance =  paper_l()->duration_to_dist (delta_t,k);
-             symbol_distance += -cols[i+1].width_[LEFT];
+         Real k=  paper_l()->arithmetic_constant(context_shortest_arr[i]);
+         /*
+           ugh should use shortest_playing distance
+         */
+         if (delta_t)
+           durational_distance =  paper_l()->duration_to_dist (delta_t,k);
+         symbol_distance += -cols[i+1].width_[LEFT];
  
 
          ideal_arr_[i] = symbol_distance >? durational_distance;
  
 
          ideal_arr_[i] = symbol_distance >? durational_distance;
@@ -574,32 +574,32 @@ Spring_spacer::calc_idealspacing()
          dist *= delta_t / shortest_playing_len;
 
          /*
          dist *= delta_t / shortest_playing_len;
 
          /*
-            According to [Ross] and [Wanske], and from what i've seen:
+           According to [Ross] and [Wanske], and from what i've seen:
             
             
-            * whitespace at the begin of the bar should be fixed at 
-            (about) one interline.
-            [Ross]:
-            when spacing gets real tight, a smaller fixed value may be 
-            used, so that there are two discrete amounts of whitespace 
-            possible at the begin of a bar; but this is not implemented 
-            right now.
+           * whitespace at the begin of the bar should be fixed at 
+           (about) one interline.
+           [Ross]:
+           when spacing gets real tight, a smaller fixed value may be 
+           used, so that there are two discrete amounts of whitespace 
+           possible at the begin of a bar; but this is not implemented 
+           right now.
             
             
-            * whitespace at the end of the bar is the normal amount of 
-            "hinterfleish" that would have been used, had there been
-            yet another note in the bar.  
-            [Ross]:
-            some editors argue that the bar line should not take any 
-            space, not to hinder the flow of music spaced around a bar 
-            line.  
-            [Ross] and [Wanske] do not suggest this, however.  Further, 
-            it introduces some spacing problems and think that it is ugly 
-            too.
-            [jcn]
-          */
+           * whitespace at the end of the bar is the normal amount of 
+           "hinterfleish" that would have been used, had there been
+           yet another note in the bar.  
+           [Ross]:
+           some editors argue that the bar line should not take any 
+           space, not to hinder the flow of music spaced around a bar 
+           line.  
+           [Ross] and [Wanske] do not suggest this, however.  Further, 
+           it introduces some spacing problems and think that it is ugly 
+           too.
+           [jcn]
+         */
 
          /* 
             first musical column of bar
 
          /* 
             first musical column of bar
-          */
+         */
          if (i && scol_l (i - 1)->breakable_b_)
            {
              // fixed: probably should set minimum (rod/spring)?
          if (i && scol_l (i - 1)->breakable_b_)
            {
              // fixed: probably should set minimum (rod/spring)?
@@ -610,7 +610,7 @@ Spring_spacer::calc_idealspacing()
 
          /* 
             last musical column of bar
 
          /* 
             last musical column of bar
-          */
+         */
          if (i + 1 < cols.size () && scol_l(i+1)->breakable_b_)
            {
              // hmm, how bout?
          if (i + 1 < cols.size () && scol_l(i+1)->breakable_b_)
            {
              // hmm, how bout?
@@ -621,8 +621,8 @@ Spring_spacer::calc_idealspacing()
                someone was junking this last "hinterfleisch" whitespace?!
 
                but this seems to be fixed now :-)
                someone was junking this last "hinterfleisch" whitespace?!
 
                but this seems to be fixed now :-)
-              */
-              // set minimum rod 
+             */
+             // set minimum rod 
              cols[i].width_[RIGHT] += interline_f;
            }
 
              cols[i].width_[RIGHT] += interline_f;
            }
 
index 4cef2a9594ad8ec1003324a7401ca2e4e1e2cc9a..1a552bcf2c03a642a9aaf20bf7e146a9dd2152ca 100644 (file)
 #include "musical-request.hh"
 #include "duration-convert.hh"
 #include "misc.hh"
 #include "musical-request.hh"
 #include "duration-convert.hh"
 #include "misc.hh"
+#include "abbrev.hh"
 
 Stem_engraver::Stem_engraver()
 {
   abbrev_req_l_ = 0;
   stem_p_ = 0;
 
 Stem_engraver::Stem_engraver()
 {
   abbrev_req_l_ = 0;
   stem_p_ = 0;
+  abbrev_p_ = 0;
   default_abbrev_i_ = 16;
   dir_ = CENTER;
 }
   default_abbrev_i_ = 16;
   dir_ = CENTER;
 }
@@ -52,7 +54,10 @@ Stem_engraver::acknowledge_element(Score_elem_info i)
                t = default_abbrev_i_;
              else
                default_abbrev_i_ = t;
                t = default_abbrev_i_;
              else
                default_abbrev_i_ = t;
-             stem_p_->abbrev_flag_i_ =intlog2 (t) - (durlog_i>? 2);
+
+             abbrev_p_ = new Abbreviation;
+             announce_element (Score_elem_info (abbrev_p_, abbrev_req_l_));
+             abbrev_p_->abbrev_flags_i_ =intlog2 (t) - (durlog_i>? 2);
            }
          announce_element (Score_elem_info (stem_p_, r));
        }
            }
          announce_element (Score_elem_info (stem_p_, r));
        }
@@ -63,6 +68,12 @@ Stem_engraver::acknowledge_element(Score_elem_info i)
 void
 Stem_engraver::do_pre_move_processing()
 {
 void
 Stem_engraver::do_pre_move_processing()
 {
+  if (abbrev_p_)
+    {
+      abbrev_p_->set_stem (stem_p_);
+      typeset_element (abbrev_p_);
+      abbrev_p_ = 0;
+    }
   if (stem_p_)
     {
       Scalar prop = get_property ("ydirection");
   if (stem_p_)
     {
       Scalar prop = get_property ("ydirection");
index 5a74da6df8ffe38f0e51e9653d94b47c1c68de9d..c4c502d268aeaee3685559449ceccb059111234a 100644 (file)
@@ -20,7 +20,7 @@
 #include "beam.hh"
 #include "rest.hh"
 
 #include "beam.hh"
 #include "rest.hh"
 
-const int STEMLEN=7;
+const int STEMLEN = 7;
 
 IMPLEMENT_IS_TYPE_B1 (Stem,Item);
 
 
 IMPLEMENT_IS_TYPE_B1 (Stem,Item);
 
@@ -29,7 +29,6 @@ Stem::Stem ()
   /*
     TODO: staff-size
     */
   /*
     TODO: staff-size
     */
-  abbrev_flag_i_ = 0;
   beam_l_ = 0;
   beams_left_i_ = 0;
   beams_right_i_ = 0;
   beam_l_ = 0;
   beams_left_i_ = 0;
   beams_right_i_ = 0;
@@ -60,7 +59,7 @@ void
 Stem::do_print () const
 {
 #ifndef NPRINT
 Stem::do_print () const
 {
 #ifndef NPRINT
-  DOUT << "flag "<< flag_i_ << "abbrev_flag_i_" << abbrev_flag_i_;
+  DOUT << "flag "<< flag_i_ ;
   if (beam_l_)
     DOUT << "beamed";
 #endif
   if (beam_l_)
     DOUT << "beamed";
 #endif
@@ -78,6 +77,12 @@ Stem::stem_begin_f () const
   return yextent_drul_[Direction(-dir_)];
 }
 
   return yextent_drul_[Direction(-dir_)];
 }
 
+Real
+Stem::chord_start_f () const
+{
+  return head_positions()[dir_] * paper ()->internote_f ();
+}
+
 Real
 Stem::stem_end_f () const
 {
 Real
 Stem::stem_end_f () const
 {
@@ -158,11 +163,6 @@ Stem::set_default_stemlen ()
   Real len = STEMLEN;
   Real dy = paper ()->interbeam_f ();
 
   Real len = STEMLEN;
   Real dy = paper ()->interbeam_f ();
 
-  // ugh, should get nice *rule* for this
-  if (abbrev_flag_i_ > 1)
-    len += (abbrev_flag_i_ - 1)* dy / 2;
-
-
   if (!dir_)
     set_default_dir ();
 
   if (!dir_)
     set_default_dir ();
 
@@ -252,11 +252,7 @@ Interval
 Stem::do_width () const
 {
   Interval r (0, 0);
 Stem::do_width () const
 {
   Interval r (0, 0);
-  if (abbrev_flag_i_)
-    {
-      r = abbrev_mol ().extent ().x ();
-    }
-  else if (beam_l_ || abs (flag_i_) <= 2)
+  if (beam_l_ || abs (flag_i_) <= 2)
     ;  // TODO!
   else
     {
     ;  // TODO!
   else
     {
@@ -269,44 +265,6 @@ Stem::do_width () const
 
 
 
 
 
 
-Molecule
-Stem::abbrev_mol () const
-{
-  Real dy = paper ()->interbeam_f ();
-  Real w = 1.5 * paper ()->lookup_l ()->ball (2).dim_.x ().length ();
-  Real interline_f = paper ()->interline_f ();
-  Real beamdy = interline_f/2;
-
-  int beams_i = 0;
-  Real slope_f = paper ()->internote_f () / 4;
-
-  if (beam_l_) {
-    // huh?
-      slope_f = 2 * beam_l_->slope_f_;
-    // ugh, rather calc from Abbreviation_req
-      beams_i = beams_right_i_ >? beams_left_i_;
-  }
-  paper ()->lookup_l ()->beam (slope_f, 20 PT, 1 PT);
-
-  Molecule beams;
-  Atom a (paper ()->lookup_l ()->beam (slope_f, w, .48 * interline_f));
-  a.translate (Offset(- w / 2, stem_end_f () - (w / 2 * slope_f)));
-  
-  // ugh
-  if (!beams_i)
-    a.translate_axis (dy + beamdy - dir_ * dy, Y_AXIS);
-  else
-    a.translate_axis (2 * beamdy - dir_ * (beamdy - dy), Y_AXIS);
-
-  for (int i = 0; i < abbrev_flag_i_; i++)
-    {
-      Atom b (a);
-      b.translate_axis (-dir_ * dy * (beams_i + i), Y_AXIS);
-      beams.add (b);
-    }
-
-  return beams;
-}
 
 const Real ANGLE = 20* (2.0*M_PI/360.0); // ugh!
 
 
 const Real ANGLE = 20* (2.0*M_PI/360.0); // ugh!
 
@@ -336,12 +294,8 @@ Stem::brew_molecule_p () const
       Atom fl = p->lookup_l ()->flag (flag_i_, dir_);
       fl.translate_axis(stem_y[dir_]*dy, Y_AXIS);
       mol_p->add(fl);
       Atom fl = p->lookup_l ()->flag (flag_i_, dir_);
       fl.translate_axis(stem_y[dir_]*dy, Y_AXIS);
       mol_p->add(fl);
-      assert (!abbrev_flag_i_);
     }
 
     }
 
-  if (abbrev_flag_i_)
-    mol_p->add (abbrev_mol ());
-
   if (head_l_arr_.size())
     {
       mol_p->translate_axis (note_delta_f (), X_AXIS);
   if (head_l_arr_.size())
     {
       mol_p->translate_axis (note_delta_f (), X_AXIS);
index d247fa649473b75a63dc8c69d8a9762369ea8b21..0be5fbf742f9082d47959cebb4d8c2be35886a7b 100644 (file)
@@ -19,7 +19,9 @@ Symtables::Symtables()
 {
 }
 
 {
 }
 
+
 Symtables::Symtables (Symtables const &s)
 Symtables::Symtables (Symtables const &s)
+  : Dictionary<Symtable*> (s)
 {
   for (Assoc_iter<String, Symtable*>  i (s); i.ok(); i++)
     {
 {
   for (Assoc_iter<String, Symtable*>  i (s); i.ok(); i++)
     {
index 02c33a8707a9bc5c860002e49fd6ba1f50e5cc4f..d861e6ecdee72dea2af673b50f155546dbc700bd 100644 (file)
@@ -33,7 +33,7 @@ Tex_stream::header()
   *os << _("% Creator: ") << get_version_str() << "\n";
   *os << _("% Automatically generated, at ");
   time_t t (time (0));
   *os << _("% Creator: ") << get_version_str() << "\n";
   *os << _("% Automatically generated, at ");
   time_t t (time (0));
-  *os << ctime (&t)<<"\n";
+  *os << ctime (&t) << "%\n";
 }
 Tex_stream::~Tex_stream()
 {
 }
 Tex_stream::~Tex_stream()
 {
index c7e4e0303230c1de699b988f95b063e904b182a4..f294431972b42557dfe6cd93a87ebecf3facd15d 100644 (file)
@@ -14,7 +14,7 @@
 
 Timing_translator::Timing_translator ()
 {
 
 Timing_translator::Timing_translator ()
 {
-  default_grouping_ = Rhythmic_grouping (MInterval (0,4),4); // ugh
+  default_grouping_ = Rhythmic_grouping (MInterval (0, 1), 4); // ugh
 }
 
 bool
 }
 
 bool
@@ -94,7 +94,6 @@ Timing_translator::do_process_requests()
       else if (tr_l->cadenza())
        {
          time_.set_cadenza (tr_l->cadenza()->on_b_);
       else if (tr_l->cadenza())
        {
          time_.set_cadenza (tr_l->cadenza()->on_b_);
-
        }
       else if (tr_l->measuregrouping())
        {
        }
       else if (tr_l->measuregrouping())
        {
@@ -132,3 +131,12 @@ Timing_translator::do_post_move_processing()
 {
   time_.add (now_moment ()  - time_.when_);
 }
 {
   time_.add (now_moment ()  - time_.when_);
 }
+
+void
+Timing_translator::do_print () const
+{
+#ifndef NPRINT
+  time_.print ();
+  default_grouping_.print ();
+#endif
+}
index a5ea5760d527ad5fe08cb230a03587c6b4062662..6062fbc2d3f5e9295766f049c6be79f056423aa7 100644 (file)
@@ -10,8 +10,6 @@
 # this is supposed to clear all suffixes:
 .SUFFIXES:
 
 # this is supposed to clear all suffixes:
 .SUFFIXES:
 
-# so why does make still consider xx.y : RCS/xx.y,v ?
-# there is no suffix ,v anymore!
 .SUFFIXES: .cc .o .hh .y .l  .dep
 
 
 .SUFFIXES: .cc .o .hh .y .l  .dep
 
 
index 884f2ffb2c05df65b8ee88371be3d6a5c8691540..e7564f48a4bc691081827005b58e52ef8dbc95a4 100644 (file)
@@ -153,7 +153,7 @@ CXXFLAGS = $(CFLAGS) $(USER_CXXFLAGS) $(EXTRA_CXXFLAGS) $(MODULE_CXXFLAGS)
 INCLUDES = -Iinclude -I$(outdir) -I$(include-lib) -I$(libout) -I$(include-flower) -I$(flowerout) 
 CXX_OUTPUT_OPTION = $< -o $@
 LDFLAGS = $(ILDFLAGS) $(USER_LDFLAGS) $(EXTRA_LDFLAGS) $(MODULE_LDFLAGS) -L$(depth)/lib/$(OUTDIR_NAME) -L$(depth)/flower/$(OUTDIR_NAME)
 INCLUDES = -Iinclude -I$(outdir) -I$(include-lib) -I$(libout) -I$(include-flower) -I$(flowerout) 
 CXX_OUTPUT_OPTION = $< -o $@
 LDFLAGS = $(ILDFLAGS) $(USER_LDFLAGS) $(EXTRA_LDFLAGS) $(MODULE_LDFLAGS) -L$(depth)/lib/$(OUTDIR_NAME) -L$(depth)/flower/$(OUTDIR_NAME)
-LOADLIBES = $(EXTRA_LIBES) $(MODULE_LIBES) -lg++ # need lg++ for win32, really!
+LOADLIBES = $(EXTRA_LIBES) $(MODULE_LIBES) -lg++ -lstdc++ # need lg++ for win32, really!
 #
 
 # macro compiler:
 #
 
 # macro compiler:
@@ -181,7 +181,7 @@ LD_COMMAND = $(LD) $(LDFLAGS) -o $@
 
 # dependencies:
 #
 
 # dependencies:
 #
-depfile = $(depdir)/$(subst .o,.dep,$(notdir $@)) 
+depfile = $(depdir)/$(subst .o,.dep,$(notdir $@))#
 DODEP=rm -f $(depfile); DEPENDENCIES_OUTPUT="$(depfile) $(outdir)/$(notdir $@)"
 #
 
 DODEP=rm -f $(depfile); DEPENDENCIES_OUTPUT="$(depfile) $(outdir)/$(notdir $@)"
 #
 
index adfe9b3f2b174623faafc1375ce0f7e8cce3f13b..72e1d2a8a62b5be70bf0434178b9f47a985edb11 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Titel: LilyPond
 Begin3
 Titel: LilyPond
-Versie: 0.1.46
-Inschrijf datum: 17FEB98
+Versie: 0.1.47
+Inschrijf datum: 06MAR98
 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: 
 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: 
@@ -16,8 +16,8 @@ Auteur: hanwen@stack.nl (Han-Wen Nienhuys)
        jan@digicash.com (Jan Nieuwenhuizen)
 Onderhouden door: hanwen@stack.nl (Han-Wen Nienhuys)
 Voornaamste plek: sunsite.unc.edu /pub/Linux/apps
        jan@digicash.com (Jan Nieuwenhuizen)
 Onderhouden door: hanwen@stack.nl (Han-Wen Nienhuys)
 Voornaamste plek: sunsite.unc.edu /pub/Linux/apps
-       395k lilypond-0.1.46.tar.gz 
+       395k lilypond-0.1.47.tar.gz 
 Oorspronkelijke plek: pcnov095.win.tue.nl /pub/lilypond/
 Oorspronkelijke plek: pcnov095.win.tue.nl /pub/lilypond/
-       395k lilypond-0.1.46.tar.gz 
+       395k lilypond-0.1.47.tar.gz 
 Copi"eer politie: GPL
 End
 Copi"eer politie: GPL
 End
index 4e6df5ae07cbfa48d14e62551f7a0ed5276f2eaf..a0620497c170e211a70a10c3172893208ee5f8ef 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title: LilyPond
 Begin3
 Title: LilyPond
-Version: 0.1.46
-Entered-date: 17FEB98
+Version: 0.1.47
+Entered-date: 06MAR98
 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 
 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 
@@ -15,8 +15,8 @@ Author: hanwen@stack.nl (Han-Wen Nienhuys)
        jan@digicash.com (Jan Nieuwenhuizen)
 Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
        jan@digicash.com (Jan Nieuwenhuizen)
 Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
-       470k lilypond-0.1.46.tar.gz 
+       470k lilypond-0.1.47.tar.gz 
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
-       470k lilypond-0.1.46.tar.gz 
+       470k lilypond-0.1.47.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index 30bec0b72e666cb2eb240961ff5dc50de1aaf227..1092351059fcdeb6766df330e332fdd1018a9100 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
 Name: lilypond
-Version: 0.1.46
+Version: 0.1.47
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: alpha.gnu.org:/gnu/lilypond/development/lilypond-0.1.46.tar.gz
+Source0: alpha.gnu.org:/gnu/lilypond/development/lilypond-0.1.47.tar.gz
 Summary: A program for typesetting music.
 URL: http://www.stack.nl/~hanwen/lilypond
 Packager: Han-Wen Nienhuys <hanwen@stack.nl>
 Summary: A program for typesetting music.
 URL: http://www.stack.nl/~hanwen/lilypond
 Packager: Han-Wen Nienhuys <hanwen@stack.nl>
@@ -31,8 +31,8 @@ strip lily/out/lilypond mi2mu/out/mi2mu
 make -C Documentation gifs
 make prefix="$RPM_BUILD_ROOT/usr" install
 %files
 make -C Documentation gifs
 make prefix="$RPM_BUILD_ROOT/usr" install
 %files
-%doc Documentation/out/ANNOUNCE.txt Documentation/out/AUTHORS.txt Documentation/out/CodingStyle.txt Documentation/out/DEDICATION.txt Documentation/out/INSTALL.txt Documentation/out/MANIFESTO.txt Documentation/out/NEWS.txt Documentation/out/TODO.txt Documentation/out/cadenza.ly.txt Documentation/out/collisions.ly.txt Documentation/out/convert-mudela.txt Documentation/out/faq.txt Documentation/out/font16.ly.txt Documentation/out/font20.ly.txt Documentation/out/gallina.ly.txt Documentation/out/gnu-music.txt Documentation/out/index.txt Documentation/out/internals.txt Documentation/out/language.txt Documentation/out/lilypond.txt Documentation/out/links.txt Documentation/out/literature.txt Documentation/out/ly2dvi.txt Documentation/out/mi2mu.txt Documentation/out/mudela-book.txt Documentation/out/multi.ly.txt Documentation/out/mutopia.txt Documentation/out/other-packages.txt Documentation/out/preludes-1.ly.txt Documentation/out/preludes-2.ly.txt Documentation/out/rhythm.ly.txt Documentation/out/scsii-menuetto.ly.txt Documentation/out/standje.ly.txt Documentation/out/toccata-fuga-E.ly.txt Documentation/out/twinkle-pop.ly.txt Documentation/out/twinkle.ly.txt Documentation/out/wtk1-fugue2.ly.txt Documentation/out/wtk1-prelude1.ly.txt BUGS TODO NEWS DEDICATION ANNOUNCE README
-%doc input/beams.ly input/cadenza.ly input/collisions.ly input/coriolan-alto.ly input/denneboom.ly 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/rhythm.ly input/scales.ly input/scripts.ly input/sleur.ly input/slurs.ly input/spacing.ly input/stem.ly input/toccata-fuga-E.ly input/twinkle-pop.ly input/twinkle.ly Documentation/mudela-course.doc Documentation/mudela-man.doc 
+%doc Documentation/out/ANNOUNCE.txt Documentation/out/AUTHORS.txt Documentation/out/CodingStyle.txt Documentation/out/DEDICATION.txt Documentation/out/INSTALL.txt Documentation/out/MANIFESTO.txt Documentation/out/NEWS.txt Documentation/out/TODO.txt Documentation/out/cadenza.ly.txt Documentation/out/collisions.ly.txt Documentation/out/convert-mudela.txt Documentation/out/faq.txt Documentation/out/font16.ly.txt Documentation/out/font20.ly.txt Documentation/out/gallina.ly.txt Documentation/out/gnu-music.txt Documentation/out/index.txt Documentation/out/internals.txt Documentation/out/language.txt Documentation/out/lilypond.txt Documentation/out/links.txt Documentation/out/literature.txt Documentation/out/ly2dvi.txt Documentation/out/mi2mu.txt Documentation/out/mudela-book.txt Documentation/out/multi.ly.txt Documentation/out/mutopia.txt Documentation/out/other-packages.txt Documentation/out/praeludium-fuga-E.ly.txt Documentation/out/preludes-1.ly.txt Documentation/out/preludes-2.ly.txt Documentation/out/rhythm.ly.txt Documentation/out/scsii-menuetto.ly.txt Documentation/out/standje.ly.txt Documentation/out/twinkle-pop.ly.txt Documentation/out/twinkle.ly.txt Documentation/out/wtk1-fugue2.ly.txt Documentation/out/wtk1-prelude1.ly.txt BUGS TODO NEWS DEDICATION ANNOUNCE README
+%doc input/beams.ly input/cadenza.ly input/collisions.ly input/coriolan-alto.ly input/denneboom.ly 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/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
 %doc Documentation/out/lelie_logo.gif
 /usr/bin/convert-mudela
 /usr/bin/mudela-book
index 00b46f2f99312eb24aae464f6dd1c3ec1a469fa3..95cb53e788b66975b5d831b7661339aa11ab1dca 100644 (file)
@@ -12,8 +12,8 @@ include ./$(depth)/make/Include.make
 # 
 TEXFILES = $(wildcard *.tex)
 MFFILES = $(wildcard *.mf)
 # 
 TEXFILES = $(wildcard *.tex)
 MFFILES = $(wildcard *.mf)
-MFDEPS = mf.dep
-EXTRA_DISTFILES = $(MFFILES) $(TEXFILES) $(MFDEPS) TODO README
+MFDEPS = $(outdir)/mf.dep
+EXTRA_DISTFILES = $(MFFILES) $(TEXFILES) TODO README
 #
 
 FONT_FILES = $(wildcard *[0-9].mf)
 #
 
 FONT_FILES = $(wildcard *[0-9].mf)
@@ -28,7 +28,10 @@ TEXTABLES = $(addprefix $(texout)/, $(FET_FILES:.mf=.tex))
 all: $(LYTABLES) $(TEXTABLES)
 
 localclean:
 all: $(LYTABLES) $(TEXTABLES)
 
 localclean:
-       rm -f $(LYTABLES) $(TEXTABLES) $(MFDEPS)
+       rm -f $(LYTABLES) $(TEXTABLES) 
+
+localrealclean: 
+       rm -f $(MFDEPS)
 
 $(outdir)/%.dvi: %.mf
        mf $<
 
 $(outdir)/%.dvi: %.mf
        mf $<
diff --git a/mf/TODO b/mf/TODO
index 4607752e699b1f7cf7d1e22bf320c3e378cebda5..9029d6866844a7955ce3e6e2571a9dc0e83cc516 100644 (file)
--- a/mf/TODO
+++ b/mf/TODO
@@ -2,6 +2,7 @@
        - design decent macro for bulbed endings
        - printer dependencies.
        - y-refpoint for rests should be the 4th staffline (gclef: b')
        - design decent macro for bulbed endings
        - printer dependencies.
        - y-refpoint for rests should be the 4th staffline (gclef: b')
+       - segno, coda
        - versioning    
        - lo-res fixes.
        - work out sizes of character fonts.
        - versioning    
        - lo-res fixes.
        - work out sizes of character fonts.
@@ -12,5 +13,4 @@
          * coda signs.
        - 128th flags
        - include important spacing dims in fetalog 
          * coda signs.
        - 128th flags
        - include important spacing dims in fetalog 
-
        - more sizes, see readme
        - more sizes, see readme
index 9891168c1ef37785ddbe27667644155f22d5a424..315f49383df4d439caf40d889d5a3daceb293357 100644 (file)
@@ -1,3 +1,11 @@
+% 
+% feta-generic.mf --  implement 
+% 
+% source file of the Feta (defintively not an abbreviation for Font-En-Tja)
+% music font
+% 
+% (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+% 
 
 
 if test = -1:
 
 
 if test = -1:
@@ -28,7 +36,7 @@ else:
 %      input feta-bolletjes;   
 %      input feta-banier;
 %      input feta-eindelijk;
 %      input feta-bolletjes;   
 %      input feta-banier;
 %      input feta-eindelijk;
-       input feta-klef;
+%      input feta-klef;
 %      input feta-toevallig;
 %      input feta-toevallig;
-%      input feta-schrift;
+       input feta-schrift;
 fi
 fi
index 9cc309f3fb4ddb6a16b0e572b08835720685a048..9a08537316b0a06d26ee5ea37ac1658f05e9a806 100644 (file)
@@ -1,7 +1,8 @@
-% 
+% -*- Fundamental -*-  (emacs-20 mf mode mucks
 % feta-schrift.mf --  implement scripts
 % 
 % feta-schrift.mf --  implement scripts
 % 
-% source file of the Feta (Font-En-Tja) music font
+% source file of the Feta (defintively not an abbreviation for Font-En-Tja)
+% music font
 % 
 % (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 %      Jan Nieuwenhuizen <jan@digicash.com>
 % 
 % (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 %      Jan Nieuwenhuizen <jan@digicash.com>
@@ -12,39 +13,39 @@ fet_begingroup("scripts")
 
 
 def draw_fermata =
 
 
 def draw_fermata =
-       save alpha, radius, crook_thinness, crook_fatness, dot_diam;
-       
+  save alpha, radius, crook_thinness, crook_fatness, dot_diam;
+  
        % [Wanske] and some  Baerenreiter editions
        % suggest ca 80 degrees iso half-circle
        % [Wanske] and some  Baerenreiter editions
        % suggest ca 80 degrees iso half-circle
-       alpha := 10;
+  alpha := 10;
 
 
-       radius# = 1.25 interline#;
-       crook_thinness# = 1.5stafflinethickness#;
-       crook_fatness# = 4 stafflinethickness#;
+  radius# = 1.25 interline#;
+  crook_thinness# = 1.5stafflinethickness#;
+  crook_fatness# = 4 stafflinethickness#;
 
 
-       radius# + crook_fatness#/2 = h#;
-       radius# + crook_thinness#/2 = w#;
-       set_char_box(w#, w#, crook_thinness#/2, h#);
-       
-       define_pixels(radius, crook_thinness, crook_fatness);
-       dot_diam = 4/3 crook_fatness;
+  radius# + crook_fatness#/2 = h#;
+  radius# + crook_thinness#/2 = w#;
+  set_char_box(w#, w#, crook_thinness#/2, h#);
+  
+  define_pixels(radius, crook_thinness, crook_fatness);
+  dot_diam = 4/3 crook_fatness;
 
 
 
 
-       penpos1(crook_thinness, 0);
-       penpos2(crook_fatness, -90);
-       z1 = (-radius,0);
-       z2 = (0, radius);
+  penpos1(crook_thinness, 0);
+  penpos2(crook_fatness, -90);
+  z1 = (-radius,0);
+  z2 = (0, radius);
 
 
-       fill z1l{dir (-alpha-90)}..{dir (90-alpha)}z1r..
-               {right}z2r -- z2l{left} .. cycle;
+  fill z1l{dir (-alpha-90)}..{dir (90-alpha)}z1r..
+  {right}z2r -- z2l{left} .. cycle;
 
 
-       addto currentpicture also 
-               currentpicture xscaled -1;
+  addto currentpicture also 
+  currentpicture xscaled -1;
 
 
-       pickup pencircle scaled dot_diam;
-       x4 =0;
-       bot y4 = - crook_thinness/2;
-       draw z4;
+  pickup pencircle scaled dot_diam;
+  x4 =0;
+  bot y4 = - crook_thinness/2;
+  draw z4;
 enddef;
 
 fet_beginchar("fermata up", "ufermata", "ufermata")
 enddef;
 
 fet_beginchar("fermata up", "ufermata", "ufermata")
@@ -453,7 +454,8 @@ fet_beginchar("Trill (`tr')","trill","trill")
        draw_bulb(-1, z13r, z13l, bulb_size * r_fatness, 1.5);
 fet_endchar;
 
        draw_bulb(-1, z13r, z13l, bulb_size * r_fatness, 1.5);
 fet_endchar;
 
-fet_beginchar("organ-heel", "pedalheel", "pedalheel")
+
+def draw_heel =
        save radius, thickness, wall;
 
        radius# := .5 interline#;
        save radius, thickness, wall;
 
        radius# := .5 interline#;
@@ -474,10 +476,21 @@ fet_beginchar("organ-heel", "pedalheel", "pedalheel")
 
        draw z1{down} .. z2{down} .. z3{left};
        addto currentpicture also currentpicture xscaled -1;
 
        draw z1{down} .. z2{down} .. z3{left};
        addto currentpicture also currentpicture xscaled -1;
+       
+enddef;
+
+
+fet_beginchar("left heel", "upedalheel", "upedalheel")
+       draw_heel;
        labels(1,2,3);
 fet_endchar;
 
        labels(1,2,3);
 fet_endchar;
 
-fet_beginchar("organ-toe", "pedaltoe", "pedaltoe")
+fet_beginchar("right heel", "dpedalheel", "dpedalheel")
+       draw_heel;
+       y_mirror_char;
+fet_endchar;
+
+def draw_toe =
        save ht,wd;
 
        thickness := 1.5 stafflinethickness;
        save ht,wd;
 
        thickness := 1.5 stafflinethickness;
@@ -497,8 +510,17 @@ fet_beginchar("organ-toe", "pedaltoe", "pedaltoe")
 
 
        draw z1 -- z2 -- z3;
 
 
        draw z1 -- z2 -- z3;
+
+enddef;
+       
+fet_beginchar("left toe", "upedaltoe", "upedaltoe")
+       draw_toe;
        labels(1,2,3);
 fet_endchar;
        labels(1,2,3);
 fet_endchar;
+fet_beginchar("right toe", "dpedaltoe", "dpedaltoe")
+       draw_toe;
+       y_mirror_char;
+fet_endchar;
 
 fet_beginchar("Flageolet", "flageolet", "flageolet")
        save height,width,thickness;
 
 fet_beginchar("Flageolet", "flageolet", "flageolet")
        save height,width,thickness;
diff --git a/mf/grayimagen.mf b/mf/grayimagen.mf
new file mode 100644 (file)
index 0000000..db627b0
--- /dev/null
@@ -0,0 +1,9 @@
+% Gray font for Imagen 8/300; proofsheet resolution is 75 pixels per inch.
+% Each pixel is represented by a 4x4 square, with 4/16 of the dots on.
+
+
+font_identifier "GRAYIMAGEN";
+
+boolean lightweight;
+
+input grayf
diff --git a/mf/mf.dep b/mf/mf.dep
deleted file mode 100644 (file)
index 590fb52..0000000
--- a/mf/mf.dep
+++ /dev/null
@@ -1,99 +0,0 @@
-
-# Automatically generated by mf-deps.py 0.2
-
-out/feta-beams16.log: feta-beams16.mf feta-watzieik.mf feta-params.mf
-out/feta-beams16.dvi: feta-beams16.mf feta-watzieik.mf feta-params.mf
-out/feta-beams16.2602gf: feta-beams16.mf feta-watzieik.mf feta-params.mf
-out/feta-beams16.tfm: feta-beams16.mf feta-watzieik.mf feta-params.mf
-out/feta-beams20.log: feta-beams20.mf feta-watzieik.mf feta-params.mf
-out/feta-beams20.dvi: feta-beams20.mf feta-watzieik.mf feta-params.mf
-out/feta-beams20.2602gf: feta-beams20.mf feta-watzieik.mf feta-params.mf
-out/feta-beams20.tfm: feta-beams20.mf feta-watzieik.mf feta-params.mf
-out/feta-beams26.log: feta-beams26.mf feta-watzieik.mf feta-params.mf
-out/feta-beams26.dvi: feta-beams26.mf feta-watzieik.mf feta-params.mf
-out/feta-beams26.2602gf: feta-beams26.mf feta-watzieik.mf feta-params.mf
-out/feta-beams26.tfm: feta-beams26.mf feta-watzieik.mf feta-params.mf
-out/feta-black16.log: feta-black16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-black16.dvi: feta-black16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-black16.2602gf: feta-black16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-black16.tfm: feta-black16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-braces16.log: feta-braces16.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces16.dvi: feta-braces16.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces16.2602gf: feta-braces16.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces16.tfm: feta-braces16.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces20.log: feta-braces20.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces20.dvi: feta-braces20.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces20.2602gf: feta-braces20.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-braces20.tfm: feta-braces20.mf feta-beugel.mf feta-macros.mf feta-params.mf
-out/feta-din10.log: feta-din10.mf feta-autometric.mf feta-ital-f.mf feta-ital-p.mf feta-ital-m.mf feta-ital-r.mf feta-ital-s.mf feta-ital-z.mf
-out/feta-din10.dvi: feta-din10.mf feta-autometric.mf feta-ital-f.mf feta-ital-p.mf feta-ital-m.mf feta-ital-r.mf feta-ital-s.mf feta-ital-z.mf
-out/feta-din10.2602gf: feta-din10.mf feta-autometric.mf feta-ital-f.mf feta-ital-p.mf feta-ital-m.mf feta-ital-r.mf feta-ital-s.mf feta-ital-z.mf
-out/feta-din10.tfm: feta-din10.mf feta-autometric.mf feta-ital-f.mf feta-ital-p.mf feta-ital-m.mf feta-ital-r.mf feta-ital-s.mf feta-ital-z.mf
-out/feta-nummer10.log: feta-nummer10.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer10.dvi: feta-nummer10.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer10.2602gf: feta-nummer10.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer10.tfm: feta-nummer10.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer12.log: feta-nummer12.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer12.dvi: feta-nummer12.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer12.2602gf: feta-nummer12.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer12.tfm: feta-nummer12.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer3.log: feta-nummer3.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer3.dvi: feta-nummer3.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer3.2602gf: feta-nummer3.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer3.tfm: feta-nummer3.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer4.log: feta-nummer4.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer4.dvi: feta-nummer4.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer4.2602gf: feta-nummer4.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer4.tfm: feta-nummer4.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer5.log: feta-nummer5.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer5.dvi: feta-nummer5.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer5.2602gf: feta-nummer5.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer5.tfm: feta-nummer5.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer6.log: feta-nummer6.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer6.dvi: feta-nummer6.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer6.2602gf: feta-nummer6.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer6.tfm: feta-nummer6.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer7.log: feta-nummer7.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer7.dvi: feta-nummer7.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer7.2602gf: feta-nummer7.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer7.tfm: feta-nummer7.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer8.log: feta-nummer8.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer8.dvi: feta-nummer8.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer8.2602gf: feta-nummer8.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-nummer8.tfm: feta-nummer8.mf feta-nummer-generic.mf feta-autometric.mf feta-macros.mf feta-params.mf feta-nummer.mf
-out/feta-test16.log: feta-test16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test16.dvi: feta-test16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test16.2602gf: feta-test16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test16.tfm: feta-test16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test20.log: feta-test20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test20.dvi: feta-test20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test20.2602gf: feta-test20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta-test20.tfm: feta-test20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta11.log: feta11.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta11.dvi: feta11.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta11.2602gf: feta11.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta11.tfm: feta11.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta13.log: feta13.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta13.dvi: feta13.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta13.2602gf: feta13.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta13.tfm: feta13.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta16.log: feta16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta16.dvi: feta16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta16.2602gf: feta16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta16.tfm: feta16.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta19.log: feta19.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta19.dvi: feta19.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta19.2602gf: feta19.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta19.tfm: feta19.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta20.log: feta20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta20.dvi: feta20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta20.2602gf: feta20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta20.tfm: feta20.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta23.log: feta23.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta23.dvi: feta23.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta23.2602gf: feta23.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta23.tfm: feta23.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta26.log: feta26.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta26.dvi: feta26.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta26.2602gf: feta26.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
-out/feta26.tfm: feta26.mf feta-autometric.mf feta-generic.mf feta-macros.mf feta-params.mf feta-eindelijk.mf feta-toevallig.mf feta-puntje.mf feta-bolletjes.mf feta-schrift.mf feta-banier.mf feta-klef.mf
index c627ea5c5dd6b75ccd36ac6b6cd0aa062cafee8d..c46593a660815c8f3e6458b39b4c8c610281d813 100644 (file)
@@ -13,7 +13,7 @@ rh = \melodic{
        \octave c'';
        \textstyle "italic";
        r16\p_"legato"\< ['g-1( c-3 )e-5] r ['g-1( c )e]
        \octave c'';
        \textstyle "italic";
        r16\p_"legato"\< ['g-1( c-3 )e-5] r ['g-1( c )e]
-       r [g( c )d] r ['b-1( d-2 \!)g-5] |
+       r ['g( c )d] r ['b-1( d-2 \!)g-5] |
        r\mf ['a( d-2 ) g-5] r ['a(\< d )f-4]
        r ['a( d )e-3] r [c-1( e-2 \!)a-5] |
        r\f ['b e a-5] r ['b e-3 g-5] 
        r\mf ['a( d-2 ) g-5] r ['a(\< d )f-4]
        r ['a( d )e-3] r [c-1( e-2 \!)a-5] |
        r\f ['b e a-5] r ['b e-3 g-5] 
@@ -76,9 +76,9 @@ lh = \melodic{
        % f4-1 e d-3\tr c |
        f4-1 e d-3 c |
        % g( )'g g\pr-"(#)"( )'g |
        % f4-1 e d-3\tr c |
        f4-1 e d-3 c |
        % g( )'g g\pr-"(#)"( )'g |
-       g( )'g g-"(\\textsharp)"( )'g |
-       % g\pr-"(\\textsharp)"( )'g g\pr-"(\\textsharp)"( )'g |
-       g-"(\\textsharp)"( )'g g-"(\\textsharp)"( )'g |
+       g ~ 'g g-"(\\textsharp)" ~ 'g |
+       % g\pr-"(\\textsharp)" ~ 'g g\pr-"(\\textsharp)" ~ 'g |
+       g-"(\\textsharp)" ~ 'g g-"(\\textsharp)" ~ 'g |
        % ugh, f should be at upper staff
        g r r16 ['g-5( 'b-4 d] )f-1 s s s |
        s [g-5( b-4 d'-2] )f'-1 s s s s \clef violin; [g'-4 b'-2 d''-1] 
        % ugh, f should be at upper staff
        g r r16 ['g-5( 'b-4 d] )f-1 s s s |
        s [g-5( b-4 d'-2] )f'-1 s s s s \clef violin; [g'-4 b'-2 d''-1] 
index e0e1f57595a7209406b47a002c98ee8648ca433f..c82b6d784a50b028a3529e0c7c4221fd183b3ddb 100644 (file)
@@ -39,6 +39,7 @@ rh = \melodic{
                { \stemup; c2 r4 < {c-5 ~ c8} {'a4 ~ 'a8} > }
                { \stemdown; c2 r4 'e4 ~ 'e8 }
        >
                { \stemup; c2 r4 < {c-5 ~ c8} {'a4 ~ 'a8} > }
                { \stemdown; c2 r4 'e4 ~ 'e8 }
        >
+       \stemboth;
        ['d-1\p( 'fis-2 'a-4] ['fis-2 'd-1 c-5 'a-3] |
        [)'b-4\< 'g-1( 'b-2 d-4] [ 'b-2 'g-1 f!-5 d-3] |
        [)e-4 'g-1( c-2 e-4] [c-2 'g g-5 e-3] |
        ['d-1\p( 'fis-2 'a-4] ['fis-2 'd-1 c-5 'a-3] |
        [)'b-4\< 'g-1( 'b-2 d-4] [ 'b-2 'g-1 f!-5 d-3] |
        [)e-4 'g-1( c-2 e-4] [c-2 'g g-5 e-3] |
@@ -82,10 +83,10 @@ lh = \melodic{
        % [g32-1( fis-2 g8.-1] ) 'g4 g( )'g\mr |
        
        % my edition has  mordents on every g here
        % [g32-1( fis-2 g8.-1] ) 'g4 g( )'g\mr |
        
        % my edition has  mordents on every g here
-       [g32-1( fis-2 g8.-1] ) 'g4 g( )'g |
+       [g32-1( fis-2 g8.-1] ) 'g4 g ~ 'g |
        % 'g( )g\mr 'g( )g\mr |
        % 'g( )g\mr 'g( )g\mr |
-       g( )'g g( )'g |
-       g( )'g g( )'g |
+       g ~ 'g g ~ 'g |
+       g ~ 'g g ~ 'g |
        [g8 'g-5( 'b-4 d-2] ['b-4 'g-5 f!-1 d-3] |
        [)e-2 c-4 e-2 g-1] [e-3 c-5 c' e-4] |
        \textstyle "finger";
        [g8 'g-5( 'b-4 d-2] ['b-4 'g-5 f!-1 d-3] |
        [)e-2 c-4 e-2 g-1] [e-3 c-5 c' e-4] |
        \textstyle "finger";
index 88f575edd37ae5d0c15df1b6659748583f85ba52..e7e85b9185e70551fc49ffb90a0247d2a6e0c311 100644 (file)
@@ -39,7 +39,8 @@ rh = \melodic{
        s('bes d g)
 
 
        s('bes d g)
 
 
-       s(c fis a -"poco a poco cresc.")
+%#     s(c fis a -"poco a poco cresc.")
+       t(c,fis,a,-"poco a poco cresc.")
        s(d g bes)
        s(d fis c')
 
        s(d g bes)
        s(d fis c')
 
@@ -57,7 +58,8 @@ rh = \melodic{
        s('fis 'a c)
        s('fis 'a c)
        r16\p ['g 'a c] ['b 'g 'b 'g] r 'g r 'g
        s('fis 'a c)
        s('fis 'a c)
        r16\p ['g 'a c] ['b 'g 'b 'g] r 'g r 'g
-       s('a c fis -"poco cresc.")
+%#     s('a c fis -"poco cresc.")
+       t('a,c,fis,-"poco cresc.")
        s(c fis a)
        s('b d g)
        s('b d f -"dim.")
        s(c fis a)
        s('b d g)
        s('b d f -"dim.")
@@ -118,7 +120,7 @@ lh = \melodic{
 
        'd4 r ['bes8 'g] |
        'd4 r [es8 c] |
 
        'd4 r ['bes8 'g] |
        'd4 r [es8 c] |
-       'd4 r [d8 c] |
+       'd4 r [d8 a] |
 
        'g4 r [es8 c] |
        'g4 r [d8 'b] |
 
        'g4 r [es8 c] |
        'g4 r [d8 'b] |
index 9b54a623dce0c1ea3edf590b0269a512eacd9cd0..4dc6d24caf9f9add8f4480de13d59cf7d22cf564 100644 (file)
@@ -35,6 +35,7 @@ one = \melodic{
        \stemup
        )'fis4\p 
        \skip 4*7; |
        \stemup
        )'fis4\p 
        \skip 4*7; |
+       \textstyle "finger";
        d4.\mf cis8-"4\\_5" ~ cis 'b4-5 'a8-"4\\_5" ~ |
        \textstyle "italic";
        'a 'g4-5 'fis8-4 ~ ['fis16 'fis-4-"dim." 'e-3 'd-2] 
        d4.\mf cis8-"4\\_5" ~ cis 'b4-5 'a8-"4\\_5" ~ |
        \textstyle "italic";
        'a 'g4-5 'fis8-4 ~ ['fis16 'fis-4-"dim." 'e-3 'd-2] 
@@ -51,6 +52,7 @@ one = \melodic{
        'b4-5 'a ~ ['a8 'g-5 ~] ['g16 'fis8-4 'e'16-3] |
        ['fis8-4 'e-5~] ['e 'd-5~] 'd4 'cis-4 |
        'd2\p-"rall." ~ ['d16 ''a-2( ''b-3 'cis-4] )'d4-5 |
        'b4-5 'a ~ ['a8 'g-5 ~] ['g16 'fis8-4 'e'16-3] |
        ['fis8-4 'e-5~] ['e 'd-5~] 'd4 'cis-4 |
        'd2\p-"rall." ~ ['d16 ''a-2( ''b-3 'cis-4] )'d4-5 |
+       \bar "|.";
 }
 
 two = \melodic{
 }
 
 two = \melodic{
@@ -58,25 +60,26 @@ two = \melodic{
        \textstyle "finger";
 % ugh: koor
 %      \translator Staff=bass \octave c; \stemup
        \textstyle "finger";
 % ugh: koor
 %      \translator Staff=bass \octave c; \stemup
+       \stemup;
        fis4-1( e8-2 a4 a4 gis8-2 | 
        ) a8
        \translator Staff=treble \octave c''; \stemdown
        'a4 'a8 'b4.-"2\\_1" cis8 ~ | 
        cis8
        \translator Staff=bass \octave c; \stemup
        fis4-1( e8-2 a4 a4 gis8-2 | 
        ) a8
        \translator Staff=treble \octave c''; \stemdown
        'a4 'a8 'b4.-"2\\_1" cis8 ~ | 
        cis8
        \translator Staff=bass \octave c; \stemup
-       a8 ~ [a d'] ~ d' d'4-> c'8 | 
+       a8 ~ [a d'] ~ d' d'4-> cis'8 | 
        d'8
        \translator Staff=treble \octave c''; \stemdown
        d4-> cis8-1 ~ cis 'b4-1 'b8 |
        r8 'a4 'a8
        \translator Staff=bass \octave c; \stemup
        [g'8-1( fis'-2] )e'4-1 ~ | 
        d'8
        \translator Staff=treble \octave c''; \stemdown
        d4-> cis8-1 ~ cis 'b4-1 'b8 |
        r8 'a4 'a8
        \translator Staff=bass \octave c; \stemup
        [g'8-1( fis'-2] )e'4-1 ~ | 
-       e'4 d' ~ [d'16 d-1 cis'-2 g-1] cis'4-2 ~ |
-       [c'8 a-3] d'4.-1 d'4-> cis'8-2 |
+       e'4 d' ~ [d'16 d'-1 cis'-2 b-1] cis'4-2 ~ |
+       [cis'8 a-3] d'4.-1 d'4^> cis'8-2 |
        \translator Staff=treble \octave c''; \stemdown
        'd4 
        \stemboth
        \translator Staff=treble \octave c''; \stemdown
        'd4 
        \stemboth
-       r16 [''b-1\< d-2 ''b~] <'g4-5 'e-3 ''b>
+       r16 [''b-1\< 'd-2 ''b~] <'g4-5 'e-3 ''b>
        r16 ['cis-1 'e-2 \!'cis~] |
        <'a4-5 'f-3 'cis> r16 ['d-1 'fis-2 'd~] <'b4-5 'g-3 'd>
        r16 ['fis-1 'a 'fis~] |
        r16 ['cis-1 'e-2 \!'cis~] |
        <'a4-5 'f-3 'cis> r16 ['d-1 'fis-2 'd~] <'b4-5 'g-3 'd>
        r16 ['fis-1 'a 'fis~] |
@@ -109,7 +112,8 @@ two = \melodic{
                }
        >
        [g-1 fis-2 g-1 a-2] [g-1 b-3 a-2 g-1 ~] |
                }
        >
        [g-1 fis-2 g-1 a-2] [g-1 b-3 a-2 g-1 ~] |
-       [g g-1 fis-2 e-1] fis-2 ~ fis2
+       [g g-1 fis-2 e-1] fis4-2 ~ fis2
+       \bar "|.";
 }
 
 three = \melodic{
 }
 
 three = \melodic{
@@ -133,14 +137,14 @@ three = \melodic{
        [fis-2 g a-2 fis-4] |
        )fis16 ['g( 'b 'g] [d-2 e fis-2 d-4] [)g8-. 'g-.] r16 [cis-4( e cis] |
        [)fis8-. 'fis-.] \stemdown r16 ['b-4( d 'b] [)e8-. 'e-.] 
        [fis-2 g a-2 fis-4] |
        )fis16 ['g( 'b 'g] [d-2 e fis-2 d-4] [)g8-. 'g-.] r16 [cis-4( e cis] |
        [)fis8-. 'fis-.] \stemdown r16 ['b-4( d 'b] [)e8-. 'e-.] 
-       r16 ['a-4 cis a] |
+       r16 ['a-4 cis 'a] |
        \stemboth
        [d-1 e-3 fis-2 d-4] [g-1 fis-2 e-3 d-1] [cis!-3 'a-5 'b cis]
        [d-2 e fis-2 d-4] |
        \stemboth
        [d-1 e-3 fis-2 d-4] [g-1 fis-2 e-3 d-1] [cis!-3 'a-5 'b cis]
        [d-2 e fis-2 d-4] |
-       [g8 e-3] \stemdown [a 'a] ['b8.-4 'g16-5] a4-4 |
+       [g8 e-3] \stemdown [a 'a] ['b8.-4 'g16-5] 'a4-4 |
        [d8-5 a-2~] [a g-3~] [g g-3] fis4-4 |
        \stemup
        [d8-5 a-2~] [a g-3~] [g g-3] fis4-4 |
        \stemup
-       r16 [g-2 b-1 g-3] [b'8.-1 c'16-1] [b8.-2 bes16-3] [a8-1 g] |
+       r16 [g-2 b-1 g-3] [d'8.-1 c'16-1] [b8.-2 bes16-3] [a8-1 g] |
        \stemdown
        r16 ['a-2 cis!-1 a-2] [d-1 e fis d] [e8-1 d-2] [e-1 'a-2] |
        [d 'a-2~] ['a16 'a-2 'b cis-2] d2 |
        \stemdown
        r16 ['a-2 cis!-1 a-2] [d-1 e fis d] [e8-1 d-2] [e-1 'a-2] |
        [d 'a-2~] ['a16 'a-2 'b cis-2] d2 |
@@ -218,6 +222,10 @@ global  = \melodic{
        \paper{
                \paper_twenty
                linewidth= 195.\mm;
        \paper{
                \paper_twenty
                linewidth= 195.\mm;
+%              arithmetic_basicspace = 2.;
+%              arithmetic_multiplier = 6.\pt;
+               arithmetic_basicspace = 3.;
+               arithmetic_multiplier = 6.\pt;
        }
        \midi{
                \tempo 4 = 110;
        }
        \midi{
                \tempo 4 = 110;
index aee8b4c4a56c68cac716758ddf739b033b596ba9..b0812f72b1813e60f774eb6d435d5c40c986e19e 100644 (file)
@@ -24,10 +24,10 @@ rh = \melodic{
        \multi 2 < 
                {
                        \stemup
        \multi 2 < 
                {
                        \stemup
-%                      c4\mr^"(\\textsharp)"\p r r |
-%                      c4\mr^"(\\textsharp)" r r
-                       c4^"(\\textsharp)"\p r r |
-                       c4^"(\\textsharp)" r r
+%                      c'4\mr^"(\\textsharp)"\p r r |
+%                      c'4\mr^"(\\textsharp)" r r
+                       c'4^"(\\textsharp)"\p r r |
+                       c'4^"(\\textsharp)" r r
                }
                {
                        \stemdown
                }
                {
                        \stemdown
@@ -35,6 +35,7 @@ rh = \melodic{
                        a4 r r
                }
        > |
                        a4 r r
                }
        > |
+       \stemboth;
        [a'8\mf( es'-3\> d' c' bes!-3 a] |
        [g fis-3 e!-2 d-1 c'-4 \!a] |
        [)bes32(\p a bes16] [d'8-5 bes-3 g-1] )g'4 |
        [a'8\mf( es'-3\> d' c' bes!-3 a] |
        [g fis-3 e!-2 d-1 c'-4 \!a] |
        [)bes32(\p a bes16] [d'8-5 bes-3 g-1] )g'4 |
@@ -43,12 +44,12 @@ rh = \melodic{
        [)a-2 c'-4( a f] ) f'4 |
 %      r8 [c'-5 bes a g\tr f] |
        r8 [c'-5 bes a g f] |
        [)a-2 c'-4( a f] ) f'4 |
 %      r8 [c'-5 bes a g\tr f] |
        r8 [c'-5 bes a g f] |
-       [g-2 bes-4 a g fis-1 e-2] |
+       [g-2 bes-4 a g f-1 e-2] |
        [f-3 d-1 f-2 a-3 d'-5 g-2] |
        \multi 2 < 
                {
                        \stemup
        [f-3 d-1 f-2 a-3 d'-5 g-2] |
        \multi 2 < 
                {
                        \stemup
-                       [cis'32-4 b cis'16 e'8-5-"poco cresc." cis-3 a e' cis]
+                       [cis'32-4 b cis'16 e'8-5-"poco cresc." cis'-3 a e' cis']
                }
                {
                        \stemdown
                }
                {
                        \stemdown
@@ -73,11 +74,12 @@ rh = \melodic{
        [d-1 a-5 f-3 d-1 cis-2 d-1] |
        [e-3\< g-5 e-3 'bes-1 g-5 e-3] |
        ['bes-1 g-5 e-3 \!cis-2 'a-1 g-5] |
        [d-1 a-5 f-3 d-1 cis-2 d-1] |
        [e-3\< g-5 e-3 'bes-1 g-5 e-3] |
        ['bes-1 g-5 e-3 \!cis-2 'a-1 g-5] |
-       [f16-4\mf d-2 c-1 'bes-3] s4 s |
+       [f16-4\mf d-2 c-1 'bes-3] /stemup 'a-2 s16 s8 s4 |
 % ugh
 %      s1 |
        s4 s4 s4 |
 % ugh
 %      s1 |
        s4 s4 s4 |
-       s4 s16 [d16-1-"m.d." f-2 a-4] [d-2-"m.g." f a] \stemup d'-1 |
+       s4 s16 [d16-1-"m.d." f-2 a-4] \stemdown [d-2-"m.g." f a] \stemup d'-1 |
+       \stemboth
        [f' a'-4 f' d'] [f'-4 d' b d'-5] [gis-2 b a g] |
        <g'!4.-5\f e' a> a'8-5 
        \multi 2 <
        [f' a'-4 f' d'] [f'-4 d' b d'-5] [gis-2 b a g] |
        <g'!4.-5\f e' a> a'8-5 
        \multi 2 <
@@ -124,32 +126,33 @@ lh = \melodic{
        gis4-3 r r |
        e-4( )gis-2 e |
        [a8-4 e'-1 c'-2 a-4 e'-1 c'-2 ] |
        gis4-3 r r |
        e-4( )gis-2 e |
        [a8-4 e'-1 c'-2 a-4 e'-1 c'-2 ] |
+       [g!-5 es'-1 c'-1 g-5 es'-1 c'-1 ] |
        fis4-5 r r 
        d-4( ) fis d-5 |
        fis4-5 r r 
        d-4( ) fis d-5 |
-%      g\mr-"(\textsharp)" r r f!8 |
-       g-"(\textsharp)" r r8 f! |
+%      g\mr-"(\\textsharp)" r r f!8 |
+       g-"(\\textsharp)" r r8 f! |
        [e32 f e8.] r4 r |
 %      f\pr r r8 e |
        f r r8 e |
        d4 r8 [f-1 e d] |
        [e-2 d-3 cis-4 e-1 d-2 cis-3] |
        [e32 f e8.] r4 r |
 %      f\pr r r8 e |
        f r r8 e |
        d4 r8 [f-1 e d] |
        [e-2 d-3 cis-4 e-1 d-2 cis-3] |
-       d4-2( )c! 'b-4 |
-       'a( )a a |
-       'a( )a a |
-       'a( )a a |
-       'a( )a a |
-       'b r r |
-       'b-5( )b 'b |
+       d4-2( )c! 'bes-4 |
+       'a( )a 'a |
+       'a( )a 'a |
+       'a( )a 'a |
+       'a( )a 'a |
+       'bes r r |
+       'bes-5( )bes 'bes |
        'a r r |
        'a-2( )d-1 'd |
        'g r r |
        'a r r |
        'a-2( )d-1 'd |
        'g r r |
-       'g( )g g |
+       'g( )g 'g |
        'g r r |
        'g r r |
-       'g( )g g |
+       'g( )g 'g |
        'a r r |
        'a r r |
-       'a( )a a |
+       'a( )a 'a |
        'a r r |
        'a r r |
-       'a( )a a |
+       'a( )a 'a |
        'cis r r |
        'cis( )cis 'cis |
        'd-4 s16
        'cis r r |
        'cis( )cis 'cis |
        'd-4 s16
@@ -165,6 +168,7 @@ lh = \melodic{
        \stemdown
 %      [d-4-"m.g." f-"cresc."] a s s8 s4\dep |
        [d-4-"m.g." f-"cresc."] a s s8 s4-"*" |
        \stemdown
 %      [d-4-"m.g." f-"cresc."] a s s8 s4\dep |
        [d-4-"m.g." f-"cresc."] a s s8 s4-"*" |
+       \stemboth
 % ugh, whole rest has duration of one bar
 %      r1 |
        r4 r r |
 % ugh, whole rest has duration of one bar
 %      r1 |
        r4 r r |
@@ -205,6 +209,10 @@ global  = \melodic{
        \paper{
                \paper_twenty
                linewidth= 195.\mm;
        \paper{
                \paper_twenty
                linewidth= 195.\mm;
+%              arithmetic_basicspace = 2.;
+%              arithmetic_multiplier = 6.\pt;
+               arithmetic_basicspace = 2.;
+               arithmetic_multiplier = 8.\pt;
        }
        \midi{
                \tempo 4 = 90;
        }
        \midi{
                \tempo 4 = 90;
index 14d1bf6fb533fac95fd903f15ada2989a7f8526d..b25d5a287faafb42c5723602b48bd283f29e5a89 100644 (file)
@@ -12,24 +12,26 @@ one = \melodic{
        \octave c';
        \skip 4*4; |
        \stemup
        \octave c';
        \skip 4*4; |
        \stemup
-       r4 d2-5( cis4-4 |
+       r4 d'2-5( cis'4-4 |
        \stemboth
        \stemboth
-       [)d16-5\mf a'-4( g' f'] [e' f'-4 cis'-2 d'-1] 
-       [e32-3 d e8 f16] [d'8.-1 cis'16-3] |
+       [)d'16-5\mf a'-4( g' f'] [e' f'-4 cis'-2 d'-1] 
+       [e'32-3 d' e'8 f'16] [d'8.-1 cis'16-3] |
        \stemup
        \stemup
-       )cis'4\> ~ [cis16 a \!d'8 ~] d4 c-5 |
+       )cis'4\> ~ [cis'16 a \!d'8 ~] d'4 c'-5 |
        b2-4 ~ b4 a-5 ~ |
        [a16 a-5 \stemup g! f] g4-4\< ~ g f-3 ~ |
        [\!f16 a g f] [e16 g8.-5 ~] [g16 g-5 f-4 e-3] [d-1 f8.-4 ~] |
        [f16 f-3 e d] b4 a-5 g-5 |
        b2-4 ~ b4 a-5 ~ |
        [a16 a-5 \stemup g! f] g4-4\< ~ g f-3 ~ |
        [\!f16 a g f] [e16 g8.-5 ~] [g16 g-5 f-4 e-3] [d-1 f8.-4 ~] |
        [f16 f-3 e d] b4 a-5 g-5 |
-       fis4-4 g r8\<-"rall." [g16-1( bes-2] r16 [bes-2 a-2 \!g-1] |
-       ) d'1-5
+       fis4-4 g r8\<-"rall." [g16-1( bes-2] \!e'4-5\> |
+       \!)d'1-5
+       \bar "|.";
 }
 
 two = \melodic{
        \octave c';
        r16\p [d'-5( c'-4 bes-3] [a-2 bes-3 f-1 g-2] 
        [a32-3 g a8 bes16-1] [g8. f16-1] |
 }
 
 two = \melodic{
        \octave c';
        r16\p [d'-5( c'-4 bes-3] [a-2 bes-3 f-1 g-2] 
        [a32-3 g a8 bes16-1] [g8. f16-1] |
+       \stemdown
        )f2 e2 |
        \translator Staff=bass \octave c; \stemup
        r4 a-1 bes-2 b-1 |
        )f2 e2 |
        \translator Staff=bass \octave c; \stemup
        r4 a-1 bes-2 b-1 |
@@ -39,7 +41,7 @@ two = \melodic{
        s4 [e32 d e8.~] e4 d4 ~ |
        d4. [cis16-2 d-1] cis4 d-1 ~ |
        d8 r r16 [e-2 f d] r16 [e-2 f d] r [d-1 e-3 cis] |
        s4 [e32 d e8.~] e4 d4 ~ |
        d4. [cis16-2 d-1] cis4 d-1 ~ |
        d8 r r16 [e-2 f d] r16 [e-2 f d] r [d-1 e-3 cis] |
-       r16 [e-3 d-1 c!-2] ['bes! d8.] r8 e'4-5 |
+       r16 [e-3 d-1 c!-2] ['bes! d8.] s4 r16 [bes-2 a-2 \!g-1] |
        fis1-2
 }
 
        fis1-2
 }
 
@@ -47,24 +49,32 @@ three = \melodic{
        \octave c;
        \stemup
        f2-1( e-2 |
        \octave c;
        \stemup
        f2-1( e-2 |
-       [)d16 b'( c' bes] [a-4 bes-2 f-5 g-4] 
+       \stemboth;
+       [)d16 d'( c' bes] [a-4 bes-2 f-5 g-4] 
        [a32 g a8 bes16-2]
        [g8.-4 f16-5] |
        )f2-5 g4-4 gis |
        a2-2 ~ [a16 a-1( g f] [e-4 f-2 c-5 d] |
        [e32 d e8 f16] [d8.-4 c16-5] \stemboth )c4.-5 d8-4 |
        [a32 g a8 bes16-2]
        [g8.-4 f16-5] |
        )f2-5 g4-4 gis |
        a2-2 ~ [a16 a-1( g f] [e-4 f-2 c-5 d] |
        [e32 d e8 f16] [d8.-4 c16-5] \stemboth )c4.-5 d8-4 |
+       \stemdown
        e4 ~ [e16 f-2( e-3 d-4] [cis 'a 'b cis-3] [d-4 e-3 f-2 d-4] |
        \textstyle "finger";
        )'bes!2-"5\\_4" 'a ~ |
        e4 ~ [e16 f-2( e-3 d-4] [cis 'a 'b cis-3] [d-4 e-3 f-2 d-4] |
        \textstyle "finger";
        )'bes!2-"5\\_4" 'a ~ |
-       a |
+       'a 'a |
        'd cis-5 |
        'd cis-5 |
-       b1-2
+       a1-2
+       \bar "|.";
 }
 
 four = \melodic{
        \octave c;
 }
 
 four = \melodic{
        \octave c;
+       \stemdown;
        d2-3 cis-4 |
        d2-3 cis-4 |
-       \skip 4*16;
+       \skip 4*12;
+       \translator Staff=treble \octave c'; \stemup \property Voice.hshift = 1 
+       a4 gis-2 ~ [gis16 gis-3 fis e]
+       \skip 4*1;
+       \translator Staff=bass \octave c; \stemdown \property Voice.hshift = 0 
        \stemup
        b2-1 a-1 |
        g a4. [gis16 a] |
        \stemup
        b2-1 a-1 |
        g a4. [gis16 a] |
@@ -106,16 +116,21 @@ global  = \melodic{
                \type Staff=treble  < 
                        \global 
 % huh? try these iso directly!
                \type Staff=treble  < 
                        \global 
 % huh? try these iso directly!
-                       \lh
-%                      \one
-%                      \two
+%                      \lh
+                       \multi 2 < 
+                                 \one
+                                 \two
+                       >
                >
                \type Staff=bass  < 
                        \global 
                >
                \type Staff=bass  < 
                        \global 
-                       \rh
+%                      \rh
 % or try \two having here, iso above!
 % or try \two having here, iso above!
-%                      \three
-%                      \four
+                       \clef "bass";
+                       \multi 2 <
+                                 \three
+                                 \four
+                       >
                >
        >
        \paper{
                >
        >
        \paper{
@@ -123,6 +138,6 @@ global  = \melodic{
                linewidth= 195.\mm;
        }
        \midi{
                linewidth= 195.\mm;
        }
        \midi{
-               \tempo 4 = 110;
+               \tempo 4 = 40;
        }
 }
        }
 }
diff --git a/mutopia/out/dummy.dep b/mutopia/out/dummy.dep
new file mode 100644 (file)
index 0000000..e69de29
index cc41d5b43dcf79fca5dad7664fe58c18ab2da475..48504f2348bd9035e967b3e7480d2bc75b22c018 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index 72412742d6b0e643299fee43a88af0ee28bdb944..8d83dbf5187a7dc75882511ff3ae596230f0bf00 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index db0adac5e9105a006c0318cbf72c79a14c2a1d70..15cedcde1607bf7e869b283fcfa6d29aea593045 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index 992b3bfc10a8b399d863f95e798940ffb4f6455f..38d26c7e178933afec80c0b53e92a8c0ebbc4261 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index 7b3b459a2ad3018e077b16cf92ca1162c830fd88..050ed6fcf98366708d2b458c53f9f071166e89ef 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index 031ebf9b615c082fd5d59ec136dc9ab1583dcd38..36361972a449e1e707eba6a4cd3f8a87927204ae 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index a8d47ee86058388289344d04694afcdef6a300b9..71ac49c793b127cee74876a401b66319b9c49a47 100644 (file)
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
 \fetdef\downbow{39}
 \fetdef\turn{40}
 \fetdef\trill{41}
-\fetdef\pedalheel{42}
-\fetdef\pedaltoe{43}
-\fetdef\flageolet{44}
+\fetdef\upedalheel{42}
+\fetdef\dpedalheel{43}
+\fetdef\upedaltoe{44}
+\fetdef\dpedaltoe{45}
+\fetdef\flageolet{46}
 
 % flags
 
 % flags
-\fetdef\eighthflag{45}
-\fetdef\sixteenthflag{46}
-\fetdef\thirtysecondflag{47}
-\fetdef\sixtyfourthflag{48}
-\fetdef\deighthflag{49}
-\fetdef\dsixteenthflag{50}
-\fetdef\dthirtysecondflag{51}
-\fetdef\dsixtyfourthflag{52}
+\fetdef\eighthflag{47}
+\fetdef\sixteenthflag{48}
+\fetdef\thirtysecondflag{49}
+\fetdef\sixtyfourthflag{50}
+\fetdef\deighthflag{51}
+\fetdef\dsixteenthflag{52}
+\fetdef\dthirtysecondflag{53}
+\fetdef\dsixtyfourthflag{54}
 
 % clefs
 
 % clefs
-\fetdef\altoclef{53}
-\fetdef\caltoclef{54}
-\fetdef\bassclef{55}
-\fetdef\cbassclef{56}
-\fetdef\violinclef{57}
-\fetdef\cviolinclef{58}
+\fetdef\altoclef{55}
+\fetdef\caltoclef{56}
+\fetdef\bassclef{57}
+\fetdef\cbassclef{58}
+\fetdef\violinclef{59}
+\fetdef\cviolinclef{60}
 
 
index cab0aaa82c6a3e0a4afd5bf501e9899faf435a8d..78933d0c4b26bfd7b213641ed860b6c26eb4cb40 100644 (file)
 % transplant a TeX dimension into the PS output.
 \def\PSsetTeXdimen#1{\expandafter\special{! /#1 (\the\csname #1\endcsname) deftexdimen}}
 
 % transplant a TeX dimension into the PS output.
 \def\PSsetTeXdimen#1{\expandafter\special{! /#1 (\the\csname #1\endcsname) deftexdimen}}
 
-\def\turnOnPostScript{
+\def\turnOnPostScript{%
 \def\embeddedps##1{%
         % This sets CTM so that you get to the currentpoint
         % by executing a 0 0 moveto
         \special{ps: @beginspecial @setspecial ##1 @endspecial}       
 }
 \def\embeddedps##1{%
         % This sets CTM so that you get to the currentpoint
         % by executing a 0 0 moveto
         \special{ps: @beginspecial @setspecial ##1 @endspecial}       
 }
-
 %
 % width, slope, height 
 %
 %
 % width, slope, height 
 %
@@ -60,8 +59,7 @@ def
         def     
 } def
 }
         def     
 } def
 }
-
-
+%
 \PSsetTeXdimen{staffrulethickness}
 \PSsetTeXdimen{staffheight}
 \special{! %
 \PSsetTeXdimen{staffrulethickness}
 \PSsetTeXdimen{staffheight}
 \special{! %
@@ -164,7 +162,7 @@ def
 
 
 
 
 
 
-\def\turnOnExperimentalFeatures{
+\def\turnOnExperimentalFeatures{%
 % draw a slur in embedded postscript
 \special{ps:
 }}
 % draw a slur in embedded postscript
 \special{ps:
 }}
index 8a03396e189ab912022e661a179eeeefa159fc40..7a841241557419b1d30083f832a42621667ae395 100644 (file)
@@ -2,10 +2,12 @@
 %% include file for LilyPond
 %%
 %% this file defines various macros to accomodate lilypond output
 %% include file for LilyPond
 %%
 %% this file defines various macros to accomodate lilypond output
-
+%% 
+%% let's not make par before endinput
+%
 % TeXbook ex 7.7
 \def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax}
 % TeXbook ex 7.7
 \def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax}
-
+%
 % skip if included already
 \def\SkipLilydefs{\endinput}
 \ifundefined{EndLilyPondOutput}
 % skip if included already
 \def\SkipLilydefs{\endinput}
 \ifundefined{EndLilyPondOutput}
@@ -13,7 +15,7 @@
         \def\SkipLilydefs{}
 \fi
 \SkipLilydefs
         \def\SkipLilydefs{}
 \fi
 \SkipLilydefs
-
+%
 \ifundefined{mudelacopyright}
         \def\mudelacopyright{\copyright\ \number\year}
 \fi
 \ifundefined{mudelacopyright}
         \def\mudelacopyright{\copyright\ \number\year}
 \fi