]> git.donarmstrong.com Git - lilypond.git/commitdiff
release: 0.1.31 release/0.1.31
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 18 Nov 1997 09:07:43 +0000 (10:07 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 18 Nov 1997 09:07:43 +0000 (10:07 +0100)
79 files changed:
AUTHORS.text
Documentation/faq.pod
Documentation/links.pod
Documentation/other-packages.pod
INSTALL.text
NEWS
TODO
VERSION
bin/Makefile
debian/Makefile [new file with mode: 0644]
debian/README.debian [new file with mode: 0644]
debian/changelog [new file with mode: 0644]
debian/control [new file with mode: 0644]
debian/copyright [new file with mode: 0644]
debian/examples [new file with mode: 0644]
debian/info.ex [new file with mode: 0644]
debian/menu.ex [new file with mode: 0644]
debian/postinst [new file with mode: 0644]
debian/postinst.old.sh [new file with mode: 0644]
debian/postrm [new file with mode: 0644]
debian/preinst [new file with mode: 0644]
debian/rules [new file with mode: 0644]
debian/watch [new file with mode: 0644]
init/engraver.ly
init/feta16.ly [deleted file]
init/feta20.ly [deleted file]
input/font.ly
input/wtk1-fugue2.ly
lily/VERSION
lily/bar-grav.cc
lily/bar.cc
lily/include/bar.hh
lily/include/horizontal-align-item.hh
lily/include/normal-bar.hh [new file with mode: 0644]
lily/include/normal-span-bar.hh [new file with mode: 0644]
lily/include/score-bar.hh [new file with mode: 0644]
lily/include/span-bar.hh
lily/include/span-score-bar.hh
lily/lookup.cc
lily/normal-bar.cc [new file with mode: 0644]
lily/normal-span-bar.cc [new file with mode: 0644]
lily/score-align-gravs.cc
lily/score-bar.cc [new file with mode: 0644]
lily/score-column.cc
lily/score-halign-grav.cc
lily/scores.cc
lily/span-bar-grav.cc
lily/span-bar.cc
lily/span-score-bar-grav.cc
lily/span-score-bar.cc
make/Makefile
make/Toplevel.make.in
make/debian/Makefile [deleted file]
make/debian/README.debian.ex [deleted file]
make/debian/changelog [deleted file]
make/debian/control [deleted file]
make/debian/copyright [deleted file]
make/debian/dirs [deleted file]
make/debian/diversions.ex [deleted file]
make/debian/docs [deleted file]
make/debian/examples [deleted file]
make/debian/info.ex [deleted file]
make/debian/menu.ex [deleted file]
make/debian/postinst [deleted file]
make/debian/postrm [deleted file]
make/debian/rules [deleted file]
make/debian/watch [deleted file]
make/lelievijver.lsm
make/lilypond.lsm
make/lilypond.spec
mf/TODO
mf/feta-generic.mf
mf/feta-klef.mf
mf/feta-puntje.mf
mf/feta-toevallig.mf
mi2mu/mudela-stream.cc
tex/feta16.tex [deleted file]
tex/feta20.tex [deleted file]
tex/lilyponddefs.tex

index 428689b5ca34eeecf1fa4ee85069abdd00c30a21..cf19f67dd53d29948fff418eca3bb1c1933cbb59 100644 (file)
@@ -61,6 +61,6 @@ C\bC\bC\bCO\bO\bO\bON\bN\bN\bNT\bT\bT\bTR\bR\bR\bRI\bI\bI\bIB\bB\bB\bBU\bU\bU\bUT\bT\bT\bTO\bO\bO\bOR\bR\bR\bRS\bS
 
 
 
 
 
 
-27/Oct/97                LilyPond 0.1.30                        1
+27/Oct/97                LilyPond 0.1.31                        1
 
 
 
 
index 6c32aa3b92ff91998d174722fcea810a6d47ceba..b98fa6865cbb25949af2dd939db584173d942424 100644 (file)
@@ -8,7 +8,7 @@ Some questions that have been answered before.
 
 =head2 Installing
 
 
 =head2 Installing
 
-Q: I get all kinds of errors while  compiling parser.cc
+Q: I get all kinds of errors while  compiling F<parser.cc>
 
 A: LilyPond uses features of bison version 1.25. Please confirm that
 you are using a version 1.25 or better, that is B<GNU> bison
 
 A: LilyPond uses features of bison version 1.25. Please confirm that
 you are using a version 1.25 or better, that is B<GNU> bison
@@ -135,13 +135,14 @@ translated into printable items is complex: it is not always possible
 to associate one Request with one Item or Spanner.
 
 As a further notice, we want to move away from TeX (and perhaps
 to associate one Request with one Item or Spanner.
 
 As a further notice, we want to move away from TeX (and perhaps
-output PostScript or render to an X window too)
+output PostScript or render to an X window too), so  using TeX will
+make sources non-portable at some time.
 
 =head2 Miscellaneous
 
 Q: Do you support pop songs (chords, single staff, lyrics)?
 
 
 =head2 Miscellaneous
 
 Q: Do you support pop songs (chords, single staff, lyrics)?
 
-A: Yes, see the twinkle-pop example
+A: Yes, see the F<twinkle-pop> example
 
 Q: Do you support guitar chord diagrams?
 
 
 Q: Do you support guitar chord diagrams?
 
@@ -153,15 +154,16 @@ Q: Do you support TAB notation
 
 A: No. The same as for the previous question goes, but TAB is a lot
 more work than diagrams (TAB needs modification of Parser, Lexer,
 
 A: No. The same as for the previous question goes, but TAB is a lot
 more work than diagrams (TAB needs modification of Parser, Lexer,
-Notehead, Stem, and stem-code. )
+Staff, Notehead, Stem code and all the code that creates these graphic
+elements.)
 
 Q: How do I change the TeX layout?
 
 
 Q: How do I change the TeX layout?
 
-A: See lilyponddefs.tex, it has some comments.
+A: See F<lilyponddefs.tex>, it has some comments.
 
 Q: How do I learn the C++ code?
 
 
 Q: How do I learn the C++ code?
 
-A: The entry point is in main(). Good luck. :-)
+A: The entry point is in C<main()>. Good luck. :-)
 
 Seriously, read, reread and reread lilygut and CodingStyle, and
 just start anywhere. 
 
 Seriously, read, reread and reread lilygut and CodingStyle, and
 just start anywhere. 
@@ -195,6 +197,20 @@ finding a cute syntax (such as YYYY) isn't very hard. The complicated
 issue how to adapt the internals to do XXXX. The parser is really a
 simple front end to the complicated internals. 
 
 issue how to adapt the internals to do XXXX. The parser is really a
 simple front end to the complicated internals. 
 
+
+Q: I want to implement XXXX!  Should I do this?
+
+A: There might be better ways of doing XXXX, so it's a good thing to
+ask about this before you start hacking.  If you want to keep in touch
+current developments, you should subscribe to the mailing list.
+
+
+Q: I want to implement XXXX!  How should I do this?
+
+A: Your best bet of getting me to include code, is to present it as a
+"fait accompli", ie., to send me a patch.
+
+
 Q: Why do I need g++ >= 2.7?
 
 A: By using g++, GNU LilyPond is portable to all platforms which support
 Q: Why do I need g++ >= 2.7?
 
 A: By using g++, GNU LilyPond is portable to all platforms which support
