]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.3.122
authorfred <fred>
Wed, 27 Mar 2002 00:35:18 +0000 (00:35 +0000)
committerfred <fred>
Wed, 27 Mar 2002 00:35:18 +0000 (00:35 +0000)
Documentation/hacking.texi
Documentation/index.texi
Documentation/topdocs/INSTALL.texi
debian/GNUmakefile
debian/changelog
debian/control
debian/control.foka
debian/control.potato [new file with mode: 0644]
lily/extender-engraver.cc
lily/include/lyric-extender.hh
lily/lyric-extender.cc

index 63583e91347212c9da868ea533395e365cba3919..0d2a97b87cd9dc4fc13c1d51df356524edc76171 100644 (file)
@@ -7,76 +7,3 @@
 @top
 
 
-
-@chapter Getting involved
-
-Please help us make LilyPond a better program. You can help LilyPond in
-several ways. Not all tasks requiring programming or understanding the
-full source code.  You can write to the mailing list
-(@email{gnu-music-discuss@@gnu.org} for more information)
-
-@unnumberedsubsec Users
-
-Mutopia needs your help. The mutopia project is a collection of public
-domain sheet music. You can help the project by entering music (either
-by hand, or by converting from scans or MIDI) and submitting it. Point
-your browser to the @uref{http://sca.uwaterloo.ca/Mutopia, Mutopia
-webpage}.
-
-@unnumberedsubsec Font designers
-
-Our set of glyphs (the Feta font) is far from complete.  We need the
-following glyphs: segno, coda.  The fonts have been coded in MetaFont,
-so you will need to know MetaFont if you want to contribute a glyph.
-
-@unnumberedsubsec Writers
-
-The documentation of LilyPond and related utilities needs a lot of
-work. The documentation is written in
-@uref{http://www.gnu.org/software/texinfo,texinfo}. The documentation of
-LilyPond is sorely lacking in terms of completeness, depth and
-organisation.
-
-Write if you know how to write english documentation in texinfo, and
-know about music and music notation.  You must also know how to use
-LilyPond (or be prepared to learn using it).  The task is not especially
-hard, but it is a lot of work, and you must be familiar with LilyPond.
-
-@unnumberedsubsec Translators
-
-LilyPond is completely ready for internationalized messages, but there
-are only a few translations so far (dutch, italian, german, japanese,
-french, russian).  Translation involves writing a .po file, which is
-relatively easy, and does not even require running LilyPond.
-
-@unnumberedsubsec Hackers
-
-There are lots of possibilities of improving the program itself. There
-are both small projects and big ones. Most of them are listed in our
-TODO file, listed on the homepage of Jan and
-@uref{http://www.cs.uu.nl/~hanwen/lily-devel,Han-Wen}.  Modifying
-LilyPond almost always requires patches to the C++ part.
-
-There are also numerous other interesting projects that are more or less
-related  to LilyPond
-
-@itemize @bullet
-@item Writing convertors, eg. from NIFF and MIDI (we tried writing one with
-limited success: midi2ly, included with lilypond.)
-
-We found that writing them in Python is the easiest.
-
-@item Writing a GUI frontend to
-LilyPond. At the moment @uref{denemo,denemo.sourceforge.net} is the most
-advanced.
-
-@item Helping write @uref{ http://solfege.sourceforge.net/,solfege
-tools}
-
-@item Helping @uref{primrose.sourceforge.net,primrose}, a tool for
-scanning sheet music.
-@end itemize
-
-
-@chapter LilyPond internals
-
index 6607283680f2eebdb118cb62af0c28772fddd0fa..9dde8b5dec13ef5f8b93f22c264786d4fe24679b 100644 (file)
@@ -68,7 +68,6 @@ by computer}.
 
 
 @itemize @bullet
-@item @uref{hacking.html,Internals} details of the implementation
 @item @uref{README-W32.html,Compiling and running on Windows32}
 @item @uref{../misc/out-www/CHANGES-0.0.html, Change logs from 0.0 till 0.1 }
 @item @uref{../misc/out-www/CHANGES-0.1.html, Change logs from 0.1 till 1.0 }
index 05dbd6213df4034b4b85313507904f3b67b16e1f..19e1623757ddefaf393bcfee3bc1bf7d2e410f6e 100644 (file)
@@ -21,11 +21,11 @@ If you do not want to download the entire archive for each version, the
 safest method for upgrading is to use @file{xdelta}, see
 @uref{ftp://ftp.xcf.berkeley.edu/pub/xdelta/}.
 
-The following command produces @file{lilypond-1.1.55.tar.gz} from
-@file{lilypond-1.1.54} identical (up to compression dates) to the .55 on
+The following command produces @file{lilypond-1.3.122.tar.gz} from
+@file{lilypond-1.3.121} identical (up to compression dates) to the .122 on
 the FTP site.
 @example
-  xdelta patch lilypond-1.1.54-1.1.55.xd lilypond-1.1.54.tar.gz
+  xdelta patch lilypond-1.3.121-1.3.122.xd lilypond-1.3.121.tar.gz
 @end example
 
 @section Prerequisites
@@ -79,7 +79,7 @@ Available at
 or at mirror site @uref{ftp://ftp.dante.de,ftp://ftp.dante.de}
 
 @item MetaPost, needed for generating PostScript fonts. Please
-note that tetex-0.4pl8 (included with Redhat 5.x) does not include
+note that tetex-0.4pl8 (included with Red Hat 5.x) does not include
 @file{mfplain.mp}, which is needed for producing the scalable font
 files.
 
@@ -126,23 +126,23 @@ documentation on-line documentation. It is made by entering @example
   make htmldoc
  
 @end example 
-This does require a  functioning  LilyPond. The binary doesn't have to
+This does require a functioning LilyPond.  The binary doesn't have to
 be installed. 
 
 If you want to auto-generate Lily's website, you'll need some additional
 conversion tools.
 
 @itemize @bullet
-@item xpmtoppm (from the netpbm package: the Portable Bitmap Utilities) (For RedHat Linux
+@item xpmtoppm (from the netpbm package: the Portable Bitmap Utilities) (For Red Hat Linux
             users: it is included within the package libgr-progs).
-       the original is at
+       The original is at
 @uref{ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz,ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz}
 
-@item pnmtopng (also in libgr-progs for RedHat). The original is
+@item pnmtopng (also in libgr-progs for Red Hat). The original is
 at
 @uref{ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz,ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz}.i
 
-The version of @file{pnmtopng} that is distributed with RedHat 5.1 and
+The version of @file{pnmtopng} that is distributed with Red Hat 5.1 and
 5.2 contains a bug: pnmtopng is dynamically linked to the wrong
 version of libpng.
 
@@ -298,10 +298,10 @@ If you are doing an upgrade, please remember to remove obsolete
 provided to do the work for you, see @file{bin/clean-fonts.sh}.
 
 
-@section Redhat linux
+@section Red Hat Linux
 
-RedHat Linux users can compile an RPM. A spec file is in
-@file{make/out/lilypond.spec}, it is distributed along with the
+Red Hat Linux users can compile an RPM.  A spec file is in
+@file{make/out/lilypond.spec}; it is distributed along with the
 sources.
 
 You can make the rpm by issuing
@@ -312,10 +312,10 @@ You can make the rpm by issuing
  
 @end example 
 
-Precompiled RedHat-7.0 i386 RPMS are available from
+Precompiled Red Hat 7.0 i386 RPMS are available from
 @uref{ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/RedHat/}.
 
-For compilation on a RedHat system you need these packages,
+For compilation on a Red Hat system you need these packages,
 in addition to the those needed for running:
 @itemize @bullet
 @item glibc-devel
@@ -327,38 +327,89 @@ in addition to the those needed for running:
 @item tetex-devel
 @end itemize
 
-@section Debian GNU/linux
+@section Debian GNU/Linux
 
-A Debian package is also available; see
-@uref{http://packages.debian.org/lilypond,http://packages.debian.org/lilypond}
-or contact Anthony Fok @email{foka@@debian.org} for more information.
+A Debian package is also available.  You may install it easily by using
+apt-get as root:
 
-The build scripts are in the subdirectory @file{debian/}; you can
-make the .deb by doing
+@example
+       apt-get install lilypond1.3
+@end example
 
-@example 
+Alternatively, visit
 
-       tar xzf lilypond-x.y.z.tar.gz
-       cd lilypond-x.y.z
-       dpkg-buildpackage
-       dpkg -i ../lilypond_x.y.z*deb
-@end example 
+@itemize @bullet
+@item @uref{http://packages.debian.org/lilypond,http://packages.debian.org/lilypond}
+@item @uref{http://ftp.debian.org/debian/pool/main/l/lilypond1.3/,http://ftp.debian.org/debian/pool/main/l/lilypond1.3/}
+for latest package uploaded to Debian unstable;
+@item @uref{http://people.debian.org/~foka/lilypond/,http://people.debian.org/~foka/lilypond/}
+for latest semi-unofficial build of LilyPond 1.3.121 for Debian 2.2r2 (potato) users.
+The official stable Debian 2.2r2 is stuck with the old LilyPond-1.3.24.
+@end itemize
+
+You may contact Anthony Fok @email{foka@@debian.org} for more information.
+
+The build scripts are in the subdirectory @file{debian/}; you can
+make the .deb by doing, for example:
+
+@example
+       $ su - root
+       # dpkg --purge lilypond lilypond1.3
+       # exit
+       $ tar xzf lilypond-1.3.122.tar.gz
+       $ cd lilypond-1.3.122
+       $ dch -p -v 1.3.122-0.local.1 "Local build."
+       $ debuild
+       $ su - root
+       # dpkg -i ../lilypond1.3_1.3.122*.deb
+       # exit
+       $
+@end example
 
 For compilation on a Debian GNU/Linux system you need these packages,
 in addition to the those needed for running:
+
 @itemize @bullet
-@item libc6-dev
-@item libstdc++<your-libstdc++-version-here>-dev
+@item g++, cpp, libc6-dev, libstdc++<your-libstdc++-version-here>-dev
 @item libguile<your-libguile-version-here>-dev
-@item flex
-@item bison
+@item make, m4, flex, bison
 @item gettext
-@item texinfo
-@item tetex-dev
-@item debhelper
+@item groff, texinfo, bibtex2html (not in 2.2r2)
+@item tetex-base, tetex-bin, tetex-extra, libkpathsea-dev or tetex-dev
+@item dpkg-dev, debhelper, fakeroot
+@item gs, netpbm, pnmtopng
 @end itemize
 
+Most of these are listed on the Build-Depends line in the
+debian/control file.  To ensure the creation of the lilypond deb is
+trouble-free, we recommend that you first install the following packages
+before starting dpkg-buildpackage by running apt-get as root.
+
+For Debian 2.2 (or 2.2r2, 2.2r3):
+
+@example
+       apt-get install task-debian-devel task-c++-dev \
+               python-base libguile6-dev tetex-bin tetex-dev \
+               tetex-extra flex bison texinfo groff gs \
+               netpbm pnmtopng m4 gettext
+@end example
+
+For Debian in development ("unstable", the future 2.3 or 3.0):
+
+@example
+       apt-get install task-debian-devel task-c++-dev \
+               python-base libguile9-dev tetex-bin libkpathsea-dev \
+               tetex-extra flex bison texinfo bibtex2html groff gs \
+               netpbm pnmtopng m4 gettext
+@end example
+
+And, just so that old fonts from previous versions of LilyPond won't
+interfere with your build, you may want to do this before the build too:
+
+@example
+       dpkg --purge lilypond lilypond1.3
+@end example
+
 
 @section Windows NT/95
 
@@ -430,7 +481,7 @@ Typical stacktrace:
 @end example
 
 This behaviour has been observed with machines that have old libg++
-versions (LinuxPPC feb '98, RedHat 4.x).  
+versions (LinuxPPC feb '98, Red Hat 4.x).  
 @end itemize
 
 
@@ -459,8 +510,8 @@ The following is from the gcc install/SPECIFIC file.
 @quotation
    Some versions of the AIX binder (linker) can fail with a relocation
    overflow severe error when the -bbigtoc option is used to link
-   GCC-produced object files into an executable that overflows the TOC. A
-   fix for APAR IX75823 (OVERFLOW DURING LINK WHEN USING GCC AND  
+   GCC-produced object files into an executable that overflows the TOC.
+   fix for APAR IX75823 (OVERFLOW DURING LINK WHEN USING GCC AND  
    -BBIGTOC) is available from IBM Customer Support and from its
    27service.boulder.ibm.com website as PTF U455193.   
 
index 00183578ad7f6d3269407658495918b5ba4a59a7..8b0a59875936f054fd83da6e7f99e4550192f83f 100644 (file)
@@ -9,7 +9,7 @@ at-ext =
 CONF_FILES = changelog control copyright doc-base emacsen-startup \
        preinst postinst postrm prerm rules watch
 EXTRA_DIST_FILES = README.Debian TODO $(CONF_FILES)  \
-       control.foka
+       control.foka control.potato
 #OUTCONF_FILES = $(addprefix $(outdir)/, $(basename $(CONF_FILES))) $(OUTIN_FILES)
 OUTCONF_FILES = $(OUTIN_FILES)
 OUT_DIST_FILES = $(OUTIN_FILES)
index 8faf51901570fd46ffb81018cc7dd79bd3eec2cf..6d558f8a7c8cf1d1b4623860ffa51fd5f7d5b7ee 100644 (file)
@@ -1,3 +1,15 @@
+lilypond1.3 (1.3.121-1) unstable; urgency=low
+
+  * New upstream release.
+  * Added more detailed instruction for building lilypond1.3 on Debian
+    in Documentation/topdocs/INSTALL.texi (hence INSTALL.txt).
+  * Applied Han-wen's one-line patch to lily/system-start-delimiter.cc
+    to remove bracket-width.
+  * It seems that bracket-width needs to be removed from
+    scm/grob-description.scm and scm/interface-description.scm too.
+
+ -- Anthony Fok <foka@debian.org>  Sun,  7 Jan 2001 02:34:46 -0700
+
 lilypond1.3 (1.3.119-1) unstable; urgency=low
 
   * New upstream release.
index b692d81a2159615f65492cd8a42d036a09352573..182166b1f1f8f1af3a446d1bdebdda7904bcff32 100644 (file)
@@ -1,5 +1,5 @@
 Source: lilypond1.3
-Build-Depends: debhelper (>= 2.0.72), python-base (>= 1.5.2-4), libguile9-dev, tetex-bin, libkpathsea-dev, tetex-extra, flex, bison, texinfo (>= 4.0-1), groff, gs, netpbm, pnmtopng, m4, gettext (>= 0.10.35-13)
+Build-Depends: debhelper (>= 2.0.72), python-base (>= 1.5.2-4), libguile9-dev, tetex-bin, libkpathsea-dev, tetex-extra, flex, bison, texinfo (>= 4.0-1), bibtex2html, groff, gs, netpbm, pnmtopng, m4, gettext (>= 0.10.35-13)
 Section: tex
 Priority: optional
 Maintainer: Anthony Fok <foka@debian.org>
index b692d81a2159615f65492cd8a42d036a09352573..182166b1f1f8f1af3a446d1bdebdda7904bcff32 100644 (file)
@@ -1,5 +1,5 @@
 Source: lilypond1.3
-Build-Depends: debhelper (>= 2.0.72), python-base (>= 1.5.2-4), libguile9-dev, tetex-bin, libkpathsea-dev, tetex-extra, flex, bison, texinfo (>= 4.0-1), groff, gs, netpbm, pnmtopng, m4, gettext (>= 0.10.35-13)
+Build-Depends: debhelper (>= 2.0.72), python-base (>= 1.5.2-4), libguile9-dev, tetex-bin, libkpathsea-dev, tetex-extra, flex, bison, texinfo (>= 4.0-1), bibtex2html, groff, gs, netpbm, pnmtopng, m4, gettext (>= 0.10.35-13)
 Section: tex
 Priority: optional
 Maintainer: Anthony Fok <foka@debian.org>
diff --git a/debian/control.potato b/debian/control.potato
new file mode 100644 (file)
index 0000000..ea0cfdf
--- /dev/null
@@ -0,0 +1,29 @@
+Source: lilypond1.3
+Build-Depends: debhelper (>= 2.0.72), python-base (>= 1.5.2-4), libguile6-dev, tetex-bin, tetex-dev, tetex-extra, flex, bison, texinfo (>= 4.0-1), groff, gs, netpbm, pnmtopng, m4, gettext (>= 0.10.35-13)
+Section: tex
+Priority: optional
+Maintainer: Anthony Fok <foka@debian.org>
+Standards-Version: 3.2.1
+
+Package: lilypond1.3
+Architecture: any
+Replaces: lilypond
+Provides: lilypond
+Depends: ${shlibs:Depends}, tetex-bin (>= 1.0.5-1), python-base (>= 1.5.2-4), guile
+Recommends: tetex-extra (>= 1.0-1)
+Conflicts: lilypond, musixtex-fonts
+Description: A program for printing sheet music.
+ LilyPond is a music typesetter.  It produces beautiful sheet music
+ using a high level description file as input.  LilyPond is part of 
+ the GNU Project.
+ .
+ This is the developmental 1.3 branch of LilyPond.  It is not intended for
+ use with stable projects, although 1.3.x is most likely to be less buggy
+ and much more featureful than then the old "stable" 1.2.17.
+ .
+  URLs: http://www.cs.uu.nl/~hanwen/lilypond/
+        http://www.xs4all.nl/~jantien/lilypond/
+        http://sca.uwaterloo.ca/lilypond/
+        http://www.lilypond.org/
+  Authors: Han-Wen Nienhuys <hanwen@cs.uu.nl>
+           Jan Nieuwenhuizen <janneke@gnu.org>
index a365c25d0d6dd4860e85fc1e8cca554dc9eaca50..e261af552f7aedb24f49df17faaf4e08629fe9c9 100644 (file)
@@ -42,7 +42,7 @@ protected:
   virtual bool try_music (Music*);
   virtual void stop_translation_timestep();
   virtual void start_translation_timestep ();
-  virtual void create_grobs ();
+  virtual void process_music ();
 private:
 
 };
@@ -62,15 +62,14 @@ void
 Extender_engraver::acknowledge_grob (Grob_info i)
 {
   // -> text_item
-  if (i.elem_l_->has_interface (ly_symbol2scm("text-item-interface")))
-
+  if (i.elem_l_->has_interface (ly_symbol2scm("lyric-syllable-interface")))
     {
       current_lyric_l_ = i.elem_l_;
       if (extender_p_
          && !extender_p_->get_bound (RIGHT)
            )
          {
-           Lyric_extender(extender_p_).set_textitem (RIGHT, dynamic_cast<Item*> (i.elem_l_));
+           Lyric_extender::set_textitem (extender_p_, RIGHT, dynamic_cast<Item*> (i.elem_l_));
          }
     }
 }
@@ -101,7 +100,7 @@ Extender_engraver::finalize ()
 }
 
 void
-Extender_engraver::create_grobs ()
+Extender_engraver::process_music ()
 {
   if (req_l_ && ! extender_p_)
     {
@@ -114,7 +113,7 @@ Extender_engraver::create_grobs ()
       extender_p_ = new Spanner (get_property ("LyricExtender"));
 
 
-      Lyric_extender (extender_p_).set_textitem  (LEFT, last_lyric_l_);
+      Lyric_extender::set_textitem  (extender_p_, LEFT, last_lyric_l_);
       announce_grob (extender_p_, req_l_);
     }
 }
index 942d0b8922434662642585f1317f77fd844ad7db..860b6072f4bdf74dc95fec4705046e0bdfb004ff 100644 (file)
   for on a word's last syllable.  The extender should be aligned
   with the left side of the last note of the melissima, and not
   extend beond, lasting the whole duration of the melissima
-  (as in MUP, urg).
-
 
  */
 
 class Lyric_extender
 {
 public:
-  Spanner*elt_l_;
-  Lyric_extender (Spanner*);
-  void set_textitem (Direction, Grob*);
+  static void set_textitem (Spanner*, Direction, Grob*);
   DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 
index a56bae3fa4689200886674cff0d48d643ffc4674..d3af55fbb930eaae28c2ad1cc04c0ed7fb92955a 100644 (file)
@@ -47,14 +47,10 @@ Lyric_extender::brew_molecule (SCM smob)
 }
 
 void
-Lyric_extender::set_textitem (Direction d, Grob*s)
+Lyric_extender::set_textitem (Spanner*sp, Direction d, Grob*s)
 {
-  elt_l_->set_bound (d, s);
-  elt_l_->add_dependency (s);
+  sp->set_bound (d, s);
+  sp->add_dependency (s);
 }
 
-Lyric_extender::Lyric_extender (Spanner*s)
-{
-  elt_l_ = s;
-}