From: fred Date: Tue, 26 Mar 2002 22:41:24 +0000 (+0000) Subject: lilypond-1.2.13 X-Git-Tag: release/1.5.59~2057 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3ad9d8ee4fb1819b8fa1216503fc444d2ae25508;p=lilypond.git lilypond-1.2.13 --- diff --git a/Documentation/faq.texi b/Documentation/faq.texi index 87e7693c78..5a7fce5510 100644 --- a/Documentation/faq.texi +++ b/Documentation/faq.texi @@ -134,13 +134,8 @@ should be documented, please do so and send in a patch. @node Language- mudela, Do you support -, Documentation, FAQ - GNU LilyPond FAQs @section Language: mudela -@subsubsection Why can't you type @code{#c} in stead of @code{cis} ? - -We think that @code{#c} looks as if you are entering the symbols to -print (which you are not; remember, you're entering the musical -content in Mudela) - -@subsubsection Why do I have to type the accidentals to the note if I specified them? +@subsubsection Why do I have to type the accidentals to the note if I +specified them in the keysignature? Take this example @example @@ -150,16 +145,8 @@ Take this example @end example Independently of how it was written and what the current key was, you -would say that you are playing and reading "two C-sharp" notes. We -have tried to make the language somewhat context-free. Of course -sheet music is not context-free. Unfortunately, sheet music is also 2 -dimensional, and ASCII is not. - -Technically it would be feasible to have the Interpreting phase do -tricky things to add (or leave out) the accidentals, but we think that -it is impractical: it hampers the readability and portability of your -source, since you need LilyPond to fill in the details and actually -make sense of it. +would say that you are playing and reading "two C-sharp" notes, so you +have to enter C-sharp twice. @subsubsection What is @code{cis} anyway @@ -548,6 +535,8 @@ subsubsection(How does copyright for sheet music work? Can I enter and spread my Silas S. Brown : +@quotation + There are several aspects to sheet music copyright: 1. The music itself - copyright for the composer's life plus 70 years (so @@ -594,33 +583,45 @@ restrictions imposed on you. References - best one I know is the UK-based Performing Right Society, @uref{http://www.prs.co.uk/} (especially "membership") and their links to other international equivalents. +@end quotation -@email{wl@@gnu.org} writes: +Werner Lemberg @email{wl@@gnu.org} writes: @quotation - I realise that typesetting can be copyright - this is the reason I - can't buy a book of Bach's Urtexts (for example), photocopy parts - of it and give them away. -@end quotation -Sorry, but you can (at least in Austria or Germany, but not in -France)! Typesetting an Urtext edition isn't copyrighted -- -typesetting is a handcraft, not an art. What's copyrighted in an -Urtext edition is the editor's comment or the revision remarks, -cadenzas added by the editor, etc. +Typesetting [at least in Austria or Germany, but not in France] [..] +isn't copyrighted -- typesetting is a handcraft, not an +art. + +What's copyrighted in an Urtext edition is the editor's comment or +the revision remarks, cadenzas added by the editor, etc. + +Urtext editions per se are @emph{not} copyrighted -- if you print +exactly what the composer has written, how can there some copyright be +added? Copyrighted are usually only the `Critical notes', the foreword, +and the cadenzas some editors have added. + +This means that the `Photocopying forbidden' sign in many scores is not +always correct for e.g. J.S. Bach -- you are allowed to copy the pages +which don't contain editorial stuff which is probably copyrighted. + +A very unfortunate situation for the publishers. + +@end quotation + Glen Prideaux, @email{glenprideaux@@MailAndNews.com}: +@quotation One has to be careful. In Australia typesetting IS covered by copyright, but only for 25 years (as opposed to 50 years from the death of the author/composer/artist for virtually any other copyright). If the typesetting originates in a country that does not protect typesetting then there may indeed be no copyright protection available to control the use of mudela files. +@end quotation - - -Juergen Reuter : +Juergen Reuter @email{reuterj@@ira.uka.de} [More information can be had at: ] @@ -643,20 +644,6 @@ See @uref{http://www.geocities.com/Vienna/Studio/1714/harpsichord.html} for a summary of copyright relative to old music, also for the expert forum for such subsubsections. -Werner Lemberg : - -This is not correct. Urtext editions per se are @emph{not} copyrighted --- if you print exactly what the composer has written, how can there -some copyright be added? Copyrighted are usually only the `Critical -notes', the foreword, and the cadenzas some editors have added. - -This means that the `Photocopying forbidden' sign in many scores is -not always correct for e.g. J.S. Bach -- you are allowed to copy the -pages which don't contain editorial stuff which is probably -copyrighted. - -A very unfortunate situation for the publishers. - @node Windows32, Top, Copyright, FAQ - GNU LilyPond FAQs @section Windows32 diff --git a/Documentation/programs.texi b/Documentation/programs.texi index 171627631e..6bd3b069c4 100644 --- a/Documentation/programs.texi +++ b/Documentation/programs.texi @@ -7,7 +7,6 @@ @menu * Programs:: Your Softs- * convert-mudela:: convert-mudela to newer versions -* LilyPond:: the GNU Music Typesetter * Ly2dvi:: Python utility to convert mudela to DVI * midi2ly:: convert MIDI to -mudela- @end menu @@ -24,284 +23,6 @@ - -@node convert-mudela, convert-mudela DESCRIPTION, Programs, Top -@menu -* convert-mudela DESCRIPTION:: convert-mudela DESCRIPTION -* convert-mudela SYNOPSIS:: convert-mudela SYNOPSIS -* convert-mudela OPTIONS:: convert-mudela OPTIONS -* convert-mudela BUGS:: convert-mudela BUGS -* convert-mudela Authors:: convert-mudela Authors -@end menu -@chapter convert-mudela - -convert-mudela sequentially applies different mudela-conversions to -upgrade a Mudela input file. - -@node convert-mudela DESCRIPTION, convert-mudela SYNOPSIS, convert-mudela, convert-mudela -@section DESCRIPTION - -Upgrade a Mudela input file from FROM_PATCHLEVEL to TO_PATCHLEVEL. -If no files are given, the standard input and output are used. - -@node convert-mudela SYNOPSIS, convert-mudela OPTIONS, convert-mudela DESCRIPTION, convert-mudela -@section SYNOPSIS - - convert-mudela [options] [files] - -@node convert-mudela OPTIONS, convert-mudela BUGS, convert-mudela SYNOPSIS, convert-mudela -@section OPTIONS -@table @samp -@item --output - The output file to write. -@item --edit - Do an inline edit of the input file. override @code{--output} -@item --show-rules - shows all known conversions, and exit -@item --from=FROM_PATCHLEVEL - Set the level to convert from. If this is not set, convert-mudela will - guess this, on the basis of @code{\version} strings in the file -@item --to=TO_PATCHLEVEL - Set the goal version of the conversion. It defaults to the latest - available version. -@end table - -@node convert-mudela BUGS, convert-mudela Authors, convert-mudela OPTIONS, convert-mudela -@section BUGS - -Not all language changes are handled. Multiple output options won't -work. - -convert-mudela is written in python, so you have install -@uref{http://www.python.org,python}. - -@node convert-mudela Authors, LilyPond, convert-mudela BUGS, convert-mudela -@section Authors - -@email{hanwen@@cs.uu.nl, Han-Wen Nienhuys}, @uref{http://www.cs.uu.nl/people/hanwen} - - - - - - - - -@node LilyPond, LilyPond SYNOPSIS, convert-mudela Authors, Top -@menu -* LilyPond SYNOPSIS:: LilyPond SYNOPSIS -* LilyPond DESCRIPTION:: LilyPond DESCRIPTION -* LilyPond OPTIONS:: LilyPond OPTIONS -* LilyPond FEATURES:: LilyPond FEATURES -* LilyPond DISCLAIMER:: LilyPond DISCLAIMER -* LilyPond PROBLEMS:: LilyPond PROBLEMS -* LilyPond FILES:: LilyPond FILES -* LilyPond environment:: LilyPond environment -* LilyPond BUGS:: LilyPond BUGS -* LilyPond SEE ALSO:: LilyPond SEE ALSO -* LilyPond REMARKS:: LilyPond REMARKS -* LilyPond Authors:: LilyPond Authors -@end menu -@chapter LilyPond - -@cindex LilyPond - -@node LilyPond SYNOPSIS, LilyPond DESCRIPTION, LilyPond, LilyPond -@section SYNOPSIS - @strong{lilypond} [OPTION]... [MUDELA-FILE]... - -@node LilyPond DESCRIPTION, LilyPond OPTIONS, LilyPond SYNOPSIS, LilyPond -@section DESCRIPTION - -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. - - -@node LilyPond OPTIONS, LilyPond FEATURES, LilyPond DESCRIPTION, LilyPond -@section OPTIONS -@table @samp -@item -f,--format= - Output format for sheet music. Choices are tex (for TeX - output), ps (for PostScript) and scm (for GUILE) -@item -I,--include= - add @file{FILE} to the search path for input files. -@item -m,--midi - Disable TeX output. If you have a \midi definition, it will do the - midi output only. -@item -M,--dependencies - Also output rules to be included in Makefile. -@item -d,--debug - Turn debugging info on. GNU LilyPond reads the file @file{.dstreamrc}, - which lists what functions and classes may produce copious debugging - output. -@item -s,--safe - Disallow untrusted @code{\include} directives, backslashes in TeX -code and named output. -@item -t,--test - Switch on any experimental features. Not for general public use. -@item -w,--warranty - Show the warranty with which GNU LilyPond comes. (It comes with - @strong{NO WARRANTY}!) -@item -o,--output=FILE - Set the default output file to @file{FILE}. -@item -h,--help - Show a summary of usage. -@item -i,--init=FILE - Set init file to @file{FILE} (default: @file{init.ly}). -@item --include, -I=DIRECTORY - Add @file{DIRECTORY} to the search path for input files. -@item --ignore-version, -V - Make the incompatible mudela version warning non-fatal. -@end table - -@node LilyPond FEATURES, LilyPond DISCLAIMER, LilyPond OPTIONS, LilyPond -@section FEATURES - -This is an overview of the features that GNU LilyPond supports. For -details on how to use them, you should consult the Mudela tutorial, -which is included with the package. - -@itemize @bullet -@item ASCII script input, with identifiers (for music reuse), - customizable notenames, customisable fontset. -@item MIDI output lets you check if you have entered the correct notes. -@item MIDI to Mudela conversion through the mi2mu program. -@item Multiple staffs in one score. Each staff can have different time signatures. -@item Beams, slurs, ties, chords, super/subscripts (accents and text) - triplets, general n-plet (triplet, quadruplets, etc.), lyrics, - transposition, dynamics (both absolute and hairpin style). -@item Multiple voices within one staff; beams optionally shared - between voices. Up to four voices is handled cleanly. -@item Multiple scores within one input file. Each score is output to - a different file. -@item Clef changes, meter changes, cadenza-mode, key changes, repeat bars. -@end itemize - -@node LilyPond DISCLAIMER, LilyPond PROBLEMS, LilyPond FEATURES, LilyPond -@section DISCLAIMER - -GNU LilyPond is copyright 1996-1999 by its authors. GNU LilyPond is -distributed under the terms of the GNU General Public License. GNU LilyPond -is provided without any warranty what so ever. -GNU LilyPond may be freely distributed. For further information consult -the GNU General Public License, from the file @file{COPYING}. - -@node LilyPond PROBLEMS, LilyPond FILES, LilyPond DISCLAIMER, LilyPond -@section PROBLEMS - -There is an extensive list of todoes and bugs. See the file -@file{TODO} distributed with the sources. If you have a problem you -should try to find out - -@itemize @bullet -@item If the bug has been fixed in a newer release. -@item If the bug has been found earlier, consult @file{TODO} and @file{BUGS}. -@end itemize - -If you have found a bug, then we would appreciate it if you sent a -bugreport. - -@itemize @bullet -@item Send a copy of the input which causes the error. -@item Send a description of the platform you use. -@item Send a description of the LilyPond version you use - (with compile/configure options please). -@item Send a description of the bug itself. -@item Send it to @email{bug-gnu-music@@gnu.org}; you don't have to be subscribed - to this mailinglist. -@end itemize - -@node LilyPond FILES, LilyPond environment, LilyPond PROBLEMS, LilyPond -@section FILES -@table @samp -@item @file{init.ly} - The initialisation file with symbol tables etc. It - includes files from the directory - @file{PREFIX/share/lilypond/ly/}. (@file{PREFIX} typically is @file{/usr/local} -)@end table - -@node LilyPond environment, LilyPond BUGS, LilyPond FILES, LilyPond -@section environment - -@table @samp -@item LILYINCLUDE - additional directories for finding lilypond data. The - format is like the format of @file{PATH}. -@item LILYPREFIX - [FIXME] -@item LANG - selects the language for the warning messages of LilyPond. -@end table - -@node LilyPond BUGS, LilyPond SEE ALSO, LilyPond environment, LilyPond -@section BUGS - -Lots of them. See @file{TODO} and @file{BUGS} - -@node LilyPond SEE ALSO, LilyPond REMARKS, LilyPond BUGS, LilyPond -@section SEE ALSO - -LilyPond comes with various other documentation files. They are -included in the source package. - -A further source for information is the website, which can be found at -@uref{http://www.lilypond.org/}. The website contains on-line versions -of the documentation - -GNU LilyPond is updated very frequently, the latest version is always -available at: @uref{ftp://ftp.cs.uu.nl/pub/GNU/LilyPond}. This FTP -site is mirrored at a number of sites; consult the project web pages -for information about mirrors. - -For programs which are part of the GNU music project, the following -mailing list have been setup: - -@table @samp -@item @email{info-gnu-music@@gnu.org} - For information on the GNU Music project, to subscribe: send mail with - subject "subscribe" to @email{info-gnu-music-request@@gnu.org} -@item @email{help-gnu-music@@gnu.org} - For help with programs from the GNU music project. To subscribe: send - mail with subject "subscribe" to @email{help-gnu-music-request@@gnu.org} -@item @email{bug-gnu-music@@gnu.org} - If you have bugreports, you should send them to this list. If you want - to read all bugreports, you should subscribe to this list. To - subscribe: send mail with subject "subscribe" to - @email{bug-gnu-music-request@@gnu.org} -@item @email{gnu-music-discuss@@gnu.org} - For discussions concerning the GNU Music project, to subscribe: send - mail with subject "subscribe" to - @email{gnu-music-discuss-request@@gnu.org} -@end table - -Announces of new versions will be sent to info-gnu-music and -gnu-music-discuss. - -@node LilyPond REMARKS, LilyPond Authors, LilyPond SEE ALSO, LilyPond -@section REMARKS - -GNU LilyPond has no connection with the music package Rosegarden, other -than the names being similar :-) - -@node LilyPond Authors, Ly2dvi, LilyPond REMARKS, LilyPond -@section Authors - -@cindex Author - -@itemize @bullet -@item @email{hanwen@@cs.uu.nl, Han-Wen Nienhuys} - @uref{http://www.cs.uu.nl/people/hanwen} -@item @email{janneke@@gnu.org, Jan Nieuwenhuizen} - @uref{http://www.xs4all.nl/~jantien} -@end itemize - -Please consult the documentation file @file{AUTHORS} for more detailed -information, and small contributions. - - - - @node Ly2dvi, Ly2dvi DESCRIPTION, LilyPond Authors, Top @menu * Ly2dvi DESCRIPTION:: Ly2dvi DESCRIPTION diff --git a/Documentation/topdocs/GNUmakefile b/Documentation/topdocs/GNUmakefile index d59c175603..f9ad1459d3 100644 --- a/Documentation/topdocs/GNUmakefile +++ b/Documentation/topdocs/GNUmakefile @@ -1,6 +1,5 @@ depth = ../.. -BLURBS=BLURB COPERTINA FLAPTEKST STEPMAKE_TEMPLATES=documentation tex texinfo yolily-topdoc LOCALSTEPMAKE_TEMPLATES=lilypond mudela diff --git a/Documentation/topdocs/INSTALL.texi b/Documentation/topdocs/INSTALL.texi index 47e2a0277a..aedec6a853 100644 --- a/Documentation/topdocs/INSTALL.texi +++ b/Documentation/topdocs/INSTALL.texi @@ -10,8 +10,6 @@ @section Abstract -TODO: document xdeltas - This document explains what you need to install LilyPond, and what you should do. If you are going to compile and install LilyPond often, e.g. when doing development, you might want to check out the @@ -28,6 +26,17 @@ document for mirror sites. @emph{If you upgrade by patching do remember to rerun autoconf after applying the patch}. +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 FTP site. +@example + xdelta patch lilypond-1.1.54-1.1.55.xd lilypond-1.1.54.tar.gz +@end example + @section Prerequisites For compilation you need: @@ -41,14 +50,15 @@ Solaris. compile if you use debugging information. If you are short on disk-space run configure with @code{--disable-debugging}. +@item Although we recommend to use Unix, LilyPond is known to run on Windows NT/95/98 as well. See Section Windows NT/95,es. -@item EGCS 1.1 or newer. Check out @uref{ ftp://ftp.gnu.org/pub/gcc/, ftp://ftp.gnu.org/pub/gcc/} +@item EGCS 1.1 or newer. Check out @uref{ftp://ftp.gnu.org/pub/gcc/}. @item Python 1.5, Check out -@uref{ftp://ftp.python.org,ftp://ftp.python.org} or @uref{ftp://ftp.cwi.nl/pub/python,ftp://ftp.cwi.nl/pub/python}. +@uref{ftp://ftp.python.org} or @uref{ftp://ftp.cwi.nl/pub/python}. @item GUILE 1.3, check out @uref{http://www.gnu.org/software/guile/guile.html,http://www.gnu.org/software/guile/guile.html}. @@ -159,9 +169,6 @@ hypertextified bibliography. @end itemize -You also have to install @file{buildscripts/out/ps-to-gifs} in a -directory that is in the path. - @section configuring and compiling to install GNU LilyPond, simply type: @@ -176,17 +183,19 @@ to install GNU LilyPond, simply type: @end example This will install a number of files, something close to: -@example +@example /usr/local/man/man1/mi2mu.1 /usr/local/man/man1/convert-mudela.1 /usr/local/man/man1/mudela-book.1 /usr/local/man/man1/lilypond.1 /usr/local/bin/lilypond /usr/local/bin/mi2mu + /usr/local/bin/convert-mudela + /usr/local/bin/mudela-book + /usr/local/bin/abc2ly /usr/local/share/lilypond/* /usr/local/share/locale/@{it,nl@}/LC_MESSAGES/lilypond.mo - @end example @@ -296,15 +305,6 @@ If you are doing an upgrade, please remember to remove obsolete @file{.pk} and @file{.tfm} files of the fonts. A script has been provided to do the work for you, see @file{bin/clean-fonts.sh}. -@unnumberedsec CAVEATS - - -@itemize @bullet -@item The -O2 option triggers bugs on various platforms (PowerPC, Alpha). - If you experience problems, you should first try turning off - this. -@item On PPC you need at least EGCS-1.1.2f. -@end itemize @section Redhat linux @@ -346,11 +346,131 @@ A Debian package is also available; contact Anthony Fok Separate instructions on building for W32 are available; See file README-W32, included with the sources. -@section Bugs +@section Problems + + +For help and questions use @email{help-gnu-music@@gnu.org} and +@email{gnu-music-discuss@@gnu.org}. Please consult the faq before +mailing your problems. + +If you find bugs, please send bug reports to +@email{bug-gnu-music@@gnu.org}. + +Known bugs that are LilyPond's fault are listed in @file{TODO}, or +demonstrated in @file{input/bugs/}. + +Known bugs that are not LilyPond's fault are documented here. + +@unnumbered All platforms +@table @bullet +@item GUILE 1.3.2 +Guile 1.3.2 is buggy in several respects. Do not use it for LilyPond. +@end table + +@unnumbered LinuxPPC Bugs: + +@table @bullet +@item R5, egcs-1.1.2-12c +Egcs-1.1.2-12c (stock LinuxPPC R5) has a serious bug, upgrade to +fixed in egcs-1.1.2-12f or gcc-2.95-0a, @uref{ftp://dev.linuxppc.org/users/fsirl/R5/RPMS/ppc/} + +@item R4, egcs-1.0.2 +All compiling with @code{-O2} is suspect, in particular guile-1.3, and +Lily herself will break. +@end table + + + +@unnumbered Linux-i386 + +@table @bullet +@item SuSE6.2 and similar platforms (glibc 2.1, libstdc++ 2.9.0) + +Lily will crash during parsing (which suggests a C++ library +incompatibility). Precise cause, precise platform description or +solution are not known. + +Note that this only happens on some computers with the said platform. + +@item GUILE +A binary RPM of Guile 1.3 has been distributed from the LilyPond ftp +site. This binary was made in RedHat 5.x, and it will fail if this +RPM is used with RedHat 6.x. + + +@item libg++ 2.7 + +LilyPond occasionally crashes while parsing the initialisation files. +This is a very obscure bug, and usually entering the commandline +differently "fixes" it. + +@example + lilypond input.ly +@end example + +and +@example + lilypond -I. ./input.ly +@end example +makes a difference + +Typical stacktrace: +@example + SIGSEGV + __libc_malloc (bytes=16384) + ?? () + yyFlexLexer::yy_create_buffer () + Includable_lexer::new_input (this=0x8209a00, s=@{strh_ = @{ +@end example + +This behaviour has been observed with machines that have old libg++ +versions (LinuxPPC feb '98, RedHat 4.x). +@end table + + + + +@unnumbered Solaris: + +@table @bullet +@item Sparc64/Solaris 2.6, GNU make-3.77 + +GNU make-3.77 is buggy on this platform, upgrade to 3.78.1 or newer. + + +@item Sparc64/Solaris 2.6, ld + +Not yet resolved. +@end table + + +@unnumbered AIX + +@table @bullet +@item AIX 4.3 ld + +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 + -BBIGTOC) is available from IBM Customer Support and from its + 27service.boulder.ibm.com website as PTF U455193. + + Binutils does not support AIX 4.3 (at least through release 2.9). GNU + as and GNU ld will not work properly and one should not configure GCC + to use those GNU utilities. Use the native AIX tools which do + interoperate with GCC. +@end quotation + +add -Wl,-bbigtoc to USER_LDFLAGS, ie: +@example + LDFLAGS='-Wl,-bbigtoc' ./configure +@end example + +@end table -Send bug reports to bug-gnu-music@@gnu.org. For help and questions use -help-gnu-music@@gnu.org and gnu-music-discuss@@gnu.org. Please consult -the faq before mailing your problems. @section Authors diff --git a/Documentation/topdocs/README.texi b/Documentation/topdocs/README.texi index 91b663fd48..a6b9c70cb9 100644 --- a/Documentation/topdocs/README.texi +++ b/Documentation/topdocs/README.texi @@ -1,28 +1,9 @@ \input texinfo @c -*-texinfo-*- @setfilename README.info @settitle This is the toplevel README to LilyPond - -@node Top, , cdrom distributions, (dir) +@node Top, , , @top -@menu -* This is the toplevel README to LilyPond::This is the toplevel README to LilyPond -@end menu - - - -@node This is the toplevel README to LilyPond, versioning, , Top -@menu -* versioning:: versioning -* requirements:: requirements -* installation:: installation -* documentation:: documentation -* comments:: comments -* windows 32:: windows 32 -* caveats:: caveats -* bugs:: bugs -* cdrom distributions:: cdrom distributions -@end menu @chapter This is the toplevel README to LilyPond @@ -30,8 +11,7 @@ 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. -@node versioning, requirements, This is the toplevel README to LilyPond, This is the toplevel README to LilyPond -@section versioning +@section Versioning LilyPond uses a versioning scheme similar to the Linux kernel. In a version "x.y.z", an even second number 'y' denotes a stable version. @@ -39,8 +19,7 @@ For development versions 'y' is odd. For using straightforward score production, please use the latest stable version. Development versions may not produce good or nice scores. -@node requirements, installation, versioning, This is the toplevel README to LilyPond -@section requirements +@section Requirements For the compilation and running of LilyPond you need some additional packages. Please refer to the installation instructions. @@ -48,14 +27,12 @@ packages. Please refer to the installation instructions. NOTE: If you downloaded a binary (.rpm or a W95/NT .zip file), then you don't have to compile LilyPond. -@node installation, documentation, requirements, This is the toplevel README to LilyPond -@section installation +@section Installation For your convenience, a formatted copy of the INSTALL instructions are in the toplevel directory, as INSTALL.txt -@node documentation, comments, installation, This is the toplevel README to LilyPond -@section documentation +@section Documentation The real documentation is the directory Documentation/ @@ -80,8 +57,7 @@ using @example @end itemize -@node comments, windows 32, documentation, This is the toplevel README to LilyPond -@section comments +@section Comments LilyPond is a long way from finished and polished. We do appreciate criticism, comments, bugreports, patches, etc. @@ -91,10 +67,10 @@ criticism, comments, bugreports, patches, etc. @end example -and @emph{not} to us personally. See @file{Documentation/links.yo} for more info. +and @emph{not} to us personally. See @file{Documentation/mail.texi} for +more info. -@node windows 32, caveats, comments, This is the toplevel README to LilyPond -@section windows 32 +@section Windows 32 If you have received this file as part of a DOS/Window32 distribution (@file{LilyPond-*.zip}), then it is advisable to also download the @@ -104,28 +80,24 @@ source package, since it might contain more documentation If you decide to build LilyPond from source, please read the INSTALL.txt document first, especially the Windows NT/95 section. -@node caveats, bugs, windows 32, This is the toplevel README to LilyPond -@section caveats - -* Please read the file BUGS for some ugly bugs. +@section Caveats -* If you have installed a previous version, be sure to remove old font -files, eg +If you have installed a previous version, be sure to remove old font +files, eg., @example rm `find /var/lib/texmf/fonts -name 'feta*'` @end example a script to do this for you is in @file{buildscripts/clean-fonts.sh} -@node bugs, cdrom distributions, caveats, This is the toplevel README to LilyPond -@section bugs +@section Bugs -Send bug reports to @email{bug-gnu-music@@gnu.org}. For help and questions use - @email{help-gnu-music@@gnu.org} and @email{gnu-music-discuss@@gnu.org}. -Please consult the faq before mailing your problems. +Send bug reports to @email{bug-gnu-music@@gnu.org}. For help and +questions use @email{help-gnu-music@@gnu.org} and +@email{gnu-music-discuss@@gnu.org}. Please consult the FAQ and +installation instructions before mailing your problems. -@node cdrom distributions, Top, bugs, This is the toplevel README to LilyPond -@section cdrom distributions +@section CDROM distributions if you have received LilyPond on a cdrom, chances are that development has moved a some patchlevels up. Please check the latest version of diff --git a/Documentation/user/bugs.itexi b/Documentation/user/bugs.itexi new file mode 100644 index 0000000000..51513a24f7 --- /dev/null +++ b/Documentation/user/bugs.itexi @@ -0,0 +1,24 @@ +@node Reporting Bugs, , , Top +@section Bug reports + +There is an extensive list of todoes and bugs. See the file +@file{TODO} distributed with the sources. If you have a problem you +please try to find out + +@itemize @bullet +@item If the bug has been fixed in a newer release. +@item If the bug has been found earlier, consult @file{TODO} and @file{BUGS}. +@end itemize + +If you have really found a bug, then we would appreciate it if you +sent a bugreport. + +@itemize @bullet +@item Send a copy of the input which causes the error. +@item Send a description of the platform you use. +@item Send a description of the LilyPond version you use + (with compile/configure options please). +@item Send a description of the bug itself. +@item Send it to @email{bug-gnu-music@@gnu.org}; you don't have to be subscribed + to this mailinglist. +@end itemize diff --git a/Documentation/user/convert-mudela.itexi b/Documentation/user/convert-mudela.itexi new file mode 100644 index 0000000000..02b13d8f45 --- /dev/null +++ b/Documentation/user/convert-mudela.itexi @@ -0,0 +1,36 @@ +@node convert-mudela, , ,Top +@chapter convert-mudela +@code{convert-mudela} sequentially applies different +mudela-conversions to upgrade a Mudela input file. It uses +@code{\version} statements in the file to detect the old version +number. + +@example + convert-mudela [options] [files] +@end example + +@section Options +@table @samp +@item --output + The output file to write. +@item --edit + Do an inline edit of the input file. override @code{--output} +@item --show-rules + shows all known conversions, and exit +@item --from=@var{FROM_PATCHLEVEL} + Set the level to convert from. If this is not set, convert-mudela will + guess this, on the basis of @code{\version} strings in the file +@item --to=@var{TO_PATCHLEVEL} + Set the goal version of the conversion. It defaults to the latest + available version. +@end table + +Not all language changes are handled. Multiple output options won't +work. + +convert-mudela is written in python, so you have install +@uref{http://www.python.org,python}. It was written by +@email{hanwen@@cs.uu.nl, Han-Wen Nienhuys}. + + + diff --git a/Documentation/user/glossary.itexi b/Documentation/user/glossary.itexi new file mode 100644 index 0000000000..fca076a4ab --- /dev/null +++ b/Documentation/user/glossary.itexi @@ -0,0 +1,2068 @@ +@node Glossary, , , Top +@chapter Glossary + +This is a list of musical terms, along with explanations and +translations. It is not complete, so additions are welcome. +Languages are marked thusly: + +@itemize +@item NL - Nederlands +@item UK - British English +@item F - French +@item I - Italian +@end itemize + +@table @strong + +@item Enharmonic Comma + +F: comma enharmonique + + +@ignore + +F: doigté de pédale + +F: doigté, D: Fingersatz + +F: indication de pédale + +F: pointillés. + +@end ignore + +@item A +F: la, D: a. + + + + +@item accent +F: accent, D: Akzent NL: accent I: accento. + + + +@item accidental +F: altération accidentelle, D: Vorzeichen, Versetzungszeichen, Akzidenz NL: toevallig teken, I: accidento. + + + +@item adjacent keys +F: tons voisins. + + + +@item alto +F: alto, D: Alt, NL: alt. + + + +@item ancient form??? (diatonic minor scale) +F: forme du mode mineur ancien. + + + +@item appoggiatura +F: appogiature, ports de voix, notes d'agrèment, D: langer Vorschlag, NL: lange voorslag, I: appogiature. + + + +@item arbitrary number of bars' rest +F: bâton de pause, NL: meermaats rust. + + + +@item arpeggio +F: arpège, arpègement, D: Arpeggio, Brechungen, NL: gebroken akoord, I: arpeggio. + + + +@item artificial measure +F: mesure artificielle. + + + +@item artificial rest +F: respiration. + + + +@item ascending interval + +F: intervalle ascendant, NL: stijgend interval. + + +@item augmented (interval) + +F: augmenté (intervalle), D: übermäßig (Intervall), NL: overmatig interval. + + +@item autograph + +1. A manuscript in the composer's own hand. 2. Music prepared for +photoreproduction by freehand drawing, with only the aid of a +straightedge ruler and T-square, which attempts to emulate +engraving. This required more skill than engraving. + +@item B + +F: si, D: h. + + + + + +@item backfall; forefall + +F: accent, chute, port de voix, D: Vorschlag, NL: korte voorslag, I: appogiature. + + + + + +@item bar line + +F: barre (de mesure), D: Taktstrich, NL: maatstreep, I: stanghetta. + + + + + +@item bar; measure + +F: mesure, D: Takt, NL: maat, maatstreep. + + + + + +@item baritone + +F: bariton, D: Bariton, NL: bariton. + + + +@item F clef + +D: F-Schlüssel, NL: F sleutel. + +A clef shaped as a curl with two dots. The position between the dots is the line of the F below central C. + + + + +@item bass clef + +F: clé de fa, D: Bass-Schlüssel, NL: bas sleutel, I: chiave di basso. + +A clef setting with central C on the first top ledger line. + + + + +@item bass + +F: basse, D: Bass, NL: bas. + + + + + +@item beam + +F: barre, D: Balken, NL: waardestreep/balk, I: barra. + + + + + +@item beat + +F: temps, D: Takt(-schlag), NL: tel. + + + + + +@item brace + +F: accolade, D: Klammer, NL: accolade, haak, I: accolada. + +Symbol at the start of a system that connects staffs. + + + + +@item brass + + D: Blechbläser, NL: koper (blazers). + + + + + +@item alto clef + +F: clé d'ut, D: Altschlüssel, NL: alt sleutel, I: chiave di tenore. + +Clef setting that has central C on the middle staff line. + + + + +@item C clef + + NL: C sleutel. . + +A clef symbol that looks like a horizontally mirrored 3. It indicates the position of the central C. Used in different positions. + + + + +@item C + +F: do, D: c, NL: C. + + + + + +@item C + +F: ut, D: c. + + + + + +@item cadence + +F: cadence, D: Kadenz, NL: cadens. + + + + + +@item cadenza + +F: fioriture, D: Kadenz, NL: cadens, I: cadenza. + + + + + +@item cent + + D: Cent, NL: cent. + +1/1200 of an octave (1/100 of an equally tempered semitone) + + + + +@item chain of trills + +F: chaîne de trilles, NL: triller. + + + + + +@item character + +F: caractère. + + + + + +@item chevron + +F: chevron. + + + + + +@item chord + +F: accord, D: Akkord, NL: akkoord. + + + + + +@item chromatic scale + +F: gamme chromatique, D: Chromatische Tonleiter, NL: chromatische toonladder. + + + + + +@item chromatic semitone + +F: demi-ton chromatique, NL: chromatische halve toon. + + + + + +@item chromatic transposition + +F: transposition chromatique. + + + + + +@item chromatic type + +F: genre chromatique. + + + + + +@item church mode; ecclesiastical mode + +F: mode ecclésiastique, D: Kirchentonart, NL: kerk toonladder. + + + + + +@item clef + +F: clé, D: Notenschlüssel, NL: sleutel, I: la chiave (pl. le chiavi). + + + + + +@item comma + +F: comma, D: Komma, NL: komma. + +Difference in pitch of a note when the note is derived from a different tuning system. + + + + +@item compound interval + +F: intervalle composé, D: Komplementärintervall. + + + + + +@item compound measure + +F: mesure composée, NL: samengestelde maat. + + + + + +@item conjunct movement + +F: mouvement conjoint. + + + + + +@item consonant interval; consonance + +F: consonance, D: Konsonanz, NL: consonant. + + + + + +@item contralto + +F: contralto, D: Alt(-stimme), alt-. + + + + + +@item contro-time + +F: contre-temps. + +@item Copying, Music + +A music copyist did fast freehand scores and parts on preprinted staff +lines for performance. Some of their conventions (e.g.: the placement of +noteheads on stems) varied slightly from those of engravers. Some of +their practices (not that) were superior and could well be adopted by +music typesetters. This also required more skill than engraving. + + +@item crescendo + +F: crescendo, D: Crescendo, I: crescendo. + +written with an extended opening angular bracket, indicates increasing volume + + + + +@item cue-notes + + D: Stichnoten, NL: stichnoten. + +In an orchestral part, notes for a different instrument that hint when to start playing. Usually printed in smaller type. + + + + +@item D + +F: ré, D: d. + + + + + +@item dash over/below + + I: pizzicato. + +With plucked strings + + + + +@item decrescendo + + D: Decrescendo, I: decrescendo. + +written with an extended closing angular bracket, indicates decreasing volume + + + + +@item degree [of the scale] + +F: degré [de la gamme], D: Stufe [der Tonleiter], NL: trap [van de toonladder]. + + + + + +@item descending interval + +F: intervalle descendant, NL: dalend interval. + + + + + +@item diatonic major scale + +F: gamme diatonique majeure, D: Diatonische Durtonleiter, NL: diatonische majeur toonladder. + + + + + +@item diatonic minor scale + +F: gamme diatonique mineure, D: Diatonische Molltonleiter. + + + + + +@item diatonic semitone + +F: demi-ton diatonique, NL: diatonische halve toon. + + + + + +@item diatonic type + +F: genre diatonique, D: diatonisch. + + + + + +@item diatonic + +F: diatonique, NL: diatonisch. + +A diatonic scale is a scale consisting of whole and half tones. + + + + +@item diminished (interval) + +F: diminué (intervalle), D: vermindert (Intervall), NL: verminderd (interval). + + + + + +@item disjunct movement + +F: mouvement disjoint. + + + + + +@item dissonant interval; dissonance + +F: dissonance, D: Dissonanz, NL: dissonant interval; dissonant. + + + + + +@item dominant ninth chord + +F: accord de neuvième dominante, NL: dominant noon akkoord. + + + + + +@item dominant seventh chord + +F: accord de septième dominante, D: Dominantseptakkord, NL: dominant septiem akkoord. + + + + + +@item dominant + +F: dominante, D: Dominante, NL: dominant. + +A tone that creates tension;the fifth degree of the scale. + + + + +@item dorian mode + + D: Dorische Tonart, NL: dorische toonladder. + +Mode obtained by raising the sixth in minor mode. A Dorian scale can be played from D to D with no sharps or flats. + + + + +@item dot (augmentation dot) + +F: point, D: Punkt (Verlängerungspunkt), NL: punt, I: punto. + +An augmentation dot after note adds multiplies the duration by one and a half. + + + + +@item dot and curved line combined + +F: point et liaison combinés. + + + + + +@item dot over/below + + D: Staccato, NL: staccato, I: staccato. + +Play each note short. + + + + +@item dot + +F: point, D: Punkt, NL: punt. + + + + + +@item dotted note + +F: note pointée, D: punktierte Note. + + + + + +@item double appoggiatura + +F: appogiature double. + + + + + +@item double bar line + +F: double barre, D: Doppel(takt)strich, NL: dubbele streep, I: doppia barra. + +Indicates the end of a section within a movement. + + + + +@item double dotted note + +F: note doublement pointée, D: doppel-punktierte Note. + + + + + +@item double flat + +F: double bémol, D: Doppel-Be, NL: dubbelmol, I: doppio bemolle. + + + + + +@item double sharp + +F: double dièse, D: Doppelkreuz, NL: dubbelkruis, I: doppio diesis. + +Raise pitch by two semitones + + + + +@item double trill + +F: trille double, D: Doppeltriller. + +A trill on a chord + + + + +@item double triplet + +F: double triolet, D: Doppeltriole, NL: dubbele triool. + + + + + +@item double whole note + + UK: breve, D: Brevis, NL: brevis, I: breve. + +Note during twice as long as a whole note. Mainly used in pre-1650 music. + + + + +@item duple meter + +F: temps binaire, NL: tweedelige maatsoort. + + + + + +@item duplet + +F: duolet, D: Duole, NL: duool. + + + + + +@item duration + +F: durée, D: Dauer, Länge, NL: duur, lengte. + + + + + +@item E + +F: mi, D: e. + + + + + +@item eighth note + +F: croche, UK: quaver, D: Achtelnote, NL: achtste noot. + + + + + +@item eighth rest + +F: demi-soupir, UK: quaver rest, D: Achtelpause, NL: achtste rust. + + + + + +@item engraving + +D: Notenstechen, NL: steken. + +Engraving means incising or etching a metal plate for +printing. Photoengraving means drawing music with ink in a manner +similar to drafting or engineering drawing, using similar tools. + +The traditional process of music printing is done through: cutting in a +plate of metal. Now also the term for the art of music typography. + + + + +@item enharmonic + +F: enharmonique, D: enharmonisch, NL: enharmonisch. + +Two notes, intervals, or scales are enharmonic if they have different names but sound the same. Examples: C sharp and D flat, diminished fourth and major third + + + + +@item equal temperament + +F: tempérament égal, NL: getempereerde stemming. + +Tuning system in which each semitone is precisely 100 cents. + + + + +@item essential alteration + +F: altération essentielle. + + + + + +@item expression mark + +F: signe d'expressoin, D: Vortragszeichen, NL: voordrachtsteken, I: segno d'espressione. + + + + + +@item extension of interval + +F: extension d'intervalle. + + + + + +@item F + +F: fa, D: f. + + + + + +@item fermata + +F: pauses, D: Fermate, NL: fermate, I: fermata. + +Prolonged sound or silence of indefinite duration + + + + +@item fifth + +F: quinte, D: Quinte, NL: kwint. + + + + + +@item flag; hook; tail; pennant + +F: crochet, D: Fähnchen, NL: vlaggetje, I: coda uncinata. + +Ornament at the end of the stem of a note. The number of flags determines the lengths of notes shorter than a quarter note. + + + + +@item flat + +F: bémol, D: Be, NL: mol, I: bemolle. + +Lower pitch by a semitone + + + + +@item four-bar rest + +F: bâton de pause. + + + + + +@item fourth + +F: quarte, D: Quarte, NL: kwart. + + + + + +@item G + +F: sol, D: g. + + + + + +@item glissando + +F: glissement, D: Glissando, NL: glissando, I: glissando. + +Letting the pitch slide fluently from one note to the other + + + + +@item graces + +F: petites notes, D: Verzierungen, Manieren, NL: versieringen, I: appogiature. + + + + + +@item grand staff + + NL: piano systeem. + +A combination of two staffs with a brace. Usually used for piano music. + + + + +@item half note + +F: blanche, UK: minim, D: Halbe Note, NL: halve noot. + + + + + +@item half rest + +F: demi-pause, UK: minim rest, D: Halbe Pause, NL: halve rust. + + + + + +@item harmonic cadence + +F: cadence harmonique, NL: harmonische cadens. + +Sequence of chords that terminate a musical phrase or section. + + + + +@item harmonic form (diatonic minor scale) + +F: forme harmonique. + + + + + +@item harmonic interval + +F: intervalle harmonique, D: Harmonisches Intervall. + + + + + +@item incomplete measure + +F: mesure incomplète. + + + + + +@item interval + +F: intervalle, D: Intervall, NL: interval. + +Difference in pitch between two notes + + + + +@item inversion of interval + +F: renversement d'intervalle, NL: interval inversie. + + + + + +@item irregular contro-time + +F: contre-temps irrégulier. + + + + + +@item irregular group + +F: groupe irrégulier. + + + + + +@item irregular measure + +F: mesure irrégulière. + + + + + +@item irregular syncopation + +F: syncope irrégulière, NL: onregelmatige syncope. + + + + + +@item just intonation + + I: . + +Tuning system in which the notes are obtained by adding and subtracting natural fifths and thirds. + + + + +@item key signature + +F: armure, armature [de la clé], signes des accidentals, D: Vorzeichen, NL: toonsoort (voortekens), I: segni di chiave. + + + + + +@item kind of note + +F: figure de note. + + + + + +@item kind of rest + +F: figure de silence. + + + + + +@item leading note + +F: sensible. + + + + + +@item ledger line; leger line + +F: ligne supplémentaire, D: Hilfslinien, Kopfstriche (?), NL: hulplijntje, I: lineette. + +A ledger line is an extension of the staff. + + + + +@item legato curve + +F: liaison rythmique, NL: legato boog. + + + + + +@item lilypond + +F: étang de lis, UK: lily pond, D: Lilienteich, NL: lelievijver, I: stagno del giglio. + +A pond with lilies floating in it, also the name of a music typesetter. + + + + +@item line + +F: ligne, D: Linie, NL: lijn. + + + + + +@item long appoggiatura + +F: appogiature longue. + + + + + +@item lower number + +F: chiffre inférieur. + + + + + +@item major (interval) + +F: majeur (intervalle), D: groß (Intervall), NL: groot (interval). + + + + + +@item major mode + +F: mode majeur, D: Dur. + + + + + +@item meantone temperament + +F: tempérament mésotonique. + +Tuning based on a fifth that is 16 cents smaller than the natural fifth. + + + + +@item mediant + +F: médiante, NL: mediant. + +The third degree of a scale + + + + +@item melodic cadence + +F: cadence mélodique, NL: cadens. + +A free-form section at the end of a solo-concerto, where the soloist can demonstrate his/her virtuosity. + + + + +@item melodic form (diatonic minor scale) + +F: forme mélodique. + + + + + +@item meter; time + +F: mètre, D: Takt, Metrum, NL: maatsoort. + +A recurring pattern of stress + + + + +@item metronome + +F: métronome, D: Metronom, NL: metronoom. + +Device which sounds a steady beat + + + + +@item metronomic indication + +F: indication métronomique, D: Metronomangabe. + +Exact tempo indication (in beats per minute). Also denoted by M.M. (Mälzel's Metronom) + + + + +@item mezzo-soprano + +F: mezzo-soprano, D: Mezzosopran. + + + + + +@item middle C + +F: do central, D: eingestrichenes c, NL: centrale C. + +First C below the 440 Hz A. + + + + +@item minor (interval) + +F: mineur (intervalle), D: klein (Intervall). + + + + + +@item minor mode + +F: mode mineur, D: Moll. + + + + + +@item modal note + +F: note modale. + + + + + +@item mode + +F: mode, D: Geschlecht. + + + + + +@item modulation + +F: modulation, D: Modulation, NL: modulatie. + + + + + +@item mordent + +F: mordant, pincè, D: Pralltriller, Mordent, NL: mordent, I: mordente. + + + + + +@item motive + +F: incise, D: Motiv, NL: motief. + + + + + +@item musical ladder + +F: échelle musicale. + + + + + +@item mixolydian mode + + D: Mixolydische Tonart, NL: Mixolydische toonladder. + +Mode obtained by lowering the seventh in major. A mixolydian scale can be obtained by playing G to G with no sharps or flats. + + + + +@item natural sign + +F: bécarre, D: Auflösungszeichen, NL: herstellingsteken, I: bequadro. + +Do not play the following note flat or sharp. + + + + +@item ninth + + D: None, NL: noon. + + + + + +@item note head + + D: Notenkopf, NL: noot balletje. + + + + + +@item note + +F: note, D: Note, NL: noot, I: nota. + + + + + +@item octave line + +F: échelle d'octave. + + + + + +@item octave line + +F: clé d'octave. + + + + + +@item octave sign + +F: octave, D: Oktave, I: ottava. + + + + + +@item octave + +F: octave, D: Oktave, NL: octaaf. + + + + + +@item ornament; embellishment; accessory + +F: agrèment, ornement, D: Verzierungen, I: fiorette, fioriture, +abbellimenti. + + +@item ossia + +NL: alternatief + +Ossia (otherwise) marks an alternative. It is an added staff or piano +score, usually only a few measures long, which presents another version +of the music, for small hands, for example. + + +@item part + +NL: partij. + + + + + +@item pause + +F: pause, D: Luftpause. + + + + + +@item pause + +F: point d'orgue. + + + + + +@item perfect (interval) + +F: juste (intervalle), D: rein (Intervall), NL: rein (interval). + + + + + +@item perfect major chord + +F: accord parfait majeur. + + + + + +@item perfect minor chord + +F: accord parfait mineur. + + + + + +@item phrase member + +F: membre de phrase. + + + + + +@item phrase + +F: phrase, D: Phrase, NL: frase, zin. + + + + + +@item phrasing + +F: phrasé. + + + + + +@item pitch pipe; tuning fork + +F: diapason, D: Stimmgabel, NL: stemfluitje; stemvork. + + + + + +@item pitch + +F: hauteur, D: Tonhöhe, NL: toonhoogte. + + + + + +@item Pythagorean comma + +F: comma pythagoricien, D: Pythagoräisches Komma, NL: komma van Pythagoras. + +A sequence of fifths starting on C eventually circles back to C (B sharp), but this B sharp is 24 cents higher than C. This gap is the Pythagorean comma. + + + + +@item quadruplet + +F: quartolet, NL: kwartool. + + + + + +@item quarter note + +F: noire, UK: crotchet, D: Viertelnote, NL: kwartnoot. + + + + + +@item quarter rest + +F: soupir, UK: crotchet rest, D: Viertelpause, NL: kwart rust. + + + + + +@item register + +F: registre, D: Register, NL: register. + + + + + +@item regular contro-time + +F: contre-temps régulier. + + + + + +@item regular syncopation + +F: syncope régulière. + + + + + +@item relative scales + +F: gammes relatives, tons relatifs. + + + + + +@item repeat + +F: barre de reprise, D: Wiederholung, NL: herhaling. + + + + + +@item rest + +F: silence. + + + + + +@item rest + +F: soupir, D: Pause, NL: rust, I: pausa. + + + + + +@item return sign + +F: renvoi, NL: herstellingsteken. + + + + + +@item rhythm + +F: rythme, D: Rhythmus, NL: ritme. + + + + + +@item rhythmic curve + +F: courbe rythmique. + + + + + +@item scale + +F: gamme, D: Tonleiter, NL: toonladder. + + + + + +@item score + +F: partition, D: Partitur, NL: partituur. + + + + + +@item second + +F: seconde, D: Sekunde, I: secunde. + + + + + +@item semitone + +F: demi-ton, D: Halbton, NL: halve toon. + + + + + +@item seventh + +F: septième, D: Septime, NL: septiem, I: septime. + + + + + +@item sextuplet + +F: sextolet, D: Sextole, NL: sextool. + + + + + +@item sextuplet + +F: sixain, NL: sextool. + + + + + +@item shading signs + +F: signes indicateurs de nuance. + + + + + +@item shading + +F: nuance, D: Nuance. + + + + + +@item sharp + +F: dièse, D: Kreuz (um Halbton erhöht), NL: kruis. + + + + + +@item short appoggiatura + +F: appogiature brève. + + + + + +@item simple appoggiatura + +F: appogiature simple. + + + + + +@item simple interval + +F: intervalle simple. + + + + + +@item simple measure + +F: mesure simple. + + + + + +@item sixteenth note + +F: double croche, UK: semiquaver, D: Sechzehntelnote, NL: zestiende noot. + + + + + +@item sixteenth rest + +F: quart de soupir, UK: semiquaver rest, D: Sechzehntelpause, NL: zestiende rust. + + + + + +@item sixth + +F: sixte, D: Sexte, NL: sext. + + + + + +@item sixty-fourth note + +F: quadruple croche, UK: hemidemisemiquaver, D: Vierundsechzigstelnote, NL: vierenzestigste noot. + + + + + +@item sixty-fourth rest + +F: seizième de soupir, UK: hemidemisemiquaver rest, D: Vierundsechzigstelpause. + + + + + +@item slur + +F: liaison, coulé, D: Bindungszeichen, Bindebogen, NL: binding, bindingsboog, I: legatura. + + + + + +@item soprano + +F: soprano, D: Sopran, NL: sopraan. + + + + + +@item space + +F: espace. + + + + + +@item staff + +F: portée, D: Noten(linien)system, NL: (noten)balk; partij. + +pl staves or staffs + + + + +@item stem + +F: queue, D: Stiel, Hals, NL: stok, I: asta, gamba. + + + + + +@item strings + + D: Streicher, NL: strijkers. + + + + + +@item strong beat + +F: temps fort, NL: thesis. + + + + + +@item subdominant + +F: sous-dominante, D: Subdominante. + +The fourth degree of the scale + + + + +@item submediant + + I: . + +The sixth scale degree + + + + +@item subtonic + +F: sous-tonique, D: Subtonika. + +The seventh degree of the scale + + + + +@item superdominant + +F: sus-dominante. + +The sixth scale degree + + + + +@item supertonic + +F: sus-tonique. + +The second scale degree + + + + +@item syncopation; upbeat + +F: syncope, D: Synkope, NL: syncope. + + + + + +@item syntonic comma + +F: comma syntonique, NL: komma van Didymos, syntonische komma. + +Difference between the natural third and the third obtained by Pythagorean tuning, euqal to 22 cents. + + + + +@item system + +F: système, D: System, NL: systeem, I: sitema. + + + + + +@item tempo indication + +F: signes de temps, D: Zeitmaß, Tempobezeichnung, NL: tempo aanduiding, I: segno di tempo. + + + + + +@item tempo; movement + +F: mouvement, D: Tempo. + + + + + +@item tenor + +F: ténor, D: Tenor. + + + + + +@item tenth + + D: Dezime, NL: deciem, I: decime. + + + + + +@item tetrachord + +F: tétracorde, D: Vierklang. + + + + + +@item third + +F: tierce, D: Terz, NL: terts. + + + + + +@item thirty-second note + +F: triple croche, UK: demisemiquaver, D: Zweiunddreißigstelnote, NL: 32e noot. + + + + + +@item thirty-second rest + +F: huitième de soupir, UK: demisemiquaver rest, D: Zweiunddreißigstelpause, NL: 32e rust. + + + + + +@item tie + +F: liaison, D: Haltebogen, NL: overbinding, I: legatura. + +A curve that shows the prolongation (as opposed to the repetition fo a note) + + + + +@item time signature + +F: chiffrage (chiffres indicateurs), signe de valeur, D: Taktvorzeichnung, Taktvorzeichen, NL: maatsoort, I: segni di tempo. + + + + + +@item tonal note + +F: note tonale. + + + + + +@item tonality + +F: tonalité, D: Tonalität, NL: tonaliteit. + + + + + +@item tone + +F: ton, D: Ton, NL: toon. + + + + + +@item tonic + +F: tonique, D: Tonika, NL: tonica. + + + + + +@item transposition + +F: transposition, D: Transposition, NL: transpositie. + +Shifting a melody up or down in pitch, while keeping the same relative pitches. + + + + +@item G clef + + NL: G sleutel. + +A clef symbol with a loop at the top and a spiral in the center. The center of the spiral indicates the G above central C. + + + + +@item treble clef + +F: clé de sol, D: Violinschlüssel, NL: viool sleutel, I: chiave di violino. + +Clef setting where the second lowest line is the G above central C. + + + + +@item tremolo + +F: trèmolo, D: Tremolo, NL: tremolo, I: tremolo. + + + + + +@item trill; shake + +F: trille, tremblement, battement (cadence), D: Triller, NL: triller, I: trillo. + + + + + +@item triple meter + +F: temps ternaire, NL: driedelige maatsoort. + + + + + +@item triplet + +F: triolet, D: Triole. + + + + + +@item tritone + +F: triton, D: Tritonus. + + + + + +@item turn; gruppetto + +F: brisè, groupe, doublè, grupetto, D: Doppelschlag, NL: dubbelslag, I: grupetto. + + + + + +@item two-bar rest + +F: bâton de pause. + + + + +@item underline over/below + +F: portamento, D: Portato. + + + + + +@item unison + +F: unisson, D: Unisono, I: unisono. + +Different instruments playing exactly the same melody. + + + + +@item unit of beat + +F: unité de temps. + + + + + +@item unit of measure + +F: unité de mesure. + + + + + +@item upbeat; arsis + + D: Auftakt. + + + + + +@item upper number + +F: chiffre supérieur. + + + + + +@item voice + +F: voix, D: Stimme, NL: stem. + + + +@item weak beat + +F: temps faible, NL: arsis. + + + + + +@item whole note + +F: ronde, UK: semibreve, D: Ganze Note, NL: hele noot. + + + + + +@item whole rest + +F: pause, UK: semibreve rest, D: Ganze Pause. + + + + + +@item woodwind + +D: Holzbläser, NL: houtblazers. + + +@end table + diff --git a/Documentation/user/invoking.itexi b/Documentation/user/invoking.itexi new file mode 100644 index 0000000000..f6d5f1d08a --- /dev/null +++ b/Documentation/user/invoking.itexi @@ -0,0 +1,101 @@ + +@node Invoking LilyPond, , , Top +@chapter Invoking LilyPond +@cindex Invoking LilyPond + + +@example + @strong{lilypond} [OPTION]... [MUDELA-FILE]... +@end example + +@section Options + +@table @samp +@item -f,--format= + Output format for sheet music. Choices are tex (for TeX + output), ps (for PostScript) and scm (for GUILE) +@item -I,--include= + add @file{FILE} to the search path for input files. +@item -m,--midi + Disable TeX output. If you have a \midi definition, it will do the + midi output only. +@item -M,--dependencies + Also output rules to be included in Makefile. +@item -d,--debug + Turn debugging info on. GNU LilyPond reads the file @file{.dstreamrc}, + which lists what functions and classes may produce copious debugging + output. +@item -s,--safe + Disallow untrusted @code{\include} directives, backslashes in TeX +code and named output. +@item -t,--test + Switch on any experimental features. Not for general public use. +@item -w,--warranty + Show the warranty with which GNU LilyPond comes. (It comes with + @strong{NO WARRANTY}!) +@item -o,--output=FILE + Set the default output file to @file{FILE}. +@item -h,--help + Show a summary of usage. +@item -i,--init=FILE + Set init file to @file{FILE} (default: @file{init.ly}). +@item --include, -I=DIRECTORY + Add @file{DIRECTORY} to the search path for input files. +@item --ignore-version, -V + Make the incompatible mudela version warning non-fatal. +@end table + + + +When invoked with a filename that has no extension, LilyPond will try +adding `@file{.ly}' as an extension first, then `@file{.fly}' and +finally `@file{.sly}' extension. If the filename ends with +`@file{.fly}', LilyPond processes the file as music using +`@file{init.fly}'. In this case, LilyPond does something like: + +@quotation + +@example +\score @{ + \notes\relative c @{ +1 \input "yourfile.fly" + @} + \paper@{@} + \midi@{@} +@} +@end example + +@end quotation + +The result of `@file{.sly}' is similar except that a single unjustified +line is produced. + +If you invoke LilyPond with a file `@file{foo.}@var{ext}' that doesn't +have the `@file{.ly}' extension, then LilyPond will look for a file +called `@file{init.}@var{ext}' and process this file. The file +`@file{init.}@var{ext}' must contain the @code{\maininput} keyword or +LilyPond will not read the user specified file. + +When LilyPond processes @file{filename.ly} it will produce +@file{filename.tex} as output. If @file{filename.ly} contains a second +@code{\paper} keyword, then LilyPond will produce @file{filename-1.tex} +as well. Subsequent @code{\paper} keywords will produce sequentially +numbered file names. Several files can be specified; they will each +be processed independently.@footnote{Not entirely true: The status of +GUILE is kept.} + + + +@section Environment variables + +@table @samp +@item LILYINCLUDE + additional directories for finding lilypond data. The + format is like the format of @file{PATH}. +@item LILYPREFIX + [FIXME] +@item LANG + selects the language for the warning messages of LilyPond. +@end table + + diff --git a/Documentation/user/moreinfo.itexi b/Documentation/user/moreinfo.itexi new file mode 100644 index 0000000000..826a3d15fb --- /dev/null +++ b/Documentation/user/moreinfo.itexi @@ -0,0 +1,35 @@ +@node More information, , , Top +@section Resources + +A further source for information is the website, which can be found at +@uref{http://www.lilypond.org/}. The website contains on-line +versions of the documentation + +GNU LilyPond is updated very frequently, the latest version is always +available at: @uref{ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/}. This FTP +site is mirrored at a number of sites; consult the project web pages +for information about mirrors. + +For programs which are part of the GNU music project, the following +mailing list have been setup: + +@table @samp +@item @email{info-gnu-music@@gnu.org} + For information on the GNU Music project, to subscribe: send mail with + subject "subscribe" to @email{info-gnu-music-request@@gnu.org} +@item @email{help-gnu-music@@gnu.org} + For help with programs from the GNU music project. To subscribe: send + mail with subject "subscribe" to @email{help-gnu-music-request@@gnu.org} +@item @email{bug-gnu-music@@gnu.org} + If you have bugreports, you should send them to this list. If you want + to read all bugreports, you should subscribe to this list. To + subscribe: send mail with subject "subscribe" to + @email{bug-gnu-music-request@@gnu.org} +@item @email{gnu-music-discuss@@gnu.org} + For discussions concerning the GNU Music project, to subscribe: send + mail with subject "subscribe" to + @email{gnu-music-discuss-request@@gnu.org} +@end table + +Announces of new versions will be sent to info-gnu-music and +gnu-music-discuss. diff --git a/lily/auto-change-iterator.cc b/lily/auto-change-iterator.cc index 5d3537b461..4a52caeeb4 100644 --- a/lily/auto-change-iterator.cc +++ b/lily/auto-change-iterator.cc @@ -70,14 +70,14 @@ void Auto_change_iterator::do_process_and_next (Moment m) { Music_wrapper_iterator::do_process_and_next (m); - Pitch_interrogate_req spanish_inquisition; + Pitch_interrogate_req spanish_inquisition; // nobody expects it Music_iterator *it = try_music (&spanish_inquisition); if (it && spanish_inquisition.pitch_arr_.size ()) { Musical_pitch p = spanish_inquisition.pitch_arr_[0]; - Direction s = Direction (sign(p.semitone_pitch ())); + Direction s = Direction (sign(p.steps ())); if (s && s != where_dir_) { where_dir_ = s; diff --git a/make/generic-vars.make b/make/generic-vars.make index 207156e1d7..1581a6e768 100644 --- a/make/generic-vars.make +++ b/make/generic-vars.make @@ -28,7 +28,7 @@ LILYPOND_INCLUDES = $(include-lib) $(depth)/lib/$(outdir) $(include-flower) $(de # installed by 'make installextradoc' EXTRA_DOC_FILES = \ - ANNOUNCEMENT ANNOUNCE-0.1 AUTHORS.txt BUGS COPYING DEDICATION INSTALL.txt NEWS PATCHES.txt README.txt TODO \ + ANNOUNCEMENT ANNOUNCE-0.1 AUTHORS.txt COPYING DEDICATION INSTALL.txt NEWS PATCHES.txt README.txt TODO \ Documentation/out/*.txt\ Documentation/tex/*.doc\ Documentation/tex/*.bib\ diff --git a/make/mudela-rules.make b/make/mudela-rules.make index b6c04a5e48..fa170d1698 100644 --- a/make/mudela-rules.make +++ b/make/mudela-rules.make @@ -2,12 +2,12 @@ .SUFFIXES: .doc .dvi .mudtex .tely .texi +SUBST_TEXI_DEPS=sed 's! \.\./! !g' < $(basename $@).dep > $(outdir)/temp.dep ; mv $(outdir)/temp.dep $(basename $@).dep + $(outdir)/%.latex: %.doc - cd $(outdir); $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies ../$< -# sed 's! \.\./! !g'< $(basename $@).dep > $(outdir)/temp.dep -# sed 's!^\(.*\):!'$(outdir)'/\1:!g' < $(outdir)/temp.dep > $(basename $@).dep -# rm $(outdir)/temp.dep + cd $(outdir); $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies --dep-prefix=$(outdir)/ ../$< + $(SUBST_TEXI_DEPS) $(outdir)/%.texi: %.tely - cd $(outdir); $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies --format=texi ../$< - + cd $(outdir); $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies --dep-prefix=$(outdir)/ --format=texi ../$< + $(SUBST_TEXI_DEPS) diff --git a/make/toplevel.make.in b/make/toplevel.make.in index 3d3173dd03..9dce8fb503 100644 --- a/make/toplevel.make.in +++ b/make/toplevel.make.in @@ -14,9 +14,9 @@ SUBDIRS = scripts buildscripts flower lib lily mf midi2ly po debian \ # SCRIPTS = configure aclocal.m4 -README_FILES = BUGS DEDICATION ANNOUNCE-0.1 ANNOUNCE-1.0 ANNOUNCE-1.2 \ +README_FILES = DEDICATION ANNOUNCE-0.1 ANNOUNCE-1.0 ANNOUNCE-1.2 \ COPYING NEWS-0.1 NEWS-1.0 NEWS-0.0 NEWS-1.1 NEWS TODO AIMS CHANGES -README_TXT_FILES = README.txt AUTHORS.txt INSTALL.txt +README_TXT_FILES = README.txt AUTHORS.txt INSTALL.txt IN_FILES := $(wildcard *.in) EXTRA_DIST_FILES = dstreamrc mudela-mode.el vimrc VERSION $(README_FILES) $(SCRIPTS) $(IN_FILES) NON_ESSENTIAL_DIST_FILES = $(README_TXT_FILES) @@ -32,10 +32,11 @@ website: fonts htmldoc examples doc++ fonts: $(MAKE) -C $(depth)/mf + examples: $(MAKE) CONFIGSUFFIX='www' -C input WWW $(MAKE) CONFIGSUFFIX='www' -C mutopia WWW - $(footify) `$(FIND) . -name '*.html' -print` + $(footify-all-command) tar --exclude='*.dvi' --exclude='*.tex' --exclude='*.ps' --exclude='*.ppm' -czf $(outdir)/examples.tar.gz `find input mutopia -type d -name 'out-www' -print` localinstall: @@ -46,5 +47,3 @@ localinstall: local-WWW-clean: $(depth)/buildscripts/out/clean-fonts -footify: - $(footify) `$(FIND) . -name '*.html' -print` diff --git a/scripts/mudela-book.py b/scripts/mudela-book.py index 4f1fa430a9..97ca4acb05 100644 --- a/scripts/mudela-book.py +++ b/scripts/mudela-book.py @@ -7,12 +7,13 @@ import getopt import sys import __main__ -outdir = 'out' + initfile = '' program_version = '@TOPLEVEL_VERSION@' cwd = os.getcwd () include_path = [cwd] +dep_prefix = '' # TODO: Figure out clean set of options. @@ -52,7 +53,8 @@ options = [ ('', 'M', 'dependencies', 'write dependencies'), ('', 'n', 'no-lily', 'don\'t run lilypond'), ('FILE', 'o', 'outname', 'prefix for filenames'), - ('', 'v', 'version', 'print version information' ) + ('', 'v', 'version', 'print version information' ), + ('PREF', '', 'dep-prefix', 'prepend PREF before each -M dependency') ] format = '' @@ -174,7 +176,7 @@ def bounding_box_dimensions(fname): fd = open(fname) except IOError: error ("Error opening `%s'" % fname) - str = fd.read (-1) + str = fd.read () s = re.search('%%BoundingBox: ([0-9]+) ([0-9]+) ([0-9]+) ([0-9]+)', str) if s: return (int(s.group(3))-int(s.group(1)), @@ -183,15 +185,25 @@ def bounding_box_dimensions(fname): return (0,0) + +read_files = [] def find_file (name): + f = None for a in include_path: try: nm = os.path.join (a, name) f = open (nm) - return nm + __main__.read_files.append (nm) + break except IOError: pass - return '' + + + if f: + return f.read () + else: + error ("File not found `%s'\n" % name) + return '' def error (str): sys.stderr.write (str + "\n Exiting ... \n\n") @@ -273,7 +285,8 @@ def find_inclusion_chunks (regex, surround, str): chunks.append (('input', str[: m.start (0)])) chunks.append (('input', surround)) - chunks = chunks + read_doc_file (m.group (1)) + chunks = chunks + read_doc_file (m.group (1)) + chunks.append (('input', surround)) str = str [m.end (0):] @@ -288,18 +301,7 @@ def find_input_chunks (str): def read_doc_file (filename): """Read the input file, substituting for \input, \include, \mudela{} and \mudelafile""" str = '' - for ext in ['', '.tex', '.doc', '.tely']: - try: - f = open(filename+ ext) - str = f.read (-1) - except: - pass - - - if not str: - error ("File not found `%s'\n" % filename) - - retdeps = [filename] + str = find_file(filename) if __main__.format == '': latex = re.search ('\\\\document', str[:200]) @@ -317,8 +319,7 @@ def read_doc_file (filename): newchunks = [] for c in chunks: if c[0] == 'input': - ch = func (c[1]) - newchunks = newchunks + ch + newchunks = newchunks + func (c[1]) else: newchunks.append (c) chunks = newchunks @@ -371,6 +372,7 @@ def completize_preamble (str): def find_verbatim_chunks (str): """Chop STR into a list of tagged chunks, ie. tuples of form (TYPE_STR, CONTENT_STR), where TYPE_STR is one of 'input' and 'verbatim' + """ chunks = [] @@ -385,7 +387,7 @@ def find_verbatim_chunks (str): str = str [m.end(0):] - return chunks + return chunks def find_verb_chunks (str): @@ -419,14 +421,7 @@ def find_mudela_shorthands (b): def mudela_file (match): "Find \mudelafile, and substitute appropriate \begin / \end blocks." - d = [] #, d = retdeps - full_path = find_file (match.group (2)) - if not full_path: - error("error: can't find file `%s'\n" % match.group(2)) - - d.append (full_path) - f = open (full_path) - str = f.read (-1) + str = find_file (match.group (2)) opts = match.group (1) if opts: opts = opts[1:-1] @@ -596,6 +591,7 @@ def print_chunks (ch): def transform_input_file (in_filename, out_filename): """Read the input, and deliver a list of chunks ready for writing. + """ chunks = read_doc_file (in_filename) @@ -804,16 +800,18 @@ Han-Wen Nienhuys sys.exit (0) -def write_deps (fn, target, deps): +def write_deps (fn, target): sys.stdout.write('writing `%s\'\n' % fn) f = open (fn, 'w') - target = target + '.latex' - f.write ('%s: %s\n'% (target, string.join (deps, ' '))) + f.write ('%s%s: ' % (dep_prefix, target)) + for d in __main__.read_files: + f.write ('%s ' % d) + f.write ('\n') f.close () + __main__.read_files = [] - def identify(): sys.stdout.write ('mudela-book (GNU LilyPond) %s\n' % program_version) @@ -825,72 +823,67 @@ NO WARRANTY. """) -def main(): - global outdir, initfile, defined_mudela_cmd, defined_mudela_cmd_re - outname = '' - try: - (sh, long) = getopt_args (__main__.options) - (options, files) = getopt.getopt(sys.argv[1:], sh, long) - except getopt.error, msg: - sys.stderr.write("error: %s" % msg) - sys.exit(1) - - do_deps = 0 - for opt in options: - o = opt[0] - a = opt[1] - - if o == '--include' or o == '-I': - include_path.append (a) - elif o == '--version': - print_version () - sys.exit (0) - - elif o == '--format' or o == '-o': - __main__.format = a - elif o == '--outname' or o == '-o': - if len(files) > 1: - #HACK - sys.stderr.write("Mudela-book is confused by --outname on multiple files") - sys.exit(1) - outname = a - elif o == '--outdir' or o == '-d': - outdir = a - elif o == '--help' or o == '-h': - help () - elif o == '--no-lily' or o == '-n': - __main__.run_lilypond = 0 - elif o == '--dependencies': - do_deps = 1 - elif o == '--default-mudela-fontsize': - default_music_fontsize = string.atoi (a) - elif o == '--init': - initfile = a - - identify() - - for input_filename in files: - file_settings = {} - if outname: - my_outname = outname - else: - my_outname = os.path.basename(os.path.splitext(input_filename)[0]) - my_depname = my_outname + '.dep' +outname = '' +try: + (sh, long) = getopt_args (__main__.options) + (options, files) = getopt.getopt(sys.argv[1:], sh, long) +except getopt.error, msg: + sys.stderr.write("error: %s" % msg) + sys.exit(1) + +do_deps = 0 +for opt in options: + o = opt[0] + a = opt[1] + + if o == '--include' or o == '-I': + include_path.append (a) + elif o == '--version': + print_version () + sys.exit (0) + + elif o == '--format' or o == '-o': + __main__.format = a + elif o == '--outname' or o == '-o': + if len(files) > 1: + #HACK + sys.stderr.write("Mudela-book is confused by --outname on multiple files") + sys.exit(1) + outname = a + elif o == '--help' or o == '-h': + help () + elif o == '--no-lily' or o == '-n': + __main__.run_lilypond = 0 + elif o == '--dependencies': + do_deps = 1 + elif o == '--default-mudela-fontsize': + default_music_fontsize = string.atoi (a) + elif o == '--init': + initfile = a + elif o == '--dep-prefix': + dep_prefix = a + +identify() + +for input_filename in files: + file_settings = {} + if outname: + my_outname = outname + else: + my_outname = os.path.basename(os.path.splitext(input_filename)[0]) + my_depname = my_outname + '.dep' - chunks = transform_input_file (input_filename, my_outname) - - foutn = my_outname + '.' + format - sys.stderr.write ("Writing `%s'\n" % foutn) - fout = open (foutn, 'w') - for c in chunks: - fout.write (c[1]) - fout.close () + chunks = transform_input_file (input_filename, my_outname) - if do_deps: - # write_deps (my_depname, my_outname, deps) - sys.stderr.write ("--dependencies broken") + foutn = my_outname + '.' + format + sys.stderr.write ("Writing `%s'\n" % foutn) + fout = open (foutn, 'w') + for c in chunks: + fout.write (c[1]) + fout.close () -main() + if do_deps: + write_deps (my_depname, foutn)