From dafefd1a631edf07e3c1873cfcea6285bde1200c Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Tue, 15 May 2001 17:53:05 +0200 Subject: [PATCH] release: 1.4.1 ========== * Added \tupletUp, \tupletDown, \tupletBoth. * Bugfix convert-ly: treCorde. * Slur attachment and extremity offsets taken relative to slur direction; so that Slur \override #'attachment-offset = #'((0 . 1) . (0 . 1)) will always make the slur move away from the note head. * Bugfix: slurs on dotted or flagged notes. * Added @reng, @rgrob, and @rint macros for referencing engravers, grobs and interfaces in documentation. * Bugfix for configure. * text2html: use python script, use
 instead of .

* Fixed pa.ly.

* Bugfix: lilypond mode: make view messages scroll by.

* configure: check for splitting makeinfo; small fixes for
non-splitting makeinfo doc.

* Added some missing titling (dedication, translator) and fixed ps titling
(Thanks David Arnold).

* More doco fixes.  Added a small legend.

* Bugfix: trend of broken slurs with user-overridden stem attachments.

* Bugfix redhat.spec: use root attributes on files.

* Bugfix: typo in update-lily, re-set download url to /development.

* Removed some empty files.

* Merged tutorials. Simplified the text.

* Small doco fixes.

1.4.0.
---
 CHANGES                                       | 39 +++++-----
 Documentation/hacking.texi                    |  0
 Documentation/index.texi                      | 22 +++---
 Documentation/misc/CHANGES-1.3                |  5 +-
 Documentation/user/dev.texi                   |  0
 Documentation/user/development.itexi          |  0
 Documentation/user/glossary.tely              | 78 +++++++++----------
 Documentation/user/moreinfo.itexi             |  0
 Documentation/user/mutopia.itely              |  0
 Documentation/user/programs.itexi             |  0
 Documentation/user/refman.itely               |  1 +
 Documentation/user/toet.itely                 |  0
 INSTALL.txt                                   |  2 +-
 VERSION                                       |  4 +-
 buildscripts/mf-to-table.py                   |  2 +-
 configure                                     | 37 ++++++++-
 input/regression/script-stacked.ly            |  5 ++
 lily/afm.cc                                   |  8 +-
 lily/break-align-item.cc                      |  2 +-
 lily/collision.cc                             |  5 +-
 lily/include/auto-change-music.hh             |  0
 lily/include/request.hh                       |  1 -
 lily/molecule.cc                              |  2 +-
 lily/music-ctor.cc                            |  0
 lily/musical-request.cc                       | 15 +---
 lily/request.cc                               |  8 +-
 lily/script-engraver.cc                       | 10 +--
 lily/simple-spacer.cc                         |  2 +-
 lily/stem-tremolo-engraver.cc                 |  0
 ly/book-fragment.ly                           |  0
 ly/center-fragment.ly                         |  0
 ly/fragment.ly                                |  0
 ly/key.ly                                     |  0
 ...redhat.spec.in => lilypond.redhat.spec.in} |  0
 make/{suse.spec.in => lilypond.suse.spec.in}  |  0
 make/out/lilypond.lsm                         |  8 +-
 .../out/{redhat.spec => lilypond.redhat.spec} |  6 +-
 make/out/{suse.spec => lilypond.suse.spec}    |  4 +-
 scm/clef.scm                                  | 35 +++++----
 tex/fetdefs.tex                               |  0
 40 files changed, 163 insertions(+), 138 deletions(-)
 delete mode 100644 Documentation/hacking.texi
 delete mode 100644 Documentation/user/dev.texi
 delete mode 100644 Documentation/user/development.itexi
 delete mode 100644 Documentation/user/moreinfo.itexi
 delete mode 100644 Documentation/user/mutopia.itely
 delete mode 100644 Documentation/user/programs.itexi
 delete mode 100644 Documentation/user/toet.itely
 create mode 100644 input/regression/script-stacked.ly
 delete mode 100644 lily/include/auto-change-music.hh
 delete mode 100644 lily/music-ctor.cc
 delete mode 100644 lily/stem-tremolo-engraver.cc
 delete mode 100644 ly/book-fragment.ly
 delete mode 100644 ly/center-fragment.ly
 delete mode 100644 ly/fragment.ly
 delete mode 100644 ly/key.ly
 rename make/{redhat.spec.in => lilypond.redhat.spec.in} (100%)
 rename make/{suse.spec.in => lilypond.suse.spec.in} (100%)
 rename make/out/{redhat.spec => lilypond.redhat.spec} (98%)
 rename make/out/{suse.spec => lilypond.suse.spec} (99%)
 delete mode 100644 tex/fetdefs.tex

