From 07cba348de41ccb71a4707726b2f6c5510f33d49 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Mon, 28 Mar 2005 10:21:18 +0000 Subject: [PATCH] * Documentation/topdocs/INSTALL.texi (Top): Remove information about xdeltas. Add information about CVS. * scm/lily.scm (lilypond-main): Fix invocation of handler, gracefully handle failed files. * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS. * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other small fixes. * scm/framework-tex.scm (convert-to-ps): Proper option spacing. No unnecessarily specific i18n messages. Remove stray `1'. --- ChangeLog | 16 +++++ Documentation/topdocs/INSTALL.texi | 107 +++++++++++++++-------------- Documentation/topdocs/README.texi | 2 +- lily/GNUmakefile | 2 +- lily/afm.cc | 4 +- lily/auto-beam-engraver.cc | 6 +- lily/context.cc | 4 +- lily/grob.cc | 4 +- lily/input.cc | 2 + scm/document-backend.scm | 5 +- scm/framework-tex.scm | 27 ++++---- scm/lily.scm | 5 +- 12 files changed, 102 insertions(+), 82 deletions(-) diff --git a/ChangeLog b/ChangeLog index b74f955b3a..54a1f60ee8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +2005-03-28 Jan Nieuwenhuizen + + * Documentation/topdocs/INSTALL.texi (Top): Remove information + about xdeltas. Add information about CVS. + + * scm/lily.scm (lilypond-main): Fix invocation of handler, + gracefully handle failed files. + + * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS. + + * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other + small fixes. + + * scm/framework-tex.scm (convert-to-ps): Proper option spacing. + No unnecessarily specific i18n messages. Remove stray `1'. + 2005-03-28 Han-Wen Nienhuys * buildscripts/lys-to-tely.py (strip_extension): add utf-8 diff --git a/Documentation/topdocs/INSTALL.texi b/Documentation/topdocs/INSTALL.texi index c1bf50e72f..2a7cb25125 100644 --- a/Documentation/topdocs/INSTALL.texi +++ b/Documentation/topdocs/INSTALL.texi @@ -1,10 +1,9 @@ -@node Top, , , (dir) -@top -@comment node-name, next, previous, up\input texinfo @c -*-texinfo-*- +\input texinfo @c -*-texinfo-*- @setfilename INSTALL.info @settitle INSTALL - compiling and installing GNU LilyPond -@comment FIXME -- this information is getting rather stale +@node Top +@top @contents @@ -17,38 +16,43 @@ @section Downloading -Even numbered versions are `stable' (2.2, 2.4 etc), while odd version -are development releases (2.3, 2.5, etc). Building LilyPond is an -involved process, so if possible, download a precompiled binary from -@uref{http://lilypond.org/,the lilypond site}. - +Even numbered minor versions are `stable' (2.2, 2.4 etc), while odd +version are development releases (2.3, 2.5, etc). Building LilyPond +is an involved process. If possible, from +@uref{http://lilypond.org/download,download a precompiled binary} +for your platform. @subsection Source code -Download source tarballs from +Download source +@itemize @bullet +@item tarballs from @itemize @bullet -@item Download development releases from @uref{http://lilypond.org/download/} by HTTP. @item @uref{ftp://sca.uwaterloo.ca/pub/} by FTP (Canadian mirror). @end itemize - - -Use Xdelta to patch tarballs, e.g. to patch -@file{lilypond-1.4.2.tar.gz} to @file{lilypond-1.4.3.tar.gz}, do -@quotation +@item +CVS from @uref{http://savannah.gnu.org/cvs/?group=lilypond,savannah.gnu.org} +@itemize @bullet +@c @quotation @example -xdelta patch lilypond-1.4.2-1.4.3.xd lilypond-1.4.2.tar.gz +CVS_RSH=ssh cvs -d:ext:anoncvs@@savannah.gnu.org:/cvsroot/lilypond co lilypond @end example -@end quotation - -For information on packaging and CVS, see -@uref{http://lilypond.org/}, under ``development''. +@c @end quotation +The CVS repository does not contain generated files. To create +@file{configure}, run +@example +./autogen.sh +@end example +@end itemize +@end itemize +For information on packaging, see @uref{http://lilypond.org/devel}. -@subsection Precompiled binaries +@subsection Precompiled binary packages -Check out @uref{http://lilypond.org} for up to date information on -binary packages. +Check out @uref{http://lilypond.org/download} for up to date information on +binary packages for your platform. @subsection Font problems @@ -69,7 +73,7 @@ In addition to the packages needed for running Lilypond (see below), you need the following extra packages for building. When installing a binary package FOO, you may need to install the -FOO-devel or libFOO-dev package too. +FOO-devel, libFOO-dev or FOO-dev package too. @itemize @@ -82,10 +86,10 @@ You will need to install some additional packages to get mftrace to work. @item @uref{http://www.gnu.org/software/guile/guile.html,GUILE} - (version 1.6.5 or newer). If you are installing binary packages, you +(version 1.6.5 or newer). If you are installing binary packages, you may need to install guile-devel or guile-dev or libguile-dev too. -@item @uref{http://www.gnu.org/software/flex/,Flex} (version 2.5.4a or newer). +@item @uref{http://www.gnu.org/software/flex/,Flex} (version 2.5.4a or newer). WARNING: plain Flex 2.5.4(a) generates invalid C++ code. GCC 3.x chokes on this. If you wish to use GCC 3.x, make sure that your @@ -117,7 +121,8 @@ newer, but not 1.50 or 1.75). @item @uref{http://www.gnu.org/software/gettext/gettext.html,gettext}. -@item All packages necessary for running, including headers. +@item All packages required for running, including development packages with +header files and libraries. @end itemize @@ -150,16 +155,16 @@ You can view the documentation online at This process requires a successful compile of lilypond. The documentation is built by issuing @quotation -@example +@example make web -@end example +@end example @end quotation Building the website requires some additional tools and packages @itemize @bullet @item @uref{http://lilypond.org/download/fonts,ec-fonts-mftraced} -@item The @uref{http://netpbm.sourceforge.net/,netpbm utilities} +@item The @uref{http://netpbm.sourceforge.net/,netpbm utilities} @item ImageMagick @end itemize @@ -177,14 +182,14 @@ make out=www web-install To install GNU LilyPond, type @quotation -@example +@example gunzip -c lilypond-x.y.z | tar xf - cd lilypond-x.y.z ./configure # run with --help for applicable options make make install -sh buildscripts/clean-fonts.sh -@end example +sh buildscripts/clean-fonts.sh +@end example @end quotation The most time-consuming part of compiling LilyPond is tracing the @@ -194,7 +199,7 @@ one of the following commands @quotation @example make -C mf get-pfa # requires rpm2cpio -make -C mf get-debian-pfa # may not be up to date +make -C mf get-debian-pfa # may not be up to date @end example @end quotation @@ -205,9 +210,9 @@ work for you, see @file{buildscripts/out/clean-fonts}. If you are not root, you should choose a @code{--prefix} argument that points into your home directory, e.g. @quotation -@example +@example ./configure --prefix=$HOME/usr -@end example +@end example @end quotation In this case, you have to insert the contents of @@ -227,21 +232,21 @@ with and without profiling, then use the following for the normal build @quotation -@example +@example ./configure --prefix=$HOME/usr/ --enable-checking make make install -@end example +@end example @end quotation and for the profiling version, specify a different configuration @quotation -@example +@example ./configure --prefix=$HOME/usr/ --enable-profiling --enable-config=prof --disable-checking make conf=prof make conf=prof install -@end example +@end example @end quotation @@ -254,7 +259,7 @@ should be placed to @var{load-path}@file{/site-start.d/} or appended to your @file{~/.emacs} or @file{~/.emacs.el}. As a user, you may want add your source path (e.g. @file{~/site-lisp/}) to -your @var{load-path} by appending the following line (as modified) to your +your @var{load-path} by appending the following line (as modified) to your @file{~/.emacs} @c any reason we do not advise: (push "~/site-lisp" load-path) @quotation @@ -266,13 +271,13 @@ your @var{load-path} by appending the following line (as modified) to your @section Vim mode -A Vim mode for entering music and running LilyPond is contained in the -source archive in @code{$VIM} directory. For version 6.2 and newer, -Vim-mode works directly after installing LilyPond. Otherwise, +A Vim mode for entering music and running LilyPond is contained in the +source archive in @code{$VIM} directory. For version 6.2 and newer, +Vim-mode works directly after installing LilyPond. Otherwise, complete the following two steps. For earlier versions (and if @code{$VIM} environment variable does not -fall-back to @file{/usr/local/share/vim}, see @code{:version} in vim), +fall-back to @file{/usr/local/share/vim}, see @code{:version} in vim), the LilyPond file type is detected if your file @file{~/.vim/filetype.vim} @c has the following content @quotation @@ -285,10 +290,10 @@ augroup filetypedetect augroup END @end example @end quotation -If Vim has been (pre-)installed to @file{/usr/...} (or any other place) -instead of @file{/usr/local/...}, then @file{/usr/local/share/vim} may not -be specified in your @code{$VIMRUNTIME} environment variable and you have to -include this path explicitly by appending the following line to your +If Vim has been (pre-)installed to @file{/usr/...} (or any other place) +instead of @file{/usr/local/...}, then @file{/usr/local/share/vim} may not +be specified in your @code{$VIMRUNTIME} environment variable and you have to +include this path explicitly by appending the following line to your @file{~/.vimrc} @quotation @example @@ -395,4 +400,4 @@ or @end itemize @bye - + diff --git a/Documentation/topdocs/README.texi b/Documentation/topdocs/README.texi index f920937325..5ec2aa2704 100644 --- a/Documentation/topdocs/README.texi +++ b/Documentation/topdocs/README.texi @@ -2,7 +2,7 @@ @setfilename README.info @settitle Toplevel README -@node Top, , , +@node Top @top @chapter Toplevel README diff --git a/lily/GNUmakefile b/lily/GNUmakefile index 651cc6d4ac..13930b9e29 100644 --- a/lily/GNUmakefile +++ b/lily/GNUmakefile @@ -7,7 +7,7 @@ SUBDIRS = include MODULE_LIBS=$(depth)/flower $(depth)/ttftool $(depth)/kpath-guile MODULE_INCLUDES= $(depth)/flower/include $(depth)/ttftool/include MODULE_CXXFLAGS= -MODULE_LDFLAGS = $(KPATHSEA_LIBS) +MODULE_LDFLAGS= HELP2MAN_EXECS = lilypond diff --git a/lily/afm.cc b/lily/afm.cc index b1c3805ac4..f601e22e13 100644 --- a/lily/afm.cc +++ b/lily/afm.cc @@ -151,7 +151,7 @@ read_afm_file (String nm) Box afm_bbox_to_box (AFM_BBox bb) { -#if 1 /* Fine for feta; ec-fonts-mftraced do not have AFM :-( */ +#if 1 /* Fine for feta; ec-fonts-mftraced do not have AFM. */ return Box (Interval (bb.llx, bb.urx) * 0.001 PT, Interval (bb.lly, bb.ury) * 0.001 PT); #else /* FIXME: about right for lmodern. */ @@ -164,7 +164,7 @@ Offset Adobe_font_metric::get_indexed_wxwy (int k) const { AFM_CharMetricInfo const *mi = font_info_->cmi + k; -#if 1 /* Fine for feta; ec-fonts-mftraced do not have AFM :-( */ +#if 1 /* Fine for feta; ec-fonts-mftraced do not have AFM. */ return Offset (mi->wx, mi->wy) * 0.001 PT; #else /* FIXME: about right for lmodern. */ return Offset (mi->wx, mi->wy) * 1.14 * 0.001 PT; diff --git a/lily/auto-beam-engraver.cc b/lily/auto-beam-engraver.cc index 09a6d2a831..635bc0989f 100644 --- a/lily/auto-beam-engraver.cc +++ b/lily/auto-beam-engraver.cc @@ -401,10 +401,8 @@ Auto_beam_engraver::finalize () void Auto_beam_engraver::acknowledge_grob (Grob_info info) { - /* - Duplicated from process_music(), since - Repeat_acknowledge_engraver::process_music() may also set whichBar - */ + /* Duplicated from process_music (), since + Repeat_acknowledge_engraver::process_music () may also set whichBar. */ if (scm_is_string (get_property ("whichBar")) && beam_start_moment_ < now_mom ()) { diff --git a/lily/context.cc b/lily/context.cc index 13965e2fa0..e88fd27f5a 100644 --- a/lily/context.cc +++ b/lily/context.cc @@ -102,9 +102,7 @@ Context::Context (Object_key const *key) scm_gc_unprotect_object (key_->self_scm ()); } -/* - TODO: this shares code with find_create_context(). -*/ +/* TODO: this shares code with find_create_context (). */ Context * Context::create_unique_context (SCM n, SCM operations) { diff --git a/lily/grob.cc b/lily/grob.cc index ce3ab0ceb2..4fdce86481 100644 --- a/lily/grob.cc +++ b/lily/grob.cc @@ -245,7 +245,7 @@ Grob::get_uncached_stencil () const stil = Stencil (m->extent_box (), expr).smobbed_copy (); } - /* color support... see interpret_stencil_expression() for more... */ + /* color support... see interpret_stencil_expression () for more... */ SCM color = get_property ("color"); if (color != SCM_EOL) { @@ -663,7 +663,7 @@ Grob::mark_smob (SCM ses) scm_gc_mark (s->original_->self_scm ()); if (s->pscore_) - scm_gc_mark (s->pscore_->layout_->self_scm()); + scm_gc_mark (s->pscore_->layout_->self_scm ()); s->do_derived_mark (); return s->mutable_property_alist_; diff --git a/lily/input.cc b/lily/input.cc index a051da38c3..0bf7e737f0 100644 --- a/lily/input.cc +++ b/lily/input.cc @@ -103,6 +103,7 @@ Input::warning (String message_string) const { message (_ ("warning: ") + message_string); } + void Input::error (String s) const { @@ -114,6 +115,7 @@ Input::non_fatal_error (String s) const { message (_ ("non fatal error: ") + s); } + String Input::location_string () const { diff --git a/scm/document-backend.scm b/scm/document-backend.scm index 262e3c55b9..89b66d2aac 100644 --- a/scm/document-backend.scm +++ b/scm/document-backend.scm @@ -124,13 +124,14 @@ node." ;;;;;;;;;; check for dangling backend properties. (define (mark-interface-properties entry) - (map (lambda (x) (set-object-property! x 'iface-marked #t)) (caddr (cdr entry)))) + (map (lambda (x) (set-object-property! x 'iface-marked #t)) + (caddr (cdr entry)))) (map mark-interface-properties interface-description-alist) (define (check-dangling-properties prop) (if (not (object-property prop 'iface-marked)) - (error "\ndefine-grob-properties.scm: Can't find interface for property:" prop))) + (error "\ndefine-grob-properties.scm: Can't find interface for property:" prop))) (map check-dangling-properties all-backend-properties) diff --git a/scm/framework-tex.scm b/scm/framework-tex.scm index 4fd1b32cd3..17bf2406c0 100644 --- a/scm/framework-tex.scm +++ b/scm/framework-tex.scm @@ -1,4 +1,4 @@ -1;;;; framework-tex.scm -- +;;;; framework-tex.scm -- ;;;; ;;;; source file of the GNU LilyPond music typesetter ;;;; @@ -312,33 +312,32 @@ (define-public (convert-to-ps book name) (let* ((paper (ly:paper-book-paper book)) (preview? (string-contains name ".preview")) - (papersizename (ly:output-def-lookup paper 'papersizename)) (landscape? (eq? #t (ly:output-def-lookup paper 'landscape))) (base (basename name ".tex")) (ps-name (format "~a.ps" base ".ps")) - (cmd (string-append "dvips " + (cmd (string-append "dvips" (if preview? - "-E " + " -E" (string-append - "-t" + " -t" ;; careful: papersizename is user-set. (sanitize-command-option papersizename) - " ")) - (if landscape? "-t landscape " "") + "")) + (if landscape? " -tlandscape" "") (if (ly:kpathsea-find-file "lm.map") - "-u+lm.map " "") + " -u+lm.map" "") (if (ly:kpathsea-find-file "ecrm10.pfa") - "-u+ec-mftrace.map " "") - "-u+lilypond.map -Ppdf " " " - "-o" ps-name " " - base))) + " -u+ec-mftrace.map" "") + " -u+lilypond.map -Ppdf" "" + " -o" ps-name + " " base))) (if (access? ps-name W_OK) (delete-file ps-name)) (if (not (ly:get-option 'verbose)) (format (current-error-port) - (_ "Converting to `~a.dvi'...\n") - base)) + (_ "Converting to `~a'...\n") + (string-append base ".dvi"))) (ly:system cmd))) (define-public (convert-to-dvi book name) diff --git a/scm/lily.scm b/scm/lily.scm index 6a6c8c6474..0fe8fbfb22 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -300,10 +300,11 @@ The syntax is the same as `define*-public'." (define-public (lilypond-main files) "Entry point for LilyPond." (let* ((failed '()) - (handler (lambda (key arg) (set! failed (cons arg failed))))) + (handler (lambda (key . arg) (set! failed (append arg failed))))) (for-each (lambda (f) - (catch 'ly-file-failed (lambda () (ly:parse-file f)) handler) + (catch 'ly-file-failed (lambda () (ly:parse-file f)) + (lambda (x) (handler x f))) (if #f (dump-gc-protects))) files) -- 2.39.5