From 7ed4019033adf7db7a8f64c4eb7b7f6d0449402f Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Wed, 10 Nov 1999 16:02:37 +0100 Subject: [PATCH] release: 1.3.5 --- CHANGES | 18 + Documentation/ntweb/angels.ly | 2 +- Documentation/programmer/README-W32.texi | 820 ++++++++++++++++++ Documentation/programmer/regression-test.tely | 13 +- Documentation/topdocs/AUTHORS.texi | 3 +- Documentation/user/refman.itely | 15 +- TODO | 8 +- VERSION | 4 +- input/GNUmakefile | 2 +- input/bugs/auto-staff-switch.ly | 2 +- input/bugs/p.ly | 2 +- input/denneboom.ly | 2 +- input/example-3.ly | 2 +- input/just-friends.ly | 2 +- input/praeludium-fuga-E.ly | 2 +- input/rhythm.ly | 2 +- input/star-spangled-banner.ly | 2 +- input/test/allfontstyle.ly | 2 +- input/test/auto-beam-4-8.ly | 2 +- input/test/auto-beam-override.ly | 4 +- input/test/auto-staff-switch.ly | 2 +- input/test/banter-chords.ly | 2 +- input/test/bar-number.ly | 2 +- input/test/bar-scripts.ly | 2 +- input/test/beam-chord.ly | 4 +- input/test/beam-cross-staff.ly | 2 +- input/test/beam-isknee.ly | 2 +- input/test/beam-pos.ly | 4 +- input/test/beam-urg.ly | 6 +- input/test/beams.ly | 4 +- input/test/breathing-sign.ly | 2 +- input/test/broken.ly | 2 +- input/test/chord-inversion.ly | 2 +- input/test/chord-table.ly | 2 +- input/test/chords.ly | 2 +- input/test/clefs.ly | 2 +- input/test/coda-kludge.ly | 2 +- input/test/collisions.ly | 2 +- input/test/defaultbars.ly | 4 +- input/test/dotted-slur.ly | 2 +- input/test/extender.ly | 2 +- input/test/extra-staff.ly | 2 +- input/test/font-body.ly | 2 +- input/test/font.ly | 2 +- input/test/font16.ly | 2 +- input/test/font20.ly | 2 +- input/test/force-hshift.fly | 2 +- input/test/gmsusd.ly | 2 +- input/test/gourlay.ly | 2 +- input/test/hara-kiri-switch.ly | 2 +- input/test/hara-kiri.ly | 2 +- input/test/hshift.fly | 10 +- input/test/hyphen.ly | 2 +- input/test/incipit.ly | 2 +- input/test/keys.ly | 2 +- input/test/keys2.ly | 2 +- input/test/knee.ly | 2 +- input/test/lyric-combine.ly | 6 +- input/test/mark.ly | 2 +- input/test/memory.ly | 2 +- input/test/multi-measure-rest.ly | 5 +- input/test/multi-rest.ly | 6 +- input/test/no-stem-extend.fly | 4 +- input/test/noteheadstyle.ly | 2 +- input/test/notemode-chords.ly | 2 +- input/test/orchestalpart.ly | 2 +- input/test/orchestscore.ly | 2 +- input/test/ossia.ly | 2 +- input/test/perform-grace.fly | 4 +- input/test/rest-collision.ly | 2 +- input/test/rests.fly | 2 +- input/test/scripts.ly | 2 +- input/test/sizes.fly | 4 +- input/test/sleur.ly | 2 +- input/test/slur-cross-staff.ly | 2 +- input/test/slur-damping.ly | 2 +- input/test/slurs.ly | 2 +- input/test/spacing-2.ly | 2 +- input/test/spacing.ly | 2 +- input/test/span-bars.ly | 2 +- input/test/staff-margin.ly | 2 +- input/test/staff-side-slur.ly | 2 +- input/test/staff-size.ly | 12 +- input/test/stem-tremolo.ly | 2 +- input/test/stem.ly | 2 +- input/test/tchaikovsky.ly | 2 +- input/test/test-lyrics.ly | 2 +- input/test/thumb.ly | 2 +- input/test/tie-accidental.ly | 14 +- input/test/timing.fly | 16 + input/test/title.ly | 2 +- input/test/transposition.ly | 2 +- input/test/tup.ly | 2 +- input/test/vertical-align.ly | 6 +- input/test/vertical-text.ly | 2 +- input/twinkle-pop.ly | 2 +- input/twinkle.ly | 2 +- lily/auto-beam-engraver.cc | 15 +- lily/bar-engraver.cc | 2 +- lily/bar-number-engraver.cc | 10 +- lily/base-span-bar-engraver.cc | 4 +- lily/beam-engraver.cc | 4 +- lily/break-align-engraver.cc | 122 +++ lily/break-align-item.cc | 39 - lily/chord-tremolo-engraver.cc | 2 +- lily/clef-engraver.cc | 3 +- lily/command-request.cc | 37 - lily/global-translator.cc | 4 +- lily/include/align-element.hh | 5 + lily/include/base-span-bar-engraver.hh | 1 - lily/include/break-align-item.hh | 3 - lily/include/command-request.hh | 22 - lily/include/debug.hh | 3 - lily/include/directional-spanner.hh | 4 +- lily/include/global-translator.hh | 3 +- lily/include/staff-info.hh | 1 - lily/include/time-description.hh | 63 -- lily/include/time-signature-engraver.hh | 3 +- lily/include/timing-engraver.hh | 1 - lily/include/timing-translator.hh | 20 +- lily/key-engraver.cc | 5 +- lily/local-key-engraver.cc | 8 +- lily/multi-measure-rest-engraver.cc | 25 +- lily/musical-pitch.cc | 7 +- lily/my-lily-lexer.cc | 2 - lily/note-name-engraver.cc | 67 ++ lily/parser.yy | 19 +- lily/repeat-engraver.cc | 4 +- lily/score-element.cc | 3 + lily/score-priority-engraver.cc | 65 -- lily/score.cc | 2 +- lily/span-score-bar-engraver.cc | 4 +- lily/staff-info.cc | 1 - lily/staff-margin-engraver.cc | 2 +- lily/time-description.cc | 124 +-- lily/time-signature-engraver.cc | 5 +- lily/timing-engraver.cc | 8 +- lily/timing-translator.cc | 176 +++- lily/warn.cc | 17 +- ly/auto-beam-settings.ly | 26 + ly/book-fragment.ly | 2 +- ly/book-init.ly | 2 +- ly/center-fragment.ly | 2 +- ly/center.ly | 2 +- ly/engraver.ly | 19 +- ly/fragment.ly | 2 +- ly/init.ly | 2 +- ly/paper16.ly | 2 +- ly/paper20.ly | 2 +- ly/paper23.ly | 2 +- ly/property.ly | 8 +- make/out/lilypond.lsm | 8 +- make/out/lilypond.spec | 4 +- mutopia/Coriolan/bassi-part.ly | 2 +- mutopia/Coriolan/clarinetti-part.ly | 2 +- mutopia/Coriolan/clarinetti.ly | 2 +- mutopia/Coriolan/clarinetto-1.ly | 2 +- mutopia/Coriolan/clarinetto-2.ly | 2 +- mutopia/Coriolan/contrabasso-part.ly | 2 +- mutopia/Coriolan/contrabasso.ly | 2 +- mutopia/Coriolan/coriolan.ly | 2 +- mutopia/Coriolan/corni-part.ly | 2 +- mutopia/Coriolan/corni.ly | 2 +- mutopia/Coriolan/corno-1.ly | 2 +- mutopia/Coriolan/corno-2.ly | 2 +- mutopia/Coriolan/fagotti-part.ly | 2 +- mutopia/Coriolan/fagotti.ly | 2 +- mutopia/Coriolan/fagotto-1.ly | 2 +- mutopia/Coriolan/fagotto-2.ly | 2 +- mutopia/Coriolan/flauti-part.ly | 2 +- mutopia/Coriolan/flauti.ly | 2 +- mutopia/Coriolan/flauto-1.ly | 2 +- mutopia/Coriolan/flauto-2.ly | 2 +- mutopia/Coriolan/global.ly | 2 +- mutopia/Coriolan/oboe-1.ly | 2 +- mutopia/Coriolan/oboe-2.ly | 2 +- mutopia/Coriolan/oboi-part.ly | 2 +- mutopia/Coriolan/oboi.ly | 2 +- mutopia/Coriolan/timpani.ly | 2 +- mutopia/Coriolan/trombe-part.ly | 2 +- mutopia/Coriolan/trombe.ly | 2 +- mutopia/Coriolan/trombo-1.ly | 2 +- mutopia/Coriolan/trombo-2.ly | 2 +- mutopia/Coriolan/viola-1.ly | 2 +- mutopia/Coriolan/viola-2.ly | 2 +- mutopia/Coriolan/viola-part.ly | 2 +- mutopia/Coriolan/violino-1-part.ly | 2 +- mutopia/Coriolan/violino-1.ly | 2 +- mutopia/Coriolan/violino-2-part.ly | 2 +- mutopia/Coriolan/violino-2.ly | 2 +- mutopia/Coriolan/violoncello-part.ly | 2 +- mutopia/Coriolan/violoncello.ly | 2 +- mutopia/D.Zipoli/verso_2.ly | 2 +- mutopia/E.Satie/gnossienne-4-autochange.ly | 2 +- mutopia/E.Satie/gnossienne-4.ly | 2 +- mutopia/E.Satie/petite-ouverture-a-danser.ly | 2 +- mutopia/F.Schubert/standchen-16.ly | 2 +- mutopia/F.Schubert/standchen-20.ly | 2 +- mutopia/F.Schubert/standchen.ly | 16 +- mutopia/Hymns/diademata.ly | 2 +- mutopia/Hymns/laudatedom.ly | 2 +- mutopia/Hymns/maccabaeus.ly | 2 +- mutopia/Hymns/ode.ly | 2 +- mutopia/Hymns/stille.ly | 2 +- .../Cembalo-Partitas/Partita_II_Allemande.ly | 2 +- .../Cembalo-Partitas/Partita_II_Capriccio.ly | 2 +- .../Cembalo-Partitas/Partita_II_Sinfonia.ly | 2 +- mutopia/J.S.Bach/Duette/global-i.ly | 2 +- mutopia/J.S.Bach/Duette/global-ii.ly | 2 +- mutopia/J.S.Bach/Duette/viola-i.ly | 2 +- mutopia/J.S.Bach/Duette/viola-ii.ly | 2 +- mutopia/J.S.Bach/Duette/viola-part.ly | 2 +- mutopia/J.S.Bach/Duette/violino-i.ly | 2 +- mutopia/J.S.Bach/Duette/violino-ii.ly | 4 +- mutopia/J.S.Bach/Duette/violino-part.ly | 2 +- mutopia/J.S.Bach/Duette/violino-viola.ly | 2 +- .../J.S.Bach/Duette/violino-violoncello.ly | 2 +- mutopia/J.S.Bach/Duette/violoncello-i.ly | 2 +- mutopia/J.S.Bach/Duette/violoncello-ii.ly | 2 +- mutopia/J.S.Bach/Duette/violoncello-part.ly | 2 +- .../J.S.Bach/Petites-Preludes/preludes-1.ly | 2 +- .../J.S.Bach/Petites-Preludes/preludes-2.ly | 104 ++- .../J.S.Bach/Petites-Preludes/preludes-3.ly | 2 +- .../J.S.Bach/Petites-Preludes/preludes-4.ly | 2 +- .../J.S.Bach/Petites-Preludes/preludes-5.ly | 2 +- .../J.S.Bach/Petites-Preludes/preludes-6.ly | 2 +- .../Solo-Cello-Suites/allemande-cello.ly | 2 +- .../Solo-Cello-Suites/allemande-urtext.ly | 2 +- .../Solo-Cello-Suites/allemande-viola.ly | 2 +- .../Solo-Cello-Suites/courante-cello.ly | 2 +- .../Solo-Cello-Suites/courante-urtext.ly | 2 +- .../Solo-Cello-Suites/courante-viola.ly | 2 +- .../J.S.Bach/Solo-Cello-Suites/gigue-cello.ly | 2 +- .../Solo-Cello-Suites/gigue-urtext.ly | 2 +- .../J.S.Bach/Solo-Cello-Suites/gigue-viola.ly | 2 +- .../Solo-Cello-Suites/menuetto-cello.ly | 2 +- .../Solo-Cello-Suites/menuetto-urtext.ly | 2 +- .../Solo-Cello-Suites/menuetto-viola.ly | 2 +- .../Solo-Cello-Suites/prelude-cello.ly | 2 +- .../Solo-Cello-Suites/prelude-urtext.ly | 2 +- .../Solo-Cello-Suites/prelude-viola.ly | 2 +- .../Solo-Cello-Suites/sarabande-cello.ly | 2 +- .../Solo-Cello-Suites/sarabande-urtext.ly | 2 +- .../Solo-Cello-Suites/sarabande-viola.ly | 2 +- mutopia/J.S.Bach/wtk1-fugue1.ly | 2 +- mutopia/J.S.Bach/wtk1-fugue2.ly | 2 +- mutopia/J.S.Bach/wtk1-prelude1.ly | 2 +- mutopia/L.Mozart/sinfonia.ly | 2 +- mutopia/N.W.Gade/brass.ly | 2 +- mutopia/N.W.Gade/parts.ly | 2 +- mutopia/N.W.Gade/score.ly | 10 +- mutopia/N.W.Gade/strings.ly | 2 +- mutopia/N.W.Gade/wood.ly | 2 +- mutopia/W.A.Mozart/horn-concerto-3/cadenza.ly | 4 +- .../horn-concerto-3/horn-concerto-3.ly | 2 +- mutopia/gallina.ly | 8 +- scm/generic-property.scm | 4 +- scripts/abc2ly.py | 2 +- scripts/convert-mudela.py | 10 + 259 files changed, 1679 insertions(+), 815 deletions(-) create mode 100644 Documentation/programmer/README-W32.texi create mode 100644 input/test/timing.fly create mode 100644 lily/break-align-engraver.cc delete mode 100644 lily/include/time-description.hh create mode 100644 lily/note-name-engraver.cc delete mode 100644 lily/score-priority-engraver.cc diff --git a/CHANGES b/CHANGES index 276fb767e5..5382314124 100644 --- a/CHANGES +++ b/CHANGES @@ -1,8 +1,26 @@ +pl 4.uu1 + - input/test/ \property fixes. + - gcc 2.95 fix + +pl 4.hwn1 + - Break_align_engraver, + break align order from \property breakAlignOrder + - junked Score_priority_engraver + - moved Time_description into Timing_translator + - use properties for timing, see input/test/timing.fly + * removed \cadenza ; now use \property Score.timing + * \property measurePosition + * \property measureLength + * \property currentBarNumber + - Note_name_engraver , \context NoteNames + + pl 4.jcn1 - junked some chord guessing code - bf: lookup size (-1) for chord-name accidentals - bf: ly2dvi's MFINPUTS setting +************* pl 2.jcn3 - chords: * Chord is item diff --git a/Documentation/ntweb/angels.ly b/Documentation/ntweb/angels.ly index 6eab51ce02..80e068658e 100644 --- a/Documentation/ntweb/angels.ly +++ b/Documentation/ntweb/angels.ly @@ -13,7 +13,7 @@ global = \notes { \keysignature bes; \tempo 2=60; } -\version "1.2.0"; +\version "1.3.4"; % \include "score-paper.ly" flute1 = \notes \relative c'' { diff --git a/Documentation/programmer/README-W32.texi b/Documentation/programmer/README-W32.texi new file mode 100644 index 0000000000..8abbb88413 --- /dev/null +++ b/Documentation/programmer/README-W32.texi @@ -0,0 +1,820 @@ +\input texinfo @c -*-texinfo-*- +@setfilename README-W32.info +@settitle LilyPond on W32 + + +@node Top, , , (dir) + +@chapter LilyPond on W32 + +FIXME: remove yodl refs. + +[FIXME: THIS DOCUMENTED IS OUTDATED] + +No, there's no reason to be concered, Lily should work in +Windows-NT(/95/98?) too. The setup may not be easy or smooth. This +document will help you getting started. + + +@section DISCLAIMER + +If you have the Cygnus gnu-windows32 port of the GNU utils, LilyPond +will work in Windows-NT (/95/98?). + +We still recommend you use Unix. In particular, use GNU/Linux: We've +been there, and we've seen it happen several times. It is @strong{much} +easier and quicker to install RedHat Linux and LilyPond than to +obtain, compile and install all the necessary tools to compile and run +LilyPond on Windows. + +``Ok, thanks for the suggestions. I can't run Linux or I don't want +to run Unix. What can I expect?'' + +@itemize @bullet +@item LilyPond development is moving quite fast, and all developers use Unix. + Newly added features may require some attention to get them to work. +@item LilyPond depends on a number of other packages that usually are + available on Unix boxes, but are not installed by default on Windows. +@end itemize + + +LilyPond will now install/extract in a unix-like tree: +@example + + usr/[local/]bin/ + usr/[local/]share/lilypond/* + +@end example + +etc. + +Lily runs in a the unix-like Cygnus gnu-windows environment; +hopefully Cygnus will adopt the @file{/usr/[local/]} tree too. + +@* +If you really don't want usr/ in your root directory, but rather scatter +your programs and packages all over your harddisk, do something like: +@example + + md lilypond + cd lilypond + unzip ../lilypond-0.1.77.exe.zip + +@end example + +and add @file{lilypond/usr/bin} to your @file{PATH} and +@file{lilypond/usr/share/lilypond} to your @file{LILYINCLUDE}. + + +If you've received a binary release of LilyPond (@file{.exe.zip}), +you may skip the following sections. + + +It can be done! Occasionally, the Cygnus b19.1 cross compiler and +utilities under GNU/Linux are used to make the binary @file{.exe.zip} +releases (some makefile hacking was needed to build this stuff). Jeffrey +Reed tries to keep-up with LilyPond development, and is doing quite +well. His latest release is available on +@uref{http://home.austin.rr.com/jbr/jeff/lilypond/}. + + +I have heard of such tools that think they're probably much smarter than the +packager and thus decide for themselves that they don't need to unpack certain +files (e.g., empty directories such as bin/out). + +To unpack the lilypond sources, you should do something like: @example + + tar zxf releases/lilypond-x.y.z.tar.gz + +@end example + + +If you're familiar with the GNU/Cygnus development package, you may skip +this. + +Don't forget to set +@example + + /start/settings/control-panel/system/environment/system-variables: + GCC_EXEC_PREFIX=/Cygnus/b19/H-i386-cygwin32/lib/gcc-lib/ + MAKE_MODE=UNIX + +@end example + +You want to run bash, while building Lily: +@example + + c:\bash + bash-2.01$ + +@end example + +The install instructions mention something like: +@example + + configure + make + make install + +@end example + +Now for a small UNIX lesson: The current working directory (cwd) is +by default not in your PATH, like it is under DOS (for security reasons). +Check this by looking at the output of: +@example + + echo $PATH + +@end example + +The cwd looks like @code{'::'} or @code{':.'}. If it's not there, you may +add the cwd to your path: +@example + + PATH=$PATH:. + +@end example + +or you must use './' when issuing a command in th cwd, try: +@example + + ./configure + make + +@end example + +My point of reference comes from 15 odd years working with a variety +of @code{UNIX} platforms. I am relatively new to Windows-NT and, even +though I am a card carrying @code{UNIX} bigot, I am excited about the +NT OS. My goals for lilypond are to give back to the Free Software +Foundation a little of what they have given me over the years and to +contribute to the lilypond project by supporting a Windows-NT port. I +hope that someday we can distribute and run lilypond on the NT OS in a +much more native fashion. + +@itemize @bullet + +@item Building lilypond on Windows-NT +@item Maintaining lilypond on Windows-NT +@item Running lilypond on Windows-NT + +@end itemize + + +Currently as stated above lilypond is primarily a @code{UNIX} thing. +The Windows-NT port is based on the @code{UNIX} environment provided by +@uref{http://www.cygnus.com,Cygnus}. Therefore the first step is to +download and install the Cygnus development kit: + +@uref{http://www.cygnus.com/misc/gnu-win32/} + +Please follow the documentation Cygnus has on there web site for +downloading and installing. The important part is that you down load +the entire development kit. I believe it is @file{full.exe}. The +installation will ask you where you want to install it. I will refer +to Cygnus installation directory as @file{/gnuwin32/cygwin-b20}. There +should be a @file{README} file that contains installation instructions. +After the installation is complete you should have a @emph{Cygnus} +shortcut in your @emph{Program} section of your @emph{Start Menu}. This +shortcut is your door to the @code{UNIX} world and I will refer to the +resulting window as a @file{bash} shell. + +The shortcut points to @file{/gnuwin32/cygwin-b20/cygnus.bat}. The +following is my @file{cygnus.bat} file. + +@example + +@@ECHO OFF +rem default environment + +rem GNU cygnus installation + +SET CYGREL=B19.1 +SET MAKE_MODE=unix +SET LOCAL_ROOT=d:\gnuwin32 +SET LOCAL_FS=d:/gnuwin32 +SET LOCAL_DIR=d:/gnuwin32/cygwin-b20 +SET CYGROOT=%LOCAL_ROOT%\cygwin-b20 +SET CYGFS=%LOCAL_FS%/cygwin-b20 +SET TCL_LIBRARY=%CYGROOT%\share\tcl8.0 +rem +rem This was not in the original but is needed by lots of packages +rem +SET BISON_SIMPLE=%CYGFS%/share/bison.simple + +rem +rem I place the cygnus stuff in front of /WINNT +rem + +SET PATH=d:\bin;%LOCAL_ROOT%\bin;%CYGROOT%\H-i586-cygwin32\bin;%PATH% +SET MANPATH=%LOCAL_ROOT%\man;%LOCAL_ROOT%\cygwin-b20\full-man\man +SET INFOPATH=%LOCAL_FS%/cygwin-b20/full-man/info;%LOCAL_FS%/cygwin-b20/info;%LOCAL_DIR%/info + +rem General tools not included with Cygnus Development Kit + +rem CVS + +SET PATH=%PATH%;%LOCAL_ROOT%\cvs-1.9.28\bin +SET INFOPATH=%INFOPATH%;%LOCAL_FS%/cvs-1.9.28/info +SET MANPATH=%MANPATH%;%LOCAL_ROOT%\cvs-1.9.28\man + +rem EMACS + +SET PATH=%PATH%;%LOCAL_ROOT%\emacs-19.34\bin +SET INFOPATH=%INFOPATH%;%LOCAL_FS%/emacs-19.34/info + +rem VIM + +SET VIM=%LOCAL_ROOT%\vim-4.6\doc +SET PATH=%PATH%;%LOCAL_ROOT%\vim-4.6 + +rem TeX + +SET PATH=%PATH%;%LOCAL_ROOT%\texmf\miktex\bin + +rem a2ps + +SET PATH=%PATH%;%LOCAL_ROOT%\a2ps-4.10\bin +SET INFOPATH=%INFOPATH%;%LOCAL_FS%/a2ps-4.10/info +SET MANPATH=%MANPATH%;%LOCAL_ROOT%\a2ps-4.10\man + +rem python + +SET PATH=%PATH%;\Program Files\Python + +rem perl + +SET PATH=%PATH%;\qub + +rem yodl + +uname -sv +bash -login + +@end example + +Please look over this carefully. Be careful with the forward and +backward slash notations. The paths specified were done for good +reasons. Maybe someday we will all be using @code{UNC}. Note the +@code{BISON} entry and the @code{PATH} ordering in particular. Also note +that the generic @file{cygnus.bat} you will be looking at does not +include alot of the packages listed. We will be installing some of +these. + +The installation also suggests that you create a directory @file{/bin} +and copy @file{/gnuwin32/cygwin-b20/H-i586-cygwin32/bin/sh.exe} to +@file{/bin}. The @file{sh.exe} shell provided by Cygnus is a descendant +of the @file{ash} shell. The @file{sh.exe} shell has improved greatly +and is much faster than the @file{bash} shell for script invocations. +So this is my recommendation for post installation steps. From a +@file{bash} shell: + +@itemize @bullet +@item @code{cd /} +@item @code{mkdir bin} +@item @code{cd /bin} +@item @code{cp /gnuwin32/cygwin-b20/H-i586-cygwin32/bin/sh.exe sh.exe} +@item @code{cp /gnuwin32/cygwin-b20/H-i586-cygwin32/bin/bash.exe bash.exe} +@item @code{cd /} +@item @code{mkdir /tmp} +@item @code{chmod a+rwx tmp} +@item @code{mkdir /etc} +@item @code{cd /etc} +@item @code{mkpasswd -l > passwd} +@item @code{mkgroup -l > group} +@end itemize + + +There is also some discussion of how you want to @emph{mount} the Cygnus +development kit. @emph{mount} is a @code{UNIX} term that refers to the +mechanism used to provide a disk resource to the filesystem. Cygnus +supplies a mechinism for @emph{mounting} a filesystem as a @code{DOS} like +resource or a @code{UNIX} like resource. Among other things this +attempts to deal with the text file carriage return line feed on +@code{DOS} versus the line feed on @code{UNIX} and the issue that @code{DOS} +has two file types, text and binary. Where @code{UNIX} deals with a +single streams type. My opinion on this matter currently is to use +binary mounts only. This can be accomplished by: + +@itemize @bullet +@item From a bash shell, umount / +@item mount -b d: / +@end itemize + +If you have other disks that you intend to use for data generated by +cygnus tools you will have to mount those devices with the @emph{-b} +switch. + + +@uref{http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs.html} + +Cygnus now distributes the ecgs compiler with cygwin-b20. + + +@uref{http://www.gnu.org/order/ftp.html} + +Considering the origin of the major contributors of lilypond, this is a +must. However before we actually do a @strong{GNU} build we have to +discuss some caveats of the Windows-NT OS in particular the naming of +executable files. @code{Windows-NT} uses a .exe extension where @code{UNIX} +does not use an extension. This causes a problem during the +installation portion of a @strong{GNU} build. The following script can be +used to help alleviate this problem. + +@example + +#!/bin/sh + +realinstall=/gnuwin32/cygwin-b20/H-i586-cygwin32/bin/install.exe +args='' +while [ $# -ne 0 ] +do + case $1 in + -*) args="$args $1" + ;; + + *) if [ -f $1.exe ]; then + args="$args $1.exe" + else + args="$args $1" + fi + ;; + esac + shift +done + +$realinstall $args + +@end example + +I place this in script @file{~/bin}. The LilyPond configure, build, +and install process handles this with it's own install script. In +addition there are patches to the cygnus install command that also +deals with this problem. Having said that, here is how one +might build the @emph{gettext} package. + +@itemize @bullet +@item download the package from one of the ftp sites. +@item From a bash shell, cd ~/usr/src. +@item tar zxf gettext-0.10.tar.gz +@item cd gettext-0.10 +@item ./configure --prefix=$CYGFS/H-i586-cygwin32 +@item make +@item make install +@end itemize + + +@uref{http://www.gnu.org/order/ftp.html} + +Following the instructions for @emph{gettext} package to download, build, +and install the @emph{groff} package. + + +@uref{http://www.python.org} + +Python is the scripting language of choice for a lilypond build. +There is a native @code{Windows-NT} self extracting binary distribution +available. I recommend installing Python in a directory that does +@strong{not} have spaces. And then place it in the bash shell path by +editing $CYGFS/cygnus.bat. + + +@uref{http://www.cpan.org} + +I believe perl is used in some legacy scripts to date. There is a +native @code{Windows-NT} self extracting binary distribution available. +I recommend installing Perl in a directory that does @strong{not} have +spaces. And then place it in the bash shell path by editing +$CYGFS/cygnus.bat. + +The development methodology of @emph{LilyPond} relies on a the following +directory structure: + + +@example + +$HOME/usr/src/ + |-releases/ + |-patches/ + |-test/ + +@end example + +@table @samp + +@item releases/ Downloaded and generated releases live here. For +example @file{lilypond-1.1.17.tar.gz}. + +@item patches/ Downloaded and generated patches live here. For +example @file{lilypond-1.1.17.diff.gz}. + +@item test/ This directory is used to generate releases and patches. + +@end table + +I strongly recommend using this file structure to build @emph{yodl} and +@emph{lilypond}. + +@itemize @bullet +@item download the package from +@uref{http://www.xs4all.nl/~jantien/yodl/} to +@file{$HOME/usr/src/releases}. +@item From a bash shell, cd @file{$HOME/usr/src}. +@item tar zxf releases/yodl-@emph{}.tar.gz +@item cd yodl-@emph{} +@item ./configure --prefix=/gnuwin32/yodl-@emph{} --srcdir=. +Since @emph{yodl} is under development I choose to install it in a +version rooted directory. This allows me to test newly released +versions without losing a known working version. + +@item make +@item make install +@item place it in the bash shell path by editing $CYGFS/cygnus.bat. +For example: +@example +rem yodl + +SET PATH=%PATH%;%LOCAL_ROOT%\yodl-1.31.7\bin + + +@end example + +@end itemize + + + +GUILE, GNU's Ubiquitous Intelligent Language for Extension, is a +library that implements the Scheme language plus various convenient +facilities. It's designed so that you can link it into an application +or utility to make it extensible. GNU's plan is to link this library +into all GNU programs that call for extensibility. + +@itemize @bullet +@item download guile-1.3 patch from +@uref{http://home.austin.rr.com/jbr/jeff/lilypond/guile.patch} and save it +to @file{/tmp/guile.patch}. +@item download guile-1.3 from one of GNU's ftp sites. +@item From a bash shell, tar zxf guile-1.3.tar.gz +@item cd guile-1.3 +@item patch -p2 < /tmp/guile.patch +@item LD=/gnuwin32/cygwin-b20/H-i586-cygwin32/bin/ld \ @* + ./configure --prefix=$CYGFS/H-i586-cygwin32 +@item make sure bin_PROGRAMS macro in libguile/Makefile does @emph{not} have the +.exe extension during the build +@item make +@item make sure bin_PROGRAMS in libguile/Makefile @emph{does} have the +.exe extension during the install. Yuck. +@item make install +@end itemize + + +@itemize @bullet +@item download the package from +@uref{http://www.cs.uu.nl/people/hanwen/lilypond/} to +@file{$HOME/usr/src/releases}. +@item From a bash shell, cd @file{$HOME/usr/src}. +@item tar zxf releases/lilypond-@emph{}.tar.gz +@item cd lilypond-@emph{} +@item ./configure --prefix=/gnuwin32/lilypond-@emph{} \ @* + --srcdir=. @* +Since @emph{lilypond} is under development I choose to install it in a +version rooted directory. This allows me to test newly released +versions without losing a known working version. +@item make +@item make install +@item place it in the bash shell path by editing $CYGFS/cygnus.bat. +For example: +@example +rem lilypond + +SET PATH=%PATH%;%LOCAL_ROOT%\lilypond-1.1.17\bin + + +@end example + +@end itemize + + +If you have built @emph{lilypond} on @code{Windows-NT} using the directory + and the process described +in section FIXME, then you are ready to maintain +@emph{lilypond}. It can not be that easy!? Well, there is one caveat. +Currently to use the @file{stepmake/bin/release.py} and +@file{stepmake/bin/package-diff.py} scripts you need to obtain/build a +version of @emph{python} that was built with @strong{Cygnus} development kit. +The process I used is as follows: + +@itemize @bullet +@item obtain python source from @uref{http://www.python.org} +@item tar zxf /tmp/python-@emph{}.tar.gz +@item cd python-@emph{} +@item configure --prefix=/gnuwin32/Python-@emph{} +@item edit toplevel @file{Makefile} @code{EXE} macro so it reads @code{EXE=.exe} +@item make +@item make install +@item place it in the bash shell path by editing $CYGFS/cygnus.bat. +For example: +@example +rem python + +SET PATH=%PATH%;%LOCAL_ROOT%\python-1.5.1\bin + + +@end example + +@end itemize + +I choose to build @emph{lilypond} with the standard @code{Windows-NT} +@emph{python} and use the @strong{Cygnus} version for using the release +scripts. This way I can make sure the @code{Windows-NT} @emph{python} +version is able to build @emph{lilypond}. Currently there are several +issues with the release scripts. Using @code{os.link} and +@code{os.system(set -x;...)} are to name a few. + +To generate a new release and patch you must use the directory +. And follow the +instructions found in @file{PATCH.txt}. Editing +@file{Documentation/AUTHORS.yo}, @file{VERSION}, and @file{NEWS} is also +required. When my edits are complete and tested I: + +@itemize @bullet +@item Edit @file{config.make} and change @emph{python} path to the +@strong{Cygnus} version: @code{PYTHON=/gnuwin32/Python-1.5.1/bin/python}. +@item make release +@end itemize + +The new release is placed in @file{releases} directory and the patch is +placed in the @file{patches} directory. I email the new patch to +@email{gnu-music-discuss@@gnu.org}. More than one patch a day can be +generated by: + +@itemize @bullet +@item cd $HOME/usr/src +@item tar zxf releases/lilypond-@emph{}.@emph{} +@item use your normal configure +@item make edits +@item Change @file{VERSION} to increment @emph{} +@item Change @file{NEWS} +@item make release +@end itemize + + +We are now distributing a formated binary distribution for +Windows-NT. Please refer to +@uref{http://home.austin.rr.com/jbr/jeff/lilypond/} for current news, +download, installation, and running information. + +Jeffrey B. Reed @email{daboys@@austin.rr.com} + +@section RUNNING LILYPOND -- by Dominique Cretel + +You may want to refer to section FIXME, for more current +information about downloading, installing, and running the Windows-NT +binary distribution. + +@enumerate i +@item First, I have download tha 0.1.64 version of LilyPond music software. + +@item Then I extract it in a temp directory, and I move the directory +"lilypond-0.1.64" to the root directory of my D drive. + +@item I go to the D:\Lilypond-0.1.64\tex directory to modify the +lilyponddefs.tex file (lines 75 and 84), and comment all +cmbx15 ans cmbx14, and replace them by cmbx12. + +@item build a command file like this: +Note: I use MiKTeX to process the tex file generated. + +@example + +---begin ly2dvi.bat +echo off +set ver=0.1.64 +set path=%path%;d:\lilypond-%ver%\bin +lilypond -I d:\lilypond-%ver%\init %1 +rem *** pause + +set path=c:\texmf\miktex\bin;%path% +set TEXINPUTS=%TEXINPUTS%;d:\lilypond-%ver%\tex +set MFINPUTS=%MFINPUTS%;d:\lilypond-%ver%\mf +tex %1.tex +rem *** pause + +dvips %1.dvi +rem *** pause + +set path=%path%;d:\gstools\gsview +gsview32 %1.ps +---end ly2dvi.bat + +@end example + +@item execute lilypond by doing: +@example + +ly2ps silly + +@end example + +@end enumerate + +Note: +@* +You'll better have to put the SET commands lines in a separate command +file to avoid consumming each time environnment ressources. + +Bye,@* +Dominique Cretel @email{dominique.cretel@@cfwb.be} + +@section PROBLEMS AND ANWSWERS + +This is all to confusing. I have: +@enumerate i +@item downloaded @file{/tmp/lilypond-0.1.78.tar.gz} +@item @example + + cd ~/usr/src + +@end example + +@item @example + + tar zxf /tmp/lilypond-0.1.78.tar.gz + +@end example + +@item @example + + ./configure --prefix=/users/jeff/lilypond-0.1.78 \--enable-tex-prefix=/users/jeff/lilypond-0.1.78/texmf \--enable-tex-dir=/users/jeff/lilypond-0.1.78/texmf/tex \--enable-mf-dir=/users/jeff/lilypond-0.1.78/texmf/mf + +@end example + +@item @example + + make + +@end example + +@item @example + + make install + +@end example + +@end enumerate + +I did have a problem with lilypond.info. And I will look into this +further. After mending lilypond.info issue, it compiled and install +with no problems. + +I have 64 Meg of physical memory and 64 Meg of swap. Actually I need +to increase the swap space. If a memory problem is occuring it most +likely is during the link process of lilypond. There is a boat load +of objects to link. + +Jan the mount -b stuff is confussing to me. I have the entire system +mounted _without_ -b and only use -b on certain paths for programs +that create binary files that do not use O_BINARY open option. By the +way the midi file open is one of these cases, I need to look into +that. I have had no problems with this methodology. + + +The windows multiroot filesystem is an utterly broken concept. Please +do everything on one (urg) drive, C:. + +@example + +> configure +> creating cache ./config.cache +> [..] +> creating config.make +> creating config.hh +> cd: lstat /d failed + +@end example + +Ok, this looks like another stupid windows problem. +You're working on 'drive D:', right? + +I can think of some solutions, but i don't know if they work; +i just had to do some work in windows some time ago. If you +have problems with this, please ask @email{gnu-win32@@cygnus.com}. +I'll start with the simplest: +@itemize @bullet + @item do everything on drive C:, or + @item explicitely mount drive d:, work from there: + @example + + mkdir -p /mnt/d + mount d: /mnt/d + cd /mnt/d/lilypond-x.y.z/ + +@end example + + @item make d:/ the root of cygnus, in cmd.exe/command.exe do: + @example + + umount / + mount d: / + +@end example + +@end itemize + + +> - First I have installed Python (for win32) "Pyth151.exe" and "Configure +@* +> don't find it. I had to put it in the path for configure find it? +@* + +Yes, of course. It should be possible to have different versions of tools +installed (e.g. perl 4 and perl 5). The best way to tell people (or tools +like configure) which one to use is to put it in the path? + +Another small unix lesson: Where under dos each program installs itself +into a nice directory +@example + + c:\DosProgram\* + +@end example + +under unix, installation is handled centrally. Executables go in +@file{/usr/bin} (or @file{/usr/local/bin}), and are always in your path. + + +@example + +> 4. make -C lily don't work. I get an error (see below). I get several +> object files in the ./lily/out directory (34 files: 17 *.dep, 16 *.o, +> and 1 *.hh): +> [...] +> include/engraver-group.hh:35: virtual memory exhausted +> make: *** [out/bar-grav.o] Error 1 +> bash-2.01$ + + +@end example + +Ok, so everything works now, there's only some error with one of the +source files. Lets see which one (and now the cc's now why they're +reading this :-) + +It looks like you've run out of memory. You should compile without +optimisation, gcc/egcs need a lot of memory for optimising. +Reconfigure without optimisation: +@example + + configure --disable-optimise + +@end example + +or edit @file{config.make}: +@example + + ## USER_CXXFLAGS = -g # -O no optimise! + USER_CXXFLAGS = -g + +@end example + +There are some other things to look at: how much RAM do you have +(please say something > 8Mb :-)? Although it might be an egcs bug, +you should have a look at the size of your swap file. +For an US version of windows, you should find it here: +@example + + /start/settings/control-panel/system/performance/virtual-memory + +@end example + +you see, amongst others, these entries: +@example + + paging file size for selected drive: + + space-available: xx + initial-size: xx + maximum-size: xx + + total paging file size for all drives + + currently allocated: xx + +@end example + +Try to set: +@example + + initial-size: 64 + maximum-size: 128 + +@end example + +Make sure that: +@itemize @bullet +@item maximum-size >= 128 Mb +@item urrently-allocated + space-available >= 128 Mb +@end itemize + + +@bye diff --git a/Documentation/programmer/regression-test.tely b/Documentation/programmer/regression-test.tely index f878b78586..3675d89ca7 100644 --- a/Documentation/programmer/regression-test.tely +++ b/Documentation/programmer/regression-test.tely @@ -129,12 +129,13 @@ The horizontal middle should not overlap with a staffline. @mudelafile{tie.ly} -When tieing notes with accidentals across a bar boundary, the -accidental must not be drawn on the note in the new bar. -Instead, the next note of the same pitch in this bar should always show the -accidental (even if it's natural). -Well, and slurring a accidentaled note to a natural one across bar -boundaries should be explicit... +When tieing notes with accidentals across a bar boundary, the accidental +must not be drawn on the note in the new bar. Instead, the next note of +the same pitch in this bar should always show the accidental (even if +it's natural). Slurring a accidentaled note to a natural one across bar +boundaries should be explicit. + +Pitches can be verified by printing them with the @code{NoteNames} context. @mudelafile{tie-accidental.ly} diff --git a/Documentation/topdocs/AUTHORS.texi b/Documentation/topdocs/AUTHORS.texi index 017ea1722b..3807c62d00 100644 --- a/Documentation/topdocs/AUTHORS.texi +++ b/Documentation/topdocs/AUTHORS.texi @@ -52,8 +52,9 @@ list is alphabetically ordered. @item @email{oliva@@dcc.unicamp.br, Alexandre Oliva}, @uref{http://sunsite.unicamp.br/~oliva/} testing -@item @email{pinard@@iro.umontreal.ca, Franc,ois Pinard}, +@item @email{pinard@@iro.umontreal.ca, Franc@,ois Pinard}, parts of Documentation/Vocab*, started internationalization stuff +@item @email{portnoy@ai.mit.edu,Stephen Peters} pdfTeX support @item @email{glenprideaux@@iname.com, Glen Prideaux}, minor bug fix to script used to generate doc++ documentation @item @email{Roy.Rankin@@alcatel.com.au, Roy R. Rankin}, diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely index b772f4b7a7..a7d0800949 100644 --- a/Documentation/user/refman.itely +++ b/Documentation/user/refman.itely @@ -183,7 +183,6 @@ alphabetic characters. These are all the keywords. \alternative \bar \breathe - \cadenza \chordmodifiers \chords \clef @@ -872,14 +871,6 @@ See section XREF-sec-repeats [FIXME]. -@example - \cadenza@keyindex{cadenza} @var{togglevalue} @code{;} -@end example - -Music expression that toggles the automatic generation of bar lines. -If @var{togglevalue} is 1, bar line generation is turned off. If -@var{togglevalue} is 0, a bar line is immediately printed and -automatic bar generation is turned on. @example @@ -954,7 +945,7 @@ clef: @mudela[] \score { \notes { - \cadenza 1; + \cadenzaOn %\property Voice.textStyle = typewriter \clef subbass; c'4-"\kern -5mm subbass" \clef bass; c'4^"\kern -2mm bass" @@ -975,7 +966,7 @@ clef: @mudela[] \score { \notes { - \cadenza 1; + \cadenzaOn \clef alto; c'4_"\kern -2mm alto" \clef mezzosoprano; c'4^"\kern -9mm mezzosoprano" \clef soprano; c'4_"\kern -6mm soprano" @@ -1294,7 +1285,7 @@ chords can be expressed in two different ways: @mudela[fragment,verbatim,center] \notes \context Staff { - \cadenza 1; + \cadenzaOn < { a b c' } { c' d' e' } > } diff --git a/TODO b/TODO index f21b67e5dc..23f829958f 100644 --- a/TODO +++ b/TODO @@ -11,9 +11,8 @@ Grep -i for TODO, FIXME and ugh/ugr/urg. .* TODO . * make this file understandable for 3rd parties. . * break align order from SCM list. -. * time description should be put into SCM -. * context in embedded SCM errors. - +. * \accepts -> \acceptedby +. * context in embedded SCM errors. . * eradicate all VIRTUAL_COPY_CONS () macros ; use indexed creation, eg. @@ -44,9 +43,6 @@ John . * bracket pdf hack . * Mondrup: -- I would like the possibility of forcing clef- and key- changes to be -printed _after_ the new bar line - - I would like an option to define the number of systems on which the score must be distributed. As it is now it seems that I may only influence that indirectly through the gourlay_maxmeasures property. diff --git a/VERSION b/VERSION index ddbc5b97da..1d120e2106 100644 --- a/VERSION +++ b/VERSION @@ -1,8 +1,8 @@ PACKAGE_NAME=LilyPond MAJOR_VERSION=1 MINOR_VERSION=3 -PATCH_LEVEL=4 -MY_PATCH_LEVEL=jcn1 +PATCH_LEVEL=5 +MY_PATCH_LEVEL= # use the above to send patches: MY_PATCH_LEVEL is always empty for a # released version. diff --git a/input/GNUmakefile b/input/GNUmakefile index 21ccccb13f..2814b8dfaa 100644 --- a/input/GNUmakefile +++ b/input/GNUmakefile @@ -4,7 +4,7 @@ depth = .. SUBDIRS=test bugs tutorial -examples=praeludium-fuga-E star-spangled-banner just-friends paddy +examples=praeludium-fuga-E star-spangled-banner paddy flexamples= LOCALSTEPMAKE_TEMPLATES=mutopia diff --git a/input/bugs/auto-staff-switch.ly b/input/bugs/auto-staff-switch.ly index 94bc3037a3..cd4e3f27e4 100644 --- a/input/bugs/auto-staff-switch.ly +++ b/input/bugs/auto-staff-switch.ly @@ -35,4 +35,4 @@ }} -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/bugs/p.ly b/input/bugs/p.ly index fb5acbf510..bf4bedc628 100644 --- a/input/bugs/p.ly +++ b/input/bugs/p.ly @@ -23,7 +23,7 @@ * organ staff... %} -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/denneboom.ly b/input/denneboom.ly index 7120bb9c99..4c00608404 100644 --- a/input/denneboom.ly +++ b/input/denneboom.ly @@ -7,7 +7,7 @@ copyright = "public domain"; \include "paper20.ly" -\version "1.2.0"; +\version "1.3.4"; oden = \lyrics{ O | diff --git a/input/example-3.ly b/input/example-3.ly index b9f4f6186b..86fc80ba98 100644 --- a/input/example-3.ly +++ b/input/example-3.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; one = \notes\relative c{ c'' d e f diff --git a/input/just-friends.ly b/input/just-friends.ly index 3b273123c7..f7e1ec8c2a 100644 --- a/input/just-friends.ly +++ b/input/just-friends.ly @@ -56,4 +56,4 @@ of a certain tune (Jazz, Real Book, for example), like } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/praeludium-fuga-E.ly b/input/praeludium-fuga-E.ly index ed568286ed..638a23de1f 100644 --- a/input/praeludium-fuga-E.ly +++ b/input/praeludium-fuga-E.ly @@ -23,7 +23,7 @@ * organ staff... %} -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/rhythm.ly b/input/rhythm.ly index cabd887437..607044a99b 100644 --- a/input/rhythm.ly +++ b/input/rhythm.ly @@ -7,7 +7,7 @@ TestedFeatures = "multiple meters, beaming, unsynced bars, userdefd engravers"; -\version "1.2.0"; +\version "1.3.4"; ritme = \notes\transpose c'' { \time 4/4; diff --git a/input/star-spangled-banner.ly b/input/star-spangled-banner.ly index 0cc8c8b8a6..14c789e621 100644 --- a/input/star-spangled-banner.ly +++ b/input/star-spangled-banner.ly @@ -175,4 +175,4 @@ handLyrics = \notes \context GrandStaff < } -\version "1.2.14"; +\version "1.3.4"; diff --git a/input/test/allfontstyle.ly b/input/test/allfontstyle.ly index aae8b05cd7..f463eefda3 100644 --- a/input/test/allfontstyle.ly +++ b/input/test/allfontstyle.ly @@ -3,7 +3,7 @@ \score { \notes \relative c'' \context Staff { - \property Staff.textEmptyDimension = "1" + \emptyText \repeat "semi" 2 { \time 4/4; c4^"cuivr\\'e"_\fermata } \alternative { { \property Voice.textStyle = "italic" d-4_"cantabile" } diff --git a/input/test/auto-beam-4-8.ly b/input/test/auto-beam-4-8.ly index c10e2464d1..5292a25354 100644 --- a/input/test/auto-beam-4-8.ly +++ b/input/test/auto-beam-4-8.ly @@ -17,7 +17,7 @@ | | | |--| x| x| x| x| x| %} - \property Voice.beamAutoEnd = "2/4" + \property Voice.beamAutoEnd = #(make-moment 2 4) c8 c c c16 c } diff --git a/input/test/auto-beam-override.ly b/input/test/auto-beam-override.ly index ad378a5837..ba6d5dcc4d 100644 --- a/input/test/auto-beam-override.ly +++ b/input/test/auto-beam-override.ly @@ -17,7 +17,7 @@ c8 c c c c16 c c c c c c c % from here on consider ending beam every 1/4 note - \property Voice.beamAutoEnd = "1/4" + \property Voice.beamAutoEnd = #(make-moment 1 4) c8 c c c % manually override autobeam with weird beaming c8 [c c] c @@ -25,7 +25,7 @@ c8 c c4 r8 c c c % no autobeaming - \property Voice.beamAuto = "0" + \property Voice.beamAuto = #f c8 c c c } \paper{ diff --git a/input/test/auto-staff-switch.ly b/input/test/auto-staff-switch.ly index 94bc3037a3..cd4e3f27e4 100644 --- a/input/test/auto-staff-switch.ly +++ b/input/test/auto-staff-switch.ly @@ -35,4 +35,4 @@ }} -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/banter-chords.ly b/input/test/banter-chords.ly index ee9a67b9ec..27d9d30bb8 100644 --- a/input/test/banter-chords.ly +++ b/input/test/banter-chords.ly @@ -1,4 +1,4 @@ -\version "1.3.2"; +\version "1.3.4"; \header{ enteredby = "jcn"; diff --git a/input/test/bar-number.ly b/input/test/bar-number.ly index aa8dd849eb..731be52469 100644 --- a/input/test/bar-number.ly +++ b/input/test/bar-number.ly @@ -2,7 +2,7 @@ c1 c1 c1 c1\break c1 c1 c1 c1\break - \property Score.currentBarNumber = "25" + \property Score.currentBarNumber = 25 c1 c1 c1 c1 } \paper{ \translator {\BarNumberingStaffContext }}} diff --git a/input/test/bar-scripts.ly b/input/test/bar-scripts.ly index e9d5510258..244941017d 100644 --- a/input/test/bar-scripts.ly +++ b/input/test/bar-scripts.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; onestaff = \context Staff = foo\notes { \property Staff.instr = instr diff --git a/input/test/beam-chord.ly b/input/test/beam-chord.ly index 7f4a6df29c..9632cff782 100644 --- a/input/test/beam-chord.ly +++ b/input/test/beam-chord.ly @@ -1,8 +1,8 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes\transpose c'{ - \property Score.beamquantisation = \none + \property Score.beamQuantisation = #'none [a'8 ] [c ] diff --git a/input/test/beam-cross-staff.ly b/input/test/beam-cross-staff.ly index 376b25c3c9..7b098fd15b 100644 --- a/input/test/beam-cross-staff.ly +++ b/input/test/beam-cross-staff.ly @@ -30,4 +30,4 @@ } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/beam-isknee.ly b/input/test/beam-isknee.ly index 7b2b32dece..979bff7762 100644 --- a/input/test/beam-isknee.ly +++ b/input/test/beam-isknee.ly @@ -21,4 +21,4 @@ } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/beam-pos.ly b/input/test/beam-pos.ly index de594f1faf..b111d5001e 100644 --- a/input/test/beam-pos.ly +++ b/input/test/beam-pos.ly @@ -1,8 +1,8 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes\transpose c''{ - \property Score.beamquantisation = 3 % TEST + \property Score.beamQuantisation = 'test [c8 c] [c c] [c c] [c c] [a' a'] [a' a'] [a' a'] [a' a'] diff --git a/input/test/beam-urg.ly b/input/test/beam-urg.ly index 681389210d..ba7bf68498 100644 --- a/input/test/beam-urg.ly +++ b/input/test/beam-urg.ly @@ -1,8 +1,8 @@ \score{ \notes\relative c''{ - \property Score.beamquantisation = \none - % \property Score.beamquantisation = \normal - % \property Score.beamquantisation = \traditional + \property Score.beamQuantisation = #'none + % \property Score.beamQuantisation = #'normal + % \property Score.beamQuantisation = #'traditional [g16 e f g] } \paper{ diff --git a/input/test/beams.ly b/input/test/beams.ly index edc36187da..ca5100b1ab 100644 --- a/input/test/beams.ly +++ b/input/test/beams.ly @@ -6,11 +6,11 @@ copyright = "PD"; TestedFeatures = "beams and beamflags"; } -\version "1.2.0"; +\version "1.3.4"; \score{ < -% \property Score.beamquantisation = \none +% \property Score.beamQuantisation = #'none \context GrandStaff < \notes\transpose c' { diff --git a/input/test/breathing-sign.ly b/input/test/breathing-sign.ly index 8d657fb789..1f44591a0f 100644 --- a/input/test/breathing-sign.ly +++ b/input/test/breathing-sign.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score { \notes \relative c' { diff --git a/input/test/broken.ly b/input/test/broken.ly index 32c214fafc..54afc678e5 100644 --- a/input/test/broken.ly +++ b/input/test/broken.ly @@ -5,7 +5,7 @@ TestedFeatures = "This file tests Feta embedded slurs" + "(Feta definitively is not an abbreviation of Font-En-TjA)"; } -\version "1.2.0"; +\version "1.3.4"; shortlong = \notes{ c4()c( c c | diff --git a/input/test/chord-inversion.ly b/input/test/chord-inversion.ly index c54281fa6d..5473e1f6e9 100644 --- a/input/test/chord-inversion.ly +++ b/input/test/chord-inversion.ly @@ -20,4 +20,4 @@ inversions = \notes\transpose c''\chords{ > } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/chord-table.ly b/input/test/chord-table.ly index 94df658308..c42e61bb12 100644 --- a/input/test/chord-table.ly +++ b/input/test/chord-table.ly @@ -41,4 +41,4 @@ tab = \notes\transpose c'''\chords{ } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/chords.ly b/input/test/chords.ly index cf6251d30d..d2ad6261cd 100644 --- a/input/test/chords.ly +++ b/input/test/chords.ly @@ -1,4 +1,4 @@ -\version "1.3.2"; +\version "1.3.4"; %{ Would this be acceptable/good enough/convenient for entry? diff --git a/input/test/clefs.ly b/input/test/clefs.ly index 09caa7c38e..5698f18caa 100644 --- a/input/test/clefs.ly +++ b/input/test/clefs.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score { \notes{ diff --git a/input/test/coda-kludge.ly b/input/test/coda-kludge.ly index 2dab828183..80920b1240 100644 --- a/input/test/coda-kludge.ly +++ b/input/test/coda-kludge.ly @@ -31,7 +31,7 @@ Hi, \context Staff \notes\relative c''{ c c c c % coda-klugde: let volta span only one bar - \property Staff.voltaSpannerDuration = "1" + \property Staff.voltaSpannerDuration = #(make-moment 1 1) \repeat semi 5 { d d d d } \alternative { { e e e e f f f f } { g g g g } } diff --git a/input/test/collisions.ly b/input/test/collisions.ly index 50954aa893..ddfb6fd32a 100644 --- a/input/test/collisions.ly +++ b/input/test/collisions.ly @@ -5,7 +5,7 @@ enteredby = "HWN,JCN"; copyright = "public domain"; Tested = "test the Collision resolution "; } -\version "1.2.0"; +\version "1.3.4"; twovoice = \context Staff \notes < \context Voice=i { \stemdown c4 d e f g2~ g4 a [c8 d e f] c2| } diff --git a/input/test/defaultbars.ly b/input/test/defaultbars.ly index 146b0e1c0a..3012e1f52e 100644 --- a/input/test/defaultbars.ly +++ b/input/test/defaultbars.ly @@ -1,9 +1,9 @@ -\version "1.2.0"; +\version "1.3.4"; \score { \notes { - \property Staff.barAlways = "1" + \property Staff.barAlways = ##t \property Staff.defaultBarType = ":|:" c4 c4 c4 c4 } } diff --git a/input/test/dotted-slur.ly b/input/test/dotted-slur.ly index a305601958..663debb068 100644 --- a/input/test/dotted-slur.ly +++ b/input/test/dotted-slur.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes{ diff --git a/input/test/extender.ly b/input/test/extender.ly index c51eff9938..594b0ed0e8 100644 --- a/input/test/extender.ly +++ b/input/test/extender.ly @@ -5,4 +5,4 @@ > } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/extra-staff.ly b/input/test/extra-staff.ly index 0959de5016..68dfaf3125 100644 --- a/input/test/extra-staff.ly +++ b/input/test/extra-staff.ly @@ -42,4 +42,4 @@ extra-staff.ly: } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/font-body.ly b/input/test/font-body.ly index cb0adb26cc..7e1a3dd1ff 100644 --- a/input/test/font-body.ly +++ b/input/test/font-body.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; FontBody= \notes\transpose c''{ \bar "|:"; diff --git a/input/test/font.ly b/input/test/font.ly index 45b940cc19..929ce40fc5 100644 --- a/input/test/font.ly +++ b/input/test/font.ly @@ -7,7 +7,7 @@ description = "This file tests the Feta music font"; % "(Feta definitively is not an abbreviation of Font-En-TjA)"; } -\version "1.2.0"; +\version "1.3.4"; \include "font-body.ly" \score{ diff --git a/input/test/font16.ly b/input/test/font16.ly index 6fd60c468d..753f2cf8e3 100644 --- a/input/test/font16.ly +++ b/input/test/font16.ly @@ -7,7 +7,7 @@ description = "This file tests the Feta music font"; % "(Feta definitively is not an abbreviation of Font-En-TjA)"; } -\version "1.2.0"; +\version "1.3.4"; \include "paper16.ly" \include "font-body.ly" diff --git a/input/test/font20.ly b/input/test/font20.ly index dd6fc96016..92ba14edc2 100644 --- a/input/test/font20.ly +++ b/input/test/font20.ly @@ -17,5 +17,5 @@ TestedFeatures = gourlay_maxmeasures =5.; } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/force-hshift.fly b/input/test/force-hshift.fly index 06c92d55fe..c4849588c6 100644 --- a/input/test/force-hshift.fly +++ b/input/test/force-hshift.fly @@ -12,7 +12,7 @@ %\stemdown \shifton \property Voice.verticalDirection=-1 \property Voice.horizontalNoteShift=1 - \property Voice.forceHorizontalShift = "-0.1" + \property Voice.forceHorizontalShift = #-0.1 } > diff --git a/input/test/gmsusd.ly b/input/test/gmsusd.ly index 9ba7522e20..9d1f86f647 100644 --- a/input/test/gmsusd.ly +++ b/input/test/gmsusd.ly @@ -3,7 +3,7 @@ % perhaps the current modifier approach is too simplistic -\version "1.2.0"; +\version "1.3.4"; gmsus=\notes\relative c \chords{ g1 diff --git a/input/test/gourlay.ly b/input/test/gourlay.ly index c90b692b30..ae04bf9f9e 100644 --- a/input/test/gourlay.ly +++ b/input/test/gourlay.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; %{ diff --git a/input/test/hara-kiri-switch.ly b/input/test/hara-kiri-switch.ly index e15164a2d8..ecbf1ba2f0 100644 --- a/input/test/hara-kiri-switch.ly +++ b/input/test/hara-kiri-switch.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; voiceOne = \notes \relative c'' { a1 a a diff --git a/input/test/hara-kiri.ly b/input/test/hara-kiri.ly index 46e7a59981..e7a968c567 100644 --- a/input/test/hara-kiri.ly +++ b/input/test/hara-kiri.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; toeter_i = \notes\relative c <{ \property Staff.instrument = "Toeters" diff --git a/input/test/hshift.fly b/input/test/hshift.fly index b6ea8f09c4..a6ea6b9de6 100644 --- a/input/test/hshift.fly +++ b/input/test/hshift.fly @@ -1,10 +1,10 @@ \context Staff < - \context Voice =VA {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = "0" g'' } - \context Voice =VB {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = "1" e } - \context Voice =VC {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = "2" c } - \context Voice =VD {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = "3" a } - \context Voice =VE {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = "4" f } + \context Voice =VA {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = 0 g'' } + \context Voice =VB {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = 1 e } + \context Voice =VC {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = 2 c } + \context Voice =VD {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = 3 a } + \context Voice =VE {\property Voice.verticalDirection=1 \property Voice.horizontalNoteShift = 4 f } > diff --git a/input/test/hyphen.ly b/input/test/hyphen.ly index 8706a90c29..c0e9d5a096 100644 --- a/input/test/hyphen.ly +++ b/input/test/hyphen.ly @@ -5,7 +5,7 @@ > } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/incipit.ly b/input/test/incipit.ly index 796def730f..482bc50876 100644 --- a/input/test/incipit.ly +++ b/input/test/incipit.ly @@ -6,7 +6,7 @@ /Mats B %} -\version "1.2.0"; +\version "1.3.4"; incipit = \notes\relative c'{ diff --git a/input/test/keys.ly b/input/test/keys.ly index 3e9b232f38..ff84c866d0 100644 --- a/input/test/keys.ly +++ b/input/test/keys.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; %{ test key itemv breaking diff --git a/input/test/keys2.ly b/input/test/keys2.ly index e5db2a612f..168dcd3032 100644 --- a/input/test/keys2.ly +++ b/input/test/keys2.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; blah = \notes { diff --git a/input/test/knee.ly b/input/test/knee.ly index 961296f9e1..140006c1e8 100644 --- a/input/test/knee.ly +++ b/input/test/knee.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes\relative c'{ [c16 \stemdown c'' \stemboth c,, d] diff --git a/input/test/lyric-combine.ly b/input/test/lyric-combine.ly index ce903d6292..19a347082d 100644 --- a/input/test/lyric-combine.ly +++ b/input/test/lyric-combine.ly @@ -7,13 +7,13 @@ enteredby = "HWN, chords by Johan Vromans"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; m =\notes \relative c'' { - \property Staff.automaticMelismata = "1" + \property Staff.automaticMelismata = ##t \autoBeamOff g4 r8 \times 2/3 { g'8( f )e } r8 \grace { [d16 c b] } e4 - \property Staff.textEmptyDimension = "1" + \emptyText d8.^"melisma" \melisma c16 \melismaEnd b } diff --git a/input/test/mark.ly b/input/test/mark.ly index 37d7e4befb..7cc6b75cc2 100644 --- a/input/test/mark.ly +++ b/input/test/mark.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; global = \notes { s1 | \mark "A"; diff --git a/input/test/memory.ly b/input/test/memory.ly index c2b8660e17..5ac6035362 100644 --- a/input/test/memory.ly +++ b/input/test/memory.ly @@ -11,5 +11,5 @@ bla = \notes { > \paper { Gourlay_maxmeaures = 2.; } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/multi-measure-rest.ly b/input/test/multi-measure-rest.ly index 696b9bad5b..57b51f116a 100644 --- a/input/test/multi-measure-rest.ly +++ b/input/test/multi-measure-rest.ly @@ -1,7 +1,10 @@ \score { \notes { \time 3/4; \key cis; R2.*5 R2. R2.*5 } \paper { - \translator { \ScoreContext skipBars = 1; } + \translator { + \ScoreContext + skipBars = ##t + } linewidth = -1.; } } diff --git a/input/test/multi-rest.ly b/input/test/multi-rest.ly index e151d7dfec..ababf37326 100644 --- a/input/test/multi-rest.ly +++ b/input/test/multi-rest.ly @@ -1,10 +1,10 @@ -\version "1.2.0"; +\version "1.3.4"; voice_one = \notes\transpose c''{ \stemup R1 * 2 | f'4-. r r2 | R1 * 3 | f'4-. r r2 | R1 * 3 | es'4-. r r2 | r1 | - \property Score.skipBars = 1 + \property Score.skipBars = ##t6 g4-. r r2 | g4-. r r2 | R1 * 5 | r2 r4 g4-. | @@ -15,7 +15,7 @@ voice_two = \notes R1 * 2 | f'4-. r r2 | R1 * 3 | f'4-. r r2 | R1 * 3 | es'4-. r r2 | r1 | - \property Score.skipBars = 1 + \property Score.skipBars = ##t6 g4-. r r2 | g4-. r r2 | R1 * 5 | r2 r4 g4-. | diff --git a/input/test/no-stem-extend.fly b/input/test/no-stem-extend.fly index 35ef31eac4..9b0cd4570a 100644 --- a/input/test/no-stem-extend.fly +++ b/input/test/no-stem-extend.fly @@ -2,12 +2,12 @@ \context Staff < \context Voice = "a" { f2 f8 g a b - \property Voice.noStemExtend = 1 + \property Voice.noStemExtend = ##t f2 f8 g a b } \context Voice = "b" { c''2 c8 b a g - \property Voice.noStemExtend = 1 + \property Voice.noStemExtend = ##t c2 c8 b a g } > diff --git a/input/test/noteheadstyle.ly b/input/test/noteheadstyle.ly index 55306fc661..f772a5c03d 100644 --- a/input/test/noteheadstyle.ly +++ b/input/test/noteheadstyle.ly @@ -26,4 +26,4 @@ c4 c2 c8 c16 c16 c1 } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/notemode-chords.ly b/input/test/notemode-chords.ly index 5652aa1f0d..03f2f6f866 100644 --- a/input/test/notemode-chords.ly +++ b/input/test/notemode-chords.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes \transpose c''{ diff --git a/input/test/orchestalpart.ly b/input/test/orchestalpart.ly index 76916287b6..e36598c3d9 100644 --- a/input/test/orchestalpart.ly +++ b/input/test/orchestalpart.ly @@ -1,7 +1,7 @@ \score { - \notes { c1 c1 \property Score.skipBars = 1 c1 \break R1*8 c1 c1 c1 c1 + \notes { c1 c1 \property Score.skipBars = ##t c1 \break R1*8 c1 c1 c1 c1 } \paper { diff --git a/input/test/orchestscore.ly b/input/test/orchestscore.ly index a38f7c42d6..f4ccc6fe1e 100644 --- a/input/test/orchestscore.ly +++ b/input/test/orchestscore.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; m = \notes \relative c''{ c1 | c2 c | c c | c c | c c | c c | c c | c c | diff --git a/input/test/ossia.ly b/input/test/ossia.ly index 9e5f6efbe4..7809c6578b 100644 --- a/input/test/ossia.ly +++ b/input/test/ossia.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \score { diff --git a/input/test/perform-grace.fly b/input/test/perform-grace.fly index c24ded8cb8..1927d3f3a4 100644 --- a/input/test/perform-grace.fly +++ b/input/test/perform-grace.fly @@ -1,5 +1,5 @@ \context Voice=VoiceOne -\property Voice.graceFraction = "1/4" +\property Voice.graceFraction = #(make-moment 1 4) \grace c8 d4 d d d d -\property Voice.graceFraction = "1/2" +\property Voice.graceFraction = #(make-moment 1 2) \grace { e16 f e f } d4 d d d d diff --git a/input/test/rest-collision.ly b/input/test/rest-collision.ly index 7506a60f5a..c55e003f74 100644 --- a/input/test/rest-collision.ly +++ b/input/test/rest-collision.ly @@ -38,4 +38,4 @@ restsII = \context Staff \notes { } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/rests.fly b/input/test/rests.fly index d01cc5bcd5..b1a6fb6419 100644 --- a/input/test/rests.fly +++ b/input/test/rests.fly @@ -1,5 +1,5 @@ r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 \property Staff.restStyle = "mensural" -\property Staff.textEmptyDimension = 1 +\emptyText r\longa^"restStyle = \"mensural\"" r\breve r1 r2 r4 r8 r16 r32 r64 r128 r128 diff --git a/input/test/scripts.ly b/input/test/scripts.ly index 294e7195d0..fee2ddbd59 100644 --- a/input/test/scripts.ly +++ b/input/test/scripts.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; blah = \notes{ \transpose c'' { diff --git a/input/test/sizes.fly b/input/test/sizes.fly index 00923366a4..78258d2dc6 100644 --- a/input/test/sizes.fly +++ b/input/test/sizes.fly @@ -2,9 +2,9 @@ c'4 c4 -\property Voice.fontsize= "-2" +\property Voice.fontsize= -2 b16 * 1 / 2 ( -\property Voice.fontsize= "0" ) +\property Voice.fontsize= 0 ) g4 *31/32 a a g2 diff --git a/input/test/sleur.ly b/input/test/sleur.ly index 2631ebcd07..184240a7bf 100644 --- a/input/test/sleur.ly +++ b/input/test/sleur.ly @@ -5,7 +5,7 @@ TestedFeatures = "This file tests Feta embedded slurs" + "(Feta definitively is not an abbreviation of Font-En-TjA)"; } -\version "1.2.0"; +\version "1.3.4"; shortlong = \notes{ c4()c( c c | diff --git a/input/test/slur-cross-staff.ly b/input/test/slur-cross-staff.ly index e53a579f89..5304af6ab5 100644 --- a/input/test/slur-cross-staff.ly +++ b/input/test/slur-cross-staff.ly @@ -36,4 +36,4 @@ } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/slur-damping.ly b/input/test/slur-damping.ly index b1e61feb52..0ed40df697 100644 --- a/input/test/slur-damping.ly +++ b/input/test/slur-damping.ly @@ -1,5 +1,5 @@ % test damping -\version "1.2.0"; +\version "1.3.4"; \score{ \notes\relative c'{ diff --git a/input/test/slurs.ly b/input/test/slurs.ly index 9005941ffd..fc3a2cd7da 100644 --- a/input/test/slurs.ly +++ b/input/test/slurs.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes\transpose c'{ diff --git a/input/test/spacing-2.ly b/input/test/spacing-2.ly index 6caa244a7b..34034f0831 100644 --- a/input/test/spacing-2.ly +++ b/input/test/spacing-2.ly @@ -33,4 +33,4 @@ source = "Petits Preludes et Fugues. Urtext. Editions Henry Lemoine, Paris."; } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/spacing.ly b/input/test/spacing.ly index 92e3edccc9..305c913de1 100644 --- a/input/test/spacing.ly +++ b/input/test/spacing.ly @@ -6,7 +6,7 @@ copyright = "public domain"; TestedFeatures = "This file tests various spacings"; } -\version "1.2.0"; +\version "1.3.4"; multipart = \notes \relative c'{ \context StaffGroup < diff --git a/input/test/span-bars.ly b/input/test/span-bars.ly index 463e330e79..b0edad672d 100644 --- a/input/test/span-bars.ly +++ b/input/test/span-bars.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; nt = \notes { c1 \break c1 c1 } stuff = \notes \relative c'' < \context Staff = stone { \nt } diff --git a/input/test/staff-margin.ly b/input/test/staff-margin.ly index f3dc5ba654..5dac9ee680 100644 --- a/input/test/staff-margin.ly +++ b/input/test/staff-margin.ly @@ -1,6 +1,6 @@ -\version "1.2.0"; +\version "1.3.4"; \score { diff --git a/input/test/staff-side-slur.ly b/input/test/staff-side-slur.ly index c0a5872e54..89d7a4b456 100644 --- a/input/test/staff-side-slur.ly +++ b/input/test/staff-side-slur.ly @@ -18,4 +18,4 @@ } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/staff-size.ly b/input/test/staff-size.ly index 0e07435b25..e983315c6b 100644 --- a/input/test/staff-size.ly +++ b/input/test/staff-size.ly @@ -1,17 +1,17 @@ \score { \notes \relative c' < \context Voice { - \property Staff.staffLineLeading = "4" - \property Staff.fontSize = "-1" - \property Voice.fontSize = "-1" + \property Staff.staffLineLeading = 4 + \property Staff.fontSize = #-1 + \property Voice.fontSize = #-1 - \property Voice . dynamicDirection = \up \stemdown + \property Voice . dynamicDirectionection = \up \stemdown %\key gis; c8 d [e f g a] b c \ff } -\context Staff = VB { \property Voice . dynamicDirection = \down c,,4 \ff c c c } +\context Staff = VB { \property Voice . dynamicDirectionection = \down c,,4 \ff c c c } > \paper { linewidth = -1.; } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/stem-tremolo.ly b/input/test/stem-tremolo.ly index d6b96591a4..053b2acbb5 100644 --- a/input/test/stem-tremolo.ly +++ b/input/test/stem-tremolo.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; \score{ \notes \transpose c'''{ \stemup diff --git a/input/test/stem.ly b/input/test/stem.ly index 90607e9914..5322eefbe8 100644 --- a/input/test/stem.ly +++ b/input/test/stem.ly @@ -8,7 +8,7 @@ of beams"; } -\version "1.2.0"; +\version "1.3.4"; beamintervals = \notes{ \time 7/4; diff --git a/input/test/tchaikovsky.ly b/input/test/tchaikovsky.ly index f8d02ff067..4ccd618a2a 100644 --- a/input/test/tchaikovsky.ly +++ b/input/test/tchaikovsky.ly @@ -7,7 +7,7 @@ enteredby = "Maarten Storm"; instrument= "Violoncello"; } -\version "1.2.0"; +\version "1.3.4"; % this is an example of extreme dynamics diff --git a/input/test/test-lyrics.ly b/input/test/test-lyrics.ly index d59b8c4db9..d26b7c9876 100644 --- a/input/test/test-lyrics.ly +++ b/input/test/test-lyrics.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; $somewhat_long = \lyrics{ \property Lyrics . textStyle = "roman" diff --git a/input/test/thumb.ly b/input/test/thumb.ly index 4b9fb6f029..c2bac9dbe5 100644 --- a/input/test/thumb.ly +++ b/input/test/thumb.ly @@ -7,7 +7,7 @@ % the thumb-script is used in cello music to indicate a note that should % be played with your thumb. -\version "1.2.0"; +\version "1.3.4"; \score { \notes \relative c'' { [ <)b_\thumb b'-3> diff --git a/input/test/tie-accidental.ly b/input/test/tie-accidental.ly index 15722ba403..162e23d8cf 100644 --- a/input/test/tie-accidental.ly +++ b/input/test/tie-accidental.ly @@ -1,12 +1,12 @@ -\score { \notes - \relative cis' { - -\time 4/4; -gis'2 gis ~ | +thenotes = \notes \relative cis' { \time 4/4; gis'2 gis ~ | gis gis4 gis | g2 gis ~ | gis g4 gis | g2 gis( | -)g gis4 gis | -}} +)g gis4 gis | } + +\score { < \context Staff \thenotes + \context NoteNames \thenotes + > +} diff --git a/input/test/timing.fly b/input/test/timing.fly new file mode 100644 index 0000000000..e73d89a6cb --- /dev/null +++ b/input/test/timing.fly @@ -0,0 +1,16 @@ + + +% \property Score. measurePosition = #(make-moment -1 4) +\partial 4; +c''4 c4 c4 c2 c1 +\cadenzaOn [c8 d e f] [g a b c b c b c] +\cadenzaOff +c4 c4 c4 c4 +\property Score. measureLength = #(make-moment 5 4) + +c1 c4 +c1 c4 +c4 c4 +\property Score. measurePosition = #(make-moment -3 8) +b8 b b +c4 c1 diff --git a/input/test/title.ly b/input/test/title.ly index dd7e3cd734..d33d3f0e9f 100644 --- a/input/test/title.ly +++ b/input/test/title.ly @@ -10,7 +10,7 @@ source = "urtext"; instrument= "Instrument"; } -\version "1.2.0"; +\version "1.3.4"; \score{ \notes diff --git a/input/test/transposition.ly b/input/test/transposition.ly index 7c6a2f060c..f363613967 100644 --- a/input/test/transposition.ly +++ b/input/test/transposition.ly @@ -22,7 +22,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; vOne = \notes \relative c''{ \clef"violin"; diff --git a/input/test/tup.ly b/input/test/tup.ly index 29b4c3c879..ec251312cb 100644 --- a/input/test/tup.ly +++ b/input/test/tup.ly @@ -8,4 +8,4 @@ } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/test/vertical-align.ly b/input/test/vertical-align.ly index 46a8b98d60..c57f946448 100644 --- a/input/test/vertical-align.ly +++ b/input/test/vertical-align.ly @@ -1,11 +1,11 @@ -\version "1.2.0"; +\version "1.3.4"; \score { \notes < \context GrandStaff < { - \property GrandStaff . maxVerticalAlign = "60." - \property GrandStaff . minVerticalAlign = "35." + \property GrandStaff . maxVerticalAlign = #60.0 + \property GrandStaff . minVerticalAlign = #35.0 c'1 \break c'''''1 } diff --git a/input/test/vertical-text.ly b/input/test/vertical-text.ly index 038ee69e55..87fe13892d 100644 --- a/input/test/vertical-text.ly +++ b/input/test/vertical-text.ly @@ -15,4 +15,4 @@ } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/input/twinkle-pop.ly b/input/twinkle-pop.ly index 9df29ef6de..bacc0ab2b4 100644 --- a/input/twinkle-pop.ly +++ b/input/twinkle-pop.ly @@ -7,7 +7,7 @@ enteredby = "HWN, chords by Johan Vromans"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; melodie = \notes\relative c'' { \clef "violin"; diff --git a/input/twinkle.ly b/input/twinkle.ly index 847368ebeb..a59b7d52ea 100644 --- a/input/twinkle.ly +++ b/input/twinkle.ly @@ -20,7 +20,7 @@ Tested Features: lyrics, interleaving lyrics and staffs, repeats, auto beaming, adding lyrics to notes, hyphens %} -\version "1.2.0"; +\version "1.3.4"; melody = \notes \relative c'' { \clef violin; diff --git a/lily/auto-beam-engraver.cc b/lily/auto-beam-engraver.cc index fd519c340c..294a1d2858 100644 --- a/lily/auto-beam-engraver.cc +++ b/lily/auto-beam-engraver.cc @@ -54,9 +54,10 @@ Auto_beam_engraver::consider_end_and_begin (Moment test_mom) if (!timer_l_) return; - Time_description const *time = &timer_l_->time_; - int num = time->whole_per_measure_ / time->one_beat_; - int den = time->one_beat_.den_i (); + int num; + int den; + timer_l_->get_time_signature (&num, &den); + String time_str = String ("time") + to_str (num) + "_" + to_str (den); String type_str; @@ -104,7 +105,7 @@ Auto_beam_engraver::consider_end_and_begin (Moment test_mom) /* first guess: end beam at end of beat */ - Moment end_mom = time->one_beat_; + Moment end_mom = timer_l_->one_beat_; /* second guess: property generic time exception @@ -160,7 +161,7 @@ Auto_beam_engraver::consider_end_and_begin (Moment test_mom) Rational r; if (end_mom) - r = time->whole_in_measure_.mod_rat (end_mom); + r = timer_l_->measure_position ().mod_rat (end_mom); else r = Moment (1); @@ -175,7 +176,7 @@ Auto_beam_engraver::consider_end_and_begin (Moment test_mom) return; if (begin_mom) - r = time->whole_in_measure_.mod_rat (begin_mom); + r = timer_l_->measure_position ().mod_rat (begin_mom); if (!stem_l_arr_p_ && (!begin_mom || !r)) begin_beam (); } @@ -189,7 +190,7 @@ Auto_beam_engraver::begin_beam () assert (!grouping_p_); grouping_p_ = new Beaming_info_list; beam_start_moment_ = now_mom (); - beam_start_location_ = timer_l_->time_.whole_in_measure_; + beam_start_location_ = timer_l_->measure_position (); } Beam* diff --git a/lily/bar-engraver.cc b/lily/bar-engraver.cc index e5a61176a6..e8b29882f8 100644 --- a/lily/bar-engraver.cc +++ b/lily/bar-engraver.cc @@ -32,7 +32,7 @@ Bar_engraver::create_bar () if (!bar_p_) { bar_p_ = new Staff_bar; - bar_p_->set_elt_property ("break-priority", gh_int2scm (0)); + bar_p_->set_elt_property ("break-aligned", SCM_BOOL_T); // urg: "" != empty... SCM default_type = get_property ("defaultBarType", 0); diff --git a/lily/bar-number-engraver.cc b/lily/bar-number-engraver.cc index e7df04ae89..c8a0aa01bb 100644 --- a/lily/bar-number-engraver.cc +++ b/lily/bar-number-engraver.cc @@ -8,7 +8,7 @@ #include "bar-number-engraver.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "timing-engraver.hh" #include "engraver-group-engraver.hh" #include "text-item.hh" @@ -25,14 +25,14 @@ void Bar_number_engraver::do_process_requests () { Translator *tr = daddy_grav_l ()->get_simple_translator ("Timing_engraver"); - Timing_translator *timer = dynamic_cast(tr); - Time_description *time = &timer->time_; + Timing_translator *time = dynamic_cast(tr); - if (!time->whole_in_measure_ && !time->cadenza_b_ && now_mom () > Moment (0)) + // todo include (&&!time->cadenza_b_ ) + if (!time->measure_position () && now_mom () > Moment (0)) { create_items (0); - text_p_->text_str_ = to_str (time->bars_i_); + text_p_->text_str_ = to_str (time->bars_i ()); } } diff --git a/lily/base-span-bar-engraver.cc b/lily/base-span-bar-engraver.cc index 24ba35b14b..5b3ea4437e 100644 --- a/lily/base-span-bar-engraver.cc +++ b/lily/base-span-bar-engraver.cc @@ -16,7 +16,6 @@ Base_span_bar_engraver::Base_span_bar_engraver() { spanbar_p_ =0; use_priority_b_ = true; - break_priority_i_ = 0; } Span_bar* @@ -59,8 +58,7 @@ Base_span_bar_engraver::acknowledge_element (Score_element_info i) if (use_priority_b_) { - spanbar_p_->set_elt_property ("break-priority", - gh_int2scm (break_priority_i_)); + spanbar_p_->set_elt_property ("break-aligned", SCM_BOOL_T); } else { diff --git a/lily/beam-engraver.cc b/lily/beam-engraver.cc index 8f0f52cf1c..e98ab84552 100644 --- a/lily/beam-engraver.cc +++ b/lily/beam-engraver.cc @@ -13,7 +13,7 @@ #include "beam.hh" #include "stem.hh" #include "warn.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "beaming.hh" #include "score-engraver.hh" @@ -93,7 +93,7 @@ Beam_engraver::do_process_requests () Translator * t = daddy_grav_l ()->get_simple_translator ("Timing_engraver"); Timing_engraver *timer = dynamic_cast (t); - beam_start_location_ = (t) ? timer->time_.whole_in_measure_ : Moment (0); + beam_start_location_ = (t) ? timer->measure_position () : Moment (0); beam_start_mom_ = now_mom(); beam_info_p_ = new Beaming_info_list; diff --git a/lily/break-align-engraver.cc b/lily/break-align-engraver.cc new file mode 100644 index 0000000000..20909e5b03 --- /dev/null +++ b/lily/break-align-engraver.cc @@ -0,0 +1,122 @@ +/* + break-align-engraver.cc -- implement Break_align_engraver + + source file of the GNU LilyPond music typesetter + + (c) 1999 Han-Wen Nienhuys + + */ +#include "engraver.hh" +#include "protected-scm.hh" +#include "break-align-item.hh" +#include "axis-group-item.hh" + +class Break_align_engraver : public Engraver +{ + Break_align_item *align_l_; + Protected_scm column_alist_; +protected: + virtual void acknowledge_element(Score_element_info i); + virtual void do_pre_move_processing (); + void add_column (SCM); + +public: + VIRTUAL_COPY_CONS(Translator); + Break_align_engraver (); +}; + + + +ADD_THIS_TRANSLATOR(Break_align_engraver); + +void +Break_align_engraver::add_column (SCM smob) +{ + Score_element * e = SMOB_TO_TYPE (Score_element, smob); + align_l_->add_element (e); + typeset_element (e); +} + +void +Break_align_engraver::do_pre_move_processing () +{ + SCM order = get_property ("breakAlignOrder", 0); + for (; gh_pair_p (order); order = gh_cdr (order)) + { + SCM p = scm_assoc ( gh_car (order), column_alist_); + if (gh_pair_p (p)) + { + add_column (gh_cdr (p)); + column_alist_ = scm_assoc_remove_x (column_alist_, gh_car (order)); + } + } + + for (SCM p = column_alist_; gh_pair_p (p); p = gh_cdr (p)) + { + SCM pair = gh_car (p); + add_column (gh_cdr (pair)); + } + + + column_alist_ = SCM_EOL; + + if (align_l_) + { + typeset_element (align_l_); + align_l_ = 0; + } +} + + +Break_align_engraver::Break_align_engraver () +{ + column_alist_ = SCM_EOL; + align_l_ =0; +} + +void +Break_align_engraver::acknowledge_element (Score_element_info inf) +{ + if (Item * item_l = dynamic_cast (inf.elem_l_)) + { + if (item_l->empty_b (X_AXIS) || item_l->parent_l (X_AXIS)) + return; + + SCM bp=item_l->remove_elt_property ("breakable"); + bool breakable = (gh_boolean_p (bp) && gh_scm2bool (bp)); + if (!breakable) + return ; + + SCM al = item_l->remove_elt_property ("break-aligned"); + if (!gh_boolean_p (al ) || !gh_scm2bool (al)) + return ; + + + if (!align_l_) + { + align_l_ = new Break_align_item; + align_l_->set_elt_property ("breakable", SCM_BOOL_T); + announce_element (Score_element_info (align_l_,0)); + } + + SCM name = ly_str02scm (inf.elem_l_->name()); + SCM s = scm_assoc (name, column_alist_); + + Axis_group_item * group = 0; + if (s != SCM_BOOL_F) + { + Score_element *e = SMOB_TO_TYPE(Score_element, gh_cdr(s)); + group = dynamic_cast (e); + } + else + { + group = new Axis_group_item; + group->set_axes (X_AXIS,X_AXIS); + group->set_elt_property ("origin", name); + group->set_parent (align_l_, Y_AXIS); + announce_element (Score_element_info (group, 0)); + column_alist_ = scm_assoc_set_x (column_alist_, name, group->self_scm_); + } + group->add_element (item_l); + } +} diff --git a/lily/break-align-item.cc b/lily/break-align-item.cc index 2718fdcd94..dd6ab6490d 100644 --- a/lily/break-align-item.cc +++ b/lily/break-align-item.cc @@ -145,42 +145,3 @@ Break_align_item::Break_align_item () stacking_dir_ = RIGHT; set_axis (X_AXIS); } - -void -Break_align_item::add_breakable_item (Item *it) -{ - SCM pr = it->remove_elt_property ("break-priority"); - - if (pr == SCM_UNDEFINED) - return; - - int priority = gh_scm2int (pr); - - Score_element * column_l = get_elt_by_priority (priority); - Axis_group_item * hg=0; - if (column_l) - { - hg = dynamic_cast (column_l); - } - else - { - hg = new Axis_group_item; - hg->set_axes (X_AXIS,X_AXIS); - - /* - this is quite ridiculous, but we do this anyway, to ensure that no - warning bells about missing Y refpoints go off later on. - */ - hg->set_parent (this, Y_AXIS); - hg->set_elt_property ("origin", ly_str02scm (it->name ())); - - pscore_l_->typeset_element (hg); - add_element_priority (hg, priority); - - if (priority == 0) - center_l_ = hg; - } - - hg->add_element (it); -} - diff --git a/lily/chord-tremolo-engraver.cc b/lily/chord-tremolo-engraver.cc index 8888625421..567c31ec6a 100644 --- a/lily/chord-tremolo-engraver.cc +++ b/lily/chord-tremolo-engraver.cc @@ -8,7 +8,7 @@ */ #include "duration-convert.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "chord-tremolo-engraver.hh" #include "stem.hh" #include "beam.hh" diff --git a/lily/clef-engraver.cc b/lily/clef-engraver.cc index deaac87548..3d33c6cc7e 100644 --- a/lily/clef-engraver.cc +++ b/lily/clef-engraver.cc @@ -17,7 +17,7 @@ #include "clef-item.hh" #include "debug.hh" #include "command-request.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "note-head.hh" #include "key-item.hh" #include "local-key-item.hh" @@ -175,6 +175,7 @@ Clef_engraver::create_clef() if (!clef_p_) { Clef_item *c= new Clef_item; + c->set_elt_property ("break-aligned", SCM_BOOL_T); announce_element (Score_element_info (c, clef_req_l_)); clef_p_ = c; } diff --git a/lily/command-request.cc b/lily/command-request.cc index 35f0cdac4c..c9f75ead85 100644 --- a/lily/command-request.cc +++ b/lily/command-request.cc @@ -10,27 +10,6 @@ #include "debug.hh" #include "musical-request.hh" -void -Cadenza_req::do_print () const -{ -#ifndef NPRINT - DEBUG_OUT << (int)on_b_; -#endif -} - -bool -Cadenza_req::do_equal_b (Request const *r) const -{ - Cadenza_req const*cad = dynamic_cast (r); - return cad && cad->on_b_ == on_b_; -} - -Cadenza_req::Cadenza_req (bool b) -{ - on_b_ =b; -} - - bool Bar_req::do_equal_b (Request const *r) const @@ -52,18 +31,7 @@ Bar_req::Bar_req (String s) type_str_ = s; } -Partial_measure_req::Partial_measure_req (Moment m) -{ - length_mom_ =m; -} -bool -Partial_measure_req::do_equal_b (Request const* r) const -{ - Partial_measure_req const*p = dynamic_cast (r); - - return p&& p->length_mom_ == length_mom_; -} bool Barcheck_req::do_equal_b (Request const *r) const @@ -85,11 +53,6 @@ Clef_change_req::Clef_change_req (String s) clef_str_ = s; } -void -Partial_measure_req::do_print () const -{ - DEBUG_OUT << length_mom_; -} void Time_signature_change_req::do_print () const diff --git a/lily/global-translator.cc b/lily/global-translator.cc index 997b34e482..9728a4c0f2 100644 --- a/lily/global-translator.cc +++ b/lily/global-translator.cc @@ -12,13 +12,12 @@ Global_translator::Global_translator() { - last_mom_ = 0; } void Global_translator::add_moment_to_process (Moment m) { - if (m > last_mom_) + if (m > final_mom_) return; for (int i=0; i < extra_mom_pq_.size(); i++) @@ -45,6 +44,7 @@ Global_translator::moments_left_i() const void Global_translator::prepare (Moment m) { + prev_mom_ = now_mom_; now_mom_ = m; } diff --git a/lily/include/align-element.hh b/lily/include/align-element.hh index 4f5434d55d..ff8dddf6f6 100644 --- a/lily/include/align-element.hh +++ b/lily/include/align-element.hh @@ -24,6 +24,11 @@ document usage of this. */ class Align_element : public virtual Axis_group_element { + + /* + ugh. JUNKME + + */ Hash_table priority_i_hash_; public: Interval threshold_interval_ ; diff --git a/lily/include/base-span-bar-engraver.hh b/lily/include/base-span-bar-engraver.hh index 87a24103c3..b4caf237d0 100644 --- a/lily/include/base-span-bar-engraver.hh +++ b/lily/include/base-span-bar-engraver.hh @@ -37,7 +37,6 @@ protected: horizontal alignment priority, otherwise, hang the spanbar on the acknowledged bar. */ bool use_priority_b_; - int break_priority_i_; virtual void acknowledge_element (Score_element_info); virtual void do_pre_move_processing(); diff --git a/lily/include/break-align-item.hh b/lily/include/break-align-item.hh index 120f14920d..f5b8378a3b 100644 --- a/lily/include/break-align-item.hh +++ b/lily/include/break-align-item.hh @@ -19,10 +19,7 @@ class Break_align_item : public Axis_align_item { protected: virtual void do_pre_processing(); public: - void add_breakable_item (Item *it); - Break_align_item (); VIRTUAL_COPY_CONS(Score_element); - }; #endif // BREAK_ALIGN_ITEM_HH diff --git a/lily/include/command-request.hh b/lily/include/command-request.hh index ee64d1fe27..9b24ac4b35 100644 --- a/lily/include/command-request.hh +++ b/lily/include/command-request.hh @@ -55,16 +55,6 @@ protected: bool do_equal_b (Request const *) const; }; -class Partial_measure_req : public Timing_req { -public: - Moment length_mom_; - - Partial_measure_req (Moment); -protected: - VIRTUAL_COPY_CONS(Music); - virtual void do_print () const; - bool do_equal_b (Request const *) const; -}; /** todo: allow C time_signature @@ -81,18 +71,6 @@ protected: VIRTUAL_COPY_CONS(Music); }; -/// toggle Cadenza mode -class Cadenza_req : public Timing_req { -public: - /// turn on? - bool on_b_; - Cadenza_req (bool); -protected: - virtual void do_print () const; - - bool do_equal_b (Request const *) const; - VIRTUAL_COPY_CONS(Music); -}; /// check if we're at start of a measure. class Barcheck_req : public Timing_req { diff --git a/lily/include/debug.hh b/lily/include/debug.hh index ef6f87e0dd..63df6b6afc 100644 --- a/lily/include/debug.hh +++ b/lily/include/debug.hh @@ -13,9 +13,6 @@ #include "flower-debug.hh" #include "warn.hh" -void error_t (const String& s, Time_description const & t_tdes); -void error_t (String const &s, const Moment &when); - // progress extern ostream *mlog; diff --git a/lily/include/directional-spanner.hh b/lily/include/directional-spanner.hh index 93d226fdaa..e268b20b92 100644 --- a/lily/include/directional-spanner.hh +++ b/lily/include/directional-spanner.hh @@ -12,14 +12,14 @@ /** a spanner which can be pointing "up" or "down". - JUNKME? + JUNKME */ class Directional_spanner : public Spanner, public Directional_element { public: - /// offset of "center" relative to left-column/0-pos of staff virtual Offset center() const; virtual Direction get_default_dir() const; + VIRTUAL_COPY_CONS(Score_element); protected: virtual void do_pre_processing(); }; diff --git a/lily/include/global-translator.hh b/lily/include/global-translator.hh index 00f8ed8204..fbb8f8d37e 100644 --- a/lily/include/global-translator.hh +++ b/lily/include/global-translator.hh @@ -22,7 +22,8 @@ class Global_translator : public virtual Translator_group{ PQueue extra_mom_pq_; public: VIRTUAL_COPY_CONS(Translator); - Moment last_mom_; + Moment final_mom_; + Moment prev_mom_; Moment now_mom_; Global_translator(); diff --git a/lily/include/staff-info.hh b/lily/include/staff-info.hh index 3eaa1a4e48..5484f4fb97 100644 --- a/lily/include/staff-info.hh +++ b/lily/include/staff-info.hh @@ -17,7 +17,6 @@ JUNKME. */ struct Staff_info { - Time_description const *time_C_; Score_column *musical_l_; Score_column *command_l_; diff --git a/lily/include/time-description.hh b/lily/include/time-description.hh deleted file mode 100644 index 29c9ddcbd5..0000000000 --- a/lily/include/time-description.hh +++ /dev/null @@ -1,63 +0,0 @@ -/* - moment.hh -- part of GNU LilyPond - - (c) 1996--1999 Han-Wen Nienhuys -*/ - -#ifndef tdes_HH -#define tdes_HH - -#include "moment.hh" -#include "lily-proto.hh" -#include "array.hh" - -/// full info on where we are -struct Time_description { - Moment when_; - - /// if true, no bars needed, no reduction of whole_in_measure - bool cadenza_b_; - - /// current measure info - Moment whole_per_measure_; - - /* - ugh: naming! junk whole_ prefixes. - */ - /// where am i - Moment whole_in_measure_; - - /// how long is one beat? - Moment one_beat_; - - /// idem - int bars_i_; - - void set_cadenza (bool); - Moment when_mom () const { return when_; } - void OK() const; - Time_description(); - void add (Moment dt); - bool allow_time_signature_change_b(); - String str() const; - void print() const; - void setpartial (Moment p); - String try_set_partial_str (Moment) const; - Moment barleft() const; - Moment next_bar_moment() const; - void set_time_signature (int,int); - static int compare (const Time_description&, const Time_description&); -}; - -#include "compare.hh" - - -INSTANTIATE_COMPARE(Time_description&,Time_description::compare); - - -void -process_timing_reqs (Time_description &time_, - Rhythmic_grouping *default_grouping, - Array const& timing_req_l_arr); -#endif // Time_description_HH - diff --git a/lily/include/time-signature-engraver.hh b/lily/include/time-signature-engraver.hh index 9567489243..39770351c7 100644 --- a/lily/include/time-signature-engraver.hh +++ b/lily/include/time-signature-engraver.hh @@ -9,8 +9,8 @@ #ifndef TIME_SIG_ENGRAVER_HH #define TIME_SIG_ENGRAVER_HH + #include "engraver.hh" -#include "time-description.hh" /** generate time_signatures. @@ -24,6 +24,5 @@ public: Time_signature * time_signature_p_; Time_signature_engraver(); - }; #endif // TIME_SIG_ENGRAVER_HH diff --git a/lily/include/timing-engraver.hh b/lily/include/timing-engraver.hh index 99621579ec..bcbbfd6e51 100644 --- a/lily/include/timing-engraver.hh +++ b/lily/include/timing-engraver.hh @@ -21,7 +21,6 @@ class Timing_engraver : public Timing_translator, public Engraver Bar_req * bar_req_l_; protected: - virtual void fill_staff_info (Staff_info&); virtual bool do_try_music (Music * ); virtual void do_post_move_processing (); public: diff --git a/lily/include/timing-translator.hh b/lily/include/timing-translator.hh index ad2517ee22..afe7d20316 100644 --- a/lily/include/timing-translator.hh +++ b/lily/include/timing-translator.hh @@ -10,8 +10,9 @@ #ifndef TIMING_TRANSLATOR_HH #define TIMING_TRANSLATOR_HH +#include "moment.hh" #include "translator.hh" -#include "time-description.hh" + #include "parray.hh" class Timing_translator : public virtual Translator @@ -19,17 +20,26 @@ class Timing_translator : public virtual Translator public: VIRTUAL_COPY_CONS(Translator); Time_signature_change_req * time_signature_req_l () const; - - Time_description time_; - + Timing_translator (); Link_array timing_req_l_arr_; protected: - virtual void do_print () const; virtual void do_creation_processing (); virtual bool do_try_music (Music *req_l); virtual void do_process_requests(); virtual void do_pre_move_processing(); virtual void do_post_move_processing(); +public: + /// how long is one beat? + Moment one_beat_; + + /// JUNKME + int bars_i () const; + + Moment measure_position () const; + Moment measure_length () const; + void set_time_signature (int, int); + void get_time_signature (int *, int*) const; + }; #endif // TIMING_TRANSLATOR_HH diff --git a/lily/key-engraver.cc b/lily/key-engraver.cc index c7b1675fa1..f69786091b 100644 --- a/lily/key-engraver.cc +++ b/lily/key-engraver.cc @@ -13,7 +13,7 @@ #include "musical-request.hh" #include "local-key-item.hh" #include "bar.hh" -#include "time-description.hh" +#include "timing-translator.hh" Key_engraver::Key_engraver () { @@ -33,7 +33,8 @@ Key_engraver::create_key () if (!item_p_) { item_p_ = new Key_item; - item_p_->set_elt_property ("break-priority", gh_int2scm(-1)); // ugh + item_p_->set_elt_property ("break-aligned", SCM_BOOL_T); // ugh + item_p_->multi_octave_b_ = key_.multi_octave_b_; announce_element (Score_element_info (item_p_,keyreq_l_)); diff --git a/lily/local-key-engraver.cc b/lily/local-key-engraver.cc index 85c857f369..32d793d6d8 100644 --- a/lily/local-key-engraver.cc +++ b/lily/local-key-engraver.cc @@ -13,7 +13,7 @@ #include "key-item.hh" #include "tie.hh" #include "note-head.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "engraver-group-engraver.hh" #include "grace-align-item.hh" @@ -153,8 +153,10 @@ Local_key_engraver::acknowledge_element (Score_element_info info) void Local_key_engraver::do_process_requests() { - Time_description const * time_C_ = get_staff_info().time_C_; - if (time_C_ && !time_C_->whole_in_measure_) + Translator * tr = daddy_grav_l()->get_simple_translator ("Timing_engraver"); // ugh + Timing_translator * time_C_ = dynamic_cast (tr); + + if (time_C_ && !time_C_->measure_position ()) { SCM n = get_property ("noResetKey",0); bool no_res = gh_boolean_p (n) && gh_scm2bool (n); diff --git a/lily/multi-measure-rest-engraver.cc b/lily/multi-measure-rest-engraver.cc index e4e115b4dc..cd6efa3172 100644 --- a/lily/multi-measure-rest-engraver.cc +++ b/lily/multi-measure-rest-engraver.cc @@ -10,7 +10,8 @@ #include "multi-measure-rest.hh" #include "multi-measure-rest-engraver.hh" #include "score-column.hh" -#include "time-description.hh" +#include "engraver-group-engraver.hh" +#include "timing-translator.hh" #include "bar.hh" @@ -71,13 +72,16 @@ Multi_measure_rest_engraver::do_process_requests () { if (multi_measure_req_l_ && !mmrest_p_) { - Time_description const *time = get_staff_info().time_C_; + + Translator * tr = daddy_grav_l()->get_simple_translator ("Timing_engraver"); // ugh + Timing_translator * time = dynamic_cast (tr); + mmrest_p_ = new Multi_measure_rest; if(dynamic_cast (multi_measure_req_l_)) mmrest_p_->set_elt_property ("alt-symbol", ly_str02scm ("scripts-repeatsign")); announce_element (Score_element_info (mmrest_p_, multi_measure_req_l_)); - start_measure_i_ = time->bars_i_; + start_measure_i_ = time->bars_i (); } } @@ -85,9 +89,12 @@ void Multi_measure_rest_engraver::do_pre_move_processing () { Moment now (now_mom ()); - Time_description const *time = get_staff_info().time_C_; + Translator * tr = daddy_grav_l()->get_simple_translator ("Timing_engraver"); // ugh + Timing_translator * time = dynamic_cast (tr); + + if (mmrest_p_ && (now >= rest_moments_[START]) - && !time->whole_in_measure_ + && !time->measure_position () && (mmrest_p_->column_arr_.size () >= 2)) { typeset_element (mmrest_p_); @@ -105,13 +112,15 @@ Multi_measure_rest_engraver::do_pre_move_processing () void Multi_measure_rest_engraver::do_post_move_processing () { - Time_description const *time = get_staff_info().time_C_; + Translator * tr = daddy_grav_l()->get_simple_translator ("Timing_engraver"); // ugh + Timing_translator * time = dynamic_cast (tr); + Moment now (now_mom ()); - if (mmrest_p_ && !time->whole_in_measure_) + if (mmrest_p_ && !time->measure_position ()) { lastrest_p_ = mmrest_p_; - lastrest_p_->measures_i_ = time->bars_i_ - start_measure_i_; + lastrest_p_->measures_i_ = time->bars_i () - start_measure_i_; mmrest_p_ = 0; } diff --git a/lily/musical-pitch.cc b/lily/musical-pitch.cc index fedf7adcb0..409c71d92b 100644 --- a/lily/musical-pitch.cc +++ b/lily/musical-pitch.cc @@ -107,11 +107,8 @@ Musical_pitch::str () const while (o--) s += to_str (','); } -#if 0 - if (octave_i_) - s += String ((octave_i_> 0)? "^": "_") + to_str (octave_i_); -#endif - + + return s; } diff --git a/lily/my-lily-lexer.cc b/lily/my-lily-lexer.cc index de4ea2373a..0ec8964888 100644 --- a/lily/my-lily-lexer.cc +++ b/lily/my-lily-lexer.cc @@ -31,7 +31,6 @@ static Keyword_ent the_key_tab[]={ {"alternative", ALTERNATIVE}, {"bar", BAR}, {"breathe", BREATHE}, - {"cadenza", CADENZA}, {"chordmodifiers", CHORDMODIFIERS}, {"chords", CHORDS}, {"clef", CLEF}, @@ -75,7 +74,6 @@ static Keyword_ent the_key_tab[]={ {"translator", TRANSLATOR}, {"transpose", TRANSPOSE}, {"type", TYPE}, - {"version", VERSION}, {0,0} }; diff --git a/lily/note-name-engraver.cc b/lily/note-name-engraver.cc new file mode 100644 index 0000000000..46c7ab52d6 --- /dev/null +++ b/lily/note-name-engraver.cc @@ -0,0 +1,67 @@ +/* + note-name-engraver.cc -- implement Note_name_engraver + + source file of the GNU LilyPond music typesetter + + (c) 1999 Han-Wen Nienhuys + + */ + +#include "engraver.hh" +#include "musical-request.hh" +#include "text-item.hh" + +class Note_name_engraver : public Engraver +{ +public: + VIRTUAL_COPY_CONS(Translator); + Link_array req_l_arr_; + Link_array texts_; + virtual bool do_try_music (Music*m); + virtual void do_process_requests (); + virtual void do_pre_move_processing (); +}; + +bool +Note_name_engraver::do_try_music (Music *m) +{ + if (Note_req *r = dynamic_cast (m)) + { + req_l_arr_.push (r); + return true; + } + return false; +} + + +void +Note_name_engraver::do_process_requests () +{ + String s ; + for (int i=0; i < req_l_arr_.size (); i++) + { + if (i) + s += " "; + s += req_l_arr_[i]->pitch_.str (); + } + if (s.length_i()) + { + Text_item * t = new Text_item; + t->text_str_ = s; + announce_element (Score_element_info (t, req_l_arr_[0])); + texts_.push (t); + } +} + +void +Note_name_engraver::do_pre_move_processing () +{ + for (int i=0; i < texts_.size (); i++) + { + typeset_element (texts_[i]); + } + texts_.clear() ; + req_l_arr_.clear (); +} + +ADD_THIS_TRANSLATOR(Note_name_engraver); diff --git a/lily/parser.yy b/lily/parser.yy index 6c02b4967e..a76260f9dd 100644 --- a/lily/parser.yy +++ b/lily/parser.yy @@ -45,7 +45,7 @@ #include "auto-change-music.hh" // mmm -Mudela_version oldest_version ("1.1.52"); +Mudela_version oldest_version ("1.3.4"); @@ -184,7 +184,6 @@ yylex (YYSTYPE *s, void * v_l) %token TRANSPOSE %token TYPE %token CONTEXT -%token VERSION /* escaped */ %token E_CHAR E_EXCLAMATION E_SMALLER E_BIGGER @@ -920,6 +919,15 @@ command_element: $1-> set_spot (THIS->here_input ()); ((Simultaneous_music*)$$) ->add_music ($1);//ugh } + | PARTIAL duration_length ';' { + Translation_property * p = new Translation_property; + p->var_str_ = "measurePosition"; + p->value_ = (new Moment (-$2->length_mom ()))->smobify_self (); + delete $2; + Context_specced_music * sp = new Context_specced_music (p); + $$ =sp ; + sp-> translator_type_str_ = "Score"; + } ; command_req: @@ -1014,13 +1022,6 @@ verbose_command_req: | tempo_request { $$ = $1; } - | CADENZA unsigned { - $$ = new Cadenza_req ($2); - } - | PARTIAL duration_length { - $$ = new Partial_measure_req ($2->length_mom ()); - delete $2; - } | CLEF STRING { $$ = new Clef_change_req (ly_scm2string ($2)); diff --git a/lily/repeat-engraver.cc b/lily/repeat-engraver.cc index 3be9fb02e2..b389d92ee5 100644 --- a/lily/repeat-engraver.cc +++ b/lily/repeat-engraver.cc @@ -12,10 +12,10 @@ #include "musical-request.hh" #include "multi-measure-rest.hh" #include "command-request.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "engraver-group-engraver.hh" #include "repeated-music.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "volta-spanner.hh" #include "note-column.hh" #include "paper-def.hh" diff --git a/lily/score-element.cc b/lily/score-element.cc index 85254c4278..fd619447f0 100644 --- a/lily/score-element.cc +++ b/lily/score-element.cc @@ -122,6 +122,9 @@ Score_element::remove_elt_property (String key) return s; } +/* + UGH. assoc vs. assq + */ void Score_element::set_elt_property (String k, SCM v) { diff --git a/lily/score-priority-engraver.cc b/lily/score-priority-engraver.cc deleted file mode 100644 index a182c7a7d5..0000000000 --- a/lily/score-priority-engraver.cc +++ /dev/null @@ -1,65 +0,0 @@ -/* - score-align-reg.cc -- implement Score_priority_engraver - - source file of the GNU LilyPond music typesetter - - (c) 1997--1999 Han-Wen Nienhuys -*/ - -#include "dimension-cache.hh" -#include "axis-group-item.hh" -#include "score-priority-engraver.hh" -#include "item.hh" -#include "dictionary-iter.hh" -#include "break-align-item.hh" - - -Score_priority_engraver::Score_priority_engraver() -{ - halign_p_ = 0; -} - -void -Score_priority_engraver::do_pre_move_processing() -{ - for (int i=0; i < column_p_arr_.size ();i++) - typeset_element (column_p_arr_[i]); - column_p_arr_.clear (); - - if (halign_p_) - { - typeset_element (halign_p_); - halign_p_ =0; - } -} - -/* - TODO: move this logic into Break_align_item - */ -void -Score_priority_engraver::acknowledge_element (Score_element_info inf) -{ - if (Item * item_l = dynamic_cast (inf.elem_l_)) - { - if (item_l->empty_b (X_AXIS) || item_l->parent_l (X_AXIS)) - return; - - SCM bp=item_l->remove_elt_property ("breakable"); - bool breakable = (bp != SCM_UNDEFINED); - if (!breakable) - return ; - - - if (!halign_p_) - { - halign_p_ = new Break_align_item; - halign_p_->set_elt_property ("breakable", SCM_BOOL_T); - announce_element (Score_element_info (halign_p_,0)); - } - - halign_p_->add_breakable_item (item_l); - } -} - -ADD_THIS_TRANSLATOR(Score_priority_engraver); - diff --git a/lily/score.cc b/lily/score.cc index b517950721..cc73e09c1c 100644 --- a/lily/score.cc +++ b/lily/score.cc @@ -57,7 +57,7 @@ Score::run_translator (Music_output_def *odef_l) return ; } *mlog << '\n' << _("Interpreting music...") << flush; - trans_p->last_mom_ = music_p_->length_mom (); + trans_p->final_mom_ = music_p_->length_mom (); Music_iterator * iter = Music_iterator::static_get_iterator_p (music_p_); diff --git a/lily/span-score-bar-engraver.cc b/lily/span-score-bar-engraver.cc index 1c6a21541c..770aa4c4c5 100644 --- a/lily/span-score-bar-engraver.cc +++ b/lily/span-score-bar-engraver.cc @@ -17,8 +17,7 @@ Span_score_bar_engraver::get_span_bar_p () const { Span_bar*s = new Span_bar; s->type_str_ = "scorebar"; - s->set_elt_property ("break-priority", - gh_int2scm (-4)); + s->set_elt_property ("break-aligned",SCM_BOOL_T); return s; } @@ -27,7 +26,6 @@ Span_score_bar_engraver::get_span_bar_p () const Span_score_bar_engraver::Span_score_bar_engraver () { use_priority_b_ = true; - break_priority_i_ = -4; } Span_bar* diff --git a/lily/staff-info.cc b/lily/staff-info.cc index a527bc3c18..da993f9d95 100644 --- a/lily/staff-info.cc +++ b/lily/staff-info.cc @@ -13,7 +13,6 @@ Staff_info::Staff_info() { - time_C_ = 0; command_l_ =0; musical_l_ =0; } diff --git a/lily/staff-margin-engraver.cc b/lily/staff-margin-engraver.cc index 13c9c7f9e6..44dfb2df24 100644 --- a/lily/staff-margin-engraver.cc +++ b/lily/staff-margin-engraver.cc @@ -8,7 +8,7 @@ #include "staff-margin-engraver.hh" #include "bar.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "text-item.hh" #include "staff-side.hh" diff --git a/lily/time-description.cc b/lily/time-description.cc index 7bff5347e2..2874444da4 100644 --- a/lily/time-description.cc +++ b/lily/time-description.cc @@ -1,129 +1,11 @@ /* - time-description.cc -- implement Time_description + timing-translator.cc -- implement Timing_translator source file of the GNU LilyPond music typesetter (c) 1997--1999 Han-Wen Nienhuys */ -#include "time-description.hh" +#include "timing-translator.hh" +#include "translator-group.hh" #include "debug.hh" - -String -Time_description::str () const -{ - String s ("Time_description { "); - if (cadenza_b_) - s += String ("(") + _("cadenza") + ")"; - s += "at "; - s += when_.str (); - s +="\ntime_signature " + (whole_per_measure_/one_beat_).str () +":" + - (Moment (Moment (1)/one_beat_)).str (); - s += "\nposition " + to_str (bars_i_) + ":"+ whole_in_measure_.str () +"\n}\n"; - return s; -} - -void -Time_description::print() const -{ -#ifndef NPRINT - DEBUG_OUT << str (); -#endif -} - -void -Time_description::OK() const -{ -#ifndef NDEBUG - if (!cadenza_b_) - assert (whole_in_measure_ < whole_per_measure_); - assert (Moment (0) <= whole_in_measure_); - assert (one_beat_); -#endif -} - -void -Time_description::set_cadenza (bool b) -{ - if (cadenza_b_ && !b) - { - if (whole_in_measure_) - { - bars_i_ ++; // should do? - whole_in_measure_ = 0; - } - } - cadenza_b_ = b ; -} - -Time_description::Time_description() -{ - whole_per_measure_ = 1; - whole_in_measure_ =0; - one_beat_ = Moment (1,4); - when_ = 0; - bars_i_ = 1; // musician start counting at 1 - cadenza_b_ = false; -} - -void -Time_description::add (Moment dt) -{ - assert (dt >= Moment (0)); - when_ += dt; - whole_in_measure_ += dt; - - while (!cadenza_b_ && whole_in_measure_ >= whole_per_measure_) - { - whole_in_measure_ -= whole_per_measure_; - bars_i_ ++; - } -} - -void -Time_description::set_time_signature (int l, int o) -{ - assert (o); - one_beat_ = Moment (1)/Moment (o); - whole_per_measure_ = Moment (l) * one_beat_; -} - -bool -Time_description::allow_time_signature_change_b() -{ - return!(whole_in_measure_); -} - -/** - retrieve error messages. - @return - error messages if not possible, "" if possible - */ -String -Time_description::try_set_partial_str (Moment p) const -{ - if (p whole_per_measure_) - return (_ ("partial measure too large")); - return ""; -} - -void -Time_description::setpartial (Moment p) -{ - whole_in_measure_ = whole_per_measure_ - p; -} - -Moment -Time_description::barleft() const -{ - assert (!cadenza_b_); - return whole_per_measure_-whole_in_measure_; -} - -Moment -Time_description::next_bar_moment() const -{ - return when_ + barleft(); -} diff --git a/lily/time-signature-engraver.cc b/lily/time-signature-engraver.cc index e30d1619e2..bba35fe2b1 100644 --- a/lily/time-signature-engraver.cc +++ b/lily/time-signature-engraver.cc @@ -39,9 +39,9 @@ Time_signature_engraver::do_process_requests() args.push (req->beats_i_); args.push (req->one_beat_i_); - time_signature_p_ = new Time_signature (); + time_signature_p_ = new Time_signature; time_signature_p_->args_ = args; - time_signature_p_->set_elt_property ("break-priority", gh_int2scm (1)); // 1 + time_signature_p_->set_elt_property ("break-aligned", SCM_BOOL_T); } @@ -54,7 +54,6 @@ Time_signature_engraver::do_pre_move_processing() { if (time_signature_p_) { - typeset_element (time_signature_p_); time_signature_p_ =0; } diff --git a/lily/timing-engraver.cc b/lily/timing-engraver.cc index 29ee1d6d8c..ac2373da6a 100644 --- a/lily/timing-engraver.cc +++ b/lily/timing-engraver.cc @@ -12,11 +12,6 @@ #include "score-element-info.hh" #include "multi-measure-rest.hh" -void -Timing_engraver::fill_staff_info (Staff_info &inf) -{ - inf.time_C_ = &time_; -} ADD_THIS_TRANSLATOR(Timing_engraver); @@ -57,7 +52,8 @@ Timing_engraver::which_bar () if (!gh_boolean_p (nonauto) && gh_scm2bool (nonauto)) { SCM always = get_property ("barAlways", 0); - if (!time_.whole_in_measure_ || gh_boolean_p (always) && gh_scm2bool (always)) + if (!measure_position () + || (gh_boolean_p (always) && gh_scm2bool (always))) { SCM def=get_property ("defaultBarType" ,0); return (gh_string_p (def))? ly_scm2string (def) : ""; diff --git a/lily/timing-translator.cc b/lily/timing-translator.cc index 03479ed5b8..4e4ef89a6b 100644 --- a/lily/timing-translator.cc +++ b/lily/timing-translator.cc @@ -1,11 +1,13 @@ /* timing-translator.cc -- implement Timing_translator + source file of the GNU LilyPond music typesetter (c) 1997--1999 Han-Wen Nienhuys */ +#include "debug.hh" #include "timing-translator.hh" #include "command-request.hh" #include "translator-group.hh" @@ -58,48 +60,24 @@ Timing_translator::do_process_requests() { int b_i= m_l->beats_i_; int o_i = m_l->one_beat_i_; - if (! time_.allow_time_signature_change_b()) - tr_l->warning (_ ("time signature change not allowed here")); - else - { - time_.set_time_signature (b_i, o_i); - } - } - else if (Partial_measure_req *pm = dynamic_cast (tr_l)) - { - Moment m = pm->length_mom_; - String error = time_.try_set_partial_str (m); - if (error.length_i ()) - { - tr_l->warning (error); - } - else - time_.setpartial (m); + set_time_signature (b_i, o_i); } else if (dynamic_cast (tr_l)) { - if (time_.whole_in_measure_) + if (measure_position ()) { tr_l ->warning (_f ("barcheck failed at: %s", - time_.whole_in_measure_.str ())); + measure_position ().str ())); + // resync + daddy_trans_l_->set_property("measurePosition", + (new Moment)->smobify_self ()); + - time_.whole_in_measure_ = 0; // resync } } - else if (Cadenza_req *cr = dynamic_cast (tr_l)) - { - time_.set_cadenza (cr->on_b_); - } } - Translator_group * tr=0; - SCM barn = get_property ("currentBarNumber", &tr); - if (gh_number_p(barn)) - { - time_.bars_i_ = gh_scm2int (barn); - tr->set_property ("currentBarNumber", SCM_UNDEFINED); - } } @@ -121,8 +99,19 @@ Timing_translator::do_pre_move_processing() bool allbars = !(gh_boolean_p (sb)&&gh_scm2bool (sb)); // urg: multi bar rests: should always process whole of first bar? - if (!time_.cadenza_b_ && allbars) - global_l->add_moment_to_process (time_.next_bar_moment ()); + SCM tim = get_property ("timing", 0); + bool timb = gh_boolean_p (tim) && gh_scm2bool ( tim); + + + if (timb && allbars) + { + Moment barleft = (measure_length () - measure_position ()); + + if (barleft < Moment (0)) + barleft = 0; + + global_l->add_moment_to_process (now_mom () + barleft); + } } @@ -131,21 +120,128 @@ ADD_THIS_TRANSLATOR(Timing_translator); void Timing_translator::do_creation_processing() { - time_.when_ = now_mom (); + daddy_trans_l_->set_property ("timing" , SCM_BOOL_T); + daddy_trans_l_->set_property ("currentBarNumber" , gh_int2scm (1)); + daddy_trans_l_->set_property("measurePosition", + (new Moment)->smobify_self()); + daddy_trans_l_->set_property("measureLength", + (new Moment (1))->smobify_self()); + } +Moment +Timing_translator::measure_length () const +{ + SCM l = get_property("measureLength",0); + if (SMOB_IS_TYPE_B(Moment, l)) + return *SMOB_TO_TYPE (Moment, l); + else + return Moment (1); +} + + void -Timing_translator::do_post_move_processing() +Timing_translator::get_time_signature (int *n, int *d) const { - time_.add (now_mom () - time_.when_); + *n = measure_length () / one_beat_; + *d = one_beat_.den_i (); +} +void +Timing_translator::set_time_signature (int l, int o) +{ + one_beat_ = Moment (1)/Moment (o); + Moment len = Moment (l) * one_beat_; + daddy_trans_l_->set_property ("measureLength", + (new Moment (len))->smobify_self ()); +} + +Timing_translator::Timing_translator() +{ + one_beat_ = Moment( 1,4); +} + + +Moment +Timing_translator::measure_position () const +{ + SCM sm = get_property ("measurePosition",0); + + Moment m =0; + if (SMOB_IS_TYPE_B (Moment, sm)) + { + m = *SMOB_TO_TYPE (Moment, sm); + while (m < Moment (0)) + m += measure_length (); + } + + return m; } void -Timing_translator::do_print () const +Timing_translator::do_post_move_processing() +{ + Translator *t = this; + Global_translator *global_l =0; + do + { + t = t->daddy_trans_l_ ; + global_l = dynamic_cast (t); + } + while (!global_l); + + Moment dt = global_l->now_mom_ - global_l -> prev_mom_; + if (dt < Moment (0)) + { + programming_error ("Moving backwards in time"); + dt = 0; + } + + if (!dt) + return; + + Moment * measposp =0; + + SCM s = get_property ("measurePosition", 0); + if (SMOB_IS_TYPE_B (Moment, s)) + { + measposp = SMOB_TO_TYPE (Moment,s); + } + else + { + measposp = new Moment; + daddy_trans_l_->set_property ("measurePosition", measposp->smobify_self ()); + } + + *measposp += dt; + // don't need to set_property + + Translator_group * tr =daddy_trans_l_; + SCM barn = get_property ("currentBarNumber", &tr); + int b = 0; + if (gh_number_p(barn)) + { + b = gh_scm2int (barn); + } + + SCM cad = get_property ("timing", 0); + bool c= gh_boolean_p (cad ) && gh_scm2bool (cad); + + Moment len = measure_length (); + while (c && *measposp >= len) + { + *measposp -= len; + b ++; + } + + tr->set_property ("currentBarNumber", gh_int2scm (b)); +} + + + +int +Timing_translator::bars_i () const { -#ifndef NPRINT - time_.print (); -#endif + return gh_scm2int (get_property ("currentBarNumber", 0)); } diff --git a/lily/warn.cc b/lily/warn.cc index 532d2e3fb8..3623178380 100644 --- a/lily/warn.cc +++ b/lily/warn.cc @@ -10,7 +10,7 @@ #include "debug.hh" #include "my-lily-lexer.hh" #include "moment.hh" -#include "time-description.hh" +#include "timing-translator.hh" #include "source-file.hh" #include "source.hh" #include "main.hh" @@ -20,18 +20,3 @@ ostream &warnout (cerr); ostream *mlog (&cerr); - -void -error_t (String const & s, Moment const & r) -{ - String t_mom = r.trunc_rat ().str () + (r - r.trunc_rat ()).str (); - String e=s+ " (t = " + t_mom + ")"; - error (e); -} - -void -error_t (String const & s, Time_description const &t_tdes) -{ - String e=s+ " (at t=" + to_str (t_tdes.bars_i_) + ": " + (t_tdes.whole_in_measure_).str () + ")\n"; - error (e); -} diff --git a/ly/auto-beam-settings.ly b/ly/auto-beam-settings.ly index c3f20c4886..50044c786e 100644 --- a/ly/auto-beam-settings.ly +++ b/ly/auto-beam-settings.ly @@ -18,6 +18,32 @@ % end beams with 16th notes each 1/4 note % end beams with 32th notes each 1/8 note + +%{ + +UGH UGH. + +Fixme: should use an alist + +autoBeamSettings = (list + (cons (list (make-moment MEASURE) TIME-SIGNATURE) (make-moment INTERVAL) + .. + + ) + + + +%} + + + + + + + + + + time3_2beamAutoEnd = #(make-moment 1 2) %time3_2beamAutoEnd_16 = #(make-moment 1 4) time3_2beamAutoEnd_16 = #(make-moment 1 4) diff --git a/ly/book-fragment.ly b/ly/book-fragment.ly index 811ee7e894..ed54d15b10 100644 --- a/ly/book-fragment.ly +++ b/ly/book-fragment.ly @@ -1,6 +1,6 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly" diff --git a/ly/book-init.ly b/ly/book-init.ly index 22e1e0dce0..8c75bf5d8c 100644 --- a/ly/book-init.ly +++ b/ly/book-init.ly @@ -1,6 +1,6 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly"; diff --git a/ly/center-fragment.ly b/ly/center-fragment.ly index 8afe9fb6d5..94c7377708 100644 --- a/ly/center-fragment.ly +++ b/ly/center-fragment.ly @@ -1,7 +1,7 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly" diff --git a/ly/center.ly b/ly/center.ly index 96010a1fb2..6bc0ab2825 100644 --- a/ly/center.ly +++ b/ly/center.ly @@ -1,6 +1,6 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly" diff --git a/ly/engraver.ly b/ly/engraver.ly index cd6f98cf44..8fec27817a 100644 --- a/ly/engraver.ly +++ b/ly/engraver.ly @@ -309,7 +309,16 @@ ScoreContext = \translator { \consists "Timing_engraver"; \consists "Span_score_bar_engraver"; - \consists "Score_priority_engraver"; +% \consists "Score_priority_engraver"; + \consists "Break_align_engraver"; + breakAlignOrder = #'( + "Span_bar" + "Breathing_sign" + "Clef_item" + "Key_item" + "Staff_bar" + "Time_signature" + ) \consists "Spacing_engraver"; \consists "Vertical_align_engraver"; alignmentReference = \down; @@ -323,6 +332,7 @@ ScoreContext = \translator { \accepts "GrandStaff"; \accepts "ChoirStaff"; \accepts "PianoStaff"; + \accepts "NoteNames"; clefBreakPriority = #-2 breathingSignBreakPriority = #-4 @@ -341,3 +351,10 @@ OrchestralScoreContext= \translator { \accepts "HaraKiriStaff"; }; + +\translator { + \type "Engraver_group_engraver"; + \name NoteNames; + \consistsend "Axis_group_engraver"; + \consists "Note_name_engraver"; +} diff --git a/ly/fragment.ly b/ly/fragment.ly index f644c2867a..93722c224f 100644 --- a/ly/fragment.ly +++ b/ly/fragment.ly @@ -1,6 +1,6 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly" diff --git a/ly/init.ly b/ly/init.ly index 8cd49a0428..748f075f3c 100644 --- a/ly/init.ly +++ b/ly/init.ly @@ -1,6 +1,6 @@ % Toplevel initialisation file. -\version "1.2.0"; +\version "1.3.4"; \include "declarations.ly"; diff --git a/ly/paper16.ly b/ly/paper16.ly index 14fab61a39..6d2a93da79 100644 --- a/ly/paper16.ly +++ b/ly/paper16.ly @@ -2,7 +2,7 @@ -\version "1.2.0"; +\version "1.3.4"; paper_sixteen = \paper { staffheight = 16.0\pt; diff --git a/ly/paper20.ly b/ly/paper20.ly index 65f9100c73..de1c7d3342 100644 --- a/ly/paper20.ly +++ b/ly/paper20.ly @@ -1,7 +1,7 @@ % paper20.ly -\version "1.2.0"; +\version "1.3.4"; paper_twenty = \paper { staffheight = 20.0\pt; diff --git a/ly/paper23.ly b/ly/paper23.ly index 7a129b3356..aa9d14dfb7 100644 --- a/ly/paper23.ly +++ b/ly/paper23.ly @@ -1,7 +1,7 @@ % paper23.ly -\version "1.2.0"; +\version "1.3.4"; paper_twentythree = \paper { staffheight = 23.0\pt; diff --git a/ly/property.ly b/ly/property.ly index b056e35111..9e755f6a11 100644 --- a/ly/property.ly +++ b/ly/property.ly @@ -8,7 +8,7 @@ SEE THE REFERENCE MANUAL FOR EXPLANATIONS. %} -\version "1.2.16"; +\version "1.3.4"; %hmm, (these) abbrevs suck, imo % i guess they're meant as some form of doco @@ -24,6 +24,12 @@ slurdown = \property Voice.slurVerticalDirection = \down shifton = \property Voice.horizontalNoteShift = #1 shiftoff = \property Voice.horizontalNoteShift = #0 +cadenzaOn = \property Score.timing = ##f +cadenzaOff = { \property Score.timing = ##t + \property Score.measurePosition = #(make-moment 0 1) + } + + onevoice = { \stemboth \shiftoff } diff --git a/make/out/lilypond.lsm b/make/out/lilypond.lsm index c2b50d430f..1846b1db54 100644 --- a/make/out/lilypond.lsm +++ b/make/out/lilypond.lsm @@ -1,15 +1,15 @@ Begin3 Title: LilyPond -Version: 1.3.4 -Entered-date: 08NOV99 +Version: 1.3.5 +Entered-date: 10NOV99 Description: Keywords: music notation typesetting midi fonts engraving Author: hanwen@cs.uu.nl (Han-Wen Nienhuys) janneke@gnu.org (Jan Nieuwenhuizen) Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys) Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert - 1000k lilypond-1.3.4.tar.gz + 1000k lilypond-1.3.5.tar.gz Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/ - 1000k lilypond-1.3.4.tar.gz + 1000k lilypond-1.3.5.tar.gz Copying-policy: GPL End diff --git a/make/out/lilypond.spec b/make/out/lilypond.spec index bb91ede12c..b89cd7912f 100644 --- a/make/out/lilypond.spec +++ b/make/out/lilypond.spec @@ -1,9 +1,9 @@ Name: lilypond -Version: 1.3.4 +Version: 1.3.5 Release: 1 Copyright: GPL Group: Applications/Publishing -Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.4.tar.gz +Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.3.5.tar.gz Summary: A program for printing sheet music. URL: http://www.cs.uu.nl/~hanwen/lilypond Packager: Han-Wen Nienhuys diff --git a/mutopia/Coriolan/bassi-part.ly b/mutopia/Coriolan/bassi-part.ly index 5a513ce553..e8259e45f2 100644 --- a/mutopia/Coriolan/bassi-part.ly +++ b/mutopia/Coriolan/bassi-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "violoncello.ly" diff --git a/mutopia/Coriolan/clarinetti-part.ly b/mutopia/Coriolan/clarinetti-part.ly index ff47dfe03d..ee3fdac7c0 100644 --- a/mutopia/Coriolan/clarinetti-part.ly +++ b/mutopia/Coriolan/clarinetti-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "clarinetti.ly" diff --git a/mutopia/Coriolan/clarinetti.ly b/mutopia/Coriolan/clarinetti.ly index 47bebf6ef0..0c08f9fe15 100644 --- a/mutopia/Coriolan/clarinetti.ly +++ b/mutopia/Coriolan/clarinetti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "clarinetto-1.ly" \include "clarinetto-2.ly" diff --git a/mutopia/Coriolan/clarinetto-1.ly b/mutopia/Coriolan/clarinetto-1.ly index 4b82d40d64..b875cabb01 100644 --- a/mutopia/Coriolan/clarinetto-1.ly +++ b/mutopia/Coriolan/clarinetto-1.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; clarinetto1 = \notes \relative c { R1 *2 | d''4-.\ff r r2 | R1 *3 | e4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/clarinetto-2.ly b/mutopia/Coriolan/clarinetto-2.ly index 167502ac7d..4fdf51d8dc 100644 --- a/mutopia/Coriolan/clarinetto-2.ly +++ b/mutopia/Coriolan/clarinetto-2.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; clarinetto2 = \notes \relative c { R1*2 bes''4-.\ff r r2 | R1*3 | cis4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/contrabasso-part.ly b/mutopia/Coriolan/contrabasso-part.ly index c17fb2c245..655e148f3f 100644 --- a/mutopia/Coriolan/contrabasso-part.ly +++ b/mutopia/Coriolan/contrabasso-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "contrabasso.ly" diff --git a/mutopia/Coriolan/contrabasso.ly b/mutopia/Coriolan/contrabasso.ly index c1ba901cfd..f10bb426bd 100644 --- a/mutopia/Coriolan/contrabasso.ly +++ b/mutopia/Coriolan/contrabasso.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; contrabasso = \notes \relative c { % \translator Staff=violoncello diff --git a/mutopia/Coriolan/coriolan.ly b/mutopia/Coriolan/coriolan.ly index 517e03b6ad..bf55e888cf 100644 --- a/mutopia/Coriolan/coriolan.ly +++ b/mutopia/Coriolan/coriolan.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" diff --git a/mutopia/Coriolan/corni-part.ly b/mutopia/Coriolan/corni-part.ly index 117b7b38f4..8d0a10b2de 100644 --- a/mutopia/Coriolan/corni-part.ly +++ b/mutopia/Coriolan/corni-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "corni.ly" diff --git a/mutopia/Coriolan/corni.ly b/mutopia/Coriolan/corni.ly index 3af778c380..e692c12565 100644 --- a/mutopia/Coriolan/corni.ly +++ b/mutopia/Coriolan/corni.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "corno-1.ly" \include "corno-2.ly" diff --git a/mutopia/Coriolan/corno-1.ly b/mutopia/Coriolan/corno-1.ly index 73bc7378ea..2c75ca8f62 100644 --- a/mutopia/Coriolan/corno-1.ly +++ b/mutopia/Coriolan/corno-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; corno1 = \notes \relative c { R1 *2 | f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/corno-2.ly b/mutopia/Coriolan/corno-2.ly index 1b12ae5eaa..5e2c861791 100644 --- a/mutopia/Coriolan/corno-2.ly +++ b/mutopia/Coriolan/corno-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; corno2 = \notes \relative c { R1 *2 | d''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/fagotti-part.ly b/mutopia/Coriolan/fagotti-part.ly index 205dbb595b..17b5ceef51 100644 --- a/mutopia/Coriolan/fagotti-part.ly +++ b/mutopia/Coriolan/fagotti-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "fagotti.ly" diff --git a/mutopia/Coriolan/fagotti.ly b/mutopia/Coriolan/fagotti.ly index 4176f08f30..60d63f4482 100644 --- a/mutopia/Coriolan/fagotti.ly +++ b/mutopia/Coriolan/fagotti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "fagotto-1.ly" \include "fagotto-2.ly" diff --git a/mutopia/Coriolan/fagotto-1.ly b/mutopia/Coriolan/fagotto-1.ly index 95d63fd3f1..e7b182a340 100644 --- a/mutopia/Coriolan/fagotto-1.ly +++ b/mutopia/Coriolan/fagotto-1.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; fagotto1 = \notes \relative c { R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/fagotto-2.ly b/mutopia/Coriolan/fagotto-2.ly index 589fa6907d..7de10de2c8 100644 --- a/mutopia/Coriolan/fagotto-2.ly +++ b/mutopia/Coriolan/fagotto-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; fagotto2 = \notes \relative c { R1 *2 | f4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/flauti-part.ly b/mutopia/Coriolan/flauti-part.ly index e427601844..cc078a5348 100644 --- a/mutopia/Coriolan/flauti-part.ly +++ b/mutopia/Coriolan/flauti-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "flauti.ly" diff --git a/mutopia/Coriolan/flauti.ly b/mutopia/Coriolan/flauti.ly index 231b6c2860..5b295d1f48 100644 --- a/mutopia/Coriolan/flauti.ly +++ b/mutopia/Coriolan/flauti.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "flauto-1.ly" \include "flauto-2.ly" diff --git a/mutopia/Coriolan/flauto-1.ly b/mutopia/Coriolan/flauto-1.ly index 0d7243cc1d..7e6c1f6b5a 100644 --- a/mutopia/Coriolan/flauto-1.ly +++ b/mutopia/Coriolan/flauto-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; flauto1 = \notes \relative c { R1 *2 | c'''4-.\ff r r2 | R1 *3 | d4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/flauto-2.ly b/mutopia/Coriolan/flauto-2.ly index 32782681bc..cbb400044c 100644 --- a/mutopia/Coriolan/flauto-2.ly +++ b/mutopia/Coriolan/flauto-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; flauto2 = \notes \relative c { R1 *2 | as'''4-.\ff r r2 | R1 *3 | b4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/global.ly b/mutopia/Coriolan/global.ly index 86a3bd44fa..335a15a56c 100644 --- a/mutopia/Coriolan/global.ly +++ b/mutopia/Coriolan/global.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; global = \notes { \time 4/4; diff --git a/mutopia/Coriolan/oboe-1.ly b/mutopia/Coriolan/oboe-1.ly index 31fefbe66a..0afed078f6 100644 --- a/mutopia/Coriolan/oboe-1.ly +++ b/mutopia/Coriolan/oboe-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; oboe1 = \notes \relative c'' { R1 *2 | as'4-.\ff r r2 | R1 *3 | as4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/oboe-2.ly b/mutopia/Coriolan/oboe-2.ly index fa89670b3c..39ae9c267a 100644 --- a/mutopia/Coriolan/oboe-2.ly +++ b/mutopia/Coriolan/oboe-2.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; oboe2 = \notes \relative c{ R1 *2| f''4-.\ff r r2 | R1 *3 | f4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/oboi-part.ly b/mutopia/Coriolan/oboi-part.ly index c48a4e17de..3d2d699320 100644 --- a/mutopia/Coriolan/oboi-part.ly +++ b/mutopia/Coriolan/oboi-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "oboi.ly" diff --git a/mutopia/Coriolan/oboi.ly b/mutopia/Coriolan/oboi.ly index 0d004223a0..b9ab15e912 100644 --- a/mutopia/Coriolan/oboi.ly +++ b/mutopia/Coriolan/oboi.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "oboe-1.ly" \include "oboe-2.ly" diff --git a/mutopia/Coriolan/timpani.ly b/mutopia/Coriolan/timpani.ly index 483e31eb29..b6d74169b2 100644 --- a/mutopia/Coriolan/timpani.ly +++ b/mutopia/Coriolan/timpani.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; timpani = \notes \relative c { R1 *2 | c4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/trombe-part.ly b/mutopia/Coriolan/trombe-part.ly index 84f7a2648e..049cdb74fb 100644 --- a/mutopia/Coriolan/trombe-part.ly +++ b/mutopia/Coriolan/trombe-part.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "trombe.ly" diff --git a/mutopia/Coriolan/trombe.ly b/mutopia/Coriolan/trombe.ly index 15c6c892e0..b867b99597 100644 --- a/mutopia/Coriolan/trombe.ly +++ b/mutopia/Coriolan/trombe.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "trombo-1.ly" \include "trombo-2.ly" diff --git a/mutopia/Coriolan/trombo-1.ly b/mutopia/Coriolan/trombo-1.ly index 9f89f1341c..2775eeb1b3 100644 --- a/mutopia/Coriolan/trombo-1.ly +++ b/mutopia/Coriolan/trombo-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; trombo1 = \notes \relative c { R1 *2 | c''4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/trombo-2.ly b/mutopia/Coriolan/trombo-2.ly index fe8ea16072..234514fb96 100644 --- a/mutopia/Coriolan/trombo-2.ly +++ b/mutopia/Coriolan/trombo-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; trombo2 = \notes \relative c { R1 *2 | c'4-.\ff r r2 | R1 *3 | c4-. r r2 | R1 *3 | diff --git a/mutopia/Coriolan/viola-1.ly b/mutopia/Coriolan/viola-1.ly index 26f091d9cb..a8933dca19 100644 --- a/mutopia/Coriolan/viola-1.ly +++ b/mutopia/Coriolan/viola-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; viola1 = \notes \relative c { c'1\ff ~ | c | f,4-. r r2 | r1 | diff --git a/mutopia/Coriolan/viola-2.ly b/mutopia/Coriolan/viola-2.ly index 2980793d5e..b08dbbeace 100644 --- a/mutopia/Coriolan/viola-2.ly +++ b/mutopia/Coriolan/viola-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; viola2 = \notes \relative c { % starts on (actualy, most part is on) same staff as viola1 diff --git a/mutopia/Coriolan/viola-part.ly b/mutopia/Coriolan/viola-part.ly index f82acfe1fb..f7d22fa737 100644 --- a/mutopia/Coriolan/viola-part.ly +++ b/mutopia/Coriolan/viola-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "viola-1.ly" diff --git a/mutopia/Coriolan/violino-1-part.ly b/mutopia/Coriolan/violino-1-part.ly index 4e69087c74..8361806520 100644 --- a/mutopia/Coriolan/violino-1-part.ly +++ b/mutopia/Coriolan/violino-1-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "violino-1.ly" diff --git a/mutopia/Coriolan/violino-1.ly b/mutopia/Coriolan/violino-1.ly index be83a5d61a..ab138a28af 100644 --- a/mutopia/Coriolan/violino-1.ly +++ b/mutopia/Coriolan/violino-1.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; violino1 = \notes \relative c { c'1\ff ~ | c | r r2 | R1 | diff --git a/mutopia/Coriolan/violino-2-part.ly b/mutopia/Coriolan/violino-2-part.ly index 0b01973c1a..49ce642e33 100644 --- a/mutopia/Coriolan/violino-2-part.ly +++ b/mutopia/Coriolan/violino-2-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "violino-2.ly" diff --git a/mutopia/Coriolan/violino-2.ly b/mutopia/Coriolan/violino-2.ly index 15415cf844..9f084fd86c 100644 --- a/mutopia/Coriolan/violino-2.ly +++ b/mutopia/Coriolan/violino-2.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; violino2 = \notes \relative c { c'1\ff ~ | c | r r2 | R1 | diff --git a/mutopia/Coriolan/violoncello-part.ly b/mutopia/Coriolan/violoncello-part.ly index c6790225e4..b5640ad4b9 100644 --- a/mutopia/Coriolan/violoncello-part.ly +++ b/mutopia/Coriolan/violoncello-part.ly @@ -7,7 +7,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "violoncello.ly" diff --git a/mutopia/Coriolan/violoncello.ly b/mutopia/Coriolan/violoncello.ly index 3211ed1486..ed29c77488 100644 --- a/mutopia/Coriolan/violoncello.ly +++ b/mutopia/Coriolan/violoncello.ly @@ -9,7 +9,7 @@ copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; violoncello = \notes \relative c { c1\ff ~ | c | f,4-. r r2 | r1 | c'1\ff ~ | c | f,4-. r r2 | diff --git a/mutopia/D.Zipoli/verso_2.ly b/mutopia/D.Zipoli/verso_2.ly index 619aa58538..b865ab858a 100644 --- a/mutopia/D.Zipoli/verso_2.ly +++ b/mutopia/D.Zipoli/verso_2.ly @@ -17,7 +17,7 @@ title = "Verso II"; under the Gnu Public Licence. %} -\version "1.2.0"; +\version "1.3.4"; $voice_one = \notes \relative c' { a'2 bes4. [c16 bes] | a4 d ~ d c ~ | c b ~ [b8 a] a4 ~| diff --git a/mutopia/E.Satie/gnossienne-4-autochange.ly b/mutopia/E.Satie/gnossienne-4-autochange.ly index 2780a7016e..05a0754f61 100644 --- a/mutopia/E.Satie/gnossienne-4-autochange.ly +++ b/mutopia/E.Satie/gnossienne-4-autochange.ly @@ -12,7 +12,7 @@ Tested Features: cross staff auto beams and slurs, grace notes, no bars %} -\version "1.2.0"; +\version "1.3.4"; \include "nederlands.ly" diff --git a/mutopia/E.Satie/gnossienne-4.ly b/mutopia/E.Satie/gnossienne-4.ly index 6094281c8b..bc6c08c869 100644 --- a/mutopia/E.Satie/gnossienne-4.ly +++ b/mutopia/E.Satie/gnossienne-4.ly @@ -12,7 +12,7 @@ Tested Features: cross staff auto beams and slurs, grace notes, no bars %} -\version "1.2.0"; +\version "1.3.4"; \include "nederlands.ly" diff --git a/mutopia/E.Satie/petite-ouverture-a-danser.ly b/mutopia/E.Satie/petite-ouverture-a-danser.ly index 1e9a7f0449..74423e6eb4 100644 --- a/mutopia/E.Satie/petite-ouverture-a-danser.ly +++ b/mutopia/E.Satie/petite-ouverture-a-danser.ly @@ -12,7 +12,7 @@ Tested Features: %} -\version "1.2.0"; +\version "1.3.4"; \include "nederlands.ly" diff --git a/mutopia/F.Schubert/standchen-16.ly b/mutopia/F.Schubert/standchen-16.ly index e25ecfdfe6..31e896e01d 100644 --- a/mutopia/F.Schubert/standchen-16.ly +++ b/mutopia/F.Schubert/standchen-16.ly @@ -9,6 +9,6 @@ description = "A schubert song in 16 pt"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "standchen.ly" diff --git a/mutopia/F.Schubert/standchen-20.ly b/mutopia/F.Schubert/standchen-20.ly index 9c2f4eaefd..221c232bfc 100644 --- a/mutopia/F.Schubert/standchen-20.ly +++ b/mutopia/F.Schubert/standchen-20.ly @@ -10,7 +10,7 @@ enteredby = "JCN"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; % fool make-website % \include "standchen.ly"; diff --git a/mutopia/F.Schubert/standchen.ly b/mutopia/F.Schubert/standchen.ly index 627d3cc47a..1f29fc4f2d 100644 --- a/mutopia/F.Schubert/standchen.ly +++ b/mutopia/F.Schubert/standchen.ly @@ -41,10 +41,10 @@ multiple \paper{}s in one \score Note: Original key F. %} -\version "1.2.0"; +\version "1.3.4"; vocalVerse = \notes\relative c''{ - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 \times 2/3 { [ g8( )as] g } c4. g8 | \times 2/3 { [ f8( )g] f } c'4 f,8 r | g4.-> f8 \times 2/3 { [ f( )es] d } | @@ -73,7 +73,7 @@ vocalVerse = \notes\relative c''{ } vocalThrough = \notes\relative c{ - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 g''8. g16 b8. b16 d8. d16 | c4 b r | g4. b8 d8. c16 | @@ -240,7 +240,7 @@ trebleThrough = \notes \relative c'{ } bassIntro = \notes\relative c{ - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 %1 r4 | r4 | @@ -250,7 +250,7 @@ bassIntro = \notes\relative c{ bassVerseOne = \notes\relative c{ % \clef bass; - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 %5 r4 | r4 | @@ -281,7 +281,7 @@ bassVerseOne = \notes\relative c{ } bassEentje = \notes\relative c{ - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 [ ] | c,8 [ ] | [ ] | @@ -293,7 +293,7 @@ bassEentje = \notes\relative c{ } bassThrough = \notes\relative c{ - \property Voice.dynamicDirection=1 + \property Voice.dynamicDirectionection=1 %61 [ b-> d->> ] | [ b-> d->> ] | @@ -351,7 +351,7 @@ vocals = \notes{ \property Voice.noAutoBeaming = "1" \property Staff.automaticMelismata=1 - \property Voice.dynamicDirection = \up + \property Voice.dynamicDirectionection = \up \skip 4 * 12; \vocalVerse \skip 4 * 24; diff --git a/mutopia/Hymns/diademata.ly b/mutopia/Hymns/diademata.ly index e47849828c..265a65cac4 100644 --- a/mutopia/Hymns/diademata.ly +++ b/mutopia/Hymns/diademata.ly @@ -7,7 +7,7 @@ metre = "6 6. 8 6. D"; } -\version "1.2.0"; +\version "1.3.4"; sop=\notes \transpose c''{ ees2 ees4 ees4 g2 g2 | c'1. diff --git a/mutopia/Hymns/laudatedom.ly b/mutopia/Hymns/laudatedom.ly index b8635916c6..b997362317 100644 --- a/mutopia/Hymns/laudatedom.ly +++ b/mutopia/Hymns/laudatedom.ly @@ -4,7 +4,7 @@ composer = "Parry"; metre = "10 10 . 11 11"; } -\version "1.2.0"; +\version "1.3.4"; sop = \notes \transpose c''{ f4 | d' bes c' | f2 \bar "||"; diff --git a/mutopia/Hymns/maccabaeus.ly b/mutopia/Hymns/maccabaeus.ly index 3c846f945b..f4d4356afd 100644 --- a/mutopia/Hymns/maccabaeus.ly +++ b/mutopia/Hymns/maccabaeus.ly @@ -7,7 +7,7 @@ title = "Maccabaeus"; metre = "10 11. 11 11. and refrain"; } -\version "1.2.0"; +\version "1.3.4"; sop=\notes \relative c'' { b2 gis4. a8 |b2 e,2 | diff --git a/mutopia/Hymns/ode.ly b/mutopia/Hymns/ode.ly index 0390551292..42e6b9ff81 100644 --- a/mutopia/Hymns/ode.ly +++ b/mutopia/Hymns/ode.ly @@ -7,7 +7,7 @@ metre = "8 7 8 7 D"; } -\version "1.2.0"; +\version "1.3.4"; sop=\notes \relative c'' { b4 b c d | d c b a | g g a b | b4. a8 a2 | diff --git a/mutopia/Hymns/stille.ly b/mutopia/Hymns/stille.ly index ac38071a46..be80e22543 100644 --- a/mutopia/Hymns/stille.ly +++ b/mutopia/Hymns/stille.ly @@ -8,7 +8,7 @@ } -\version "1.2.0"; +\version "1.3.4"; %{ Note: there are other verses, but the three here seem to be diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly index fe1f10e753..e0591c715b 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Allemande.ly @@ -4,7 +4,7 @@ piece = "Allemande"; } -\version "1.2.0"; +\version "1.3.4"; global = \notes{ \time 4/4; diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly index 4e1db670e8..d4ee80c115 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Capriccio.ly @@ -10,7 +10,7 @@ %% %% Noe liknende skjer også i mellom andre og tredje stemme i takt 28 -\version "1.2.0"; +\version "1.3.4"; global = \notes{ \time 2/4; diff --git a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly index 5ef6093be2..79617ee877 100644 --- a/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly +++ b/mutopia/J.S.Bach/Cembalo-Partitas/Partita_II_Sinfonia.ly @@ -10,7 +10,7 @@ copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; global = \notes { \time 4/4; diff --git a/mutopia/J.S.Bach/Duette/global-i.ly b/mutopia/J.S.Bach/Duette/global-i.ly index 392363ff8e..abd64a8be8 100644 --- a/mutopia/J.S.Bach/Duette/global-i.ly +++ b/mutopia/J.S.Bach/Duette/global-i.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; $global_i = \notes{ \time 12/8; diff --git a/mutopia/J.S.Bach/Duette/global-ii.ly b/mutopia/J.S.Bach/Duette/global-ii.ly index 1e92f7093c..0f5aa1ea74 100644 --- a/mutopia/J.S.Bach/Duette/global-ii.ly +++ b/mutopia/J.S.Bach/Duette/global-ii.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; $global_ii = \notes{ \time 4/4; diff --git a/mutopia/J.S.Bach/Duette/viola-i.ly b/mutopia/J.S.Bach/Duette/viola-i.ly index 162b02c7c9..1127323be8 100644 --- a/mutopia/J.S.Bach/Duette/viola-i.ly +++ b/mutopia/J.S.Bach/Duette/viola-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global-i.ly" \include "violoncello-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/viola-ii.ly b/mutopia/J.S.Bach/Duette/viola-ii.ly index f3c0cb2082..b168a6521c 100644 --- a/mutopia/J.S.Bach/Duette/viola-ii.ly +++ b/mutopia/J.S.Bach/Duette/viola-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; \include "global-ii.ly" \include "violoncello-ii.ly"; diff --git a/mutopia/J.S.Bach/Duette/viola-part.ly b/mutopia/J.S.Bach/Duette/viola-part.ly index 8942edabec..9eb6cb5a7f 100644 --- a/mutopia/J.S.Bach/Duette/viola-part.ly +++ b/mutopia/J.S.Bach/Duette/viola-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; % { diff --git a/mutopia/J.S.Bach/Duette/violino-i.ly b/mutopia/J.S.Bach/Duette/violino-i.ly index 29adf73a61..0688ef5b0f 100644 --- a/mutopia/J.S.Bach/Duette/violino-i.ly +++ b/mutopia/J.S.Bach/Duette/violino-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; $violino_i = \notes\relative c'' { \property Voice.beamAutoEnd = "3/8" diff --git a/mutopia/J.S.Bach/Duette/violino-ii.ly b/mutopia/J.S.Bach/Duette/violino-ii.ly index 33434601ce..8c2584d3ef 100644 --- a/mutopia/J.S.Bach/Duette/violino-ii.ly +++ b/mutopia/J.S.Bach/Duette/violino-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; $violino_ii = \notes\relative c''{ R1*8 | @@ -101,4 +101,4 @@ $violino_ii_staff = \context Staff = violino < \$violino_ii \$global_ii > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Duette/violino-part.ly b/mutopia/J.S.Bach/Duette/violino-part.ly index 19834e05dd..a5b6196346 100644 --- a/mutopia/J.S.Bach/Duette/violino-part.ly +++ b/mutopia/J.S.Bach/Duette/violino-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; % { diff --git a/mutopia/J.S.Bach/Duette/violino-viola.ly b/mutopia/J.S.Bach/Duette/violino-viola.ly index b674f68b81..f3ed9fd392 100644 --- a/mutopia/J.S.Bach/Duette/violino-viola.ly +++ b/mutopia/J.S.Bach/Duette/violino-viola.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; % { \include "violino-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/violino-violoncello.ly b/mutopia/J.S.Bach/Duette/violino-violoncello.ly index 0fd5501ff6..47c3b66d49 100644 --- a/mutopia/J.S.Bach/Duette/violino-violoncello.ly +++ b/mutopia/J.S.Bach/Duette/violino-violoncello.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; % { \include "violino-i.ly"; diff --git a/mutopia/J.S.Bach/Duette/violoncello-i.ly b/mutopia/J.S.Bach/Duette/violoncello-i.ly index 473b59a354..03d3ebbf40 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-i.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-i.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; $violoncello_i = \notes\relative c{ \property Voice.beamAutoEnd = "3/8" diff --git a/mutopia/J.S.Bach/Duette/violoncello-ii.ly b/mutopia/J.S.Bach/Duette/violoncello-ii.ly index 1853c17463..e1ffdf05e1 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-ii.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-ii.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; $violoncello_ii = \notes\relative c{ r2 a'2|c e,| f8(e)d2 e8()fis| g a bes2 a8()gis| diff --git a/mutopia/J.S.Bach/Duette/violoncello-part.ly b/mutopia/J.S.Bach/Duette/violoncello-part.ly index 00083c7f3a..9ffcaef121 100644 --- a/mutopia/J.S.Bach/Duette/violoncello-part.ly +++ b/mutopia/J.S.Bach/Duette/violoncello-part.ly @@ -8,7 +8,7 @@ enteredby = "jcn"; copyright = "Public Domain"; } -\version "1.2.0"; +\version "1.3.4"; % { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly index 7d36bb4cb5..e816b51716 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-1.ly @@ -11,7 +11,7 @@ enteredby = "jcn"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; % upper = \context Staff \notes\relative c { upper = \context Staff=upper \notes\relative c { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly index 21c88c4178..2c08fa9e0d 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-2.ly @@ -1,30 +1,56 @@ +%{ + + Six Petits Preludes, + Collection Johann Peter Kellner + ca 1703 - 1707 + + + + Kellner was a student of Bach's. + +%} + \header{ -filename = "preludes-2.ly"; -% -% page 10 -% -% Six Petits Preludes -% Collection Johann Peter Kellner -% ca 1703- 1707 -composer = "Johann Sebastian Bach (1685-1750)"; -enteredby = "jcn"; -copyright = "public domain"; + copyright = "public domain"; + source = "Ed. Henry Lemoine Urtext"; + + + composer = "Johann Sebastian Bach (1685-1750)"; + enteredby = "jcn,hwn"; + copyright = "public domain"; + + % mutopia headers. + mutopiatitle = "Prelude"; + mutopiacomposer = "J.S.Bach"; + mutopiainstrument = "Piano"; + style = "baroque"; + copyright = "Public Domain"; + tagline = "\\\\This music is part of the Mutopia project, http://sca.uwaterloo.ca/Mutopia/\\\\It has been typeset and placed in the public domain by Jan Nieuwenhuizen.\\\\Unrestricted modification and redistribution is permitted and encouraged - copy this music and share it!"; + maintainer = "janneke@gnu.org"; + lastupdated = "1999/Nov/8"; } -\version "1.2.0"; +%{ +Old versions of LilyPond include this prelude with dynamics and fingerings. + +%} + + + +\version "1.3.4"; upper = \context Staff \notes\relative c{ \context Voice=i \property Voice . textStyle = "italic" - r8\mf c'-1( e-2 g-4 e-2 c-1 bes'-5 g-3 | - )a-4\< c,-1( f-2 a-4 f c c'-5 a-3 | - )b-4 g-1( b-2 d-4 b-2 g f'-5 \!d-3 | + r8 c'( e g e c bes' g | + )a c,( f a f c c' a | + )b g( b d b g f' d | < - {\stemup )e2-4\f r4 e-5 } + {\stemup )e2 r4 e } \context Voice = ii {\stemdown r4 } > \stemboth | < - { \stemup d2-4 r4 d-4 } + { \stemup d2 r4 d } \context Voice = ii { \stemdown r4 } > \stemboth | @@ -33,34 +59,34 @@ upper = \context Staff \notes\relative c{ \context Voice = ii { \stemdown } > \stemboth - g, 8-1\mf( b-2 d-4 + g, 8( b d < - { \stemup )b 4 e-5 } + { \stemup )b 4 e } \context Voice = ii { \stemdown g, 4 b } > \stemboth | < - { \stemup c2 r4 < {c-5 ~ c8} {a 4 ~ a 8} > } + { \stemup c2 r4 < {c ~ c8} {a 4 ~ a 8} > } \context Voice=ii { \stemdown c2 r4 e, 4 ~ e 8 } > \stemboth - d,-1\p( fis-2 a-4 fis-2 d-1 c'-5 a-3 | - )b-4\< g-1( b-2 d-4 b-2 g-1 f'!-5 d-3 | - )e-4 g,-1( c-2 e-4 c-2 g g'-5 e-3 | - )fis-4 a,-1( c-2 fis-4 c a a'-5 \!fis-3 | + d,( fis a fis d c' a | + )b g( b d b g f'! d | + )e g,( c e c g g' e | + )fis a,( c fis c a a' fis | < - { \stemup )g2-5\f } + { \stemup )g2 } \context Voice = ii { \stemdown } > \stemboth - r4 b4-2( | - c,8-1 e-2 g c g-2 e-1 bes'-4 g-2 | - )a16->-3 g-2 f-1 e-3 d c b !-3 a-2 - b-3\< g-1 a b c-1 d e \!f | - g4-5\ff + r4 b4( | + c,8 e g c g e bes' g | + )a16-> g f e d c b ! a + b g a b c d e f | + g4 < - { \stemup c,2-5 b 4-4 } - \context Voice=ii { \stemdown g 2-2 d 4-1 } + { \stemup c,2 b 4 } + \context Voice=ii { \stemdown g 2 d 4 } > \stemboth < @@ -78,20 +104,20 @@ lower = \context Staff \notes\relative c{ \context Voice=ii { \stemdown c,1 ~ | c ~ | c } > \stemboth | - r8 c-5( e-3 g-1 e-3 c-5 c' e,-4 | - )fis-3 d-5( fis-3 a-1 fis-3 d-5 d' fis,-4 | - )g2-3 r4 g-2( | - )a8 a,-5( c-4 e-2 c-4 a-5 g' e-3 | - )fis2 r4 d-4 | + r8 c( e g e c c' e, | + )fis d( fis a fis d d' fis, | + )g2 r4 g( | + )a8 a,( c e c a g' e | + )fis2 r4 d | g-\mordent-"(\\textsharp)" g, 4 g'-\mordent g, | % mordents in brackets... g'-\mordent g, g'-\mordent g, | g'-\mordent g, g'-\mordent g, | - g'8 g,-5( b-4 d-2 b-4 g-5 f'!-1 d-3 | - )e-2 c-4 e-2 g-1 e-3 c-5 c' e,-4 | + g'8 g,( b d b g f'! d | + )e c e g e c c' e, | \property Voice . textStyle = "finger" f1^"3\\_1" ~ | - f8 d-3 e-2 c-4 g'4-1 g,^"5\\_2" | + f8 d e c g'4 g,^"5\\_2" | \bar "|."; } diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly index 46cf6561d5..894117f60c 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly @@ -36,7 +36,7 @@ TODO: this file needs additional layouting: the upper voice should switch staffs to avoid leger lines. %} -\version "1.2.13"; +\version "1.3.4"; upper = \notes \transpose c'' { diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-4.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-4.ly index 406d00b953..d5eeedface 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-4.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-4.ly @@ -10,7 +10,7 @@ composer = "Johann Sebastian Bach (1685-1750)"; enteredby = "jcn"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; one = \context Staff \notes\relative c { \context Voice=i diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly index f26b187f99..0ccb570c2e 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-5.ly @@ -10,7 +10,7 @@ composer = "Johann Sebastian Bach (1685-1750)"; enteredby = "jcn"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; upper = \context Staff \notes\relative c{ diff --git a/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly b/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly index 3cc949bbc4..d51b769e9d 100644 --- a/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly +++ b/mutopia/J.S.Bach/Petites-Preludes/preludes-6.ly @@ -10,7 +10,7 @@ composer = "Johann Sebastian Bach (1685-1750)"; enteredby = "jcn"; copyright = "public domain"; } -\version "1.2.0"; +\version "1.3.4"; one = \context Staff \notes\relative c{ diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly index 473a743eca..b2a4e655ab 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-cello.ly @@ -1,6 +1,6 @@ -\version "1.2.0"; +\version "1.3.4"; \include "allemande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly index 380f553b9d..ce797d3dbd 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-urtext.ly @@ -99,4 +99,4 @@ allemande = \context Staff \notes< > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly index 543edf7588..f152601f4e 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/allemande-viola.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; \include "allemande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly index e28db4df3c..216cd0176a 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-cello.ly @@ -1,5 +1,5 @@ -\version "1.2.0"; +\version "1.3.4"; \include "courante-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly index cda7712a71..e7abdfe37a 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-urtext.ly @@ -88,4 +88,4 @@ courante = \context Staff \notes< \$courante_b > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly index 9bc027b86d..75d83d657c 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/courante-viola.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "courante-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly index c1742e50c3..20313c7071 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-cello.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "gigue-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly index dd69687191..630b9b0a6d 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-urtext.ly @@ -102,4 +102,4 @@ gigue = \notes< \$gigue_b > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly index b5fa115eac..5359bab409 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/gigue-viola.ly @@ -1,6 +1,6 @@ -\version "1.2.0"; +\version "1.3.4"; \include "gigue-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly index 2b4d6043b9..385673c34f 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-cello.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "menuetto-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly index 6475b772ba..07e1531223 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-urtext.ly @@ -148,4 +148,4 @@ menuetto_ii = \context Staff\notes \relative c { d2. } -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly index a993e206c6..c795cf65e9 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/menuetto-viola.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "menuetto-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly index 59231c48e3..88d0f2158e 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-cello.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "prelude-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly index faa88b84b9..1b9fd3ef76 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-urtext.ly @@ -194,4 +194,4 @@ prelude = \context Staff \notes< \$prelude_b > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly index ca34467d2b..de544f4f9c 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/prelude-viola.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "prelude-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly index 9a9b238eff..5949715a51 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-cello.ly @@ -1,7 +1,7 @@ -\version "1.2.0"; +\version "1.3.4"; \include "sarabande-urtext.ly"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly index 593384ab1a..8a6f7eae16 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-urtext.ly @@ -89,4 +89,4 @@ sarabande = \context Staff \notes< \$sarabande_b > -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly index fdb2b4e899..111625d701 100644 --- a/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly +++ b/mutopia/J.S.Bach/Solo-Cello-Suites/sarabande-viola.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; \include "sarabande-urtext.ly"; diff --git a/mutopia/J.S.Bach/wtk1-fugue1.ly b/mutopia/J.S.Bach/wtk1-fugue1.ly index 18ea02ec54..f18a619e85 100644 --- a/mutopia/J.S.Bach/wtk1-fugue1.ly +++ b/mutopia/J.S.Bach/wtk1-fugue1.ly @@ -19,7 +19,7 @@ enteredby = "Shay Rojansky"; %{ TODO: use autobeaming. %} -\version "1.2.13"; +\version "1.3.4"; tenor = diff --git a/mutopia/J.S.Bach/wtk1-fugue2.ly b/mutopia/J.S.Bach/wtk1-fugue2.ly index 1fef17664f..cae280c7b1 100644 --- a/mutopia/J.S.Bach/wtk1-fugue2.ly +++ b/mutopia/J.S.Bach/wtk1-fugue2.ly @@ -20,7 +20,7 @@ % It would be nice to squeeze this onto two pages, but I am not sure % if it would work with US paper. -\version "1.2.13"; +\version "1.3.4"; global = \notes { \key c \minor; diff --git a/mutopia/J.S.Bach/wtk1-prelude1.ly b/mutopia/J.S.Bach/wtk1-prelude1.ly index 1766da98f1..6c4a53559e 100644 --- a/mutopia/J.S.Bach/wtk1-prelude1.ly +++ b/mutopia/J.S.Bach/wtk1-prelude1.ly @@ -15,7 +15,7 @@ enteredby = "Shay Rojansky"; lastupdated = "1999/Oct/14"; } -\version "1.2.13"; +\version "1.3.4"; % should do programmable input. soprane = diff --git a/mutopia/L.Mozart/sinfonia.ly b/mutopia/L.Mozart/sinfonia.ly index ebb4d6e3c2..6024061e03 100644 --- a/mutopia/L.Mozart/sinfonia.ly +++ b/mutopia/L.Mozart/sinfonia.ly @@ -383,4 +383,4 @@ bassocontinuo = \notes \relative c'{ \midi{ \tempo 4 = 100; } } -\version "1.2.0"; +\version "1.3.4"; diff --git a/mutopia/N.W.Gade/brass.ly b/mutopia/N.W.Gade/brass.ly index 34deb5ed7c..37e7d28a7a 100644 --- a/mutopia/N.W.Gade/brass.ly +++ b/mutopia/N.W.Gade/brass.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; corI=\notes\relative c'' { \key c; diff --git a/mutopia/N.W.Gade/parts.ly b/mutopia/N.W.Gade/parts.ly index d6181f7dd5..5e4c429c19 100644 --- a/mutopia/N.W.Gade/parts.ly +++ b/mutopia/N.W.Gade/parts.ly @@ -11,7 +11,7 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + % Process with 'ly2dvi -s parts.ly' to get the separate parts. -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "wood.ly" diff --git a/mutopia/N.W.Gade/score.ly b/mutopia/N.W.Gade/score.ly index 7680cffced..d905d8e050 100644 --- a/mutopia/N.W.Gade/score.ly +++ b/mutopia/N.W.Gade/score.ly @@ -8,7 +8,7 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + "Statens Musikbibliotek, Stockholm, Sweden"; } -\version "1.2.0"; +\version "1.3.4"; \include "global.ly" \include "wood.ly" @@ -56,12 +56,12 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + \property Staff.instr = "Cor." \context Voice = corI < \globalNoKey - \stemup \property Voice.dynamicDirection = \up + \stemup \property Voice.dynamicDirectionection = \up \property Voice.articulationScriptVerticalDirection = \up \corI > \context Voice = corII { - \stemdown \property Voice.dynamicDirection = \down + \stemdown \property Voice.dynamicDirectionection = \down \property Voice.articulationScriptVerticalDirection = \down \corII } @@ -71,12 +71,12 @@ copyright = "Mats Bengtsson, 1999. Free circulation permitted and " + \property Staff.instr = "Trp." \context Voice = trpI < \globalNoKey - \stemup \property Voice.dynamicDirection = \up + \stemup \property Voice.dynamicDirectionection = \up \property Voice.articulationScriptVerticalDirection = \up \trpI > \context Voice = trpII { - \stemdown \property Voice.dynamicDirection = \down + \stemdown \property Voice.dynamicDirectionection = \down \property Voice.articulationScriptVerticalDirection = \down \trpII } diff --git a/mutopia/N.W.Gade/strings.ly b/mutopia/N.W.Gade/strings.ly index 0e17a3a0dd..d8adf8359f 100644 --- a/mutopia/N.W.Gade/strings.ly +++ b/mutopia/N.W.Gade/strings.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; viI=\notes\relative c'' { diff --git a/mutopia/N.W.Gade/wood.ly b/mutopia/N.W.Gade/wood.ly index 84a5062b90..8291299980 100644 --- a/mutopia/N.W.Gade/wood.ly +++ b/mutopia/N.W.Gade/wood.ly @@ -1,4 +1,4 @@ -\version "1.2.0"; +\version "1.3.4"; flauto=\notes\relative c''' { \clef "treble"; diff --git a/mutopia/W.A.Mozart/horn-concerto-3/cadenza.ly b/mutopia/W.A.Mozart/horn-concerto-3/cadenza.ly index f7e100661e..414eb16df2 100644 --- a/mutopia/W.A.Mozart/horn-concerto-3/cadenza.ly +++ b/mutopia/W.A.Mozart/horn-concerto-3/cadenza.ly @@ -26,14 +26,14 @@ Herman Jeurissen. %} -\version "1.2.13"; +\version "1.3.4"; cad = \notes \relative c' { \property Score.midiInstrument = "french horn" \context Staff { \emptyText - \cadenza 1; + \cadenzaOn \clef "violin"; diff --git a/mutopia/W.A.Mozart/horn-concerto-3/horn-concerto-3.ly b/mutopia/W.A.Mozart/horn-concerto-3/horn-concerto-3.ly index 4b6e4b48e8..8060346f56 100644 --- a/mutopia/W.A.Mozart/horn-concerto-3/horn-concerto-3.ly +++ b/mutopia/W.A.Mozart/horn-concerto-3/horn-concerto-3.ly @@ -38,7 +38,7 @@ longgrace = \property Grace.stemStyle = "" aftergrace = \property Grace.graceAlignPosition = \right -\version "1.2.13"; +\version "1.3.4"; \include "allegro.ly" \include "romanze.ly" diff --git a/mutopia/gallina.ly b/mutopia/gallina.ly index feff7c9bc6..66d30cfafa 100644 --- a/mutopia/gallina.ly +++ b/mutopia/gallina.ly @@ -45,7 +45,7 @@ Voice engraver by uncommenting the lines in the paper definition below. --MB %} -\version "1.2.0"; +\version "1.3.4"; global = \notes { \property StaffGroup.timeSignatureStyle = "old" @@ -130,7 +130,7 @@ vi1=\context Staff = vi1 < e2 r8 d d d16 e | fis a g fis e d c b a8 d d d16 e | fis4 g2 fis!4 | - \cadenza 1; + \cadenzaOn g\breve } }> @@ -201,7 +201,7 @@ vi2=\context Staff = vi2 < c8 g g g16 a b d c b a g fis e | d8 d' d d16 e fis16 a g fis e d c b | a d c b a g fis e d4 d' | - \cadenza 1; + \cadenzaOn b\breve } }> @@ -251,7 +251,7 @@ bc=\context Staff = bc < d1^"3 4 3" | G^"3 4 3" | c2 G | d1^"\\textsharp" ( | ) d^"3 4 3" | - \cadenza 1; + \cadenzaOn G\breve } }> diff --git a/scm/generic-property.scm b/scm/generic-property.scm index 88b6b6a3e1..e12646599d 100644 --- a/scm/generic-property.scm +++ b/scm/generic-property.scm @@ -40,13 +40,11 @@ (list (list 'breathingSignVerticalDirection dir? 'direction) (list 'verticalDirection dir? 'direction) - (list 'breathingSignBreakPriority number? 'break-priority - )))) + ))) (define generic-clef-properties (cons "Clef_item" (list - (list 'clefBreakPriority number? 'break-priority) (list 'clefStyle string? 'style)) ) ) diff --git a/scripts/abc2ly.py b/scripts/abc2ly.py index 422e2280b3..aa9f7893de 100644 --- a/scripts/abc2ly.py +++ b/scripts/abc2ly.py @@ -48,7 +48,7 @@ program_name = 'abc2ly' version = '@TOPLEVEL_VERSION@' if version == '@' + 'TOPLEVEL_VERSION' + '@': - version = '1.2.9' # uGUHGUHGHGUGH + version = '(unknown version)' # uGUHGUHGHGUGH import __main__ import getopt diff --git a/scripts/convert-mudela.py b/scripts/convert-mudela.py index b23b0e6cdd..7daa574c62 100644 --- a/scripts/convert-mudela.py +++ b/scripts/convert-mudela.py @@ -377,6 +377,16 @@ if 1: conversions.append ((1,2,1), conv, 'dynamicDir -> dynamicDirection') +if 1: + def conv(str): + str = re.sub ('\\\\cadenza *0 *;', '\\\\cadenzaOff', str) + str = re.sub ('\\\\cadenza *1 *;', '\\\\cadenzaOn', str) + + return str + + conversions.append ((1,3,4), conv, + '\\cadenza -> \cadenza{On|Off}') + ############################ -- 2.39.2