@@ -208,7 +224,7 @@ Q: I don't get midi-output, even if I use B<-M>
 A: Your \score should include a \midi block, eg.
 
        \score {
 A: Your \score should include a \midi block, eg.
 
        \score {
-               \melodic { c c g g }
+               \melodic { c4 c g g }
                \paper {}       
                \midi {
                        \output "myfile.mid";
                \paper {}       
                \midi {
                        \output "myfile.mid";
@@ -218,6 +234,13 @@ A: Your \score should include a \midi block, eg.
 The B<-M> option was added to LilyPond because processing the \paper
 block is so slow.
 
 The B<-M> option was added to LilyPond because processing the \paper
 block is so slow.
 
+Q: A lot of musical stuff doesn't make it to the MIDI file (dynamics,
+articulation, etc).
+
+A: The MIDI output was originally put in as a proof that MIDI could be
+done, and as a method of proof"reading" the input.  The MIDI support
+is by no means finished. 
+
 Q: I get 
 
        can't load library 'libflower.so'
 Q: I get 
 
        can't load library 'libflower.so'
@@ -238,9 +261,11 @@ Have a look at http://www.cygnus.com/gnu-win32.  To make GNU LilyPond
 type C<make>. (I am not promising to maintain this platform, it is just
 that when forced into doze, i'm sometimes too lazy to reboot.)
 
 type C<make>. (I am not promising to maintain this platform, it is just
 that when forced into doze, i'm sometimes too lazy to reboot.)
 
-A.2: I haven't had time to find a GCC crosscompiler (I<with> g++ and
-libg++, mind you) to DOS/Windows (in rpm, please :-)
+A.2: I haven't had time to find a Linux GCC crosscompiler (I<with> g++
+and libg++, mind you) to DOS/Windows (in rpm, please :-)
 
 
+A.3: If you are knowledgeable enough to make w32 compiles from time to
+time, please do so!  We want to keep away from w32 as far as possible.
 
 Q: I just love to blindly run the (sometimes bit stale) .exe's you distribute. 
 Why do i need cygwin.dll?
 
 Q: I just love to blindly run the (sometimes bit stale) .exe's you distribute. 
 Why do i need cygwin.dll?
index e0b5c61d769c017a77b0a29c03deefb3a029c015..5cccbf7c26a8e9bd9803b9ad5d4decc25da2298a 100644 (file)
@@ -18,7 +18,8 @@ Foundation to create a system of free software for the world-community
 
 =item http://www.zib.de/Visual/software/doc++/index.html
 
 
 =item http://www.zib.de/Visual/software/doc++/index.html
 
-The documentation system for C++ sources, which the LilyPond sources use.
+The documentation system for C++ sources, which is used for the
+LilyPond sources.
 
 =item http://www.iat.unc.edu/technology/music/music.html
 
 
 =item http://www.iat.unc.edu/technology/music/music.html
 
@@ -64,11 +65,10 @@ These development releases will also be at
 
 =head2 News
 
 
 =head2 News
 
+The following newsgroups all contain material relevant to LilyPond
 
 =over 4
 
 
 =over 4
 
-The following newsgroups all contain material relevant to LilyPond
-
 =item news:comp.music.research
 
 =item news:rec.music.compose
 =item news:comp.music.research
 
 =item news:rec.music.compose
index 38063a3eb788125da0f253fa12be17c2996138dc..d1aad66d5cd207e7584c3eea224805347e7da413 100644 (file)
@@ -13,13 +13,13 @@ packages. Feel free to add info (and mail it to me).
 
 =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 (windows95 port underway). Outputs musictex.
+A Notation editor/Sequencer for X. Also outputs musictex.
 
 =item Common Notation,
 http://www-ccrma.stanford.edu/CCRMA/Software/cmn/cmn.html
 
 A versatile lisp package. Part of the Common Music system. Input is in
 
 =item Common Notation,
 http://www-ccrma.stanford.edu/CCRMA/Software/cmn/cmn.html
 
 A versatile lisp package. Part of the Common Music system. Input is in
-Lisp. It needs some Adobe fonts
+Lisp. It needs the Adobe Sonata or Finale Petrucci font.
 
 =item Vivace, http://www.calband.berkeley.edu/~gmeeker/vivace
 
 
 =item Vivace, http://www.calband.berkeley.edu/~gmeeker/vivace
 
@@ -36,18 +36,22 @@ Added for completeness. You are currently reading her documentation.
 
 =item Music, http://www.cs.nott.ac.uk/Department/Staff/ef/printing.html
 
 
 =item Music, http://www.cs.nott.ac.uk/Department/Staff/ef/printing.html
 
-A TROFF preprocessor by Eric Foxley
+A TROFF preprocessor by Eric Foxley.
 
 =item PMX, http://www.gmd.de/Misc/Music/
 
 
 =item PMX, http://www.gmd.de/Misc/Music/
 
-A Preprocessor for MusiXTeX by Don Simons
+A Preprocessor for MusiXTeX by Don Simons.
+
+=item M-Tx, 
+
+A Preprocessor to PMX by Dirk Laurie.
 
 =item Musictex, http://www.gmd.de/Misc/Music/
 
 MusicTeX is a macro package for TeX to typeset polyphonic or
 instrumental music.  It was originally written by Daniel Taupin.  
 
 
 =item Musictex, http://www.gmd.de/Misc/Music/
 
 MusicTeX is a macro package for TeX to typeset polyphonic or
 instrumental music.  It was originally written by Daniel Taupin.  
 
-It includes a full-featured set of fonts.
+It includes a full-featured (but slightly unsightly) set of fonts.
 
 =item MusiXTeX, http://www.gmd.de/Misc/Music/
 
 
 =item MusiXTeX, http://www.gmd.de/Misc/Music/
 
@@ -86,7 +90,7 @@ Schofer & Andrea Steinbach. With some fonts
 
 =item Calliope, http://www.cl.cam.ac.uk/users/wfc/
 
 
 =item Calliope, http://www.cl.cam.ac.uk/users/wfc/
 
-A NeXT package by William F. Clocksin. Requires Adobe fonts.
+A NeXT package by William F. Clocksin. Requires the Adobe Sonata font.
 
 =back
 
 
 =back
 
@@ -116,7 +120,7 @@ Notation editor for W95 and Mac
 Notation editor on Acorn machines.  Their developers call it ``best
 notation program available''.  In any case, they are good at bragging.
 
 Notation editor on Acorn machines.  Their developers call it ``best
 notation program available''.  In any case, they are good at bragging.
 
-=item [``EDV-Notensatz'']
+=item [``EDV-Notensatz'']
 
 URW's music-engraving system described by [Wanske].  (Although URW
 used ~DM 1.000.000 while developing this, it didn't buy them a cute
 
 URW's music-engraving system described by [Wanske].  (Although URW
 used ~DM 1.000.000 while developing this, it didn't buy them a cute
@@ -124,8 +128,6 @@ name.)
 
 =item Logic,
 
 
 =item Logic,
 
-=item Personal Composer
-
 =item Finale
 
 =item Score
 =item Finale
 
 =item Score
@@ -164,9 +166,12 @@ different Unix clones.  It uses MIDI-keyboard input
 A-R Music Engraving, by A-R Editions, Inc. Professional engraving on
 Sun boxen.
 
 A-R Music Engraving, by A-R Editions, Inc. Professional engraving on
 Sun boxen.
 
-=item MusiCopy, 
+=item MusiCopy, [no WWW address]
 
 A project at Ohio State university, which was discontinued in 1987.
 
 A project at Ohio State university, which was discontinued in 1987.
+The technical reports that have resulted from MusiCopy can still be
+obtained.
+
 
 =item Berlioz, http://www.?.fr/
 
 
 =item Berlioz, http://www.?.fr/
 
@@ -174,3 +179,12 @@ 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".
 
+=head2 Other stuff
+
+=item Sonata, http://www.adobe.com/type/browser/F/F_SONA.html
+
+The music font by Adobe.
+
+
+
+
index 93fd8e0faaff757d5a8d3fcecee189c245bee28a..c8455c2dc8099aebce6a4625a25aee7c22cf05f5 100644 (file)
@@ -61,7 +61,7 @@ R\bR\bR\bRU\bU\bU\bUN\bN\bN\bNN\bN\bN\bNI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        1
+20/Oct/97                LilyPond 0.1.31                        1
 
 
 
 
 
 
@@ -127,7 +127,7 @@ C\bC\bC\bCO\bO\bO\bON\bN\bN\bNF\bF\bF\bFI\bI\bI\bIG\bG\bG\bGU\bU\bU\bUR\bR\bR\bRI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG a\b
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        2
+20/Oct/97                LilyPond 0.1.31                        2
 
 
 
 
 
 
@@ -193,7 +193,7 @@ INSTALL(1)            LilyPond documentation           INSTALL(1)
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        3
+20/Oct/97                LilyPond 0.1.31                        3
 
 
 
 
 
 
@@ -259,7 +259,7 @@ I\bI\bI\bIN\bN\bN\bNS\bS\bS\bST\bT\bT\bTA\bA\bA\bAL\bL\bL\bLL\bL\bL\bLI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        4
+20/Oct/97                LilyPond 0.1.31                        4
 
 
 
 
 
 
@@ -325,7 +325,7 @@ R\bR\bR\bRE\bE\bE\bED\bD\bD\bDH\bH\bH\bHA\bA\bA\bAT\bT\bT\bT L\bL\bL\bLI\bI\bI\bIN\bN\bN\bNU\bU\bU\bUX\bX\bX\bX
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        5
+20/Oct/97                LilyPond 0.1.31                        5
 
 
 
 
 
 
@@ -391,6 +391,6 @@ A\bA\bA\bAU\bU\bU\bUT\bT\bT\bTH\bH\bH\bHO\bO\bO\bOR\bR\bR\bRS\bS\bS\bS
 
 
 
 
 
 
-20/Oct/97                LilyPond 0.1.30                        6
+20/Oct/97                LilyPond 0.1.31                        6
 
 
 
 
diff --git a/NEWS b/NEWS
index 7710007f24df462ff6339eb3266f746869de9e36..e3b20155dc3efbe6efbd0ac402f74e2d7c4584a4 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,15 @@
+pl 31
+       - bf: replaced Score_column assert by a warning (thanks Scott)
+       - bf: mi2mu version output (thanks Scott)
+       - faq updates
+       - always output lily header with  Lily version
+       - bar mucking: make scorebars/braces different from repeat bars.
+       - feta: repeatcolon, clef bf's
+       - debian/ updates. (AF)
+       - moved debian stuff into toplevel dir
+
+********
+nov 11
 pl 30
        - feta: G clef. 
        - scripts now do relative coords (fixes lyrics + barnumber bug)
 pl 30
        - feta: G clef. 
        - scripts now do relative coords (fixes lyrics + barnumber bug)
diff --git a/TODO b/TODO
index 6038253a3f9f91d57a19d8543a223904ef421aef..f99d401dcbf142cd9791007d3687fe029140b333 100644 (file)
--- a/TODO
+++ b/TODO
@@ -7,6 +7,7 @@ Most of the items are marked in the code as well, with full explanation.
 grep for TODO and ugh/ugr
 
 0.2:
 grep for TODO and ugh/ugr
 
 0.2:
+       * add a screenshot to the website.
 
        * LILYSOURCEDIR
        
 
        * LILYSOURCEDIR
        
@@ -22,7 +23,7 @@ grep for TODO and ugh/ugr
 
        * bf: abbrevs over whole note
 
 
        * bf: abbrevs over whole note
 
-       * Score_bar/Piano_braces, are *not* ordinary bars 
+       * mi2mu: fix a1*0/4 output
 
 STUFF
 
 
 STUFF
 
@@ -57,9 +58,8 @@ STUFF
 
        * AFM for font input?
 
 
        * AFM for font input?
 
-
-
 3RD PARTY BUGS:
 3RD PARTY BUGS:
+
        * Rational infty(HUGE_VAL) on glibc / w32
 
        * Fix profiling. gprof bugreport?
        * Rational infty(HUGE_VAL) on glibc / w32
 
        * Fix profiling. gprof bugreport?
@@ -69,7 +69,7 @@ PROJECTS
        * Unicode support?
        - 16 bit Strings
        - -u switch
        * Unicode support?
        - 16 bit Strings
        - -u switch
-       - detect of 16/8 bit files
+               - detect of 16/8 bit files
        - examples to go with it.
 
        * Spring_spacer:
        - examples to go with it.
 
        * Spring_spacer:
diff --git a/VERSION b/VERSION
index 9692368e960b678931b8176e4059a9a171243574..155de33c7145efad167ac3be45f10b027a1d4468 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 = 30
+TOPLEVEL_PATCH_LEVEL = 31
 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 7850aabe6542060771c415b106ecbbaf1f2f3ec0..5c0043d97729f69aa3fcd4d2472058451be198f6 100644 (file)
@@ -21,7 +21,7 @@ $(outdir)/%: %.pl
 
 #FIXME.  Check for bash?
 $(outdir)/%: %.sh
 
 #FIXME.  Check for bash?
 $(outdir)/%: %.sh
-       sed 's!@SH@!$(SH)!' < $< > $@
+       sed 's!@SH@!$(SHELL)!' < $< > $@
        chmod 755 $@
 
 $(outdir)/%: %.py
        chmod 755 $@
 
 $(outdir)/%: %.py
diff --git a/debian/Makefile b/debian/Makefile
new file mode 100644 (file)
index 0000000..06cd03f
--- /dev/null
@@ -0,0 +1,19 @@
+depth = ..
+
+NAME= debian
+
+# generic variables:
+#
+include ./$(depth)/make/Variables.make
+include ./$(depth)/make/Files.make 
+#
+
+# generic targets and rules:
+#
+include ./$(depth)/make/Targets.make
+include ./$(depth)/make/Rules.make
+#
+
+
+EXTRA_DISTFILES = README.debian changelog control copyright examples\
+       info.ex menu.ex postinst postinst.old.sh postrm preinst rules watch
diff --git a/debian/README.debian b/debian/README.debian
new file mode 100644 (file)
index 0000000..88675bb
--- /dev/null
@@ -0,0 +1,22 @@
+lilypond for DEBIAN
+-------------------
+
+Starting with version 0.1.12, LilyPond comes with some new MF fonts.
+These fonts are not currently listed in /usr/lib/texmf/fontname/special.map
+(from the teTeX package), therefore the fonts will be created in a
+non-standard directory somewhere under /var/spool/texmf.  The problem is
+usually only aesthetic.  TeTeX can create and find the *.tfm and *.pk files
+without any problems.
+
+However, if you experience any font problems (such as the note heads
+not showing up, characters in the wrong places, error messages from
+TeX), especially after upgrading to a new version of LilyPond, you may
+need to delete the relevant *.tfm and *.pk files under the directory
+/var/spool/texmf.  You may also file a bug report about this if you
+like.
+
+LilyPond is still in active development, and many things may still change.
+When it is stablized in the future, these new fonts will probably be
+added into the standard special.map file.
+
+Anthony Fok <foka@gpu.srv.ualberta.ca>, Thu, 23 Oct 1997 16:59:32 -0600
diff --git a/debian/changelog b/debian/changelog
new file mode 100644 (file)
index 0000000..44850b3
--- /dev/null
@@ -0,0 +1,117 @@
+lilypond (0.1.29-1) unstable; urgency=low
+
+  * New upstream release
+  * Patched ./configure in source package to make c++ use the -O2 -g options
+    on all the files.  Now, /usr/bin/lilypond is a lot leaner!  <smile>
+    (I will discuss it with the upstream author.)
+  * Adapted postinst (a Perl script) from the musixtex package for lilypond.
+    Now postinst adds the new LilyPond font entries into
+    /usr/lib/texmf/fontname/special.map.
+  * Added preinst to clean up my mess from previous releases: the old
+    "stray" automatically generated TFM and PK font files were placed in
+    the wrong directories because they were not listed in
+    /usr/lib/texmf/fontname/special.map.
+  * Did some minor clean-up in debian/rules.
+  * Updated Standards-Version to 2.3.0.1
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Tue, 11 Nov 1997 02:31:33 -0700
+
+lilypond (0.1.25-1) unstable; urgency=low
+
+  * Added a note in README.debian about the possibility of some LilyPond
+    fonts not showing up after an upgrade, and a possible solution to this
+    problem.
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu, 23 Oct 1997 17:00:14 -0600
+
+lilypond (0.1.24-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Tue, 21 Oct 1997 04:12:01 -0600
+
+lilypond (0.1.23-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu, 16 Oct 1997 02:15:55 -0600
+
+lilypond (0.1.22-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Mon, 13 Oct 1997 23:51:01 -0600
+
+lilypond (0.1.21-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu,  9 Oct 1997 22:58:26 -0600
+
+lilypond (0.1.18.jcn1-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Sat,  4 Oct 1997 03:48:45 -0600
+
+lilypond (0.1.17-1) unstable; urgency=low
+
+  * New upstream release
+  * Remove redundancy in package's description (Fixed bug #12511)
+  * Added a note about the new LilyPond MF fonts which are not yet listed
+    in the current standard special.map (in the teTeX package)
+  * Added SHELL=/bin/bash to debian/rules because I use bashism. <smile>
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Sun, 28 Sep 1997 01:41:15 -0600
+
+lilypond (0.1.12-1) unstable; urgency=low
+
+  * New upstream release
+  * Updated the mailing address of the Free Software Foundation
+    listed in /usr/doc/lilypond/copyright
+  * Updated Standards-Version to 2.3.0.0
+  * Built with debmake 3.3.14 and fakeroot 0.0-9 <grin>
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Sun,  7 Sep 1997 23:00:53 -0600
+
+lilypond (0.1.9-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Mon, 18 Aug 1997 15:14:24 -0600
+
+lilypond (0.1.7-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu, 14 Aug 1997 15:18:40 -0600
+
+lilypond (0.1.6-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu, 14 Aug 1997 05:14:06 -0600
+
+lilypond (0.1.3-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Sat,  9 Aug 1997 14:15:11 -0600
+
+lilypond (0.1.2-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Thu,  7 Aug 1997 22:54:20 -0600
+
+lilypond (0.1.0-1) unstable; urgency=low
+
+  * Initial Release.
+
+ -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Wed,  6 Aug 1997 04:40:57 -0600
+
+Local variables:
+mode: debian-changelog
+add-log-mailing-address: "foka@gpu.srv.ualberta.ca"
+End:
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..500d23d
--- /dev/null
@@ -0,0 +1,22 @@
+Source: lilypond
+Section: contrib/tex
+Priority: optional
+Maintainer: Anthony Fok <foka@gpu.srv.ualberta.ca>
+Standards-Version: 2.3.0.1
+
+Package: lilypond
+Architecture: any
+Depends: ${shlibs:Depends}
+Recommends: tetex-base, musixtex | musixtex-fonts
+Description: A music typesetting program.
+ GNU LilyPond is a program which converts a music-script (mudela) into TeX
+ output, or MIDI to produce multi-staff scores. Features include multiple
+ meters, clefs, keys, lyrics, versatile input-language, cadenzas beams,
+ slurs, triplets, multiple voices.
+ .
+ Note: LilyPond uses the fonts from MusiXTeX.  Please install the package
+       musixtex or musixtex-fonts when you install lilypond.
+ .
+  URL: http://www.stack.nl/~hanwen/lilypond/
+  Authors: Han-Wen Nienhuys <hanwen@stack.nl>
+           Jan Nieuwenhuizen <jan@digicash.com>
diff --git a/debian/copyright b/debian/copyright
new file mode 100644 (file)
index 0000000..17f22e9
--- /dev/null
@@ -0,0 +1,43 @@
+This package was debianized by Anthony Fok foka@gpu.srv.ualberta.ca on
+Wed,  6 Aug 1997 04:30:28 -0600
+
+It was downloaded from
+    ftp://pcnov095.win.tue.nl/pub/lilypond/development/lilypond-0.1.29.tar.gz
+
+It is also available from:
+    ftp://alpha.gnu.org/gnu/
+
+For more information about GNU LilyPond, please visit:
+    http://www.stack.nl/~hanwen/lilypond/ for more information.
+
+Authors:
+    Han-Wen Nienhuys <hanwen@stack.nl>
+    Jan Nieuwenhuizen <jan@digicash.com>
+Copyright:
+
+  GNU LilyPond is Copyright (C) 1996,1997 
+  Jan Nieuwenhuizen & Han-Wen Nienhuys
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place - Suite 330,
+    Boston, MA  02111-1307, USA.
+
+
+All the other scripts and control files for building and installing
+GNU LilyPond under Debian GNU/Linux are also under the GNU General
+Public License (GPL) version 2 or later.  
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/doc/copyright/GPL.gz'.
diff --git a/debian/examples b/debian/examples
new file mode 100644 (file)
index 0000000..3be67ec
--- /dev/null
@@ -0,0 +1,2 @@
+input/*.ly
+input/*.tex
diff --git a/debian/info.ex b/debian/info.ex
new file mode 100644 (file)
index 0000000..5a311f0
--- /dev/null
@@ -0,0 +1,15 @@
+# This is a configuration files for installing a .info menu
+# The Description to be placed into the directory
+DESCR="Description"
+
+# The section this info file should be placed in (Regexp) followed by
+# the new section name to be created if the Regexp does not match
+# (Optional. If not given the .info will be appended to the directory)
+#SECTION_MATCH="Regexp"
+#SECTION_NAME="New Section Name"
+
+# The file referred to from the Info directory
+FILE=lilypond.info
+
+# Optional. The files to be copied to /usr/info
+#FILES=*.info
diff --git a/debian/menu.ex b/debian/menu.ex
new file mode 100644 (file)
index 0000000..179992f
--- /dev/null
@@ -0,0 +1 @@
+text Apps/Misc lilypond none "lilypond Description" /usr/bin/lilypond
diff --git a/debian/postinst b/debian/postinst
new file mode 100644 (file)
index 0000000..0b73406
--- /dev/null
@@ -0,0 +1,238 @@
+#!/usr/bin/perl -w
+#
+# postinst script for the Debian GNU/Linux lilypond package
+#
+#   by Anthony Fok <foka@gpu.srv.ualberta.ca>
+#   Initial release:  Sun, 26 Oct 1997 03:23:00 -0700
+#     Last modified:  Mon, 10 Nov 1997 22:26:10 -0700
+
+use strict;
+use File::Copy;
+
+my ($package, $pkg_name, $font_supplier, $font_typeface, $std_TEXMF, $TEXMF,
+    $TEXINPUTS, $MFINPUTS, $TFMFONTS, @fonts);
+
+sub correct_opus_fonts ($$);
+sub check_texmfcnf ();
+sub run_texhash ();
+sub add_fonts ($$$$@);
+sub check_specialmap ();
+
+$| = 1;
+
+
+#######################
+# Variables  
+#######################
+
+$package = "lilypond";         # This is used for filenames!  Don't change it!
+$pkg_name = "GNU LilyPond";
+
+$font_supplier = "public";
+$font_typeface = "lilypond";
+# @fonts = qw( dyn10 font-en-tja vette-beam );
+@fonts = qw( feta );
+
+$std_TEXMF = "/usr/lib/texmf";  # Debian's standard $TEXMF
+$TEXINPUTS = "$std_TEXMF/tex/$package//";
+$MFINPUTS = "$std_TEXMF/fonts/source/$font_supplier/$font_typeface//";
+$TFMFONTS = "$std_TEXMF/fonts/tfm/$font_supplier/$font_typeface//";
+
+
+#######################
+# Subroutine
+#######################
+
+#----- Fix Opus font entries in special.map (called by check_specialmap()) ---
+#  I goofed up the Opus font entries in special.map, hence this fix.
+#  Note: This is a temporary fix.  Consider removing this in 1998.  ^_^
+
+sub correct_opus_fonts ($$) {
+    my $specialmap = $_[1];
+    my $supplier = "opustex";
+    my $typeface = "opus";
+    my @opusfonts = qw( opus opusline opusnum opussps osl );
+    my $font = "";
+    my $entries = "";
+
+    if ($_[0] =~ /(^\w+\s+public\s+$typeface\n)+/m) {
+       print " Correcting old font entries ...";
+       foreach $font (@opusfonts) {
+           if (length($font) < 8) { $font .= "\t"; }
+           $entries .= "$font\t$supplier\t\t$typeface\n";
+       }
+
+       ($_[0] =~ s/(^\w+\s+public\s+$typeface\n)+/$entries/m)
+           or die " Can't correct font entries in $specialmap: $!";
+
+       system(": \${MAKETEXDIR=$TEXMF/maketex}; " .
+              "test -r \$MAKETEXDIR/maketex.site && . \$MAKETEXDIR/maketex.site; " .
+              ": \${MT_DESTROOT=$TEXMF/fonts}; " .
+              "rm -rf \$MT_DESTROOT/pk/*/public/$typeface");
+
+       print "\n";
+       return 1;
+    } else {
+       return 0;
+    }
+}
+
+#-------------------- Check/Modify texmf.cnf for custom teTeX installation ---
+#  Edit texmf.cnf to add search path /usr/lib/texmf
+#  for non-Debian teTeX installation
+
+sub check_texmfcnf () {
+    my $texmfcnf;
+
+    print "\n You have a custom teTeX installation in $TEXMF.\n";
+
+    chop($texmfcnf = `kpsewhich cnf texmf.cnf`);
+
+    if ($? == 0 and $texmfcnf ne "") {
+       my($filebuf, $line);
+       my $new = "$texmfcnf.new";
+       my $bak = "$texmfcnf.bak";
+
+       open(OLD, "< $texmfcnf") or die " Can't open $texmfcnf for reading: $!";
+
+       undef $/;
+       if ($filebuf = <OLD>) {
+           if ($filebuf =~ /^(TEXMFL.*)$/m) {
+               $line = $1;
+               if ($line =~ /TEXMFL\s*=.*$std_TEXMF/) {
+                   print " Found $std_TEXMF in \$TEXMFL.  Leaving $texmfcnf untouched.\n";
+               } else {
+                   print " Adding $std_TEXMF to \$TEXMFL, updating $texmfcnf ...";
+
+                   $filebuf =~ s/^(TEXMFL\s*=\s*\S*)/$1,$std_TEXMF/m;
+                   open(NEW, "> $new")  or die "\n Can't open $new for writing: $!";
+                   (print NEW $filebuf) or die "\n Can't write to $new: $!";
+                   close(NEW);
+                   copy($texmfcnf, $bak) or die "\n Can't backup $texmfcnf: $!";
+                   rename($new, $texmfcnf)
+                       or ( copy($new, $texmfcnf), unlink($new) )
+                       or die "\n Can't update $texmfcnf: $!";
+                   print " done.\n";
+               }
+           }
+       } else {
+           warn " **\n";
+           warn " ** Can't read from $texmfcnf: $!\n";
+           warn " ** Please verify the content of $texmfcnf!\n";
+           warn " **\n";
+       }
+       $/ = "\n";
+       close(OLD);
+    } else {
+        warn " **\n";
+       warn " ** Can't find texmf.cnf!\n";
+        warn " ** Please add $std_TEXMF to \$TEXMFL in your texmf.cnf.\n";
+       warn " **\n";
+    }
+}
+
+#------------------------------------------------------------- Run texhash ---
+
+sub run_texhash () {
+    print " Running texhash to update $TEXMF/ls-R ...\n";
+
+    if ( `which texhash` and -e "$TEXMF/ls-R" ) {
+       system("texhash");
+    } else {
+       warn " Error: texhash or $TEXMF/ls-R not found!\n";
+    }
+    print "\n";
+}
+
+#---------- Add font entries to special.map (called by check_specialmap()) ---
+
+sub add_fonts ($$$$@) {
+    my ($specialmap, $supplier, $typeface, $fonts) = @_[1..4];
+    my $font = "";
+    my $entries = "";
+    foreach $font (@fonts) {
+       if (length($font) < 8) { $font .= "\t"; }
+       $entries .= "$font\t$supplier\t\t$typeface\n";
+    }
+    if ($_[0] !~ /$entries/m) {
+       ($_[0] =~ s/(^\w+\s+$supplier\s+$typeface\n)+/$entries/m)
+           or ($_[0] =~ s/(?=^beam\s+public\s+music\n)/$entries/m)
+           or die " Can't add font entries to $specialmap: $!";
+       return 1;
+    } else {
+       return 0;
+    }
+}
+
+#---------------------------------- Check special.map and add font entries ---
+
+sub check_specialmap () {
+    my $fontmap;
+    my $specialmap = "$TEXMF/fontname/special.map";
+    my $new = "$specialmap.new";
+    my $bak = "$specialmap.bak";
+
+    print " Checking font entries in $specialmap ...\n";
+
+    open(OLD, "< $specialmap")  or die " Can't open $specialmap for reading: $!";
+    undef $/;
+    if ($fontmap = <OLD>) {
+       if (correct_opus_fonts($fontmap, $specialmap) |
+           add_fonts($fontmap, $specialmap, $font_supplier, $font_typeface, @fonts))
+       {
+           print " Adding $pkg_name font entries to $specialmap ...\n";
+           open(NEW, "> $new")      or die " Can't open $new for writing: $!";
+           (print NEW $fontmap)     or die " Can't write to $new: $!";
+           close(NEW);
+           copy($specialmap, $bak)  or die " Can't backup $specialmap: $!";
+           rename($new, $specialmap)
+               or ( copy($new, $specialmap), unlink($new) )
+               or die " Can't update $specialmap: $!";
+       } else {
+           print " Entries okay.  Leaving $specialmap untouched.\n";
+       }
+       undef $fontmap;
+    } else {
+       warn " **\n";
+       warn " ** Can't read from $specialmap: $!\n";
+       warn " ** Please verify the content of $specialmap!\n";
+       warn " **\n";
+    }
+    $/ = "\n";
+    close(OLD);
+    print "\n";
+}
+
+
+
+#######################
+# Main program 
+#######################
+
+print " Checking teTeX directory \$TEXMF ...";
+
+chop($TEXMF = `kpsetool -v '\$TEXMF'`);
+
+if ($? == 0 and $TEXMF ne "") {
+    print " okay.";
+} else {
+    warn "\n Error: kpsetool not found or \$TEXMF not set!\n";
+    warn " Assuming \$TEXMF=$std_TEXMF\n";
+    $TEXMF = $std_TEXMF;
+    if (not -d $TEXMF) {
+       warn " ... but directory '$TEXMF' does not exist either!\n";
+       die " Please check your teTeX configuration.\n"
+    }
+}
+
+if ($TEXMF ne $std_TEXMF) {
+    check_texmfcnf();
+}
+
+print "\n";
+
+run_texhash();
+check_specialmap();
+
+print " $pkg_name configuration completed.\n";
+print " Please read /usr/doc/$package/README.debian to get started.\n";
diff --git a/debian/postinst.old.sh b/debian/postinst.old.sh
new file mode 100644 (file)
index 0000000..8eb5d7c
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash -e
+#
+# postinst script for the Debian GNU/Linux lilypond package
+#   by Anthony Fok <foka@gpu.srv.ualberta.ca>
+#   This is free software; see the GNU General Public Licence
+#   version 2 or later for copying conditions.  There is NO warranty.
+#   Last modified:  Wed,  6 Aug 1997 13:42:45 -0600
+
+std_TEXMF=/usr/lib/texmf
+
+if [ "`which kpsetool`" ]; then
+    TEXMF=`kpsetool -v '$TEXMF'`
+fi
+: ${TEXMF:=$std_TEXMF}
+
+if [ "$TEXMF" = "$std_TEXMF" -a "`which texhash`" -a -e $TEXMF/ls-R ]; then
+    texhash
+fi
diff --git a/debian/postrm b/debian/postrm
new file mode 100644 (file)
index 0000000..5873710
--- /dev/null
@@ -0,0 +1,51 @@
+#!/bin/bash -e
+#
+# postrm script for the Debian GNU/Linux lilypond package
+#   by Anthony Fok <foka@gpu.srv.ualberta.ca>
+#   This is free software; see the GNU General Public Licence
+#   version 2 or later for copying conditions.  There is NO warranty.
+#   Last modified:  Mon, 10 Nov 1997 22:44:37 -0700
+
+package=lilypond
+font_supplier=public
+font_typeface=lilypond
+std_TEXMF=/usr/lib/texmf
+
+if [ "`which kpsetool`" ]; then
+    TEXMF=`kpsetool -v '$TEXMF'`
+fi
+: ${TEXMF:=$std_TEXMF}
+
+
+case "$1" in
+    remove)
+        if [ "`kpsetool -w tex lilyponddefs.tex 2>/dev/null`" -a "`which texhash`" ]; then
+            texhash
+        fi
+    ;;
+
+    upgrade)
+       # Clear out the old TFM and PK files in case the fonts were modified
+        : ${MAKETEXDIR=$TEXMF/maketex}
+        test -r $MAKETEXDIR/maketex.site && . $MAKETEXDIR/maketex.site
+        : ${MT_DESTROOT=$TEXMF/fonts}
+        rm -rf $MT_DESTROOT/tfm/$font_supplier/$font_typeface
+        rm -rf $MT_DESTROOT/pk/*/$font_supplier/$font_typeface
+    ;;
+
+    purge)
+        : ${MAKETEXDIR=$TEXMF/maketex}
+        test -r $MAKETEXDIR/maketex.site && . $MAKETEXDIR/maketex.site
+        : ${MT_DESTROOT=$TEXMF/fonts}
+        rm -rf $MT_DESTROOT/tfm/$font_supplier/$font_typeface
+        rm -rf $MT_DESTROOT/pk/*/$font_supplier/$font_typeface
+    ;;
+
+    failed-upgrade|abort-install|abort-upgrade|disappear)
+    ;;
+
+    *)
+        echo "postrm called with unknown argument \`$1'" >&2
+        exit 0
+    ;;
+esac
diff --git a/debian/preinst b/debian/preinst
new file mode 100644 (file)
index 0000000..eba9114
--- /dev/null
@@ -0,0 +1,66 @@
+#!/bin/bash -e
+#
+# preinst script for the Debian GNU/Linux lilypond package
+#   by Anthony Fok <foka@gpu.srv.ualberta.ca>
+#   This is free software; see the GNU General Public Licence
+#   version 2 or later for copying conditions.  There is NO warranty.
+#   Last modified:  Tue, 11 Nov 1997 01:25:15 -0700
+
+package=lilypond
+font_supplier=public
+font_typeface=lilypond
+std_TEXMF=/usr/lib/texmf
+
+if [ "`which kpsetool`" ]; then
+    TEXMF=`kpsetool -v '$TEXMF'`
+fi
+: ${TEXMF:=$std_TEXMF}
+
+
+case "$1" in
+
+    install | upgrade)
+
+       # Prior to the Debian release of the lilypond_0.1.29-1 package,
+       # LilyPond's fonts were not added to teTeX's special.map,
+       # and so the automatically generated TFM and PK files were placed
+       # in the wrong directory under /var/spool/texmf (or $MT_DESTROOT).
+       # So, now I have to clean up after my mess to make sure those fonts
+       # do not interfere with the new fonts!  :)
+
+       : ${MAKETEXDIR=$TEXMF/maketex}
+       test -r $MAKETEXDIR/maketex.site && . $MAKETEXDIR/maketex.site
+       : ${MT_DESTROOT=$TEXMF/fonts}
+
+       # Remove the "stray" old LilyPond TFM and PK files.
+       for i in tfm pk
+       do
+           find $MT_DESTROOT/$i \( -name 'dyn10.*'$i -o -name 'font-en-tja*.*'$i \
+               -o -name 'vette-beams*.*'$i \) -print0 |
+               xargs --null --no-run-if-empty rm -f
+       done
+
+       # Remove empty directories.
+       # A note to myself or the future maintainer:
+       #   Why the "for i in 1 2" loop?  Well, it seems that either
+       #   "find some_path -depth" isn't working properly, or I
+       #   (Anthony) don't know its proper behaviour.  Please look
+       #   into it and see if this ugly hack could be removed.
+       for i in 1 2
+       do
+           find $MT_DESTROOT/tfm -depth -mindepth 1 -type d -empty -print0 2> /dev/null |
+               xargs -0r --null --no-run-if-empty rmdir
+           find $MT_DESTROOT/pk -depth -mindepth 2 -type d -empty -print0 2> /dev/null |
+               xargs -0r --null --no-run-if-empty rmdir
+       done
+    ;;
+
+    abort-upgrade)
+    ;;
+
+    *)
+        echo "$0 called with unknown argument \`$1'" >&2
+        exit 0
+    ;;
+
+esac
diff --git a/debian/rules b/debian/rules
new file mode 100644 (file)
index 0000000..8befb88
--- /dev/null
@@ -0,0 +1,66 @@
+#!/usr/bin/make -f
+# Made with the aid of debhelper by by Joey Hess,
+# based on the sample debian/rules file for GNU hello by Ian Jackson.
+#
+# This is free software; see the GNU General Public Licence
+# version 2 or later for copying conditions.  There is NO warranty.
+#
+# Currently maintained by Anthony Fok <foka@gpu.srv.ualberta.ca>
+# for Debian GNU/Linux.
+
+package=lilypond
+
+SHELL=/bin/bash
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+build: build-stamp
+build-stamp:
+       dh_testdir
+       ./configure --disable-checking --disable-debugging \
+               --enable-printing --prefix=/usr --enable-optimise \
+               --enable-shared
+       make all
+       touch build-stamp
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-stamp
+       dh_clean
+       -$(MAKE) distclean
+       rm -f {,*/}out/{*,.build} flower/config.{log,status}
+
+# Build architecture-independent files here.
+binary-indep: build
+# We have nothing to do by default.
+
+binary-arch: build
+       dh_testdir
+       dh_testroot
+       dh_clean
+       dh_installdirs usr/lib/texmf/doc
+       $(MAKE) prefix=`pwd`/debian/tmp/usr install
+       ln -fs ../../../doc/lilypond debian/tmp/usr/lib/texmf/doc/lilypond
+       dh_installdocs BUGS TODO NEWS DEDICATION ANNOUNCE README \
+               Documentation/out/*.text Documentation/*.doc \
+               Documentation/lelie_logo.xpm
+       dh_installexamples
+#      dh_installmenu
+#      dh_installcron
+#      dh_installmanpages
+#      dh_undocumented
+       dh_installchangelogs
+       dh_strip
+       dh_compress
+       dh_fixperms
+       dh_suidregister
+       dh_installdebfiles
+#      dh_makeshlibs
+       dh_du
+       dh_md5sums
+       dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary
diff --git a/debian/watch b/debian/watch
new file mode 100644 (file)
index 0000000..1a1bb28
--- /dev/null
@@ -0,0 +1,5 @@
+# Example watch control file for uscan
+# Rename this file to "watch" and then you can run the "uscan" command
+# to check for upstream updates and more.
+# Site                 Directory       Pattern                 Version Script
+pcnov095.win.tue.nl    /pub/lilypond/development       lilypond-*.tar.gz       debian  uupdate
index 528df1cc670434249cd11b706470d8e4b0548cfb..fd9b51eb442abcb197f35f5ade0b680b49d2e3c5 100644 (file)
@@ -83,13 +83,13 @@ Score = \translator {
        \consists "Bar_column_engraver";
        \consists "Bar_number_engraver";
 
        \consists "Bar_column_engraver";
        \consists "Bar_number_engraver";
 
-       \consists "Bar_align_engraver";
+       \consists "Span_score_bar_engraver";
+       \consists "Normal_bar_align_engraver";
        \consists "Clef_align_engraver";
        \consists "Key_align_engraver";
        \consists "Meter_align_engraver";
        \consists "Score_horizontal_align_engraver";
        \consists "Vertical_align_engraver";
        \consists "Clef_align_engraver";
        \consists "Key_align_engraver";
        \consists "Meter_align_engraver";
        \consists "Score_horizontal_align_engraver";
        \consists "Vertical_align_engraver";
-       \consists "Span_score_bar_engraver";
 
 
        \accepts "Staff_group";
 
 
        \accepts "Staff_group";
diff --git a/init/feta16.ly b/init/feta16.ly
deleted file mode 100644 (file)
index 8c4a510..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-% generated automatically by mf-to-table.py version 0.4
-% on Tue Nov 11 13:31:20 1997
-% Do not edit
-% input from out/feta16.log
-% name=\symboltables {
-    "rests"     = \table {
-        "0"    "\\wholerest"   -0.00\pt        6.00\pt -2.50\pt        0.00\pt 
-        "1"    "\\halfrest"    -0.00\pt        6.00\pt -0.00\pt        2.50\pt 
-        "0o"   "\\outsidewholerest"    -2.50\pt        8.50\pt -2.50\pt        0.40\pt 
-        "1o"   "\\outsidehalfrest"     -2.50\pt        8.50\pt -0.40\pt        2.50\pt 
-        "2"    "\\quartrest"   -0.00\pt        4.32\pt 3.00\pt 14.40\pt        
-        "3"    "\\eighthrest"  -0.00\pt        5.33\pt 4.00\pt 11.47\pt        
-        "4"    "\\sixteenthrest"       -0.00\pt        6.23\pt -0.00\pt        11.47\pt        
-        "5"    "\\thirtysecondrest"    -0.00\pt        7.03\pt -0.00\pt        15.47\pt        
-        "6"    "\\sixtyfourthrest"     -0.00\pt        7.53\pt -0.00\pt        19.47\pt        
-        "7"    "\\hundredtwentyeighthrest"     -0.00\pt        8.38\pt -0.00\pt        23.47\pt        
-        }
-    "accidentals"       = \table {
-        "1"    "\\sharp"       -0.00\pt        4.40\pt -6.00\pt        6.00\pt 
-        "0"    "\\natural"     -0.00\pt        2.67\pt -6.00\pt        6.00\pt 
-        "-1"   "\\flat"        -0.48\pt        3.20\pt -2.00\pt        8.00\pt 
-        "-2"   "\\flatflat"    -0.48\pt        5.80\pt -2.00\pt        8.00\pt 
-        "2"    "\\sharpsharp"  -0.00\pt        4.00\pt -2.00\pt        2.00\pt 
-        }
-    "dots"      = \table {
-        "dot"  "\\dot" -0.00\pt        1.80\pt -0.90\pt        0.90\pt 
-        }
-    "balls"     = \table {
-        "-1"   "\\brevisball"  -0.00\pt        8.00\pt -2.20\pt        2.20\pt 
-        "-1l"  "\\brevisledger"        -2.00\pt        10.00\pt        -0.40\pt        0.40\pt 
-        "-2"   "\\longaball"   -0.00\pt        8.00\pt -2.20\pt        2.20\pt 
-        "-2l"  "\\longaledger" -2.00\pt        10.00\pt        -0.40\pt        0.40\pt 
-        "0"    "\\wholeball"   -0.00\pt        7.92\pt -2.20\pt        2.20\pt 
-        "0l"   "\\wholeledger" -1.98\pt        9.90\pt -0.40\pt        0.40\pt 
-        "1"    "\\halfball"    -0.00\pt        5.51\pt -2.20\pt        2.20\pt 
-        "1l"   "\\halfledger"  -1.38\pt        6.89\pt -0.40\pt        0.40\pt 
-        "2"    "\\quartball"   -0.00\pt        5.28\pt -2.20\pt        2.20\pt 
-        "2l"   "\\quartledger" -1.32\pt        6.61\pt -0.40\pt        0.40\pt 
-        }
-    "scripts"   = \table {
-        "ufermata"     "\\ufermata"    -5.30\pt        5.30\pt -0.30\pt        5.80\pt 
-        "dfermata"     "\\dfermata"    -5.30\pt        5.30\pt -5.80\pt        0.30\pt 
-        "sforzato"     "\\sforzatoaccent"      -3.60\pt        3.60\pt -2.00\pt        2.00\pt 
-        "staccato"     "\\staccato"    -0.60\pt        0.60\pt -0.60\pt        0.60\pt 
-        "ustaccatissimo"       "\\ustaccatissimo"      -0.80\pt        0.80\pt -0.20\pt        4.00\pt 
-        "dstaccatissimo"       "\\dstaccatissimo"      -0.80\pt        0.80\pt -4.00\pt        0.20\pt 
-        "tenuto"       "\\tenuto"      -3.60\pt        3.60\pt -0.24\pt        0.24\pt 
-        "umarcato"     "\\umarcato"    -2.00\pt        2.00\pt -0.00\pt        4.40\pt 
-        "dmarcato"     "\\dmarcato"    -2.00\pt        2.00\pt -4.40\pt        0.00\pt 
-        "open" "\\ouvert"      -1.60\pt        1.60\pt -2.00\pt        2.00\pt 
-        "stopped"      "\\plusstop"    -2.20\pt        2.20\pt -2.20\pt        2.20\pt 
-        "upbow"        "\\upbow"       -2.60\pt        2.60\pt -0.00\pt        8.32\pt 
-        "downbow"      "\\downbow"     -3.00\pt        3.00\pt -0.00\pt        5.33\pt 
-        "turn" "\\turn"        -4.38\pt        4.38\pt -2.12\pt        2.12\pt 
-        "trill"        "\\trill"       -0.00\pt        8.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 
-        }
-    "flags"     = \table {
-        "u3"   "\\eighthflag"  -0.20\pt        4.10\pt -12.26\pt       0.20\pt 
-        "u4"   "\\sixteenthflag"       -0.20\pt        4.10\pt -14.26\pt       0.20\pt 
-        "u5"   "\\thirtysecondflag"    -0.20\pt        4.10\pt -17.26\pt       0.20\pt 
-        "u6"   "\\sixtyfourthflag"     -0.20\pt        4.10\pt -21.26\pt       0.20\pt 
-        "d3"   "\\deighthflag" -0.20\pt        4.54\pt -0.20\pt        11.66\pt        
-        "d4"   "\\dsixteenthflag"      -0.20\pt        4.54\pt -0.20\pt        12.26\pt        
-        "d5"   "\\dthirtysecondflag"   -0.20\pt        4.54\pt -0.20\pt        15.66\pt        
-        "d6"   "\\dsixtyfourthflag"    -0.20\pt        4.54\pt -0.20\pt        17.66\pt        
-        }
-    "klef"      = \table {
-        "bass" "\\bassclef"    1.20\pt 12.80\pt        -10.00\pt       4.00\pt 
-        "bass_change"  "\\cbassclef"   0.96\pt 10.24\pt        -8.00\pt        3.20\pt 
-        "violin"       "\\violinclef"  0.11\pt 10.55\pt        -12.00\pt       20.00\pt        
-        "violin_change"        "\\cviolinclef" -0.23\pt        8.12\pt -9.60\pt        16.00\pt        
-        }
-    %  } % $name
diff --git a/init/feta20.ly b/init/feta20.ly
deleted file mode 100644 (file)
index dccf7ba..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-% generated automatically by mf-to-table.py version 0.4
-% on Tue Nov 11 13:31:29 1997
-% Do not edit
-% 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 
-        "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.33\pt        
-        "4"    "\\sixteenthrest"       -0.00\pt        7.79\pt -0.00\pt        14.33\pt        
-        "5"    "\\thirtysecondrest"    -0.00\pt        8.78\pt -0.00\pt        19.33\pt        
-        "6"    "\\sixtyfourthrest"     -0.00\pt        9.41\pt -0.00\pt        24.33\pt        
-        "7"    "\\hundredtwentyeighthrest"     -0.00\pt        10.47\pt        -0.00\pt        29.33\pt        
-        }
-    "accidentals"       = \table {
-        "1"    "\\sharp"       -0.00\pt        5.50\pt -7.50\pt        7.50\pt 
-        "0"    "\\natural"     -0.00\pt        3.33\pt -7.50\pt        7.50\pt 
-        "-1"   "\\flat"        -0.60\pt        4.00\pt -2.50\pt        10.00\pt        
-        "-2"   "\\flatflat"    -0.60\pt        7.25\pt -2.50\pt        10.00\pt        
-        "2"    "\\sharpsharp"  -0.00\pt        5.00\pt -2.50\pt        2.50\pt 
-        }
-    "dots"      = \table {
-        "dot"  "\\dot" -0.00\pt        2.25\pt -1.13\pt        1.13\pt 
-        }
-    "balls"     = \table {
-        "-1"   "\\brevisball"  -0.00\pt        10.00\pt        -2.75\pt        2.75\pt 
-        "-1l"  "\\brevisledger"        -2.50\pt        12.50\pt        -0.50\pt        0.50\pt 
-        "-2"   "\\longaball"   -0.00\pt        10.00\pt        -2.75\pt        2.75\pt 
-        "-2l"  "\\longaledger" -2.50\pt        12.50\pt        -0.50\pt        0.50\pt 
-        "0"    "\\wholeball"   -0.00\pt        9.90\pt -2.75\pt        2.75\pt 
-        "0l"   "\\wholeledger" -2.48\pt        12.38\pt        -0.50\pt        0.50\pt 
-        "1"    "\\halfball"    -0.00\pt        6.89\pt -2.75\pt        2.75\pt 
-        "1l"   "\\halfledger"  -1.72\pt        8.61\pt -0.50\pt        0.50\pt 
-        "2"    "\\quartball"   -0.00\pt        6.61\pt -2.75\pt        2.75\pt 
-        "2l"   "\\quartledger" -1.65\pt        8.26\pt -0.50\pt        0.50\pt 
-        }
-    "scripts"   = \table {
-        "ufermata"     "\\ufermata"    -6.63\pt        6.63\pt -0.38\pt        7.25\pt 
-        "dfermata"     "\\dfermata"    -6.63\pt        6.63\pt -7.25\pt        0.38\pt 
-        "sforzato"     "\\sforzatoaccent"      -4.50\pt        4.50\pt -2.50\pt        2.50\pt 
-        "staccato"     "\\staccato"    -0.75\pt        0.75\pt -0.75\pt        0.75\pt 
-        "ustaccatissimo"       "\\ustaccatissimo"      -1.00\pt        1.00\pt -0.20\pt        5.00\pt 
-        "dstaccatissimo"       "\\dstaccatissimo"      -1.00\pt        1.00\pt -5.00\pt        0.20\pt 
-        "tenuto"       "\\tenuto"      -4.50\pt        4.50\pt -0.30\pt        0.30\pt 
-        "umarcato"     "\\umarcato"    -2.50\pt        2.50\pt -0.00\pt        5.50\pt 
-        "dmarcato"     "\\dmarcato"    -2.50\pt        2.50\pt -5.50\pt        0.00\pt 
-        "open" "\\ouvert"      -2.00\pt        2.00\pt -2.50\pt        2.50\pt 
-        "stopped"      "\\plusstop"    -2.75\pt        2.75\pt -2.75\pt        2.75\pt 
-        "upbow"        "\\upbow"       -3.25\pt        3.25\pt -0.00\pt        10.40\pt        
-        "downbow"      "\\downbow"     -3.75\pt        3.75\pt -0.00\pt        6.67\pt 
-        "turn" "\\turn"        -5.47\pt        5.47\pt -2.65\pt        2.65\pt 
-        "trill"        "\\trill"       -0.00\pt        10.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 
-        }
-    "flags"     = \table {
-        "u3"   "\\eighthflag"  -0.25\pt        5.13\pt -15.33\pt       0.25\pt 
-        "u4"   "\\sixteenthflag"       -0.25\pt        5.13\pt -17.83\pt       0.25\pt 
-        "u5"   "\\thirtysecondflag"    -0.25\pt        5.13\pt -21.58\pt       0.25\pt 
-        "u6"   "\\sixtyfourthflag"     -0.25\pt        5.13\pt -26.58\pt       0.25\pt 
-        "d3"   "\\deighthflag" -0.25\pt        5.68\pt -0.25\pt        14.58\pt        
-        "d4"   "\\dsixteenthflag"      -0.25\pt        5.68\pt -0.25\pt        15.33\pt        
-        "d5"   "\\dthirtysecondflag"   -0.25\pt        5.68\pt -0.25\pt        19.58\pt        
-        "d6"   "\\dsixtyfourthflag"    -0.25\pt        5.68\pt -0.25\pt        22.08\pt        
-        }
-    "klef"      = \table {
-        "bass" "\\bassclef"    1.50\pt 16.00\pt        -12.50\pt       5.00\pt 
-        "bass_change"  "\\cbassclef"   1.20\pt 12.80\pt        -10.00\pt       4.00\pt 
-        "violin"       "\\violinclef"  0.14\pt 13.19\pt        -15.00\pt       25.00\pt        
-        "violin_change"        "\\cviolinclef" -0.29\pt        10.15\pt        -12.00\pt       20.00\pt        
-        }
-    %  } % $name
index 20f072e1fc0308680926d86ecc573d261b705344..76e2a8e5bf5f44058416e7d992edae1a4ac52099 100644 (file)
@@ -10,6 +10,7 @@ TestedFeatures =       "This file tests the Feta music-font"
 \score{
        \melodic{ 
                \octave c';
 \score{
        \melodic{ 
                \octave c';
+               \bar "|:";
                \meter 4/4;
                \multi 2  < { \stemup e'\longa a\breve | }
                { \stemdown
                \meter 4/4;
                \multi 2  < { \stemup e'\longa a\breve | }
                { \stemdown
@@ -17,7 +18,7 @@ TestedFeatures =       "This file tests the Feta music-font"
                c2 g c' a'
                } >
                \stemboth
                c2 g c' a'
                } >
                \stemboth
-               c4 g c' a' |
+               c4 g c' a' \bar ":|";
                a\ppp-\upbow a\pp-\downbow a\p^\turn a\mp^\fermata |
                a\mf_\fermata a\f-\stopped a\ff-\open a\fff^\trill|
                a\fp a4.\sf a4.\sfz | % a\fz a\rf
                a\ppp-\upbow a\pp-\downbow a\p^\turn a\mp^\fermata |
                a\mf_\fermata a\f-\stopped a\ff-\open a\fff^\trill|
                a\fp a4.\sf a4.\sfz | % a\fz a\rf
index ea304e7a8e3c7da19113052e0008676a900d7ae8..cd62181c6d130b8fbb1cb4667a21bcaed05a435b 100644 (file)
@@ -21,6 +21,8 @@ global =
     \melodic {
          \meter 4/4;                % should be \meter C
          \keyCminor 
     \melodic {
          \meter 4/4;                % should be \meter C
          \keyCminor 
+        \skip 1*32;
+        \bar "|.";
     }
   
 dux =
     }
   
 dux =
index ab7dbaa23a784b16938fe0fe2d6e5895370ece60..24d753660d02161d8f979afea819a415e1b61bec 100644 (file)
@@ -1,4 +1,4 @@
 MAJOR_VERSION = 0
 MINOR_VERSION = 1
 MAJOR_VERSION = 0
 MINOR_VERSION = 1
-PATCH_LEVEL = 30
+PATCH_LEVEL = 31
 MY_PATCH_LEVEL =
 MY_PATCH_LEVEL =
index 0e34557667f75a487e47ad924444b48bfba10960..16631e5221ac43cc57e8b396a05a9c119c3a1273 100644 (file)
@@ -7,7 +7,7 @@
 */
 
 #include "bar-grav.hh"
 */
 
 #include "bar-grav.hh"
-#include "bar.hh"
+#include "normal-bar.hh"
 #include "command-request.hh"
 #include "time-description.hh"
 #include "engraver-group.hh"
 #include "command-request.hh"
 #include "time-description.hh"
 #include "engraver-group.hh"
@@ -40,14 +40,14 @@ Bar_engraver::do_process_requests()
   
   if (bar_req_l_) 
     {
   
   if (bar_req_l_) 
     {
-      bar_p_ = new Bar;
+      bar_p_ = new Normal_bar;
       bar_p_->type_str_=bar_req_l_->type_str_;
     }
   else 
     {
       Time_description const *time = get_staff_info().time_C_;
       if (time && !time->whole_in_measure_) 
       bar_p_->type_str_=bar_req_l_->type_str_;
     }
   else 
     {
       Time_description const *time = get_staff_info().time_C_;
       if (time && !time->whole_in_measure_) 
-       bar_p_ = new Bar;
+       bar_p_ = new Normal_bar;
     }
   
   if (bar_p_)
     }
   
   if (bar_p_)
index ac7e0f19a23f3eeeea27530ddf5402ba3574224e..14b5310099aaa015c4c2db148fc6e8c4bb8c7c3d 100644 (file)
@@ -17,7 +17,6 @@ Bar::Bar()
 {
   breakable_b_ = true;
   type_str_ = "|";
 {
   breakable_b_ = true;
   type_str_ = "|";
-  spanned_i_ = 0;
 }
 
 
 }
 
 
@@ -38,7 +37,6 @@ Bar::brew_molecule_p() const
   Paper_def *p = paper();
   Atom s = p->lookup_l()->bar (type_str_, 
                               p->get_var ("bar_size"));
   Paper_def *p = paper();
   Atom s = p->lookup_l()->bar (type_str_, 
                               p->get_var ("bar_size"));
-   s.translate_axis (-s.extent()[Y_AXIS].center (), Y_AXIS);
   
   Molecule*output = new Molecule (Atom (s));
   return output;
   
   Molecule*output = new Molecule (Atom (s));
   return output;
@@ -51,6 +49,7 @@ Bar::brew_molecule_p() const
 static char const *bar_breaks[][3] ={
   {":|", ":|:", "|:"},
   {"|", "|", ""},
 static char const *bar_breaks[][3] ={
   {":|", ":|:", "|:"},
   {"|", "|", ""},
+  {"", "|s", "|"},
   {"", "|:", "|:"},
   {"||.", "||.", ""},
   {":|", ":|", ""},
   {"", "|:", "|:"},
   {"||.", "||.", ""},
   {":|", ":|", ""},
@@ -62,8 +61,8 @@ Bar::do_pre_processing()
 {
   for (int i=0; bar_breaks[i][0]; i++) 
     {
 {
   for (int i=0; bar_breaks[i][0]; i++) 
     {
-       if (bar_breaks[i][1] == type_str_)
-           type_str_ = bar_breaks[i][break_status_i()+1];
+      if (bar_breaks[i][1] == type_str_)
+       type_str_ = bar_breaks[i][break_status_i()+1];
     }
   
   /*
     }
   
   /*
index ce886830b0e69e08aacd8b449e0ce5b0563b1878..df39cea3893077da0331539ecb3cd1018c5972f3 100644 (file)
@@ -15,8 +15,7 @@
 class Bar:public Item {
 public:
   String type_str_;
 class Bar:public Item {
 public:
   String type_str_;
-  int spanned_i_;
-    
+
   DECLARE_MY_RUNTIME_TYPEINFO;
   SCORE_ELEM_CLONE(Bar);
   Bar();
   DECLARE_MY_RUNTIME_TYPEINFO;
   SCORE_ELEM_CLONE(Bar);
   Bar();
index 07c1934eda1a11b4ad8c044d6f1c3e4fd2d40552..f223e07be10d03556be8a80acfcc130c5b61dd2d 100644 (file)
@@ -19,7 +19,7 @@
 
   TODO: insert (order, elem)
   */
 
   TODO: insert (order, elem)
   */
-class Horizontal_align_item :  public Item {
+class Horizontal_align_item : public Item {
 protected:
     Link_array<Item> item_l_arr_;
     Array<int> priority_i_arr_;
 protected:
     Link_array<Item> item_l_arr_;
     Array<int> priority_i_arr_;
diff --git a/lily/include/normal-bar.hh b/lily/include/normal-bar.hh
new file mode 100644 (file)
index 0000000..a4f7bd2
--- /dev/null
@@ -0,0 +1,23 @@
+/*   
+  normal-bar.hh -- declare 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#ifndef NORMAL_BAR_HH
+#define NORMAL_BAR_HH
+
+#include "bar.hh"
+
+class Normal_bar : public virtual Bar
+{
+public:
+  SCORE_ELEM_CLONE(Normal_bar);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+};
+
+#endif /* NORMAL_BAR_HH */
+
diff --git a/lily/include/normal-span-bar.hh b/lily/include/normal-span-bar.hh
new file mode 100644 (file)
index 0000000..68ccabb
--- /dev/null
@@ -0,0 +1,24 @@
+/*   
+  normal-span-bar.hh -- declare Normal_span_bar
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#ifndef NORMAL_SPAN_BAR_HH
+#define NORMAL_SPAN_BAR_HH
+
+#include "normal-bar.hh"
+#include "span-bar.hh"
+
+class Normal_span_bar : public Span_bar, public Normal_bar
+{
+public:
+  SCORE_ELEM_CLONE(Normal_span_bar);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+};
+
+#endif /* NORMAL_SPAN_BAR_HH */
+
diff --git a/lily/include/score-bar.hh b/lily/include/score-bar.hh
new file mode 100644 (file)
index 0000000..9ee61c5
--- /dev/null
@@ -0,0 +1,28 @@
+/*   
+  score-bar.hh -- declare Score_bar
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#ifndef SCORE_BAR_HH
+#define SCORE_BAR_HH
+
+#include "bar.hh"
+
+/**
+  Score_bars are at the start of the line only, and 
+  they come before normal bars.
+ */
+class Score_bar : public virtual Bar {
+public:
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  SCORE_ELEM_CLONE(Score_bar);
+protected:
+  void do_pre_processing ();
+};
+
+#endif /* SCORE_BAR_HH */
+
index 136564678f483a9d3e90ef6e28a0458f2a3f6109..af20eca67fdef9f9207ccd60f5cb63f4030cef55 100644 (file)
@@ -12,9 +12,9 @@
 
 #include "bar.hh"
 
 
 #include "bar.hh"
 
-class Span_bar : public Bar
+class Span_bar : public virtual Bar
 {
 {
-    Link_array<Bar> spanning_l_arr_;
+    Link_array<Score_elem> spanning_l_arr_;
 
 public:
     Span_bar();
 
 public:
     Span_bar();
index 06398251808aa95493e484b6e4f8894c53ad8f37..4afe8c9d8df06a5a4a0c63f91358d723d4aef5d3 100644 (file)
 #define SPAN_SCORE_BAR_HH
 
 #include "span-bar.hh"
 #define SPAN_SCORE_BAR_HH
 
 #include "span-bar.hh"
+#include "score-bar.hh"
 
 
-class Span_score_bar : public Span_bar
+class Span_score_bar : public Span_bar, public Score_bar
 {
 public:
 {
 public:
-    DECLARE_MY_RUNTIME_TYPEINFO;
-    SCORE_ELEM_CLONE(Span_score_bar);
-    Span_score_bar();
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  SCORE_ELEM_CLONE(Span_score_bar);
+  Span_score_bar();
 protected:
 protected:
-    
-    
-    virtual void do_pre_processing();
+  virtual void do_pre_processing();
 };
 
 
 class Piano_brace : public Span_score_bar
 {
 public:
 };
 
 
 class Piano_brace : public Span_score_bar
 {
 public:
-    DECLARE_MY_RUNTIME_TYPEINFO;
-    SCORE_ELEM_CLONE(Piano_brace);
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  SCORE_ELEM_CLONE(Piano_brace);
 protected:
 protected:
-    virtual Interval do_width() const;
-    virtual Atom get_bar_sym (Real) const;
+  virtual Interval do_width() const;
+  virtual Atom get_bar_sym (Real) const;
 };
 
 #endif // SPAN_SCORE_BAR_HH
 };
 
 #endif // SPAN_SCORE_BAR_HH
index 0943b21e7e873b844409524fecf9f1d859e9b21a..cc26384fec9dc3fe17e217f9e76e171d9d973f87 100644 (file)
@@ -107,9 +107,9 @@ Lookup::bar (String s, Real h) const
 {
   Array<String> a;
   a.push (print_dimen (h));
 {
   Array<String> a;
   a.push (print_dimen (h));
-  Atom ret=(*symtables_p_)("bars")->lookup (s);;
+  Atom ret=(*symtables_p_)("bars")->lookup (s);
   ret.tex_ = substitute_args (ret.tex_, a);
   ret.tex_ = substitute_args (ret.tex_, a);
-  ret.dim_.y() = Interval (0, h);
+  ret.dim_.y() = Interval (-h/2, h/2);
   return ret;
 }
 
   return ret;
 }
 
@@ -227,14 +227,7 @@ Lookup::vbrace (Real &y) const
     Array<String> a;
     a.push (idx);
     s.tex_ = substitute_args (s.tex_,a);
     Array<String> a;
     a.push (idx);
     s.tex_ = substitute_args (s.tex_,a);
-    s.dim_.y() = Interval (0,y);
-  }
-  {
-    Array<String> a;
-    a.push (print_dimen (y/2));
-    a.push (print_dimen (0));
-    a.push (s.tex_);
-    s.tex_ = substitute_args ("\\placebox{%}{%}{%}", a);
+    s.dim_.y() = Interval (-y/2,y/2);
   }
 
 
   }
 
 
diff --git a/lily/normal-bar.cc b/lily/normal-bar.cc
new file mode 100644 (file)
index 0000000..a435703
--- /dev/null
@@ -0,0 +1,12 @@
+/*   
+  normal-bar.cc --  implement Normal_bar
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#include "normal-bar.hh"
+
+IMPLEMENT_IS_TYPE_B1(Normal_bar, Bar);
diff --git a/lily/normal-span-bar.cc b/lily/normal-span-bar.cc
new file mode 100644 (file)
index 0000000..6afbd76
--- /dev/null
@@ -0,0 +1,12 @@
+/*   
+  normal-span-bar.cc --  implement 
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#include "normal-span-bar.hh"
+
+IMPLEMENT_IS_TYPE_B2(Normal_span_bar, Span_bar, Normal_bar);
index c3531e596b8d6e2aa25de6f4245cdc5fbe198090..4745a44191d606aee2fdf2f42b8984e1e03cee87 100644 (file)
@@ -11,6 +11,8 @@
 #include "meter.hh"
 #include "bar.hh"
 #include "score-align-grav.hh"
 #include "meter.hh"
 #include "bar.hh"
 #include "score-align-grav.hh"
+#include "score-bar.hh"
+#include "normal-bar.hh"
 
 #define IMPLEMENT_ALIGN_GRAV(C,T,p)\
 class C ## _align_engraver : public Type_align_engraver                \
 
 #define IMPLEMENT_ALIGN_GRAV(C,T,p)\
 class C ## _align_engraver : public Type_align_engraver                \
@@ -29,5 +31,5 @@ IMPLEMENT_IS_TYPE_B1(C ## _align_engraver, Type_align_engraver)       ;
 IMPLEMENT_ALIGN_GRAV(Key,Key_item,3);
 IMPLEMENT_ALIGN_GRAV(Clef,Clef_item,2);
 IMPLEMENT_ALIGN_GRAV(Meter,Meter,4);
 IMPLEMENT_ALIGN_GRAV(Key,Key_item,3);
 IMPLEMENT_ALIGN_GRAV(Clef,Clef_item,2);
 IMPLEMENT_ALIGN_GRAV(Meter,Meter,4);
-IMPLEMENT_ALIGN_GRAV(Bar, Bar,0);
-
+IMPLEMENT_ALIGN_GRAV(Normal_bar, Normal_bar,5);
+IMPLEMENT_ALIGN_GRAV(Score_bar, Score_bar,0);
diff --git a/lily/score-bar.cc b/lily/score-bar.cc
new file mode 100644 (file)
index 0000000..5780eaf
--- /dev/null
@@ -0,0 +1,12 @@
+/*   
+  score-bar.cc --  implement Score_bar
+  
+  source file of the GNU LilyPond music typesetter
+  
+  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  
+ */
+
+#include "score-bar.hh"
+
+IMPLEMENT_IS_TYPE_B1(Score_bar, Bar);
index 1827c046393de0e10719120ea9078ec6b8d16928..2e045df7bef556ed5591f2418d0aa304b586cc48 100644 (file)
@@ -44,7 +44,14 @@ Score_column::preprocess()
 void
 Score_column::add_duration (Moment d)
 {
 void
 Score_column::add_duration (Moment d)
 {
-  assert (d);
+  if (!d)
+    {
+      warning (_("Ignoring zero duration added to column at ")
+              + String (when_)
+              );
+      return;
+    }
+  
   for (int i = 0; i< durations.size(); i++) 
     {
       if (d == durations[i])
   for (int i = 0; i< durations.size(); i++) 
     {
       if (d == durations[i])
index 8af2412f66d84a28b044274ee8126146b0929541..b5c3c5c04475522da04136f73199ba067f5a6f0b 100644 (file)
@@ -24,15 +24,13 @@ Score_horizontal_align_engraver::do_pre_move_processing()
       typeset_element (halign_p_);
       halign_p_ =0;
     }
       typeset_element (halign_p_);
       halign_p_ =0;
     }
-       
 }
 
 void
 Score_horizontal_align_engraver::acknowledge_element (Score_elem_info i)
 {
   Engraver* reg = i.origin_grav_l_arr_[0];
 }
 
 void
 Score_horizontal_align_engraver::acknowledge_element (Score_elem_info i)
 {
   Engraver* reg = i.origin_grav_l_arr_[0];
-  if (reg->is_type_b (
-                     Type_align_engraver::static_name()))
+  if (reg->is_type_b (Type_align_engraver::static_name()))
     {
       Type_align_engraver * align_grav_l = (Type_align_engraver*) reg;
       if (!halign_p_) 
     {
       Type_align_engraver * align_grav_l = (Type_align_engraver*) reg;
       if (!halign_p_) 
index 81ac087765c55334b634fe70d4f5fcf6a8335d9d..a13e1195bebfc22e9112de595965b5e26825a0e0 100644 (file)
@@ -23,9 +23,11 @@ do_scores()
   for (int i=0; i < global_score_array.size(); i++)
     {
       Score *&is_p = global_score_array[i];
   for (int i=0; i < global_score_array.size(); i++)
     {
       Score *&is_p = global_score_array[i];
-      if (is_p->header_p_)
-       is_p->header_p_->lily_id_str_ = "Lily was here, " +
-         get_version_number_str();
+      if (!is_p->header_p_)
+       is_p->header_p_ = new Header;
+      
+      is_p->header_p_->lily_id_str_ = "Lily was here, " +
+       get_version_number_str();
       if (is_p->errorlevel_i_)
        {
          is_p->warning (_("Score contains errors. Will not process it. "));
       if (is_p->errorlevel_i_)
        {
          is_p->warning (_("Score contains errors. Will not process it. "));
index 1850c66ab948d634cf4eb3af9f33c6051de46e76..ea05d68fcd968645c6350cdb6f57647ab7bb3f60 100644 (file)
@@ -6,7 +6,7 @@
   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
-#include "span-bar.hh"
+#include "normal-span-bar.hh"
 #include "span-bar-grav.hh"
 #include "vertical-align-spanner.hh"
 
 #include "span-bar-grav.hh"
 #include "vertical-align-spanner.hh"
 
@@ -19,7 +19,7 @@ Span_bar_engraver::Span_bar_engraver()
 Span_bar*
 Span_bar_engraver::get_span_bar_p() const
 {
 Span_bar*
 Span_bar_engraver::get_span_bar_p() const
 {
-  return  new Span_bar;
+  return new Normal_span_bar;
 }
 
 void
 }
 
 void
@@ -35,6 +35,7 @@ Span_bar_engraver::acknowledge_element (Score_elem_info i)
        {
          spanbar_p_ = get_span_bar_p();
          announce_element (Score_elem_info (spanbar_p_,0));
        {
          spanbar_p_ = get_span_bar_p();
          announce_element (Score_elem_info (spanbar_p_,0));
+         spanbar_p_-> type_str_ = bar_l_arr_[0]->type_str_;
        }
     }
   else if  (i.elem_l_->is_type_b (Vertical_align_spanner::static_name()) 
        }
     }
   else if  (i.elem_l_->is_type_b (Vertical_align_spanner::static_name()) 
index a73c27df42de1ed3eedd4926d12607d3022eeca6..a371dc019d312527a0ccf65250ea5acfeedeeb57 100644 (file)
@@ -17,7 +17,6 @@
 void
 Span_bar::add (Bar*b)
 {
 void
 Span_bar::add (Bar*b)
 {
-  b->spanned_i_ ++;
   spanning_l_arr_.push (b);
   add_dependency (b);
 }
   spanning_l_arr_.push (b);
   add_dependency (b);
 }
@@ -27,21 +26,7 @@ Span_bar::add (Bar*b)
 void
 Span_bar::do_substitute_dependency (Score_elem*o, Score_elem*n)
 {
 void
 Span_bar::do_substitute_dependency (Score_elem*o, Score_elem*n)
 {
-  Bar * bold = 0;
-  if  (o->is_type_b (Bar::static_name())) 
-    bold = (Bar*)o->item();
-  else
-    return;
-
-  bold->spanned_i_ --;
-  Bar * b =0;
-  if (n && n->is_type_b (Bar::static_name())) 
-    {
-      b = (Bar*)n->item();
-      b->spanned_i_ ++;
-    }
-  
-  spanning_l_arr_.substitute (bold , b);
+  spanning_l_arr_.unordered_substitute (o, n);
 }
 
 
 }
 
 
@@ -61,28 +46,25 @@ Span_bar::do_width() const
 void
 Span_bar::do_pre_processing()
 {
 void
 Span_bar::do_pre_processing()
 {
+  Bar::do_pre_processing ();
+  
   if (spanning_l_arr_.size() < 1) 
     {
       transparent_b_ = true;
       set_empty (true);   
     }
   if (spanning_l_arr_.size() < 1) 
     {
       transparent_b_ = true;
       set_empty (true);   
     }
-  else 
+  if (type_str_.empty_b ()) 
+    {
+      transparent_b_=true;
+      set_empty (true);
+    }
+  else if (type_str_ == "|:") 
+    {
+      type_str_ = ".|";
+    }
+  else if (type_str_ == ":|")
     {
     {
-      if (type_str_.empty_b ())
-       type_str_ = spanning_l_arr_[0]->type_str_;
-      if (type_str_.empty_b ()) 
-       {
-         transparent_b_=true;
-         set_empty (true);
-       }
-      else if (type_str_ == "|:") 
-       {
-         type_str_ = ".|";
-       }
-      else if (type_str_ == ":|")
-       {
-         type_str_ = "|.";
-       }
+      type_str_ = "|.";
     }
 }
 
     }
 }
 
@@ -110,7 +92,7 @@ Span_bar::brew_molecule_p() const
 
   Atom s = get_bar_sym (y_int.length());
   Molecule*output = new Molecule (Atom (s));
 
   Atom s = get_bar_sym (y_int.length());
   Molecule*output = new Molecule (Atom (s));
-  output->translate_axis (y_int[-1], Y_AXIS);
+  output->translate_axis (y_int.center(), Y_AXIS);
   return output;
 }
 
   return output;
 }
 
index 6f4d282330b0feaf2d826b6e4d8e88fca2b47be2..9159266123163f93e718a66a957efeb5efff76b2 100644 (file)
@@ -5,6 +5,7 @@
 
   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 */
+
 #include "span-score-bar.hh"
 #include "span-score-bar-grav.hh"
 
 #include "span-score-bar.hh"
 #include "span-score-bar-grav.hh"
 
index 5ad94b760dfda30d4786361497294f0f3f770d42..52b3e15333a859d5448f111dfef283400b0eb0f5 100644 (file)
 
 Span_score_bar::Span_score_bar()
 {
 
 Span_score_bar::Span_score_bar()
 {
-  type_str_ = "|";
 }
 
 void
 }
 
 void
-Span_score_bar::do_pre_processing()
+Score_bar::do_pre_processing ()
 {
 {
-  Span_bar::do_pre_processing();
-  
+  type_str_ = "|";
   if (break_status_i() != 1) 
     {
       set_empty (true);
   if (break_status_i() != 1) 
     {
       set_empty (true);
@@ -28,12 +26,22 @@ Span_score_bar::do_pre_processing()
     }
 }
 
     }
 }
 
+void
+Span_score_bar::do_pre_processing()
+{
+  /*
+    duh.  The order of these two is subtle. 
+   */
+  Score_bar::do_pre_processing ();
+  //  Span_bar::do_pre_processing();
+}
 
 Atom
 Piano_brace::get_bar_sym (Real dy) const
 {
   return paper()->lookup_l ()->vbrace (dy);
 }
 
 Atom
 Piano_brace::get_bar_sym (Real dy) const
 {
   return paper()->lookup_l ()->vbrace (dy);
 }
+
 Interval
 Piano_brace::do_width() const
 {
 Interval
 Piano_brace::do_width() const
 {
@@ -41,7 +49,7 @@ Piano_brace::do_width() const
 }
 
 
 }
 
 
-IMPLEMENT_IS_TYPE_B1(Span_score_bar, Span_bar);
+IMPLEMENT_IS_TYPE_B2(Span_score_bar, Span_bar, Score_bar);
 IMPLEMENT_IS_TYPE_B1(Piano_brace, Span_score_bar);
 
   
 IMPLEMENT_IS_TYPE_B1(Piano_brace, Span_score_bar);
 
   
index fc4fa61d5e289c0625a4663c4a6609c9989f4220..39bdc9fa48d894a1b848a9e3e80bbc95d23022b1 100644 (file)
@@ -16,7 +16,7 @@ depth = ..
 # identify module:
 #
 NAME = make
 # identify module:
 #
 NAME = make
-SUBDIRS = debian
+SUBDIRS = 
 
 # list of distribution files:
 
 
 # list of distribution files:
 
index 5de434c16186931b906f3e3307f8d8107b3c2187..769b19fda0bfd122744370ff6cebb20d1d261799 100644 (file)
@@ -27,7 +27,7 @@ include ./$(depth)/make/Variables.make
 
 # descent order into subdirectories:
 #
 
 # descent order into subdirectories:
 #
-SUBDIRS = bin flower lib lily mf mi2mu \
+SUBDIRS = bin flower lib lily mf mi2mu debian\
        Documentation init input tex make
 #
 
        Documentation init input tex make
 #
 
diff --git a/make/debian/Makefile b/make/debian/Makefile
deleted file mode 100644 (file)
index a09a412..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-depth = ../..
-
-NAME= debian
-
-# generic variables:
-#
-include ./$(depth)/make/Variables.make
-include ./$(depth)/make/Files.make 
-#
-
-# generic targets and rules:
-#
-include ./$(depth)/make/Targets.make
-include ./$(depth)/make/Rules.make
-#
-
-
-EXTRA_DISTFILES = README.debian.ex changelog control\
-       copyright dirs diversions.ex docs examples info.ex menu.ex postinst\
-       postrm rules watch
diff --git a/make/debian/README.debian.ex b/make/debian/README.debian.ex
deleted file mode 100644 (file)
index 99296fb..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-lilypond for DEBIAN
--------------------
-
-Comments regarding the Package
-
-Anthony Fok <foka@gpu.srv.ualberta.ca>, Wed,  6 Aug 1997 02:14:59 -0600
diff --git a/make/debian/changelog b/make/debian/changelog
deleted file mode 100644 (file)
index c8fea56..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-lilypond (0.1.0-1) unstable; urgency=low
-
-  * Initial Release.
-
- -- Anthony Fok <foka@gpu.srv.ualberta.ca>  Wed,  6 Aug 1997 04:40:57 -0600
-
-Local variables:
-mode: debian-changelog
-add-log-mailing-address: "foka@gpu.srv.ualberta.ca"
-End:
diff --git a/make/debian/control b/make/debian/control
deleted file mode 100644 (file)
index 33aa250..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Source: lilypond
-Section: tex
-Priority: contrib/optional
-Maintainer: Anthony Fok <foka@gpu.srv.ualberta.ca>
-Standards-Version: 2.2.0.0
-
-Package: lilypond
-Architecture: any
-Depends: ${shlibs:Depends}
-Recommends: tetex-base, musixtex | musixtex-fonts
-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 
-to a TeX file and play (mechanical) performances to a 
-MIDI file.  Features include multiple staffs, meters, 
-clefs, keys, lyrics, versatile input-language, 
-cadenzas, beams, slurs, triplets.
- .
- .
- Note: LilyPond uses the fonts from MusiXTeX.  Please install the package
-       musixtex or musixtex-fonts when you install lilypond.  :)
- .
-  URL: http://www.stack.nl/~hanwen/lilypond/
-  Authors: Han-Wen Nienhuys <hanwen@stack.nl>
-           Jan Nieuwenhuizen <jan@digicash.com>
diff --git a/make/debian/copyright b/make/debian/copyright
deleted file mode 100644 (file)
index 244cda9..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-This package was debianized by Anthony Fok foka@gpu.srv.ualberta.ca on
-Wed,  6 Aug 1997 04:30:28 -0600
-
-It was downloaded from
-    ftp://pcnov095.win.tue.nl/pub/lilypond/lilypond-0.1.0.tar.gz
-
-It is also available from:
-    ftp://alpha.gnu.ai.mit.edu/gnu/lilypond-0.1.0.tar.gz
-
-For more informatino about GNU LilyPond, please visit:
-    http://www.stack.nl/~hanwen/lilypond/ for more information.
-
-
-Authors:
-    Han-Wen Nienhuys <hanwen@stack.nl>
-    Jan Nieuwenhuizen <jan@digicash.com>
-Copyright:
-
-  GNU LilyPond is Copyright (C) Free Software Foundation, Inc.
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; version 2 dated June, 1991.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program;  if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave., Cambridge, MA 02139, USA.
-
-  On Debian GNU/Linux systems, the complete text of the GNU General
-  Public License can be found in `/usr/doc/copyright/GPL.gz'.
diff --git a/make/debian/dirs b/make/debian/dirs
deleted file mode 100644 (file)
index 2a3cf99..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/bin
-usr/lib/texmf/doc
diff --git a/make/debian/diversions.ex b/make/debian/diversions.ex
deleted file mode 100644 (file)
index aebbbe5..0000000
+++ /dev/null
@@ -1 +0,0 @@
-<FILE> <Diverted to> <Packagename>
diff --git a/make/debian/docs b/make/debian/docs
deleted file mode 100644 (file)
index 191b9f8..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Documentation/out/*.text
-Documentation/*.doc
-Documentation/lelie_logo.gif
diff --git a/make/debian/examples b/make/debian/examples
deleted file mode 100644 (file)
index 3be67ec..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-input/*.ly
-input/*.tex
diff --git a/make/debian/info.ex b/make/debian/info.ex
deleted file mode 100644 (file)
index 5a311f0..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# This is a configuration files for installing a .info menu
-# The Description to be placed into the directory
-DESCR="Description"
-
-# The section this info file should be placed in (Regexp) followed by
-# the new section name to be created if the Regexp does not match
-# (Optional. If not given the .info will be appended to the directory)
-#SECTION_MATCH="Regexp"
-#SECTION_NAME="New Section Name"
-
-# The file referred to from the Info directory
-FILE=lilypond.info
-
-# Optional. The files to be copied to /usr/info
-#FILES=*.info
diff --git a/make/debian/menu.ex b/make/debian/menu.ex
deleted file mode 100644 (file)
index 179992f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-text Apps/Misc lilypond none "lilypond Description" /usr/bin/lilypond
diff --git a/make/debian/postinst b/make/debian/postinst
deleted file mode 100644 (file)
index 8647e7a..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-set -e
-
-if [ -x /usr/bin/texhash -a -e /usr/lib/texmf/ls-R ]; then
-    texhash
-fi
-
diff --git a/make/debian/postrm b/make/debian/postrm
deleted file mode 100644 (file)
index cca5631..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-
-set -e
-
-case "$1" in
-    remove)
-        if [ -x /usr/bin/texhash -a -e /usr/lib/texmf/ls-R ]; then
-            texhash
-        fi
-    ;;
-
-    upgrade)
-    ;;
-
-    purge)
-        if [ -x /usr/bin/texhash -a -e /usr/lib/texmf/ls-R ]; then
-            texhash
-        fi
-    ;;
-
-    failed-upgrade|abort-install|abort-upgrade|disappear)
-    ;;
-
-    *)
-        echo "postrm called with unknown argument \`$1'" >&2
-        exit 0
-    ;;
-esac
diff --git a/make/debian/rules b/make/debian/rules
deleted file mode 100644 (file)
index da43f3b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/usr/bin/make -f
-# Made with the aid of debmake, by Christoph Lameter,
-# based on the sample debian/rules file for GNU hello by Ian Jackson.
-
-package=lilypond
-
-build:
-       $(checkdir)
-       ./configure --disable-checking --disable-debugging \
-               --disable-printing --prefix=/usr --enable-optimise \
-               --enable-shared
-       make all
-
-       touch build
-
-clean:
-       $(checkdir)
-       -rm -f build
-       -make distclean
-       -rm -f {,*/}out/{*,.build} flower/config.{log,status}
-       -rm -f `find . -name "*~"`
-       -rm -rf debian/tmp debian/files* core debian/substvars
-
-binary-indep:  checkroot build
-       $(checkdir)
-# There are no architecture-independent files to be uploaded
-# generated by this package.  If there were any they would be
-# made here.
-
-binary-arch:   checkroot build
-       $(checkdir)
-       -rm -rf debian/tmp
-       install -d debian/tmp
-       cd debian/tmp && install -d `cat ../dirs`
-       make prefix=`pwd`/debian/tmp/usr install
-       ln -fs ../../../doc/lilypond debian/tmp/usr/lib/texmf/doc/lilypond
-# Must have debmake installed for this to work. Otherwise please copy
-# /usr/bin/debstd into the debian directory and change debstd to debian/debstd
-       debstd -m BUGS TODO NEWS DEDICATION ANNOUNCE README
-       dpkg-gencontrol
-       chown -R root.root debian/tmp
-       chmod -R go=rX debian/tmp
-       dpkg --build debian/tmp ..
-
-define checkdir
-       test -f debian/rules
-endef
-
-# Below here is fairly generic really
-
-binary:                binary-indep binary-arch
-
-checkroot:
-       $(checkdir)
-       test root = "`whoami`"
-
-.PHONY: binary binary-arch binary-indep clean checkroot
diff --git a/make/debian/watch b/make/debian/watch
deleted file mode 100644 (file)
index 1a1bb28..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# Site                 Directory       Pattern                 Version Script
-pcnov095.win.tue.nl    /pub/lilypond/development       lilypond-*.tar.gz       debian  uupdate
index 4ca6b9c40cad6b0c3be52ff55dc1a0a8f8fc4988..76ce89a784b15bf6b9839d3bbd97404721c0ea21 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Titel: LilyPond
 Begin3
 Titel: LilyPond
-Versie: 0.1.30
-Inschrijf datum: 11NOV97
+Versie: 0.1.31
+Inschrijf datum: 18NOV97
 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.30.tar.gz 
+       395k lilypond-0.1.31.tar.gz 
 Oorspronkelijke plek: pcnov095.win.tue.nl /pub/lilypond/
 Oorspronkelijke plek: pcnov095.win.tue.nl /pub/lilypond/
-       395k lilypond-0.1.30.tar.gz 
+       395k lilypond-0.1.31.tar.gz 
 Copi"eer politie: GPL
 End
 Copi"eer politie: GPL
 End
index 28812b00e6d89eb7359fcc8644d65a8398026c9c..d46f62129edf74700e52d9336594aa455b108c5a 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title: LilyPond
 Begin3
 Title: LilyPond
-Version: 0.1.30
-Entered-date: 11NOV97
+Version: 0.1.31
+Entered-date: 18NOV97
 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 
@@ -14,8 +14,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
-       440k lilypond-0.1.30.tar.gz 
+       440k lilypond-0.1.31.tar.gz 
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
 Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
-       440k lilypond-0.1.30.tar.gz 
+       440k lilypond-0.1.31.tar.gz 
 Copying-policy: GPL
 End
 Copying-policy: GPL
 End
index 343da659ed5c27584eb5f469bd40ec16582a18ed..d95261c1f782ff355c5c3ae83641104cbb6b1d0a 100644 (file)
@@ -1,9 +1,9 @@
 Name: lilypond
 Name: lilypond
-Version: 0.1.30
+Version: 0.1.31
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
 Release: 1
 Copyright: GPL
 Group: Applications/Publishing
-Source0: alpha.gnu.org:/gnu/lilypond/development/lilypond-0.1.30.tar.gz
+Source0: alpha.gnu.org:/gnu/lilypond/development/lilypond-0.1.31.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>
diff --git a/mf/TODO b/mf/TODO
index a7ee33cb2c2e60596dbff41020acc04cea1d10dc..8269df3241c26cf4c24e22094c016be4cf21313d 100644 (file)
--- a/mf/TODO
+++ b/mf/TODO
@@ -3,9 +3,8 @@
        - y-refpoint for rests should be the 4th staffline (gclef: b')
        - versioning    
        - lo-res fixes.
        - y-refpoint for rests should be the 4th staffline (gclef: b')
        - versioning    
        - lo-res fixes.
+       - work out sizes of character fonts.
        - more symbols
        - more symbols
-         * stem-notehead attachments.
-         * clefs
          * some scripts:
          * piano pedals,
          * braces.
          * some scripts:
          * piano pedals,
          * braces.
index dd8abe5e91974ee35b5244693046ed6fbc37f82f..2ca5f67502eeb50504d2d0fca539f321b5fc3401 100644 (file)
@@ -28,6 +28,6 @@ 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;
 fi
 fi
index e9b285d7e50cada6fdbb20a9f6dc51027fb2b39e..56903d7f8ecd7b2bcd6b2f449f725e9ecc60e64b 100644 (file)
@@ -93,16 +93,25 @@ fet_endchar;
 %
 % Inspired by Baerenreiter
 % 
 %
 % Inspired by Baerenreiter
 % 
-% FIXME top 
+% FIXME top should be thinner at z8,
 % FIXME bulb should curve (see bass clef)
 % FIXME start (inside) should be little thinner
 % FIXME parametrise.
 % FIXME should be a bit more upright
 %
 % FIXME bulb should curve (see bass clef)
 % FIXME start (inside) should be little thinner
 % FIXME parametrise.
 % FIXME should be a bit more upright
 %
+
+% Beste lezers, kijk,
+%
+% Een bolletje  hebben we bij toeval allemaal wel eens getekend, maar begint u
+% toch eenvoudig.   Eerst een eenvoudig kruis of herstellingsteken
+% en via de dubbelslag naar een voorzichtig vlaggetje, en heb geduld!
+% Ikzelf heb bijvoorbeeld over mijn eerste gave G-sleutel
+% 35 kilobyte metafont, 12 patchlevels, 0 vriendinnen en 45 dagen gedaan
+%
 def draw_gclef (expr exact_center, reduction)=
        save reduced_il, downstroke_dir, downstroke_angle, hair, center;
 def draw_gclef (expr exact_center, reduction)=
        save reduced_il, downstroke_dir, downstroke_angle, hair, center;
-       save breapth_factor, inner_thick_end, thinness, thickness, thinnib
-, thinness, thinpen;
+       save breapth_factor, inner_thick_end, thinness, thickness, thinnib;
+       save inner_start_angle, thinness, thinpen;
        reduced_il# = interline# * reduction;
        define_pixels(reduced_il);
        pair downstroke_dir, center;
        reduced_il# = interline# * reduction;
        define_pixels(reduced_il);
        pair downstroke_dir, center;
@@ -115,7 +124,8 @@ def draw_gclef (expr exact_center, reduction)=
        downstroke_dir = (14, -75);
        breapth_factor = 11/7;
        inner_thick_end = 45;
        downstroke_dir = (14, -75);
        breapth_factor = 11/7;
        inner_thick_end = 45;
-       thickness = .4 interline - hair;
+       inner_start_angle = angle(-1,-2);
+       thickness = .4 reduced_il - hair;
 
        thinnib = thinness - hair;
        thinpen = thinness;
 
        thinnib = thinness - hair;
        thinpen = thinness;
@@ -127,7 +137,7 @@ def draw_gclef (expr exact_center, reduction)=
        pickup pencircle scaled hair;
 
        downstroke_angle = angle downstroke_dir;
        pickup pencircle scaled hair;
 
        downstroke_angle = angle downstroke_dir;
-       z1 = center + whatever * (-1, -2);
+       z1 = center + whatever * dir inner_start_angle;
        x1 = xpart center -.28 reduced_il;
        
        top z2r = center + (0,reduced_il + stafflinethickness/2);
        x1 = xpart center -.28 reduced_il;
        
        top z2r = center + (0,reduced_il + stafflinethickness/2);
@@ -143,12 +153,8 @@ def draw_gclef (expr exact_center, reduction)=
        z6 = center + whatever * downstroke_dir;
        y6 = ypart center + 2 reduced_il;
 
        z6 = center + whatever * downstroke_dir;
        y6 = ypart center + 2 reduced_il;
 
-
        z7l - z6 = whatever *(z5- z6) ;
        y7l = 3.5 reduced_il;
        z7l - z6 = whatever *(z5- z6) ;
        y7l = 3.5 reduced_il;
-
-
-
        z8r = .4 [z9r, z7r] + 1.5 stafflinethickness * dir 52;
 
        x9 = .7 [x10, x7r];
        z8r = .4 [z9r, z7r] + 1.5 stafflinethickness * dir 52;
 
        x9 = .7 [x10, x7r];
@@ -168,7 +174,7 @@ def draw_gclef (expr exact_center, reduction)=
        center - z10= whatever * downstroke_dir;
        center - z11 =  whatever * downstroke_dir;
 
        center - z10= whatever * downstroke_dir;
        center - z11 =  whatever * downstroke_dir;
 
-       penpos1(thinnib, angle(-1,-2));
+       penpos1(thinnib, inner_start_angle);
        penpos2(thickness, 90);
        penpos3(thinnib, -90 + inner_thick_end);
        penpos4(thinnib, -90);
        penpos2(thickness, 90);
        penpos3(thinnib, -90 + inner_thick_end);
        penpos4(thinnib, -90);
@@ -216,7 +222,7 @@ fet_beginchar("G clef", "violin", "violinclef")
        draw_gclef((1.6 interline#,0), 1.0);
 fet_endchar;
 fet_beginchar("G clef", "violin_change", "cviolinclef")
        draw_gclef((1.6 interline#,0), 1.0);
 fet_endchar;
 fet_beginchar("G clef", "violin_change", "cviolinclef")
-       draw_gclef((1.2 interline#,0), .8);
+       draw_gclef((1.3 interline#,0), .8);
 fet_endchar;
 
 fet_endgroup("klef");
 fet_endchar;
 
 fet_endgroup("klef");
index 7675befaee385232bb0c72745d03c5601052b717..70812b44a6df28885f66903ecefa3c851ae9efea 100644 (file)
@@ -1,13 +1,21 @@
 fet_begingroup("dots");
 
 fet_begingroup("dots");
 
+save dot_diam;
+2 dot_diam# = interline# - stafflinethickness#;
+define_pixels(dot_diam);
+
 fet_beginchar("duration dot","dot", "dot")
 fet_beginchar("duration dot","dot", "dot")
-       save dot_diam;
-       2 dot_diam# = interline# - stafflinethickness#;
-       define_pixels(dot_diam)
        pickup pencircle scaled dot_diam;
        draw (dot_diam/2,0);
        set_char_box(0, dot_diam#, dot_diam#/2, dot_diam#/2);
 fet_endchar;
 
        pickup pencircle scaled dot_diam;
        draw (dot_diam/2,0);
        set_char_box(0, dot_diam#, dot_diam#/2, dot_diam#/2);
 fet_endchar;
 
+fet_beginchar("repeat dots", "repeatcolon", "repeatcolon")
+       pickup pencircle scaled dot_diam;
+       draw (dot_diam/2, interline/2);
+       addto currentpicture also currentpicture yscaled -1;
+       set_char_box(0, dot_diam#, interline#/2, interline#/2);
+fet_endchar;
+
 
 fet_endgroup("dots");
 
 fet_endgroup("dots");
index a3cddb3fa0e6a1901701e77a527f95af77cf0998..7da404d0c7a1d5e863c552246f3770540229da1c 100644 (file)
@@ -38,7 +38,7 @@ fet_beginchar("Sharp" , "1", "sharp");
        beamheight := 4 stafflinethickness;
        beamwidth := w;
        stemwidth := 1.3 stafflinethickness;
        beamheight := 4 stafflinethickness;
        beamwidth := w;
        stemwidth := 1.3 stafflinethickness;
-       roundness := blot_diameter;
+       roundness := 2blot_diameter;
        pair center;
        center := (.5 w, 0);
        
        pair center;
        center := (.5 w, 0);
        
index 647a595db1e8f4e9f2b74e176ef12762b5910be2..73b231d168d76d9ead8f59ea1d60670d09c7cec7 100644 (file)
@@ -81,7 +81,7 @@ Mudela_stream::header()
   *os_p_ << filename_str_g;
   *os_p_ << "\n\n";
   // ugh
   *os_p_ << filename_str_g;
   *os_p_ << "\n\n";
   // ugh
-  *os_p_ << "\\version \"0.1.6\";\n";
+  *os_p_ << "\\version \"0.1.7\";\n";
 }
 
 void
 }
 
 void
diff --git a/tex/feta16.tex b/tex/feta16.tex
deleted file mode 100644 (file)
index 777cda5..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-% generated automatically by mf-to-table.py version 0.4
-% on Tue Nov 11 13:31:20 1997
-% Do not edit
-% input from out/feta16.log
-% name
-% rests
-\fetdef\wholerest{0}
-\fetdef\halfrest{1}
-\fetdef\outsidewholerest{2}
-\fetdef\outsidehalfrest{3}
-\fetdef\quartrest{4}
-\fetdef\eighthrest{5}
-\fetdef\sixteenthrest{6}
-\fetdef\thirtysecondrest{7}
-\fetdef\sixtyfourthrest{8}
-\fetdef\hundredtwentyeighthrest{9}
-
-% accidentals
-\fetdef\sharp{10}
-\fetdef\natural{11}
-\fetdef\flat{12}
-\fetdef\flatflat{13}
-\fetdef\sharpsharp{14}
-
-% dots
-\fetdef\dot{15}
-
-% balls
-\fetdef\brevisball{16}
-\fetdef\brevisledger{17}
-\fetdef\longaball{18}
-\fetdef\longaledger{19}
-\fetdef\wholeball{20}
-\fetdef\wholeledger{21}
-\fetdef\halfball{22}
-\fetdef\halfledger{23}
-\fetdef\quartball{24}
-\fetdef\quartledger{25}
-
-% scripts
-\fetdef\ufermata{26}
-\fetdef\dfermata{27}
-\fetdef\sforzatoaccent{28}
-\fetdef\staccato{29}
-\fetdef\ustaccatissimo{30}
-\fetdef\dstaccatissimo{31}
-\fetdef\tenuto{32}
-\fetdef\umarcato{33}
-\fetdef\dmarcato{34}
-\fetdef\ouvert{35}
-\fetdef\plusstop{36}
-\fetdef\upbow{37}
-\fetdef\downbow{38}
-\fetdef\turn{39}
-\fetdef\trill{40}
-\fetdef\pedalheel{41}
-\fetdef\pedaltoe{42}
-
-% flags
-\fetdef\eighthflag{43}
-\fetdef\sixteenthflag{44}
-\fetdef\thirtysecondflag{45}
-\fetdef\sixtyfourthflag{46}
-\fetdef\deighthflag{47}
-\fetdef\dsixteenthflag{48}
-\fetdef\dthirtysecondflag{49}
-\fetdef\dsixtyfourthflag{50}
-
-% klef
-\fetdef\bassclef{51}
-\fetdef\cbassclef{52}
-\fetdef\violinclef{53}
-\fetdef\cviolinclef{54}
-
diff --git a/tex/feta20.tex b/tex/feta20.tex
deleted file mode 100644 (file)
index 00dad23..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-% generated automatically by mf-to-table.py version 0.4
-% on Tue Nov 11 13:31:29 1997
-% Do not edit
-% input from out/feta20.log
-% name
-% rests
-\fetdef\wholerest{0}
-\fetdef\halfrest{1}
-\fetdef\outsidewholerest{2}
-\fetdef\outsidehalfrest{3}
-\fetdef\quartrest{4}
-\fetdef\eighthrest{5}
-\fetdef\sixteenthrest{6}
-\fetdef\thirtysecondrest{7}
-\fetdef\sixtyfourthrest{8}
-\fetdef\hundredtwentyeighthrest{9}
-
-% accidentals
-\fetdef\sharp{10}
-\fetdef\natural{11}
-\fetdef\flat{12}
-\fetdef\flatflat{13}
-\fetdef\sharpsharp{14}
-
-% dots
-\fetdef\dot{15}
-
-% balls
-\fetdef\brevisball{16}
-\fetdef\brevisledger{17}
-\fetdef\longaball{18}
-\fetdef\longaledger{19}
-\fetdef\wholeball{20}
-\fetdef\wholeledger{21}
-\fetdef\halfball{22}
-\fetdef\halfledger{23}
-\fetdef\quartball{24}
-\fetdef\quartledger{25}
-
-% scripts
-\fetdef\ufermata{26}
-\fetdef\dfermata{27}
-\fetdef\sforzatoaccent{28}
-\fetdef\staccato{29}
-\fetdef\ustaccatissimo{30}
-\fetdef\dstaccatissimo{31}
-\fetdef\tenuto{32}
-\fetdef\umarcato{33}
-\fetdef\dmarcato{34}
-\fetdef\ouvert{35}
-\fetdef\plusstop{36}
-\fetdef\upbow{37}
-\fetdef\downbow{38}
-\fetdef\turn{39}
-\fetdef\trill{40}
-\fetdef\pedalheel{41}
-\fetdef\pedaltoe{42}
-
-% flags
-\fetdef\eighthflag{43}
-\fetdef\sixteenthflag{44}
-\fetdef\thirtysecondflag{45}
-\fetdef\sixtyfourthflag{46}
-\fetdef\deighthflag{47}
-\fetdef\dsixteenthflag{48}
-\fetdef\dthirtysecondflag{49}
-\fetdef\dsixtyfourthflag{50}
-
-% klef
-\fetdef\bassclef{51}
-\fetdef\cbassclef{52}
-\fetdef\violinclef{53}
-\fetdef\cviolinclef{54}
-
index d7b9be267a05d9d91858583a9ce291730979aca1..292022e096a17c4bd397b311d31de8b029b3d20c 100644 (file)
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \def\doublebar#1{\hbox{\thinbar{#1}\hskip\smallspace\thinbar{#1}}}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \def\doublebar#1{\hbox{\thinbar{#1}\hskip\smallspace\thinbar{#1}}}
-\def\thinbar#1{\vrule height #1 width 1.6\staffrulethickness} % TODO parametric.
-\def\thickbar#1{\vrule height #1 width 2\smallspace}
+\def\thinbar#1{\dimen0=#1%
+        \vrule height .5\dimen0 depth .5\dimen0 width 1.6\staffrulethickness} % TODO parametric.
+\def\thickbar#1{\dimen0=#1%
+        \vrule height .5\dimen0 depth .5\dimen0 width 2\smallspace}
 \def\maatstreep#1{\thinbar{#1}}
 \def\startbar#1{\leftalign{\thickbar{#1}\kern\smallspace\thinbar{#1}}}
 \def\finishbar#1{\rightalign{\thinbar{#1}\kern\smallspace\thickbar{#1}}}
 \def\maatstreep#1{\thinbar{#1}}
 \def\startbar#1{\leftalign{\thickbar{#1}\kern\smallspace\thinbar{#1}}}
 \def\finishbar#1{\rightalign{\thinbar{#1}\kern\smallspace\thickbar{#1}}}