From 7fd51755d9bdf40766a612b3c3e9a00f68238082 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Mon, 31 May 2004 16:02:36 +0000 Subject: [PATCH] release commit --- ChangeLog | 2 ++ Documentation/topdocs/NEWS.texi | 46 ++++++++++++----------------- Documentation/user/notation.itely | 2 ++ VERSION | 4 +-- input/regression/span-bar-break.ly | 16 +++++----- lily/paper-line.cc | 13 ++++---- scm/framework-ps.scm | 22 +++++++++----- scm/framework-tex.scm | 18 ++++++----- scripts/lilypond-book.py | 6 ++-- stepmake/stepmake/generic-vars.make | 3 ++ 10 files changed, 73 insertions(+), 59 deletions(-) diff --git a/ChangeLog b/ChangeLog index 795bde6769..e0c26f5b3a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2004-05-31 Han-Wen Nienhuys + * stepmake/stepmake/generic-vars.make: unset LANG. + * input/regression/tuplet-nest.ly: bugfix. * lily/tie-performer.cc (stop_translation_timestep): reset diff --git a/Documentation/topdocs/NEWS.texi b/Documentation/topdocs/NEWS.texi index a79c291906..25143e2ee1 100644 --- a/Documentation/topdocs/NEWS.texi +++ b/Documentation/topdocs/NEWS.texi @@ -48,7 +48,7 @@ produces a rendered markup of the music. An example is in @item LilyPond expressions can be embedded into Scheme. The syntax for this is @code{#@{ ... #@}}. Within such a block, Scheme forms can be introduced using a @code{$} character (@code{$$} results in a single -`$' character). These forms are then printed in the pattern. +`$' character). These forms are then inserted in the pattern. @example #(define (textoffset dx dy) @@ -74,7 +74,7 @@ result is that @{ a b c @} @end example -is the same as +is interpreted as @example \header @{ title = "The Title" @} @@ -85,21 +85,11 @@ is the same as @} @end example -Actually, a toplevel music list is now handled quite flexibly by -@code{default-toplevel-music-handler}. Similarly, a @code{\score} -block at toplevel is handled by @code{default-toplevel-score-handler} -and a @code{book} at toplevel is handled by -@code{default-toplevel-book-handler}. The default behavior of these -handlers produces the results described above. - -@ignore - -@c FIXME: un-geekify -These default handlers have the following effect. A Music list at -toplevel is encapsulated in a @code{score} block, and a @code{score} -block at toplevel is encapsulated in a @code{book} block. A -@code{book} block at toplevel generates printed output. -@end ignore +This is handled by the function defined in +@code{toplevel-music-handler}. Similarly, @code{\score} and +@code{\book} are handled by @code{toplevel-score-handler} and a +@code{toplevel-book-handler}. By changing these variables, different +results can be obtained. @item Start pitch for @code{relative} music is optional for music lists. @@ -141,24 +131,26 @@ package installed to function properly. @code{\encoding}. The strings for markup texts are translated automatically. -@item The toplevel block @code{book} introduces page layout. -A @code{book} groups @code{score} blocks into one page layout entity. -Page layout consists of markup titles, headers and footers, and page -breaking. Two page breaking algorithms are available, the classic -ragged pages (the default), and optimal page breaking +@item The toplevel block @code{\book} introduces page layout. +A @code{\book} groups @code{\score} blocks into one page layout +entity. For example, two scores are combined in one book with @example -\paper @{ - %% Select page breaking function. - %% #(define page-breaking ly:ragged-page-breaks) - #(define page-breaking ly:optimal-page-breaks) -@} \book @{ \score @{ ... @} \score @{ ... @} @} @end example +Titling and page breaks are handled by LilyPond. For automatic page +breaking, two algorithms are available, the classic ragged pages (the +default), and optimal page breaking. +Page breaks may be inserted manually with +@example + \pageBreak +@end example + +@item The @code{lilypond} program does not generate La@TeX{} titles or page layout. If you need La@TeX{} titles, you can use the @code{lilypond-book} program. diff --git a/Documentation/user/notation.itely b/Documentation/user/notation.itely index 74eec643a8..d819668cbd 100644 --- a/Documentation/user/notation.itely +++ b/Documentation/user/notation.itely @@ -3540,6 +3540,8 @@ linked. This can be achieved either by using @code{\lyricsto} or by setting corresponding names for both contexts. The latter is explained in @ref{More stanzas}. +@c TODO: document \new Staff << Voice \lyricsto >> bug + @node More stanzas @subsection More stanzas diff --git a/VERSION b/VERSION index 42fd49acf4..09ea3c7f9e 100644 --- a/VERSION +++ b/VERSION @@ -1,6 +1,6 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=2 MINOR_VERSION=3 -PATCH_LEVEL=2 -MY_PATCH_LEVEL=hwn1 +PATCH_LEVEL=3 +MY_PATCH_LEVEL= diff --git a/input/regression/span-bar-break.ly b/input/regression/span-bar-break.ly index 479429dfa7..ac7a50d37f 100644 --- a/input/regression/span-bar-break.ly +++ b/input/regression/span-bar-break.ly @@ -1,13 +1,15 @@ -\version "2.2.0" +\version "2.3.2" -\header { texidoc = "At the beginning of a system, -the @code{|:} repeat barline is drawn between the staves, -but the @code{:|} is not." -" } +\header { + + texidoc = "At the beginning of a system, the @code{|:} repeat +barline is drawn between the staves, but the @code{:|} is not." + + } \score { - \notes \new PianoStaff << - \context Staff=up { + \new PianoStaff << + \context Staff = up { \bar "|:" r1 \bar ":|" \break r1 } diff --git a/lily/paper-line.cc b/lily/paper-line.cc index 945435365e..a38c2a8241 100644 --- a/lily/paper-line.cc +++ b/lily/paper-line.cc @@ -11,8 +11,16 @@ #include "string.hh" #include "virtual-methods.hh" +#include "ly-smobs.icc" + +IMPLEMENT_SMOBS (Paper_line); +IMPLEMENT_TYPE_P (Paper_line, "ly:paper-line?"); +IMPLEMENT_DEFAULT_EQUAL_P (Paper_line); + + #define TITLE_PENALTY -1 + Paper_line::Paper_line (Offset o, SCM stencils, int penalty, bool is_title) { is_title_ = is_title; @@ -40,11 +48,6 @@ Paper_line::~Paper_line () { } -#include "ly-smobs.icc" -IMPLEMENT_SMOBS (Paper_line); -IMPLEMENT_TYPE_P (Paper_line, "ly:paper-line?"); -IMPLEMENT_DEFAULT_EQUAL_P (Paper_line); - SCM Paper_line::mark_smob (SCM smob) { diff --git a/scm/framework-ps.scm b/scm/framework-ps.scm index 49f382b227..7afea69223 100644 --- a/scm/framework-ps.scm +++ b/scm/framework-ps.scm @@ -22,8 +22,7 @@ (lambda (x) (ly:kpathsea-gulp-file (string-append x ".pfa"))) - (filter string? font-names))) - ) + (filter string? font-names))) ) (string-join pfas "\n"))) @@ -165,6 +164,7 @@ (output-variables bookpaper) (ly:gulp-file "music-drawing-routines.ps") (ly:gulp-file "lilyponddefs.ps") + (load-fonts bookpaper) (define-fonts bookpaper) )) @@ -208,21 +208,29 @@ (define (to-pt x) (inexact->exact (round (* scale x)))) + + (define (bbox llx lly urx ury) + (string-append + "%%BoundingBox: " + (ly:number->string (to-pt llx)) " " + (ly:number->string (to-pt lly)) " " + (ly:number->string (to-pt urx)) " " + (ly:number->string (to-pt ury)) "\n")) + (for-each (lambda (l) (set! x-ext (interval-union x-ext (cons 0.0 (ly:paper-line-extent l X)))) ) lines) + (for-each (lambda (x) (ly:outputter-dump-string outputter x)) (list "%!PS-Adobe-2.0 EPSF-2.0\n" "%%Creator: LilyPond \n" - "%%BoundingBox: " - (ly:number->string (to-pt (car x-ext))) " " - (ly:number->string (to-pt 0)) " " - (ly:number->string (to-pt (cdr x-ext))) " " - (ly:number->string (to-pt total-y)) "\n" + +;; (bbox (car x-ext) 0 (cdr x-ext) total-y) ; doesn't work well + "%%EndComments\n" (output-variables bookpaper) (ly:gulp-file "music-drawing-routines.ps") diff --git a/scm/framework-tex.scm b/scm/framework-tex.scm index 69d4a99ada..f19d0f2d83 100644 --- a/scm/framework-tex.scm +++ b/scm/framework-tex.scm @@ -69,23 +69,25 @@ "{" (sanitize-tex-string str) "}%\n"))) (define (header creator time-stamp bookpaper page-count classic?) + (let* + ((scale (ly:output-def-lookup bookpaper 'outputscale))) + (string-append "% Generated by " creator "\n" "% at " time-stamp "\n" (if classic? (tex-string-def "lilypond" 'classic "1") "") - ;; FIXME: duplicated in every backend - "\\def\\lilypondtagline{Engraved by LilyPond (version " - (lilypond-version)")}\n" - ;; FIXME - ;; this is -of course- severely broken, (--hwn) (tex-string-def "lilypondpaper" 'linewidth - (ly:number->string (/ 18 0.175))) ; 18 cm. + (ly:number->string (* scale + (ly:output-def-lookup bookpaper 'linewidth)))) + (tex-string-def "lilypondpaper" 'interscoreline - (ly:number->string 0.0)) - )) + (ly:number->string + (* scale + (ly:output-def-lookup bookpaper 'interscoreline)))) + ))) (define (header-end) (string-append diff --git a/scripts/lilypond-book.py b/scripts/lilypond-book.py index c22601f381..14f52b3d3c 100644 --- a/scripts/lilypond-book.py +++ b/scripts/lilypond-book.py @@ -795,11 +795,11 @@ def process_snippets (cmd, snippets): if format == HTML or format == TEXINFO: for i in names: - if not os.path.exists (i + '.ps') and os.path.exists (i + '.tex'): + if not os.path.exists (i + '.eps') and os.path.exists (i + '.tex'): to_eps (i) ly.make_ps_images (i + '.eps', resolution=110) - elif os.path.exists (i + '.ps'): - ly.make_ps_images (i + '.ps', resolution=110) +# elif os.path.exists (i + '.ps'): +# ly.make_ps_images (i + '.ps', resolution=110) LATEX_DOCUMENT = r''' diff --git a/stepmake/stepmake/generic-vars.make b/stepmake/stepmake/generic-vars.make index e35a064f43..f1e29c02d7 100644 --- a/stepmake/stepmake/generic-vars.make +++ b/stepmake/stepmake/generic-vars.make @@ -73,6 +73,9 @@ TOPLEVEL_VERSION=$(TOPLEVEL_MAJOR_VERSION).$(TOPLEVEL_MINOR_VERSION).$(TOPLEVEL_ endif +# no local settings in the build process. +LANG= +export LANG # clean file lists: # -- 2.39.2