diff --git a/CHANGES b/CHANGES
index c9b9282712..a2aff5fc2b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -7,19 +7,16 @@
 
 * Slur attachment and extremity offsets taken relative to slur
 direction; so that
+
    Slur \override #'attachment-offset = #'((0 . 1) . (0 . 1))
+
 will always make the slur move away from the note head.
 
 * Bugfix: slurs on dotted or flagged notes.
 
-* Refman fixes.
-
 * Added @reng, @rgrob, and @rint macros for referencing engravers,
 grobs and interfaces in documentation.
 
-1.4.0.jcn6
-==========
-
 * Bugfix for configure.
 
 * text2html: use python script, use <pre> instead of <xmp>.
@@ -28,36 +25,36 @@ grobs and interfaces in documentation.
 
 * Bugfix: lilypond mode: make view messages scroll by.
 
-1.4.0.jcn5
-==========
-
 * configure: check for splitting makeinfo; small fixes for
 non-splitting makeinfo doc.
 
 * Added some missing titling (dedication, translator) and fixed ps titling
 (Thanks David Arnold).
 
-1.4.0.jcn4
-==========
-
 * More doco fixes.  Added a small legend.
 
-1.4.0.jcn2
-==========
-
 * Bugfix: trend of broken slurs with user-overridden stem attachments.
 
-* Further Timmification of tutorial.
-
-1.4.0.jcn1
-==========
-
 * Bugfix redhat.spec: use root attributes on files.
 
 * Bugfix: typo in update-lily, re-set download url to /development.
 
 * Removed some empty files.
 
-* Merged tutorials; still some Timmification to come.
+* Merged tutorials. Simplified the text.
+
+* Small doco fixes.
+
+1.4.0.uu1
+=========
+
+* Bugfix: percussion clef
+
+* Bugfix: multiple scripts.
+
+* Bugfix: read TeX's afm files. Metrics are still messed up (too small), but no
+crash.
+
+* Bugfix: fixed the problem where dots clash with other notes (Timothy S.
+Nelson)
 
-* Small doco fixes.
\ No newline at end of file
diff --git a/Documentation/hacking.texi b/Documentation/hacking.texi
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/index.texi b/Documentation/index.texi
index 162669fd88..d67c4ef2fd 100644
--- a/Documentation/index.texi
+++ b/Documentation/index.texi
@@ -40,7 +40,6 @@
 @unnumberedsubsubsec Installation
 
 @itemize @bullet
-@item @uref{../../index.html,index} What is Lilypond?
 @item @uref{../topdocs/out-www/README.html, README} General information.
 @item @uref{../topdocs/out-www/INSTALL.html, INSTALL}
   How install on Unix.
@@ -52,6 +51,7 @@ How to install on Windows.
 @unnumberedsubsubsec Support
 
 @itemize @bullet
+@item @uref{../../index.html,index} What is Lilypond?
 @item @uref{../topdocs/out-www/FAQ.html,mini-FAQ} Mini FAQ -- very
 frequently asked questions, with answers.
 @item @uref{http://www.lilypond.org/wiki?LilyPondFaqs,FAQs} Frequently
@@ -87,17 +87,21 @@ the mailing lists.
 
 @item
 @uref{../user/out-www/lilypond/Reference-Manual.html,Reference-Manual}
-The Reference Manual.
-@item @uref{../user/out-www/lilypond-internals/lilypond-internals.html,lilypond-internals}
-Full documentation of internals, generated from the sources.  If you
-want to fine-tune output, you need the information in this document.
-@item @uref{../user/out-www/lilypond/lilypond.html,lilypond}
-  The complete user manual, (in
-  @uref{../user/out-www/lilypond.ps.gz,PostScript}).
+The reference manual.
+
+@item @uref{../user/out-www/lilypond/lilypond.html,lilypond} The complete
+user manual, (in @uref{../user/out-www/lilypond.ps.gz,PostScript}). This
+manual contains among others the tutorial, the reference manual.
+
 @c glossary maybe for new users?
 @item @uref{../user/out-www/glossary.html,glossary} A glossary of musical
 terms, including translations.  (in
-@uref{../user/out-www/glossary.ps.gz,Postscript})
+@uref{../user/out-www/glossary.ps.gz,Postscript})  Read this if you're not
+familiar with English terms for notation.
+
+@item @uref{../user/out-www/lilypond-internals/lilypond-internals.html,lilypond-internals}
+Full documentation of internals, generated from the sources.  If you
+want to fine-tune output, you need the information in this document.
 @end itemize
 
 
