1 2002-06-29 Han-Wen <hanwen@cs.uu.nl>
3 * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
5 * scm/grob-description.scm (all-grob-descriptions): sort list
7 2002-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
9 * Documentation/topdocs/FAQ.texi (Installation): Add
10 lilypond-devel list. Add faq about font removal. Fix faq about
11 generating and running ./configure.
13 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
15 * scm/chord-name.scm (chord::name->text): Workaround: clean markup
18 * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
20 * input/test/ambitus.ly:
21 * lily/ambitus-engraver.cc:
23 * lily/include/ambitus.hh: New file.
25 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
27 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
29 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
30 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
31 scm/basic-properties.scm, scm/grob-description.scm,
32 scm/grob-property-description.scm: Add support for ambitus.
34 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
36 * lily/text-spanner.cc: add some props to interface (patch
39 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
41 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
42 dereference valid Grob.
44 * configure.in: Quoting fixes.
46 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
48 * lily/grob-scheme.cc: new file
50 * lily/break-substitution.cc: split up break substitution
51 functionality, and make a special constant stack-space version for
52 lists of grobs. This should fix the problems of lily in
53 combination with pthreads/qthreads.
55 * lily/grob.cc (mark_smob): bugfix: mark X parent too.
57 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
59 * lily/text-spanner.cc (setup_pedal_bracket):
60 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
61 Fix the lengths of mixed-style piano pedal brackets.
63 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
65 * Documentation/user/tutorial.itely (First steps): Add missing
68 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
69 about guile --with-threads. Hopefully this issue can be resolved
70 rsn, but maybe we should even add warnings for the standard Debian
73 * configure.in: Warn if guile is configured to use threads. Maybe
74 we should make this an error (ie, add to REQUIRED list?)
76 * config.make.in (PACKAGE_NAME):
77 (PACKAGE, package): Don't hardcode.
79 * VERSION (PACKAGE_NAME): Typo fix.
81 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
83 * input/tutorial/brahms-*.ly: new tutorial files.
85 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
87 * scm/script.scm (default-script-alist): fermata is up.
89 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
90 dynamic line spanner when there is no crescendo to connect.
92 * lily/tie.cc (get_control_points): add test to avoid flat ties.
94 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
96 * lily/note-collision.cc (check_meshing_chords): don't crash if no
99 * scm/music-functions.scm (toplevel-music-functions): new
100 definition. Functions to apply automatically. Removes the need for
101 explicitly doing \apply #voicify-music
103 * lily/grob.cc (do_break_substitution): rename function, use
104 global var for criterion argument. Reduces stack usage a little.
106 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
108 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
109 visibility-lambda to break-visibility
111 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
113 * input/bugs/part-combiner.ly: New file.
115 * lily/include/spacing-interface.hh: New file.
117 * lily/include/spaceable-element.hh: Remove.
119 * input/test/script-priority.ly: New file.
121 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
123 * lily/system.cc (output_lines): kill grobs that are only for spacing.
125 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
127 * lily/fingering-engraver.cc (make_script):
128 * lily/script-engraver.cc (process_music):
129 * lily/text-engraver.cc:
130 (process_acknowledged_grobs): Remove hard coded script-priority.
132 * flower/warn.cc: Cleanup.
134 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
137 * aclocal.m4: Regenerate.
139 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
141 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
142 * lily/include/lily-guile.hh: Only include config.h if necessary.
144 * Changelog: cvs changes ml archive test #8.
146 * lily/slur-engraver.cc: Layout fix.
148 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
150 * ly/engraver-init.ly (RhythmicStaffContext): add
151 Dot_column_engraver, resurrect barlines
153 * VERSION: 1.5.62 released.
155 * lily/engraver-group-engraver.cc (do_announces): rename
156 create_grobs () to process_acknowledged_grobs().
158 * lily/grob.cc (programming_error): add programming_error with
161 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
162 fail if a beam doesn't have stems.
164 * lily/engraver-group-engraver.cc (do_announces): scary change in
165 calling convention of create_grobs(): no create_grobs() call
166 before acknowledge_grobs().
168 * lily/sequential-music-iterator.cc (skip): add support for grace
171 * lily/music.cc (Music): fix very subtle and nasty memory
172 corruption bug. Typical symptom: "programming_error: Rhythmic_req
175 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
177 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
179 * ly/engraver-init.ly (RhythmicStaffContext): add
183 * lily/parser.yy: various protection fixes. Less objects are now
186 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
188 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
191 * Documentation/windows/zlily-profile.sh:
192 * Documentation/windows/post-lilypond.sh: Assume normal
193 prefix=/usr for lilypond.
195 * lily/musical-request.cc (length_mom): Display origin with error.
197 * input/test/duration-check.ly: New file.
199 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
202 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
203 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
206 * autogen.sh: Regenerate.
208 * Documentation/topdocs/INSTALL.texi:
210 * stepmake/configure.in:
211 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
212 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
213 ./configure once again requires autoconf == 2.13.
215 * stepmake/autogen.sh: Check for autoconf == 2.13.
217 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
219 * lily/parser.yy (open_request_parens): add input locations to
220 open and close parens.
222 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
224 * lily/tuplet-bracket.cc:
225 * lily/text-spanner.cc:
226 * lily/piano-pedal-engraver.cc:
227 * scm/grob-description.scm:
228 * scm/grob-property-description.scm: Changed the
229 edge-width property of brackets to edge-widen. Changed the sign of
230 the left element of edge-widen so a pair of equal numbers produces
231 a symmetrical bracket.
233 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
235 * ly/espanol.ly: added.
237 * lily/simple-spacer.cc (solve): remove assert.
239 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
241 * lily/forbid-break-engraver.cc (class
242 Forbid_line_break_engraver): new engraver: forbid linebreaks
245 * lily/spacing-spanner.cc (loose_column): add another check: don't
246 move around bar lines as loose columns.
248 * scm/basic-properties.scm (default-break-barline): add pre-break
251 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
253 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
254 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
256 * scripts/lilypond-book.py (environment): Bugfix: update to new
257 TEXMF scheme, from ly2dvi.
259 * lily/lookup.cc (slur): Invoke bezier-bow.
261 * scm/tex.scm (bezier-bow):
262 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
263 (Previously named bezier-sandwich).
265 * scm/tex.scm (bezier-sandwich):
266 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
268 * make/lilypond.mandrake.spec.in (post):
269 * make/lilypond.suse.spec.in (post):
270 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
272 * tex/lilyponddefs.tex: Uncomment feta character support.
274 * Documentation/user/refman.itely (Pitches): Add espanol.ly
277 * ly/catalan.ly: Add comment about (spanish) -s suffix.
279 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
282 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
284 * GNUmakefile.in (short-examples):
285 (long-examples): Bugfix for --srcdir build.
286 (top-web): Rewrite weblist find command.
288 * stepmake/bin/config.sub:
289 * stepmake/bin/config.guess: Update from latest autotools.
292 * autogen.sh: Regenerate.
295 * stepmake/configure.in:
296 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
297 requires autoconf >= 2.50.
299 * stepmake/autogen.sh: Check for autoconf >= 2.50.
301 * Documentation/user/refman.itely: Bugfix for tablature example.
303 * Documentation/windows/compiling.texi: Update for new and
306 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
308 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
309 introduce base-shortest-duration
311 * lily/parser.yy (music_output_def_body): don't crash when \tempo
312 in unexpected \midi{} is found.
314 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
316 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
317 the use of make/ly.make for use as an external makefile. Probably
318 noone except for myself ever used this anyway.
320 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
321 to new $datadir convention (<package>/<version>).
323 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
325 * VERSION: 1.5.61 released
327 * Document/user/refman.itely: tablature doc and code updates by
328 Jean-Baptiste Lamy <jiba@tuxfamily.org>
330 * input/template/piano-dynamics.ly: bugfixes.
332 * lily/key-engraver.cc (try_music): read request only once. Don't
333 overwrite lastKeySignature. Call create_key() only once. This
334 fixes a bug with multiple equal key changes on polyphonic staffs.
336 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
338 * scm/grob-description.scm: Add side-position-interface to TextSpanner
340 * scm/grob-property-description.scm: Document the trill line type.
342 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
344 * stepmake/stepmake/generic-vars.make:
345 * make/lilypond-vars.make:
346 * GNUmakefile.in (builddir-setup): New setup for builddir run.
347 Fixes LilyPond run from builddir for --srcdir builds.
349 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
352 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
354 * scm/grob-description.scm (all-grob-descriptions): add
355 font-family to RehearsalMark
357 * scm/drums.scm: move over definitions from drum-pitch-init.ly
359 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
362 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
364 * lilypond-mode.el: Propose saving before applying a command:
365 for saved buffer set default command to LilyPond.
367 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
369 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
372 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
374 * Documentation/windows/lilypond-doc.hint: New file.
376 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
377 Bugfixes for --srcdir html-doc build.
379 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
380 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
382 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
384 * ly/script-init.ly (pralldown): add some scripts.
386 * Documentation/user/refman.itely: many edits.
388 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
390 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
391 direction, this breaks staffline avoidance of the bracket when
394 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
396 * scripts/midi2ly.py: Fix handling of -o
398 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
400 * lily/molecule.cc (translate): set max distance to 100 cm.
402 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
404 * VERSION: 1.5.60 released
406 * lily/beam.cc: tremolo fix.
408 * scripts/convert-ly.py: add tuplet-X-visibility rules.
409 add VerticalExtent -> verticalExtent rules.
411 * lily/axis-group-engraver.cc: consistent case for
412 XxxxVerticalExtent properties.
414 * Documentation/user/refman.itely (Tuplets): update
415 tuplet-X-visibility properties.
417 * input/test/defaultbars.ly: Corrected (thanks Mats)
419 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
421 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
423 * buildscripts/lilypond-profile.sh: override settings if
424 LILYPONDPREFIX is set.
426 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
428 * scripts/ly2dvi.py (non_path_environment): Fix typo
430 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
432 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
434 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
436 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
438 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
439 beam-engraver: use different engraver so we can mix normal and
442 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
444 * lily/beam.cc (shift_region_to_valid): Try to shift positions
445 after slope-damping and concaveness check, so that short-stems are
448 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
450 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
452 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
454 * VERSION: 1.5.59 released
456 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
457 notice that missing features are exercise for user.
459 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
461 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
462 (but alas, not partly precomputed) value for current_y when
463 calculating stem length demerits.
464 (calc_stem_y): Temporary precomputed factors fix.
466 * lily/stem.cc (calc_stem_info): Take multiplicity into account
469 * input/bugs/melisma-tie-rest.ly: New file.
471 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
473 * lily/stem.cc (calc_stem_info): remove min_y member, rename
474 stuff. Remove kneeing stuff.
476 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
479 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
485 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
486 patch-level of version in minor-version string. Arg.
488 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
490 * ly/engraver-init.ly (TabStaffContext):
491 enable TabStaff by default.
493 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
495 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
497 * config.hh.in: Remove duplicate DIR_DATADIR entry.
499 * aclocal.m4: Regenerate.
501 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
503 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
505 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
507 * lilypond-mode.el: Write notes with fewer keystrokes trough a
508 "Quick notes"-interface.
510 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
512 * input/regression/non-empty-text.ly: Update example with outdated
515 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
517 * scripts/convert-ly.py: add textNonEmpty rule
519 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
521 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
523 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
524 using translate-robust add_molecule instead of add_at_edge.
525 Bugfix for #(lines (finger "" "1")).
527 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
529 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
532 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
536 * Documentation/user/refman.itely: Bugfix: add node Repeats and
537 MIDI. Regenerate menu. Fix @end example.
539 * lily/accidental.cc: Add cautionary-style to interface.
541 * mf/feta-beugel.mf (code): use autometric macros for braces.
542 This fixes input/bugs/braces.
544 * lily/afm.cc (count): return numOfChars, not size of array
547 * lily/script.cc (before_line_breaking): postpone setting the
548 X-parent of vertical scripts. This fixes the case of scripts on
551 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
553 * scm/grob-description.scm: fix alignment of barnumber: make sure
554 it doesn't hit the G-clef.
556 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
557 startGraceMusic not startGraceContext).
559 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
561 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
564 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
566 * lily/accidental-engraver.cc: remove old accidental engraver,
567 move new one to accidental-engraver.cc.
569 * lily/local-key-item.cc: remove file
571 * lily/include/local-key-item.hh: remove file
573 * scripts/ly2dvi.py (make_preview): add --preview-resolution
576 * lily/accidental.cc (brew_molecule): support for cautionary
579 * lily/note-head.cc (internal_brew_molecule): warn if note head
582 * lily/time-signature.cc (special_time_signature): remove warning
583 about time signature.
585 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
586 reverse springs by limiting fixed-note space.
588 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
590 * stepmake/aclocal.m4: Bugfix: complain if program not found.
592 * scripts/update-lily.py (next_version, prev_version, diff_name):
593 New function. Patches now named name-prev-latest.diff.gz.
594 Bugfix: import shutil.
596 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
598 * input/tutorial/sammartini.ly: fix and document autochange
601 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
602 does produce .pdftex files.
604 * lily/note-collision.cc (check_meshing_chords): move file from
605 collision.cc, implement merged note heads (there you go, Drarn :-)
607 * input/regression/collision-heads.ly: new file
609 * VERSION: 1.5.57 released.
611 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
613 * mf/parmesan-heads.mf, scm/grob-description.scm,
614 scm/grob-property-description.scm, scm/interface-description,
615 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
616 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
617 lily/include/ligature-engraver.hh,
618 lily/include/ligature-bracket.hh, lily/parser.yy,
619 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
620 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
621 lily/ligature-head.cc, lily/ligature-engraver.cc,
622 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
623 implemented white mensural ligatures (still with a big list of
627 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
629 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
630 Documentation/user/internals.itely.
632 * lily/function-documentation.cc: new file. Infrastructure for
633 self documenting Scheme functions.
635 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
637 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
639 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
641 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
642 and * (as in "([^>]*)?")
644 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
646 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
647 Add info about CVS. Stable/development are currently 1.4/1.5,
648 both at lilypond.org.
650 * autogen.sh: Generate.
652 * stepmake/configure:
653 * configure: Regenerate.
655 * stepmake/stepmake/automatically-generated.sub.make: Keep
658 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
660 * stepmake/stepmake/generic-targets.make (configure): Generate
663 * GNUmakefile.in (SCRIPTS):
664 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
666 * stepmake/autogen.sh: New file.
668 * configure: Check for g++ >= 2.95.
670 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
671 c/c++ version checking.
673 * flower/include/string.hh: Typo fix.
675 * lily/include/midi-item.hh: Remove stray i.
677 * Documentation/windows/GNUmakefile: Avoid collapsed directory
680 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
681 constructs '//' from arguments.
683 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
685 * scm/lily.scm (ly-load): show SCM filenames if verbose.
687 * lily/lily-guile.cc (init_functions): add ly-verbose function.
689 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
691 * flower/include/{pointer,tuple}*: removed.
693 * VERSION: released 1.5.56
695 * scm/music-functions.scm (check-start-chords): function to check
696 for chords without \context. Apply automatically from parser.
698 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
700 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
703 * scm/output-lib.scm: fix ez notation stems.
705 * lily/paper-outputter.cc: various fixes to speed up compilation.
707 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
709 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
711 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
713 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
714 determine latex input.
716 * stepmake/bin/install-sh: Include latest from libtool.
718 * stepmake/configure:
719 * configure: Regenerate.
721 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
722 (USER_CFLAGS): Bugfix, include CPPFLAGS.
724 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
726 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
727 REQUIRED programs and version. Try to continue configuring, list
728 missing programs at the end, but don't generate a GNUmakefile if
729 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
730 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
731 fancy for some older systems.
733 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
735 * lily/score-engraver.cc (typeset_all): sanity check for items
736 that are Y parent to spanner.
738 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
741 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
743 * lily/*.cc: remove as many iostream use as possible.
745 * flower/ : remove text-db, text-stream, data-file.
747 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
749 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
750 (completize_preamble): don't barf if no preamble present.
751 (do_file): allow extensions on --output
753 * scripts/ly2dvi.py (make_preview): make automatic preview of
754 first system. Small cleanups.
756 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
758 * scripts/lilypond-book.py (make_pixmap): output png directly.
760 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
763 * lily/parser.yy (My_lily_parser): comment out code. (Causes
764 problems with recent bison releases).
766 * make/lilypond.redhat.spec.in: add pfa fonts to X.
768 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
770 * lilypond-font-lock.el: Fixes the order of the note name list.
772 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
774 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
775 capability, --verbose option, rlimit hack.
777 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
779 * lily/piano-pedal-engraver.cc: cleanups.
781 * lily/accidental.cc (after_line_breaking): add break tie
784 * lily/text-engraver.cc (try_music): don't typeset fingerings
786 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
788 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
790 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
792 * lily/*.cc: change gh_str02scm() to ly_str02scm().
794 * lily/spacing-spanner.cc (note_spacing): Bound
795 shortest-playing-length by the distance to next note. This should
796 fix chord tremolo spacing.
798 * VERSION: 1.5.55 released
800 * lily/stem.cc (off_callback): invisible stem over whole note is
801 centered on note now.
803 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
804 stem-tremolo is stem now.
806 * input/mozart-hrn*.ly: many corrections.
808 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
809 support for dynamic scripts.
811 * lily/accidental-placement.cc (position_accidentals): check for
812 collisions as well: should avoid those heads too.
814 * lily/beam.cc (check_concave): allow undefined gap and
815 threshold. Change the meaning of threshold/gap == 0.0.
816 (check_concave): skip Stolba concaveness check if we have a knee
819 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
821 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
822 tremolos of dotted duration.
824 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
826 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
827 downstroke again. Sigh.
829 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
832 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
834 * lily/slur.cc (add_column): allow slur over rest.
836 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
838 * lily/beam.cc: move scoring constants out of code
840 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
842 * mf/feta-nummer.mf: scalability fixes.
844 * mf/feta-nummer-code.mf: fixes for 5, 8.
846 * mf/feta-klef.mf: G clef fixes.
848 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
850 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
852 * scripts/lilypond-book.py: %Newline, rather than glue macros
853 after \end{verbatim}.
855 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
857 * Documentation/user/lilypond-book.itely:
858 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
861 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
863 * scm/grob-property-description.scm (beam-space): Junk.
865 * lily/beam.cc (space_function): New method.
866 (get_interbeam): Call space-function.
868 * scm/grob-description.scm (Beam): Initialize space-function with
869 Beam::space_function.
871 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
872 Beam.space-function. Don't quantise grace beams.
874 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
876 * VERSION: 1.5.54 released
878 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
881 * Documentation/index.texi: add PDF links.
883 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
885 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
886 compare #'glyph as strings.
888 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
890 * scripts/ly2dvi.py (setup_environment): fix by Mats.
892 * lily/stem.cc (head_count): Change function name. Change property
893 to #'note-heads i.s.o. #'heads.
894 (position_noteheads): Kern noteheads for invisible stems.
895 (before_line_breaking): Do position_noteheads() for whole note
898 * lily/accidental-placement.cc (position_accidentals): First
899 determine refpoints, only then determine extents.
901 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
903 * lily/accidental-placement.cc (position_accidentals): use all
904 note heads for note head-skyline.
906 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
908 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
910 * Documentation/windows/setup.hint (requires): Add gsview dependency.
912 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
914 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
916 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
918 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
920 * mf/feta-schrift.mf: lighter staccato.
922 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
924 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
926 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
928 * VERSION: 1.5.53 released
930 * scm/lily.scm (ly-load): use primitive-load for loading.
932 * lily/misc.cc: remove quantise_iv()
934 * lily/*.cc: pass read-only arrays by reference.
936 * lily/grob.cc (common_refpoint_of_array): new function. Try to
937 use common_refpoint_of_{array, list} when possible.
939 * lily/include/accidental-placement.hh: new file.
941 * lily/accidental-placement.cc (alignment_callback): position
942 accidentals in a better way.
944 * lily/skyline.cc: new file. Compute distances for collections of
947 * lily/include/skyline.hh: new file
949 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
951 * lily/accidental.cc (class Accidental_interface): grob for a
954 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
957 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
958 together with new accidental-interface.
960 * lily/include/*.hh: remove spurious set_interface() decls.
962 * lily/key-signature-interface.cc (brew_molecule): add padding for
963 natural signs. Make natural typesetting like the sharp.
966 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
967 is now slightly curved, not straight.
970 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
972 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
974 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
975 more strictly. Use more clever regular expressions. Commented regexps.
977 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
979 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
981 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
983 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
984 to control width of staff symbol in ragged-right mode (by request
987 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
988 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
989 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
990 added support for ligature brackets (needed when transcribing
993 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
995 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
996 Fontify notes more strictly.
998 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
1000 * mf/feta-din-code.mf: dynamic z sign.
1002 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
1004 * lilypond-mode.el: Prevent recoloring strings and comments.
1006 * lilypond-font-lock.el: Handle block comments: block comments
1007 can have also ordinary comments inside.
1009 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
1011 * lily/stem.cc (get_default_dir): set direction to CENTER if
1012 invisible. Various other fixes to deal with invisible stems and
1013 stem-direction == CENTER.
1015 * lily/rest-collision.cc (do_shift): take direction from note if
1018 * input/regression/tie-grace.ly: new file.
1020 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1022 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1023 knee correction. Fixes tight spacing for knees.
1025 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1027 * VERSION: 1.5.52 released
1029 * lily/*.cc: add some undocced properties.
1030 scm/grob-description.scm: idem.
1032 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1034 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1035 multi-measure rests like "R1 *4" and scheme (typically has '#'
1036 in the beginning). Small fixes. Add few reserved words.
1038 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1040 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1043 * Documentation/windows/installing.texi: Suggest gswin32c (console
1044 program) for getting the version. Layout fixes.
1046 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1048 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1049 windows viewing commands, remove silly comment about Yap.
1051 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1053 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1054 configure to find kpathsea on for example Slackware 8.0.
1056 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1058 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1059 by default: avoid "1" over single bar rests.
1061 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1062 and correct the handling of geometry options.
1064 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1066 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1067 implementation for Class::has_interface automatically. Junk all
1068 other implementations.
1070 * lily/grob.cc (internal_get_grob_property): also typecheck
1071 property reads. Catches even more undocced properties. Bugfixing
1072 left for the uninspired masses.
1074 * lily/beam.cc: remove end_after_line_breaking().
1076 * lily/grob.cc (calculate_dependencies): remove list support for
1079 * lily/font-size-engraver.cc: only do font-interface.
1081 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1083 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1086 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1088 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1089 brackets using arpeggio requests.
1091 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1092 molecule-callback to use for drawing the brackets.
1094 * Documentation/user/refman.itely:
1095 * input/test/chord-bracket.ly: Chord brackets documented
1097 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1099 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1101 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1103 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1105 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1106 direction tuplets on beams.
1108 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1110 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1112 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1114 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1115 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1116 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1117 submenu to "LilyPond"-menu.
1119 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1120 an interface to play midi.
1122 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1124 * input/regression/script-stack-order.ly: new file.
1126 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1128 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1130 * mf/feta-din-code.mf: kerning for dynamics.
1132 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1134 * input/regression/dynamics-glyphs.ly: new file
1136 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1138 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1139 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1141 * Documentation/windows/gs-profile.sh:
1142 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1143 moved to gs/gsview windows packages.
1145 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1147 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1148 finding out the duration. Fixes chord tremolo bug.
1150 * lily/completion-note-heads-engraver.cc (process_music): Set
1151 correct duration for all requests of the broken notes.
1153 * input/regression/completion-heads.ly: Added example of
1154 Completion_heads_engraver.
1156 * lilypond-mode.el: Added "2Midi" command
1158 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1160 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1161 edge-width, edge-height and shorten-pair properties for tuplet
1164 * lilypond-indent.el: Support for blinking of matching parentheses
1166 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1168 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1169 cleanups of piano pedal brackets.
1171 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1173 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1175 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1177 * mf/feta-new-code.mf: new dynamic f sign.
1180 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1182 * mf/feta-new-code.mf: new dynamic p sign.
1184 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1186 * lily/note-spacing.cc (stem_dir_correction): only do
1187 beam-correction if a beam is there.
1189 * lily/stem.cc (duration_log): change from flag_i (); better
1191 (get_default_stem_end_position): fix dot/flag collision code.
1193 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1195 * VERSION: release 1.5.50
1197 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1198 unit spring here. Reduces number of warning messages.
1200 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1202 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1204 * scm/generic-property.scm: remove generic-property, property-engraver
1206 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1208 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1210 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1212 * scm/*.scm: remove volta, hairpin and tuplet functions.
1214 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1215 note column for notes/stems/dots that already have parents. Fixes
1216 nested grace contexts.
1218 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1220 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1221 get too curved slurs.
1223 * scm/slur.scm (default-slur-extremity-offset-alist)
1224 (default-phrasing-slur-extremity-offset-alist): Move slur
1225 attachments further away from note-head, vertically. Also, leave
1226 a horizontal gap between slur and stem end.
1228 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1230 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1232 * input/regression/spacing-grace-duration.ly: new file
1234 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1235 for shortest durations.
1237 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1238 extent of the mm rest.
1240 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1243 * lily/tuplet-bracket.cc (make_bracket): new function
1244 (get_x_offset): new function; make tuplet brackets align on stems
1245 if stem has same direction.
1246 (parallel_beam): be anal about matching bracket to tuplet.
1248 * lily/lookup.cc (line): new function Lookup::line().
1250 * scm/tex.scm (dashed-line): change -line to -system in names.
1252 * lily/box.cc (add_point): new function.
1254 * flower/include/interval.hh: new function add_point ().
1255 new function widen()
1257 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1259 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1261 * scm/grob-property-description.scm (number-threshold): Add
1264 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1265 rest if #measures > number-threshold. Use padding (well, fake
1268 * scm/font.scm (make-style-sheet): New styles: mark-number,
1270 (paper20-style-sheet-alist): Add bigger bold fonts.
1272 * lily/mark-engraver.cc (process_music): Use style mark-number or
1275 * .cvsignore: Ignore all kinds of lilypond input and output.
1277 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1279 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1281 * lily/staff-symbol.cc (brew_molecule): make line thickness
1284 * lily/*.cc: replace stafflinethickness by linethickness.
1286 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1288 * input/regression/beam-concave.ly: Add to-be-considered-concave
1291 * lily/beam.cc (check_concave): Add check for large gap between an
1292 inner notehead and the line through outer noteheads.
1294 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1295 value 2.0 staff-space.
1297 * scm/grob-property-description.scm (concaveness-gap): Add
1300 * input/mozart-hrn3-allegro.ly: Fix typo.
1302 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1304 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1305 lily/note-head-engraver: improved implementation of roundfilledbox
1306 (according to Han-Wen's request)
1308 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1309 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1310 lily/simple-spacer.cc: ragged-right alignment
1312 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1314 * input/regression/spacing-note-flags.ly: new file
1316 * input/regression/spacing-rest.ly: new file
1318 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1320 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1321 all grace notes tight (not only the column directly following a
1324 * scm/grob-description.scm (all-grob-descriptions): don't make
1325 mm-rests larger than normal.
1327 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1328 curved. Remove white space at the right of flags.
1330 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1332 * ports/ports.make: Bugfix: ignore CVS directories.
1334 * stepmake/.cvsignore: New file.
1336 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
1338 * lily/note-spacing.cc (stem_dir_correction): don't correct when
1339 there is a flag on the stem.
1341 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1343 * scm/grob-property-description.scm (measure-length):
1344 measure-length grob property.
1346 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1347 better spacing for breakable columns when they're juxtaposed: use
1348 measure length if applicable
1350 * lily/timing-engraver.cc (start_translation_timestep): store
1351 measure length in breakable column at start of measure.
1353 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1355 * ROADMAP: Add description for ports dir, to check email upon
1358 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
1360 * VERSION: 1.5.48 released
1362 * lily/multi-measure-rest.cc (symbol_molecule): split off from
1364 (set_spacing_rods): Use symbol_molecule() to determine minimum
1366 (church_rest): split off from brew_molecule()
1367 (big_rest): split off from brew_molecule(). Construct using
1370 * mf/feta-eindelijk.mf: junk multi measure rest.
1372 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
1374 * lily/multi-measure-rest.cc (add_column): remove columns property.
1376 * lily/dynamic-engraver.cc (process_music): add more verbose warning
1378 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1381 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
1383 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1384 keywords covered, dropped some non-keywords, include R- and 128-notes
1386 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1388 * Code clean-up: Junk multiple implementations of ledger line
1389 creation in note_head, custos, and porrectus. This is important
1390 since there soon will be some more applications of ledger lines to
1391 come (e.g. ambitus engraver).
1393 * Make thickness of ledger lines adjustable. This is essential
1394 for mensural notation.
1396 * Fix some bugs in the current ledger_line implementation, most
1397 notably that of the horizontal extent of ledger lines which equals
1398 at least the extent of the metafont ledger_line character, and
1399 which grows(!) if the desired extent shrinks below this limit.
1401 * roundfilledbox: variable blotdiameter
1403 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
1405 * VERSION: 1.5.47 released
1407 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1409 * lily/porrectus.cc: change line-thickness to thickness, change
1410 stem-direction to direction.
1412 * scm/backend-documentation-lib.scm (check-dangling-properties):
1413 Automatically detect doc'ed properties that are not in an interface
1415 * scm/grob-property-description.scm: property cleanup. Remove many
1416 paper-column props that are non-existent.
1418 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1419 the grob has a molecule-callback.
1421 * lily/*.cc: remove many set_interface() calls, and their
1424 * input/regression/spacing-knee.ly: new file
1426 * input/regression/spacing-clef-first-note.ly: new file
1428 * lily/staff-spacing.cc (get_spacing_params): different spacing
1429 for pref matter to note at start of line, halfway during line.
1431 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1432 correction only if stems have same direction (i.e. not for
1433 stem-clef combination).
1434 (stem_dir_correction): maximal correction for knees.
1436 * lily/*.cc: many updates to interface descriptions.
1438 * lily/grob.cc (internal_set_grob_property): add interface check
1439 for every set_grob_property call
1441 * lily/*.cc: document interface stuff in C++
1443 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
1445 * lily/volta-bracket.cc: naming: change volta spanner to
1448 * input/bugs/*.ly: cleanup, remove lots of files.
1450 * buildscripts/mf-to-table.py (write_ps_encoding): generate
1451 .encoding file. WARNING: upgrade to pktrace 1.0.3
1453 * mf/feta-toevallig.mf: change PS name for parentheses.
1455 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1457 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1460 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
1462 * lily/scope.cc: remove file .
1464 * lily/include/scope.hh: remove file. Remove Scope class
1468 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1469 score_forbidden_quants): ): take out of SCM, pass parameters so
1470 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1472 (calc_stem_y): robustness: take care of last_visible_stem == 0.
1475 * lily/lily-guile.cc (ly_unit): return internal unit.
1477 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
1479 * lily/paper-outputter.cc (output_version): output internal unit
1480 from Paper_outputter
1482 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1484 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1486 * scripts/ly2dvi.py: clean up old .*pk font caching code.
1488 * scm/ps.scm: Use uppercase postscript font names for the standard
1491 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1492 Add all available TeX Type1 fonts, including Feta, to the
1493 Ghostscript font path.
1495 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1496 version (affects the FontName) in lilypond.map.
1498 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1499 documentation file to fetaNNlist.ly to avoid name collisions between
1500 lilypond generated .tex file and font .tex macros file.
1503 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
1505 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1506 made mensural longa and (semi-)brevis leaner
1508 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1510 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1511 clean-up: moved bezier shape and slope from porrectus to lookup
1513 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1514 and /usr/share/texmf/fonts
1516 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1518 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
1520 * lily/text-spanner.cc (brew_molecule): add #'thickness
1521 (brew_molecule): add corrections for thickness in molecule padding.
1523 * lily/line-spanner.cc (line_atom): make function private
1525 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1526 discover bounding box. This solves the cropping problem.
1528 * lily/bar-check-iterator.cc (process): Only resynchronize bar
1529 check when it fails. This fixes the combination of grace notes
1532 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
1534 * lily/repeated-music.cc (minimum_start): new Scheme callable function
1535 (first_start): new Scheme callable. This will fix repeated music
1536 starting with grace notes.
1538 * lily/music.cc (start_mom): check start-moment-function grob property.
1540 * VERSION: 1.5.45 released
1542 * input/regression/system-extents.ly: new regression test. Test
1545 * lily/system.cc: rename LineOfScore into System
1547 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1549 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1550 (ly_get_extent): new Scheme function ly-get-extent
1552 * ps/lilyponddefs.ps: use output-scale for line-x
1555 * scm/ps.scm (font-load-command):
1558 2002-03-20 Rune Zedeler <rune@zedeler.dk>
1560 * lily/beaming-info.cc: Stupid typo fixed
1562 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1563 support for cross-context auto-accidentals.
1564 Now the engraver can stay in Staff-context and see other contexts
1566 Changed properties: autoAccidentals, autoCautionaries
1568 * lily/translator-group.cc (set_children_property):
1569 Function added recursively setting the same property (deep_copied)
1570 for all children of a Translator_group.
1572 * ly/property-init.ly: added commands
1573 \pianoAccidentals \voiceAccidentals
1574 \modernVoiceAccidentals \modernVoiceCautionaries
1576 * ly/engraver-init.ly: Correct initialization of new accidentals.
1578 * scm/translator-property-description.scm: Updated
1580 * input/regression/accidental-voice.ly: Added
1582 * Documentation/regression-test.tely: Added new test
1584 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1586 * VERSION: 1.5.44 released
1588 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1590 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1592 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1595 * tex/feta*.tex: remove.
1597 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1598 all software dealing with it.
1600 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
1602 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1603 (this fixes pdf output). Drop awk dependency.
1605 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1606 dimensions (linewidth) are in mm.
1608 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1610 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1612 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1614 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
1616 * VERSION: 1.5.43 released
1618 * scm/beam.scm (beam-dir-majority-median): if majority is
1619 undecided, use median. Removes a forced dir in sarabande.
1621 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1623 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1625 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1626 widths, heights and shortens are now customisable properties.
1628 * scm/grob-description.scm, scm/grob-property-description.scm: New
1629 properties added to PianoPedalBracket, unnecessary
1630 Y-offset-callbacks removed from *Pedal, undocumented properties
1633 * Documentation/user/refman.itely: Piano pedal updates.
1635 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1637 * scm/grob-property-description.scm:
1638 * scm/interface-description.scm: Remove old stuff.
1640 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1641 0.48 (previously 0.42).
1642 (Beam): Remove old stuff.
1645 * lily/stem-tremolo.cc:
1647 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1648 (previously space-function).
1650 * stepmake/bin/add-html-footer.py: Website title fix.
1652 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1654 * scripts/ly2dvi.py (environment): use new font searching setup.
1656 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1658 * lily/tfm.cc (dimensions): make code dimension independent
1660 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1663 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1665 * lily/include/dimensions.hh: try MM as internal unit.
1667 * scm/*.scm: remove invoke-dim1
1669 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1671 * GNUmakefile.in (fontpaths): add fontpaths target,
1673 * make/mutopia-targets.make: add PDF rules.
1675 * make/mutopia-rules.make: add pdf rule.
1677 * buildscripts/mutopia-index.py (list_item): add PDF.
1679 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1681 * make/lilypond-vars.make: set TEXMF for the new font setup.
1683 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1685 * VERSION: 1.5.42 released
1687 * mf/feta-schrift.mf: endless twiddling of Tr.
1689 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1690 endless twiddling with the bulb shape.
1692 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1693 little smaller if there is an accidental.
1695 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1697 * buildscripts/lilypond-profile.sh:
1699 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1700 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1701 Implement new font installation strategy
1703 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1704 the new font installation strategy.
1706 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1709 * input/test/staff-size.ly: Simplified using StaffContainer
1711 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1714 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1716 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1718 * lily/beam.cc (score_stem_lengths): new quanting stuff
1719 (score_forbidden_quants): Second and third beam quant stuff.
1721 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1723 * lily/beam.cc (least_squares): Remember least-squares-dy for
1725 (quantise_interval): Don't quant to dy steeper that
1726 least-squares-dy. Return empty interval if no sane quants found.
1727 (quantise_position): Try quantise_interval until we have
1728 acceptable solution.
1730 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1732 * scm/interface-description.scm (beam-interface): Update.
1734 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1736 * VERSION: 1.5.41 released
1738 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1739 optima serifs on top of t, bottom of r.
1741 * mf/feta-bolletjes.mf: make ledger line rounder.
1743 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1745 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1748 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1750 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1751 well as text pedal indications and a combination of both. All
1752 pedal indications are horizontally aligned on a line spanner.
1754 * lily/text-spanner.cc: Edge-width property added to use in
1755 bracketed piano pedals. Function setup_sustain_pedal added to set
1756 the dimensions of the brackets.
1758 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1759 some of the *Pedal properties tweaked.
1761 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1762 edge-width (TextSpanner) properties.
1764 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1766 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1767 fontified identifiers list.
1769 * input/test/pedal.ly: New pedal features added.
1771 * Documentation/user/refman.itely: New pedal features documented.
1774 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1776 * lily/include/new-beam.hh: Previously new-beam.hh
1777 * lily/beam.cc: Previously new-beam.cc
1778 (least_squares): Bugfix: don't barf on beams with less than two
1779 visible stems (tremolos).
1782 * scm/grob-description.scm (Beam): Junk old beam stuff.
1785 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1789 * mf/feta-eindelijk.mf: new 8th rest.
1791 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1792 stick out of staffline
1794 * scripts/lilypond-book.py: fixes for texi regular expressions.
1796 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1798 * lily/include/new-beam.hh:
1799 * lily/new-beam.cc: New file.
1801 * flower/include/interval.hh:
1802 * flower/include/interval.tcc (delta): New method.
1803 (swap): Now public (previously private).
1805 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1806 1 staff-line-thickness. Sadly, this makes dy quanting problems
1807 (dy quants allowed should depend on actual left y) more visible.
1809 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1811 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1813 * scm/grob-property-description.scm (concaveness-threshold): Add
1814 typecheck and description.
1816 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1817 concaveness-threshold (previously concaveness).
1819 * lily/beam.cc (check_concave): Remove choices and debugging
1820 stuff: use best concaveness calculation.
1821 (quantise_dy): Remove choice. Try to never make a slope steeper
1822 by quantising, but certainly never quantise a slope away.
1823 (check_stem_length_f): Remove choice. In case of lengthening
1824 alowed, always lengthen to ideal length.
1826 * Documentation/index.texi: Fix FAQ url.
1828 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1829 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1831 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1833 * VERSION: 1.5.39 released
1835 * lily/simple-spacer.cc (add_rod): rods take precedence over
1836 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1838 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1840 * lily/note-spacing.cc (get_spacing): only insert space for
1841 accidentals if necessary.
1843 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1845 * lily/spacing-spanner.cc (musical_column_spacing): new
1846 function. Have correct spacing from note to end-of-line as well.
1848 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1850 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1852 * darwin.patch: New file.
1854 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1855 code. Shorten stems by fraction of stems to be shortened.
1857 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1858 of shorten value for boundary cases.
1860 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1861 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1863 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1865 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1867 * scm/grob-description.scm (Beam): Add concaveness. Replace
1868 Beam::cancel_suspect_slope with Beam::check_concave.
1870 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1871 set slope to horizontal if concaveness > Beam.concaveness. This
1872 handles cases that kludgy cancel_suspect_slope was meant to catch
1874 (cancel_suspect_slope): Remove.
1876 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1878 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1879 stemLeftBeamCount and stemRightBeamCount to equal 0.
1882 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1884 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1885 fixed spacing for pref matter, if the next column is musical, and
1888 * lily/note-spacing.cc (stem_dir_correction): Use correct
1889 discretionary for stem-bar spacing.
1891 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1893 * VERSION: 1.5.38 released
1895 * lily/grob.cc (warning): Use cause tracking to give more
1896 meaningful errors from the backend.
1898 * lily/property-iterator.cc (check_grob): Warn if setting grob
1899 property in unknown grob.
1901 * mf/feta-toevallig.mf: brushed stems for natural sign.
1903 * lily/molecule.cc (align_to): don't translate empty molecule.
1904 (this triggers a very subtle bug in time-signature.)
1906 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1908 * lily/spring.cc: remove file.
1910 * input/regression/spacing-stem-bar.ly: new file
1912 * lily/score.cc (run_translator): resurrect point-and-click
1914 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1917 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1918 spacing is now globally determined, using the most common shortest
1919 note. Notes that are shorter are spaced geometrically, and with
1920 expand hints. This makes spacing more even, and measures that have
1921 very short notes won't be that stretched out.
1923 * mf/feta-klef.mf: F-clef fixes, documentation on the
1924 shape. (WARNING: font changed.)
1926 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1928 * lily/simple-spacer.cc (add_columns): support for infinitely
1931 * lily/staff-spacing.cc (get_spacing_params): space after
1932 prefatory matter is fixed.
1934 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1936 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1937 barline following an upstem.
1939 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1940 function from next_notes_correction().
1941 (bar_y_positions): idem.
1943 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1945 * input/regression/break.ly (texidoc): bugfix: escape \ in
1948 * lily/staff-spacing.cc (next_notes_correction): Correct the
1949 spacing of a note following a barline.
1952 2002-03-04 Glen Prideaux
1954 * mf/feta-solfa.mf: Shaped note heads
1956 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1958 * VERSION: 1.5.37 released
1960 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1961 left-align molecule.
1963 * lily/break-align-interface.cc (do_alignment): completely
1964 rewritten. Now it does not use Align_interface anymore, but a
1965 separate routine. Like StaffSpacing, it reads space-alist from the
1966 breakable grobs. This allows you to set spacing using
1968 \property Staff.Clef \override #'space-alist = '(....stuff....)
1970 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1971 to Bar_line. Move files around as well.
1973 * lily/time-signature.cc (time_signature): left align time signatures.
1975 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1976 Corrections of the glyph shape C. Comments added.
1978 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1980 * lily/spacing-spanner.cc: move from third-try.cc; rename
1981 Third_spacing_spanner to Spacing_spanner.
1983 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1984 spacing stuff. Much cleaner now, and we prepare for neat spacing
1985 tricks around bar lines and such.
1987 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1988 variables with themselves. (Ouch.)
1990 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1993 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1997 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2000 * lily/music.cc (ly_get_mus_property): typechecking
2001 (ly_set_mus_property): idem
2002 (ly_make_music): idem
2003 (ly_music_name): idem
2005 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2007 * lily/note-spacing.cc (stem_dir_correction): correction for
2008 same stem notes as well.
2010 * lily/pitch.cc (pitch_transpose): stricter typechecking
2012 * mf/parmesan*mf: magnification fixes.
2014 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2016 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2018 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2019 documenting the font. (Doesn't work for parmesan at the moment)
2021 * Documentation/user/appendices.itely (The Feta font): Add list of
2022 Feta font symbols with names.
2024 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2027 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2029 * lily/translator-group.cc (ly_set_trans_property): typechecking
2030 (ly_get_trans_property): typechecking.
2032 * lily/font-metric.cc (ly_text_dimension): typechecking
2033 (ly_find_glyph_by_name): idem.
2035 * scm/bass-figure.scm (brew-complete-figure): support for
2038 * lily/grob.cc (ly_get_paper_var): new function
2040 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2042 * VERSION (PATCH_LEVEL): 1.5.35 released.
2044 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2045 (bracket): New function.
2047 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2048 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2050 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2053 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2056 * lily/grob.cc (ly_get_grob_property): be anal about types.
2057 (ly_set_grob_property): idem
2059 * lily/figured-bass-engraver.cc (process_music): move molecule
2060 building completely to Scheme
2062 * lily/include/musical-request.hh (class Bass_figure_req): Add
2065 * lily/parser.yy (bass_figure): add support for space figure.
2067 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2069 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2071 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2072 (ly_align_to_x): new function ly-align-to!
2074 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2075 function ly-get-font
2077 * mf/feta-nummer.mf: include normal-space dimension.
2079 * lily/collision.cc (check_meshing_chords): don't merge collisions
2082 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2085 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2087 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2089 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2091 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2094 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2097 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2098 scm/grob-description.scm: added mensural fermata symbol
2100 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2102 * VERSION: 1.5.34 released.
2104 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2106 * lily/staff-symbol-referencer.cc (callback): assume that
2107 staff-position is unset in general.
2109 * input/regression/rest-pitch.ly: new file.
2111 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2114 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2116 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2117 as Scheme option. Run regression test by default with
2118 internal-type-checking.
2120 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2122 * lily/lily-guile.cc (type_check_assignment): changed functions.
2124 * scm/*description*.scm: be anal about typechecks. Some changes
2125 for internal variable names.
2127 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2129 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2131 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2133 * VERSION: 1.5.33 released.
2135 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2136 flare_path everywhere (c-clef, numbers).
2138 * lily/bar-number-engraver.cc (process_music): also print bar
2139 number if measure starts with grace note.
2141 * input/regression/grace-bar-number.ly: new test.
2143 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2145 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2148 * scm/music-functions.scm (voicify-music): split chords into
2149 different voices automatically.
2151 * lily/music.cc (ly_music_list_p): new function
2153 * lily/music-sequence.cc (do_relative_octave): robustification
2155 * scm/music-functions.scm: many utility functions
2157 * lily/music.cc (ly_set_mus_property): add type checks to the
2158 Scheme property assignment.
2160 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2163 * mf/lilypond.map: .map file from Mats' page.
2165 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2167 * Some more parmesan related fixes;
2169 * Custos: varying shape (in particular, stem length), depending on the
2170 vertical position of the custos (on staffline / between stafflines);
2172 * Custos: added grob property "neutral-direction" (same semantics as
2173 with stem); introduced new grob property "neutral-position";
2175 * Time-signature: print a warning when resorting to default layout.
2177 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2179 * lily/translator-group.cc (add_fresh_simple_translator): remove
2180 function; initialize() is called through
2181 Translator_group::initialize().
2183 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2184 for the neighbors of a loose column.
2186 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2187 position loose columns so that they don't collide.
2189 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2191 * VERSION: 1.5.32 released.
2193 * scm/font.scm: remove font-name symbol.
2195 * mf/GNUmakefile: use pktrace for making PFAs
2197 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2199 * lily/rest-collision.cc (do_shift): read direction field from
2200 rest-column in case of note-rest collision. This should fix some
2201 problems with rest collisions.
2203 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2205 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2208 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2209 property. Read pitch directly from #'cause.
2211 * mf/feta-puntje.mf: bugfix
2213 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2215 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2217 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2219 * Documentation/windows/compiling.texi: Update.
2221 * Documentation/index.texi: Add link to orphaned compiling for
2224 * Documentation/footer.html.in: Comment fix.
2226 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2228 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2230 * VERSION: 1.5.31 released
2232 * lily/new-spacing-spanner.cc: remove file.
2234 * lily/third-try.cc (do_measure): only take spacings into account
2235 if they pertain to the column pair under consideration. This fixes
2236 spacing bug when mixing eighths triplets and normal eighths.
2238 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2239 lines don't take up space anymore. Document why in note-head.cc
2242 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2244 * lily/font-interface.cc (get_font): reinstate
2245 #'font-magnification. See input/regression/font-magnification.ly
2246 (get_font): Change the definition of #'font-name grob property.
2248 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2249 that have a #'cause field.
2251 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2253 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2255 * mf/GNUmakefile: remove metapost stuff
2257 * stepmake/aclocal.m4: remove metapost detection stuff.
2259 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2261 * mf/GNUmakefile (FET_FILES):
2262 (FONT_FILES): Include parmesan.
2264 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2267 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2269 * Documentation/user/refman.itely (Paper size): Quote braces.
2271 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2273 * stepmake/aclocal.m4: fixed bison version check to be more
2276 * lily/stem.cc (position_noteheads): fix for cluster chords.
2278 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2280 * python 2.2 support.
2282 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2284 * VERSION: 1.5.30 released
2286 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2288 * Documentation/user/refman.itely (Dynamics): add a note about
2291 * scm/grob-description.scm: add a 'translator-type? object
2292 property, so that \property Foo.Bar =\turnOff doesn't cause
2295 * lily/translator-group.cc (add_fresh_group_translator): make
2296 new add-translator functions to make distinction between fresh and
2297 used group-translators. Fixes problem with scripts on auto-changing voice
2299 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2300 add to Score_performer. Fixes bar checks in MIDI
2302 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2303 heads. Fixes many quirks with ties.
2305 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2306 in the grob property #'cause, instead of using Grob_info.
2308 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2309 staff context, fixing dot alignment on collisions.
2311 * lily/beam-engraver.cc (try_music): remove can't find beam start
2312 warning, so that skipTypesetting won't complain.
2314 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2316 * Documentation/user/refman.itely (Paper size): Documentation fix,
2319 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2321 * scm/grob-description.scm: \breathe: Use feta font comma by default
2323 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2325 * input/template/piano-dynamics.ly (pedal): Simplified
2327 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2329 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2331 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2333 * lilypond-mode.el (LilyPond-command-query): ignore case.
2335 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2337 * VERSION: 1.5.29 released
2339 * all files: change 2001 to 2002 in headers globally
2341 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2342 cheese") font. WARNING: fonts changed.
2344 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
2346 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2348 * mf/*.mf: Added some more vaticana/solesmes style font symbols
2350 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2352 * mf/*.mf: Fixed a few typos in various .mf files
2354 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2356 * mf/: added macro soft_penstroke
2358 softened some glyphs
2359 redrawn triangular noteheads
2361 added classical quarter rest
2363 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2365 * lily/bar.cc: Bugfix: repeat dots when even number of staff
2366 lines and staff_space>=2
2368 * lily/rest.cc: Use default rests when current style glyphs not
2370 \property Staff.Rest \override #'style = #'classical
2372 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
2374 * input/bugs/first-tie.ly: New file.
2376 * input/bugs/spacing-clash.ly: New file.
2378 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
2382 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2384 * lilypond-indent.el: New file providing indentation for
2385 parenthesised blocks of lilypond code in Emacs
2387 * lilypond-font-lock.el: Changes to the syntax table to facilitate
2388 indentation and handle block comments properly. Distinguish
2389 accents from close-brackets in fontification.
2391 * lilypond-mode.el: LilyPond-indent-command set appropriately.
2393 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
2395 * Documentation/windows/installing.texi:
2396 * Documentation/windows/compiling.texi: Include from 1.4.10.
2398 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2400 * input/bugs/first-midi-tie.ly: New file.
2402 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
2404 * VERSION: 1.5.28 released
2406 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2407 illicit beams on [c4 c4] etc.
2409 * lily/bar-check-iterator.cc (Bar_check_iterator): new
2410 file. Make separate iterator for Bar_checks. Bar_check now happen
2411 outside engravers, meaning that you can use them with
2412 skipTypesetting. Associated changes in other files.
2414 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2417 * lily/spacing-spanner.cc (stem_dir_correction): removed function
2419 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2421 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2423 * lily/stem.cc (set_spacing_hints): removed function
2425 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2426 correction for spacing; now take vertical extents of the stem into
2429 * lily/third-try.cc: More hacking to get spacing working.
2431 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2432 sits at staff level and creates note spacing objects. Scrap it
2433 again, and document why.
2435 * lily/include/group-interface.hh: rename functions.
2437 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
2439 * stepmake/stepmake/c++-rules.make:
2440 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2442 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
2444 * make/lilypond-vars.make:
2445 * scripts/ly2dvi.py (setup_environment):
2446 * scripts/lilypond-book.py (setup_environment): Also set tex
2449 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2451 * VERSION: 1.5.27 released.
2453 * Documentation/user/refman.itely (Bar numbers): added bar number
2456 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2459 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
2461 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2462 spread the last few lines all over the last page of a score.
2464 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
2466 * lily/third-try.cc: 3rd try at revising spacing
2467 engine. Not yet finished.
2469 * lily/paper-column.cc (brew_molecule): print debugging marks on a
2472 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2473 collecting past note heads.
2475 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2478 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2479 class. Keep a queue of grobs that are still playing in busyGrobs.
2481 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2482 function. Use busyGrobs to detect playing notes.
2484 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
2486 * Documentation/topdocs/INSTALL.texi: Added note about broken
2487 python-2.1. Updated note for Debian's broken (well, broken for
2488 our use anyway) tex configuration.
2490 * scripts/lilypond-book.py (re_dict): python2.2 fix.
2492 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
2493 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2495 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2496 (But left margin of png's still misses a few pixels. Arg.)
2498 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
2500 * lilypond-mode.el (LilyPond-command-next-midi): Make
2501 possible to kill midi-process (using "C-c C-m").
2503 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
2505 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2506 Convert strings with dimensions to numbers.
2508 * lily/volta-engraver.cc: only make a bracket for the top staff,
2509 as found in stavesFound.
2511 * lily/bar-number-engraver.cc: remove staff administration.
2513 * lily/mark-engraver.cc (acknowledge_grob): remove staff
2514 administration. This breaks support for invisible-staff.
2516 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2517 symbols into stavesFound.
2519 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2520 grobs, and put them into columns.
2522 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2523 Engraver_group_engraver as a potential candidate for ack'ing grobs.
2525 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
2527 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2528 midi section in the Emacs-mode, so it is possible to play certain
2529 score in a multiscore lilypond-file.
2531 2001-12-09 Rune Zedeler <rune@zedeler.dk>
2532 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2533 (FIXME: not accessible from guile)
2535 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2536 better support for Kurt Stone's suggestions.
2537 Removed properties: noResetKey, forgetAccidentals, autoReminders,
2539 Changed property: localKeySignature.
2540 Added properties: extraNatural, autoAccidentals,
2543 (BUGFIX: broken-tie-support destroyed in 1.5.16)
2545 * ly/property-init.ly: added commands
2546 \defaultAccidentals \modernAccidentals \modernCautionaries
2547 \noResetKey \forgetAccidentals
2549 * ly/engraver-init.ly: Correct initialization of new accidentals.
2551 * scm/translator-property-description.scm: The new properties
2554 * input/: Some examples added, some changed.
2556 * Documentation/regression-test.tely: Added quick test of new
2559 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2561 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2564 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2566 * lily/beam.cc (before_line_breaking): Make beams without stems
2567 or with only one stem disappear.
2569 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2571 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2572 files to have standardised HTML bibliography output. Update build
2573 docs to reflect this.
2575 * lily/include/simple-spacer.hh (struct Simple_spacer): add
2576 active_count_, so that we don't have to look for active springs
2579 * scm/interface-description.scm,scm/grob-property-description.scm:
2582 * lily/simple-spacer.cc (solve): Handle forced line breaks
2583 here. Fixes problems when combining linebreaks with non-fitting
2586 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
2588 * 1.4.9.jcn3 forward ports.
2590 * Really included .cvsignore.
2592 * Included Han-Wen's uu1 windows fixes.
2594 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2596 * Added Cygwin setup.hint
2598 * Removed tex, python wrappers and postinstalls to go with Cywgin's
2599 tetex/texmf, python installations.
2601 * Updated cygwin installer.
2603 * ly2dvi: Don't accept filenames with spaces (+ fix).
2605 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
2607 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2609 * lily/translator-def.cc: Remove manual symbol caching.
2611 * lily/script-column.cc (before_line_breaking): robustness check:
2612 don't crash if no direction set.
2614 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2616 * scripts/pmx2ly.py (Parser.parse_header): more generic header
2620 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
2622 * lily/note-head.cc (head_extent): added to compute width without
2623 ledger lines. By default, ledger lines take up width now.
2625 * input/regression/fingering.ly: demonstrate auto fingering.
2626 Horizontal placement is still buggy.
2628 * lily/fingering-engraver.cc (class Fingering_engraver):
2629 added. Provides support for horizontal fingering scripts
2631 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2633 * lily/side-position-interface.cc (add_staff_support): add staff
2634 only for Y-axis side positions.
2636 * lily/parser.yy (request_chord): Fix mem leak.
2638 * lily/musical-request.cc (transpose): moved to Music::transpose()
2640 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2641 can store grobs as grob-creation cause as well.
2643 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2644 handle when adding. Use precomputed symbols throughout lily.
2646 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2647 track of spacing issues.
2649 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2650 to keep track of staff spacing
2652 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2654 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2655 code clean from conditionals and have a concentrated sets of
2656 compatibility fixes for old guile versions.
2658 * Fixes for guile 1.4, including embedded ps.
2660 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2662 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2663 well for markup texts.
2665 * lily/musical-request.cc (length_mom): kludge for null pointer.
2667 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2669 * scm/lily.scm (sign): bugfix
2671 * CHANGES: Change log instated.
2673 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.