diff --git a/Documentation/misc/CHANGES-1.3 b/Documentation/misc/CHANGES-1.3
index d0b747dbc1..864e359b6d 100644
--- a/Documentation/misc/CHANGES-1.3
+++ b/Documentation/misc/CHANGES-1.3
@@ -1,9 +1,6 @@
 1.4.0
 =====
 
-1.3.154.hwn1
-============
-
 * RedHat .spec tweaks.
 
 * Bugfix: ly2dvi -o directory/ foo now works.
@@ -44,7 +41,7 @@ dvips are stored in outdir.
 * PO updates.
 
 * petite-ouverture-a-danser.ly bugfix, twinkle.ly bugfix
-
+V
 1.3.153
 =======
 
diff --git a/Documentation/user/dev.texi b/Documentation/user/dev.texi
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/user/development.itexi b/Documentation/user/development.itexi
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/user/glossary.tely b/Documentation/user/glossary.tely
index 2513a46a09..f043ecf4b5 100644
--- a/Documentation/user/glossary.tely
+++ b/Documentation/user/glossary.tely
@@ -149,7 +149,7 @@ the duration of the long a. is proportionate to that of the main note.
 @
 
 @lilypond[13pt,eps]
-\notes\relative c'' {
+\context Voice\notes\relative c'' {
 \key d \major
 \time 4/4
 
@@ -687,8 +687,8 @@ also to some extent in newer jazz music.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c' { 
   d1
@@ -702,8 +702,8 @@ also to some extent in newer jazz music.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c' { 
   \property Voice.TextScript \set #'padding = #-10
@@ -716,8 +716,8 @@ also to some extent in newer jazz music.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c' { 
   f1 g a 
@@ -730,8 +730,8 @@ also to some extent in newer jazz music.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   g1 a 
@@ -744,8 +744,8 @@ also to some extent in newer jazz music.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   a1
@@ -763,8 +763,8 @@ harmonic minor scale type an augmented second (A) occurs between the 6th and
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c' { 
   c1 d
@@ -777,8 +777,8 @@ harmonic minor scale type an augmented second (A) occurs between the 6th and
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   a1
@@ -791,8 +791,8 @@ harmonic minor scale type an augmented second (A) occurs between the 6th and
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   a1
@@ -809,8 +809,8 @@ harmonic minor scale type an augmented second (A) occurs between the 6th and
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   a1
@@ -997,7 +997,7 @@ but equal pitch.
 
 @lilypond[13pt,eps]
 \property Score.barNonAuto = ##t
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' {
   gis1_"g sharp" s as1_"a flat" s s
   < des_"dim fifth" g,! > s s < cis_"augm fourth" g! > s s
@@ -1038,7 +1038,7 @@ octave lower (for example on double bass @w{@ar{}@strong{strings}}).
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
 \property Staff.Clef \override #'full-size-change = ##t
-\property Lyrics.LyricText \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
 \addlyrics
 \notes\relative c { 
 %  \clef "F3"
@@ -1101,7 +1101,7 @@ less than a quarter note. The number of flags determines the
 
 @lilypond[13pt,eps]
 \property Score.barNonAuto = ##t
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' { 
   g8_"1/8" s8 
   g16_"1/16" s8 
@@ -1147,8 +1147,8 @@ of the base chords.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Lyrics.LyricText \set #'font-style = #'large
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' {
   < g1 e c > < a f d > < b g e > 
@@ -1174,7 +1174,7 @@ that).
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
 \property Staff.Clef \set #'full-size-change = ##t
-\property Lyrics.LyricText \set #'font-style = #'large
+\property Score.LyricText \set #'font-style = #'large
 \addlyrics
 \notes\relative c'' { 
   \clef french 
@@ -1248,7 +1248,7 @@ section. @ar{}@w{}@strong{functional harmony}
     \time 4/4
     \clef treble 
     \partial 4 < c4 g e > | < c a f > < b g d > < c2 g e > }
-  \property Lyrics.LyricText \set #'font-style = #'large
+  \property Score.LyricText \set #'font-style = #'large
   \addlyrics
   \context Staff = SB \relative c { 
     \clef bass 
@@ -1270,7 +1270,7 @@ Consonances:
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' {
   <g1_"unisone" g> s
   <g1_"third" b> s
@@ -1288,7 +1288,7 @@ Dissonances:
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' {
   <g1_"second" a> s
   <g1_"seventh" f'> s 
@@ -1667,7 +1667,7 @@ subject.
 
 @lilypond[13pt,eps] 
 \property Score.TimeSignature \override #'style = #'C2/2
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' { 
   \time 4/4
   \key g \major 
@@ -1749,7 +1749,7 @@ but sometimes (mostly in pre baroque music) the double length note value
 @
 
 @lilypond[13pt,eps]
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \property Score.barNonAuto = ##t
 \notes\relative c'' { 
   \property Voice.NoteHead \override #'style = #'mensural
@@ -1760,7 +1760,7 @@ but sometimes (mostly in pre baroque music) the double length note value
 @end lilypond
 
 @lilypond[13pt,eps]
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \property Score.barNonAuto = ##t
 \notes\relative c'' { 
   r\longa_"longa" r\breve_"breve" 
@@ -1774,7 +1774,7 @@ half. Another dot adds yet a fourth of the duration.
 @
 
 @lilypond[13pt,eps]
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' { 
   \time 4/4
   g4._"pointed" g8 g2 | g4 () g8 g g2 \bar "||" 
@@ -1789,7 +1789,7 @@ frequently used.
 @
 
 @lilypond[13pt,eps]
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' { 
   \time 4/4
   \times 2/3 {g8_"triplets" g g} g4 g8 g g4 \bar "||" 
@@ -1826,7 +1826,7 @@ the upper note is played first.
 @lilypond[13pt,eps]
 <
   \context Staff = sa {
-        \property Voice.TextScript \set #'font-style = #'large
+        \property Score.TextScript \set #'font-style = #'large
     \notes\relative c'' { 
       c2._"pre-1850"  b4\trill | c1 \bar "||"
       c2._"post-1850" b4\trill | c1 \bar "||"
@@ -1847,7 +1847,7 @@ Other frequently used ornaments are the @emph{turn}, the @emph{mordent} and the
 @lilypond[13pt,eps]
 <
   \context Staff = sa {
-        \property Voice.TextScript \set #'font-style = #'large
+        \property Score.TextScript \set #'font-style = #'large
     \notes\relative c'' { 
       a4_"turn" b\turn c2 \bar "||"
       g4_"mordent" a b\mordent a \bar "||"
@@ -1991,7 +1991,7 @@ the same @w{@ar{}@strong{signature}}.
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c' { 
   \key es \major
   es1_"e flat major" f g as bes c d es 
@@ -2250,7 +2250,7 @@ note. @w{@ar{}@strong{beam}}
 @lilypond[13pt,eps]
 \property Score.noAutoBeaming = ##t
 \property Score.barNonAuto = ##t
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c'' { 
   g2_"1/2" g' s16
   g,4_"1/4" g' s16
@@ -2323,7 +2323,7 @@ the underlaying (normal) pulse and the actual (abnormal) rhythm.
 @
 
 @lilypond[13pt,eps]
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \time 4/4
 \notes\relative c' {
   \partial 4
@@ -2514,7 +2514,7 @@ a @w{@ar{}@strong{chord}}, usually in the distance of a third
 
 @lilypond[13pt,eps] 
 \property Score.barNonAuto = ##t 
-\property Voice.TextScript \set #'font-style = #'large
+\property Score.TextScript \set #'font-style = #'large
 \notes\relative c' {
   % e2:32_"a" f:32 [ e8:16 f:16 g:16 a:16 ] s4 [:32 e1_"b" g]
   % e2:32_"a" f:32 [ e8:16 f:16 g:16 a:16 ] s4 \repeat "tremolo" 16 { e32_"b" g }
diff --git a/Documentation/user/moreinfo.itexi b/Documentation/user/moreinfo.itexi
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/user/mutopia.itely b/Documentation/user/mutopia.itely
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/user/programs.itexi b/Documentation/user/programs.itexi
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely
index 0126eedb02..b791f4e8fc 100644
--- a/Documentation/user/refman.itely
+++ b/Documentation/user/refman.itely
@@ -296,6 +296,7 @@ A reminder accidental
 can be forced by adding an exclamation mark @code{!} after the pitch.  A
 cautionary accidental,
 @cindex cautionary accidental
+@cindex parenthesized accidental
 i.e., an accidental within parentheses can be obtained by adding the
 question mark `@code{?}' after the pitch.
 
diff --git a/Documentation/user/toet.itely b/Documentation/user/toet.itely
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/INSTALL.txt b/INSTALL.txt
index 1129221854..81c41a7990 100644
--- a/INSTALL.txt
+++ b/INSTALL.txt
@@ -37,7 +37,7 @@ INSTALL - compiling and installing GNU LilyPond
    This document describes how to build LilyPond on Unix platforms.  It
 is also known to run and compile on Windows NT/95/98 as well.  More
 information on this topic can be found at the LilyPond on Windows page
-(ftp://ftp.lilypond.org/pub/LilyPond/gnu-windows/).
+(http://www.lilypond.org/gnu-windows/).
 
 Downloading
 ===========
diff --git a/VERSION b/VERSION
index 4cdfcd10c9..e6420ebf80 100644
--- a/VERSION
+++ b/VERSION
@@ -1,8 +1,8 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=4
-PATCH_LEVEL=0
-MY_PATCH_LEVEL=jcn7
+PATCH_LEVEL=1
+MY_PATCH_LEVEL=
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
diff --git a/buildscripts/mf-to-table.py b/buildscripts/mf-to-table.py
index 8feec727d6..bb9c05919b 100755
--- a/buildscripts/mf-to-table.py
+++ b/buildscripts/mf-to-table.py
@@ -90,7 +90,7 @@ def write_afm_char_metric(file, charmetric):
 
 	f = 1000;
 	tup = (charmetric['code'],
-		charmetric['width'] + charmetric['breapth'],
+	       (charmetric['width'] + charmetric['breapth'])*f,
 		charmetric['name'],
 		-charmetric['breapth'] *f,
 		-charmetric['depth']*f,
diff --git a/configure b/configure
index f582a235e4..67fb475b0d 100755
--- a/configure
+++ b/configure
@@ -3147,7 +3147,7 @@ else
 #line 3148 "configure"
 #include "confdefs.h"
 #ifdef __cplusplus
-extern "C" void exit(int);
+extern "C" void exit(int) throw();
 #endif
 
 main()
@@ -3353,12 +3353,13 @@ cat >> confdefs.h <<EOF
 EOF
 
 
-for ac_prog in makeinfo
+
+    for ac_prog in makeinfo
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3362: checking for $ac_word" >&5
+echo "configure:3363: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3388,10 +3389,37 @@ test -n "$MAKEINFO" && break
 done
 test -n "$MAKEINFO" || MAKEINFO="error"
 
+    if test "$MAKEINFO" != "error"; then
+	echo $ac_n "checking whether makeinfo can split html by @node""... $ac_c" 1>&6
+echo "configure:3395: checking whether makeinfo can split html by @node" >&5
+	mkdir -p out
+	makeinfo --html --output=out/split <<EOF
+\input texinfo
+\input texinfo @c -*-texinfo-*-
+@setfilename split.info
+@settitle split.info
+@bye
+EOF
+	if test -d out/split; then
+	    SPLITTING_MAKEINFO=yes
+	    echo "$ac_t""yes" 1>&6
+	    rm -rf out/split
+	else
+	    echo "$ac_t""no" 1>&6
+	    
+    echo "configure: warning: your html documentation will be one large file" 1>&2
+    warn_b=yes
+
+	    rm -rf out/split
+	fi
+    fi
+    
+
+
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3395: checking for $ac_word" >&5
+echo "configure:3423: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3625,6 +3653,7 @@ s%@BIBTEX2HTML@%$BIBTEX2HTML%g
 s%@BIBTEX2HTML_FLAGS@%$BIBTEX2HTML_FLAGS%g
 s%@LIBOBJS@%$LIBOBJS%g
 s%@MAKEINFO@%$MAKEINFO%g
+s%@SPLITTING_MAKEINFO@%$SPLITTING_MAKEINFO%g
 s%@PERL@%$PERL%g
 
 CEOF
diff --git a/input/regression/script-stacked.ly b/input/regression/script-stacked.ly
new file mode 100644
index 0000000000..0f487101b6
--- /dev/null
+++ b/input/regression/script-stacked.ly
@@ -0,0 +1,5 @@
+
+\header { 
+texidoc = "Scripts may b4e stacked."
+}
+\score { \notes { c''->-. } }
diff --git a/lily/afm.cc b/lily/afm.cc
index 6786afd725..8fac391067 100644
--- a/lily/afm.cc
+++ b/lily/afm.cc
@@ -22,7 +22,13 @@ Adobe_font_metric::Adobe_font_metric (AFM_Font_info * fi)
     {
       AFM_CharMetricInfo * c = fi->cmi + i;
 
-      ascii_to_metric_idx_[c->code] = i;
+      /*
+	Some TeX afm files contain code = -1. We don't know why, let's
+	ignore it.
+	
+       */
+      if (c->code >= 0)
+	ascii_to_metric_idx_[c->code] = i;
       name_to_metric_dict_[c->name] = i;
     }
 }
diff --git a/lily/break-align-item.cc b/lily/break-align-item.cc
index 06ff6bac74..8bad438909 100644
--- a/lily/break-align-item.cc
+++ b/lily/break-align-item.cc
@@ -8,7 +8,7 @@
 
 
 #include <math.h>
-#include <libc-extension.hh>
+#include <libc-extension.hh>	// isinf
 
 #include "side-position-interface.hh"
 #include "axis-group-interface.hh"
diff --git a/lily/collision.cc b/lily/collision.cc
index 792caf0d3e..5b6b815aa6 100644
--- a/lily/collision.cc
+++ b/lily/collision.cc
@@ -195,7 +195,10 @@ Collision::automatic_shift (Grob *me)
 	  {
 	    for (int i=0; i < clash_groups[d].size (); i++)
 	      {
-		offsets[d][i] -= d * 0.5;
+		if(Rhythmic_head::dot_count (nu_l) > Rhythmic_head::dot_count (nd_l))
+		  offsets[d][i] += d * 0.5;
+		else 
+		  offsets[d][i] -= d * 0.5;
 	      }
 	  }
 	  while ((flip (&d))!= UP);
diff --git a/lily/include/auto-change-music.hh b/lily/include/auto-change-music.hh
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/lily/include/request.hh b/lily/include/request.hh
index c0090667d6..677be604f9 100644
--- a/lily/include/request.hh
+++ b/lily/include/request.hh
@@ -41,7 +41,6 @@ class Script_req : public virtual Request
 public:
   void set_direction (Direction d);
   Direction get_direction () const;
-
   VIRTUAL_COPY_CONS (Music);
   Script_req ();
 };
diff --git a/lily/molecule.cc b/lily/molecule.cc
index 7b440146ac..b414b498ae 100644
--- a/lily/molecule.cc
+++ b/lily/molecule.cc
@@ -7,7 +7,7 @@
 */
 
 #include <math.h>
-#include <libc-extension.hh>
+#include <libc-extension.hh>	// isinf
 
 #include "font-metric.hh" 
 #include "dimensions.hh"
diff --git a/lily/music-ctor.cc b/lily/music-ctor.cc
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/lily/musical-request.cc b/lily/musical-request.cc
index 463d0775e8..e4866b6064 100644
--- a/lily/musical-request.cc
+++ b/lily/musical-request.cc
@@ -16,7 +16,6 @@ Tremolo_req::Tremolo_req ()
 {
 }
 
-
 void
 Melodic_req::transpose (Pitch delta)
 {
@@ -78,9 +77,6 @@ Note_req::Note_req ()
 }
 
 
-
-
-
 bool
 Span_req::do_equal_b (Request const*r) const
 {
@@ -106,7 +102,8 @@ Articulation_req::do_equal_b (Request const* r) const
 {
   Articulation_req const* a = dynamic_cast<Articulation_req const*> (r);
   
-  return a; //  &&  articulation_str_ == a->articulation_str_;
+  return a && gh_equal_p (get_mus_property ("articulation-type"),
+			  r->get_mus_property ("articulation-type"));
 }
 
 
@@ -114,11 +111,3 @@ Articulation_req::do_equal_b (Request const* r) const
 
 
 
-
-
-
-
-
-
-
-
diff --git a/lily/request.cc b/lily/request.cc
index 7ad67285b1..844f942a35 100644
--- a/lily/request.cc
+++ b/lily/request.cc
@@ -9,8 +9,6 @@
 #include "request.hh"
 #include "debug.hh"
 
-
-
 bool
 Request::equal_b (Request const* r) const
 {
@@ -23,15 +21,12 @@ Request::do_equal_b (Request const*) const
   return true;
 }
   
-
 Request::Request ()
   : Music (SCM_EOL)
 {
   set_mus_property ("type", ly_symbol2scm ("request"));
 }
 
-
-
 Script_req::Script_req ()
 {
   set_direction (CENTER);
@@ -51,7 +46,6 @@ Script_req::get_direction () const
   return (isdir_b (d)) ?  to_dir (d) : CENTER;
 }
 
-
 Direction
 Span_req::get_span_dir () const
 {
@@ -68,3 +62,5 @@ Span_req::set_span_dir (Direction d)
 
 
 
+
+
diff --git a/lily/script-engraver.cc b/lily/script-engraver.cc
index 4b2c44773d..256acd3dc4 100644
--- a/lily/script-engraver.cc
+++ b/lily/script-engraver.cc
@@ -4,7 +4,6 @@
   (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
-
 #include "script.hh"
 #include "side-position-interface.hh"
 #include "musical-request.hh"
@@ -12,7 +11,8 @@
 #include "rhythmic-head.hh"
 #include "engraver.hh"
 
-class Script_engraver : public Engraver {
+class Script_engraver : public Engraver
+{
   Link_array<Grob> script_p_arr_;
   Link_array<Articulation_req> script_req_l_arr_;
 
@@ -28,7 +28,6 @@ protected:
   virtual void acknowledge_grob (Grob_info);
 };
 
-
 void
 Script_engraver::initialize ()
 {
@@ -71,8 +70,7 @@ Script_engraver::process_music ()
       // todo -> use result of articulation-to-scriptdef directly as basic prop list.
       Grob *p =new Item (get_property ("Script"));
       art = gh_cdr (art);
-      p->set_grob_property ("molecule",
-			   gh_car (art));
+      p->set_grob_property ("molecule", gh_car (art));
 
       art = gh_cdr (art);
       bool follow_staff = gh_scm2bool (gh_car (art));
@@ -87,12 +85,10 @@ Script_engraver::process_music ()
       art = gh_cdr (art);
       SCM priority = gh_car (art);
 
-
       if (isdir_b (force_dir) && to_dir (force_dir))
 	p->set_grob_property ("direction", force_dir);
       else if (to_dir (relative_stem_dir))
 	p->set_grob_property ("side-relative-direction", relative_stem_dir);
-      
 
 
       /*
diff --git a/lily/simple-spacer.cc b/lily/simple-spacer.cc
index edf841a773..cea9d7079d 100644
--- a/lily/simple-spacer.cc
+++ b/lily/simple-spacer.cc
@@ -11,7 +11,7 @@
 */
 
 #include <math.h>
-#include <libc-extension.hh>
+#include <libc-extension.hh>	// isinf
 
 #include "simple-spacer.hh"
 #include "paper-column.hh"
diff --git a/lily/stem-tremolo-engraver.cc b/lily/stem-tremolo-engraver.cc
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/ly/book-fragment.ly b/ly/book-fragment.ly
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/ly/center-fragment.ly b/ly/center-fragment.ly
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/ly/fragment.ly b/ly/fragment.ly
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/ly/key.ly b/ly/key.ly
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/make/redhat.spec.in b/make/lilypond.redhat.spec.in
similarity index 100%
rename from make/redhat.spec.in
rename to make/lilypond.redhat.spec.in
diff --git a/make/suse.spec.in b/make/lilypond.suse.spec.in
similarity index 100%
rename from make/suse.spec.in
rename to make/lilypond.suse.spec.in
diff --git a/make/out/lilypond.lsm b/make/out/lilypond.lsm
index 26caf0622e..2e2b9c9a3d 100644
--- a/make/out/lilypond.lsm
+++ b/make/out/lilypond.lsm
@@ -1,15 +1,15 @@
 Begin3
 Title: LilyPond
-Version: 1.4.0
-Entered-date: 10MAY01
+Version: 1.4.1
+Entered-date: 15MAY01
 Description: @BLURB@
 Keywords: music notation typesetting midi fonts engraving
 Author: hanwen@cs.uu.nl (Han-Wen Nienhuys)
 	janneke@gnu.org (Jan Nieuwenhuizen)
 Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
 Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
-	1000k lilypond-1.4.0.tar.gz 
+	1000k lilypond-1.4.1.tar.gz 
 Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
-	1000k lilypond-1.4.0.tar.gz 
+	1000k lilypond-1.4.1.tar.gz 
 Copying-policy: GPL
 End
diff --git a/make/out/redhat.spec b/make/out/lilypond.redhat.spec
similarity index 98%
rename from make/out/redhat.spec
rename to make/out/lilypond.redhat.spec
index ed8481bb77..7a4cec8be8 100644
--- a/make/out/redhat.spec
+++ b/make/out/lilypond.redhat.spec
@@ -1,11 +1,11 @@
 %define info yes
 
 Name: lilypond
-Version: 1.4.0
+Version: 1.4.1
 Release: 1
 License: GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.4.0.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.4.1.tar.gz
 Summary: Create and print music notation 
 URL: http://www.cs.uu.nl/~hanwen/lilypond
 BuildRoot: /tmp/lilypond-install
@@ -96,7 +96,7 @@ fi
 
 
 %files
-
+%defattr(-, root, root)
 %{_datadir}/emacs/site-lisp/lilypond-*
 %{_datadir}/emacs/site-lisp/site-start.d/lilypond-*
 
diff --git a/make/out/suse.spec b/make/out/lilypond.suse.spec
similarity index 99%
rename from make/out/suse.spec
rename to make/out/lilypond.suse.spec
index a0ece8b2e1..da4af336be 100644
--- a/make/out/suse.spec
+++ b/make/out/lilypond.suse.spec
@@ -14,11 +14,11 @@
 
 Distribution: SuSE Linux 7.0 (i386)
 Name: lilypond
-Version: 1.4.0
+Version: 1.4.1
 Release: 2
 Copyright:    GPL
 Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.4.0.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.4.1.tar.gz
 # music notation software for.. ?
 Summary: A program for printing sheet music.
 URL: http://www.lilypond.org/
diff --git a/scm/clef.scm b/scm/clef.scm
index 1d780f27c6..a6f11bd692 100644
--- a/scm/clef.scm
+++ b/scm/clef.scm
@@ -12,6 +12,7 @@
 	  ("soprano" . ("clefs-C" -4  0))
 	  ("mezzosoprano" . ("clefs-C" -2  0))
 	  ("alto" . ("clefs-C" 0 0))
+	  ("C" . ("clefs-C" 0 0))
 	  ("tenor" . ("clefs-C" 2 0))
 	  ("baritone" . ("clefs-C" 4  0))
 	  ("varbaritone"  . ("clefs-F" 0 0))
@@ -57,24 +58,26 @@
 	)
 )
 
-; "an alist mapping GLYPHNAME to the position of the central C for that symbol")
+
+;; "an alist mapping GLYPHNAME to the position of the central C for that symbol"
 (define c0-pitch-alist
   '(("clefs-G" . -4)
-	  ("clefs-C" . 0)
-	  ("clefs-F" . 4)
-	  ("clefs-vaticana_do" . 0)
-	  ("clefs-vaticana_fa" . 4)
-	  ("clefs-medicaea_do" . 0)
-	  ("clefs-medicaea_fa" . 4)
-	  ("clefs-hufnagel_do" . 0)
-	  ("clefs-hufnagel_fa" . 4)
-	  ("clefs-hufnagel_do_fa" . 0)
-	  ("clefs-mensural1_c" . 0)
-	  ("clefs-mensural2_c" . 0)
-	  ("clefs-mensural3_c" . 0)
-	  ("clefs-mensural1_f" . 4)
-	  ("clefs-mensural2_f" . 4)
-	  ("clefs-mensural_g" . -4))
+    ("clefs-C" . 0)
+    ("clefs-F" . 4)
+    ("clefs-percussion" . 0)
+    ("clefs-vaticana_do" . 0)
+    ("clefs-vaticana_fa" . 4)
+    ("clefs-medicaea_do" . 0)
+    ("clefs-medicaea_fa" . 4)
+    ("clefs-hufnagel_do" . 0)
+    ("clefs-hufnagel_fa" . 4)
+    ("clefs-hufnagel_do_fa" . 0)
+    ("clefs-mensural1_c" . 0)
+    ("clefs-mensural2_c" . 0)
+    ("clefs-mensural3_c" . 0)
+    ("clefs-mensural1_f" . 4)
+    ("clefs-mensural2_f" . 4)
+    ("clefs-mensural_g" . -4))
   )
 
 (define (clef-name-to-properties cl)
diff --git a/tex/fetdefs.tex b/tex/fetdefs.tex
deleted file mode 100644
index e69de29bb2..0000000000
-- 
2.39.2