1 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
3 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
6 * lily/music.cc (ly_get_mus_property): typechecking
7 (ly_set_mus_property): idem
11 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
13 * lily/note-spacing.cc (stem_dir_correction): correction for
14 same stem notes as well.
16 * lily/pitch.cc (pitch_transpose): stricter typechecking
18 * mf/parmesan*mf: magnification fixes.
20 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
22 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
24 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
25 documenting the font. (Doesn't work for parmesan at the moment)
27 * Documentation/user/appendices.itely (The Feta font): Add list of
28 Feta font symbols with names.
30 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
33 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
35 * lily/translator-group.cc (ly_set_trans_property): typechecking
36 (ly_get_trans_property): typechecking.
38 * lily/font-metric.cc (ly_text_dimension): typechecking
39 (ly_find_glyph_by_name): idem.
41 * scm/bass-figure.scm (brew-complete-figure): support for
44 * lily/grob.cc (ly_get_paper_var): new function
46 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
48 * VERSION (PATCH_LEVEL): 1.5.35 released.
50 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
51 (bracket): New function.
53 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
54 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
56 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
59 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
62 * lily/grob.cc (ly_get_grob_property): be anal about types.
63 (ly_set_grob_property): idem
65 * lily/figured-bass-engraver.cc (process_music): move molecule
66 building completely to Scheme
68 * lily/include/musical-request.hh (class Bass_figure_req): Add
71 * lily/parser.yy (bass_figure): add support for space figure.
73 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
75 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
77 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
78 (ly_align_to_x): new function ly-align-to!
80 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
83 * mf/feta-nummer.mf: include normal-space dimension.
85 * lily/collision.cc (check_meshing_chords): don't merge collisions
88 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
91 2002-02-28 Mats Bengtsson <matsb@matsb@s3.kth.se>
93 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
95 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
97 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
100 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
103 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
104 scm/grob-description.scm: added mensural fermata symbol
106 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
108 * VERSION: 1.5.34 released.
110 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
112 * lily/staff-symbol-referencer.cc (callback): assume that
113 staff-position is unset in general.
115 * input/regression/rest-pitch.ly: new file.
117 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
120 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
122 * lily/scm-option.cc (set_lily_option): add internal-type-checks
123 as Scheme option. Run regression test by default with
124 internal-type-checking.
126 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
128 * lily/lily-guile.cc (type_check_assignment): changed functions.
130 * scm/*description*.scm: be anal about typechecks. Some changes
131 for internal variable names.
133 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
135 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
137 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
139 * VERSION: 1.5.33 released.
141 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
142 flare_path everywhere (c-clef, numbers).
144 * lily/bar-number-engraver.cc (process_music): also print bar
145 number if measure starts with grace note.
147 * input/regression/grace-bar-number.ly: new test.
149 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
151 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
154 * scm/music-functions.scm (voicify-music): split chords into
155 different voices automatically.
157 * lily/music.cc (ly_music_list_p): new function
159 * lily/music-sequence.cc (do_relative_octave): robustification
161 * scm/music-functions.scm: many utility functions
163 * lily/music.cc (ly_set_mus_property): add type checks to the
164 Scheme property assignment.
166 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
169 * mf/lilypond.map: .map file from Mats' page.
171 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
173 * Some more parmesan related fixes;
175 * Custos: varying shape (in particular, stem length), depending on the
176 vertical position of the custos (on staffline / between stafflines);
178 * Custos: added grob property "neutral-direction" (same semantics as
179 with stem); introduced new grob property "neutral-position";
181 * Time-signature: print a warning when resorting to default layout.
183 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
185 * lily/translator-group.cc (add_fresh_simple_translator): remove
186 function; initialize() is called through
187 Translator_group::initialize().
189 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
190 for the neighbors of a loose column.
192 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
193 position loose columns so that they don't collide.
195 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
197 * VERSION: 1.5.32 released.
199 * scm/font.scm: remove font-name symbol.
201 * mf/GNUmakefile: use pktrace for making PFAs
203 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
205 * lily/rest-collision.cc (do_shift): read direction field from
206 rest-column in case of note-rest collision. This should fix some
207 problems with rest collisions.
209 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
211 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
214 * lily/note-head.cc (brew_ez_molecule): Remove note-character
215 property. Read pitch directly from #'cause.
217 * mf/feta-puntje.mf: bugfix
219 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
221 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
223 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
225 * Documentation/windows/compiling.texi: Update.
227 * Documentation/index.texi: Add link to orphaned compiling for
230 * Documentation/footer.html.in: Comment fix.
232 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
234 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
236 * VERSION: 1.5.31 released
238 * lily/new-spacing-spanner.cc: remove file.
240 * lily/third-try.cc (do_measure): only take spacings into account
241 if they pertain to the column pair under consideration. This fixes
242 spacing bug when mixing eighths triplets and normal eighths.
244 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
245 lines don't take up space anymore. Document why in note-head.cc
248 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
250 * lily/font-interface.cc (get_font): reinstate
251 #'font-magnification. See input/regression/font-magnification.ly
252 (get_font): Change the definition of #'font-name grob property.
254 * lily/grob.cc (get_uncached_molecule): output origin for grobs
255 that have a #'cause field.
257 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
259 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
261 * mf/GNUmakefile: remove metapost stuff
263 * stepmake/aclocal.m4: remove metapost detection stuff.
265 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
267 * mf/GNUmakefile (FET_FILES):
268 (FONT_FILES): Include parmesan.
270 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
273 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
275 * Documentation/user/refman.itely (Paper size): Quote braces.
277 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
279 * stepmake/aclocal.m4: fixed bison version check to be more
282 * lily/stem.cc (position_noteheads): fix for cluster chords.
284 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
286 * python 2.2 support.
288 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
290 * VERSION: 1.5.30 released
292 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
294 * Documentation/user/refman.itely (Dynamics): add a note about
297 * scm/grob-description.scm: add a 'translator-type? object
298 property, so that \property Foo.Bar =\turnOff doesn't cause
301 * lily/translator-group.cc (add_fresh_group_translator): make
302 new add-translator functions to make distinction between fresh and
303 used group-translators. Fixes problem with scripts on auto-changing voice
305 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
306 add to Score_performer. Fixes bar checks in MIDI
308 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
309 heads. Fixes many quirks with ties.
311 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
312 in the grob property #'cause, instead of using Grob_info.
314 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
315 staff context, fixing dot alignment on collisions.
317 * lily/beam-engraver.cc (try_music): remove can't find beam start
318 warning, so that skipTypesetting won't complain.
320 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
322 * Documentation/user/refman.itely (Paper size): Documentation fix,
325 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
327 * scm/grob-description.scm: \breathe: Use feta font comma by default
329 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
331 * input/template/piano-dynamics.ly (pedal): Simplified
333 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
335 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
337 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
339 * lilypond-mode.el (LilyPond-command-query): ignore case.
341 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
343 * VERSION: 1.5.29 released
345 * all files: change 2001 to 2002 in headers globally
347 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
348 cheese") font. WARNING: fonts changed.
350 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
352 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
354 * mf/*.mf: Added some more vaticana/solesmes style font symbols
356 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
358 * mf/*.mf: Fixed a few typos in various .mf files
360 2002-01-17 Rune Zedeler <rune@zedeler.dk>
362 * mf/: added macro soft_penstroke
365 redrawn triangular noteheads
367 added classical quarter rest
369 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
371 * lily/bar.cc: Bugfix: repeat dots when even number of staff
372 lines and staff_space>=2
374 * lily/rest.cc: Use default rests when current style glyphs not
376 \property Staff.Rest \override #'style = #'classical
378 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
380 * input/bugs/first-tie.ly: New file.
382 * input/bugs/spacing-clash.ly: New file.
384 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
388 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
390 * lilypond-indent.el: New file providing indentation for
391 parenthesised blocks of lilypond code in Emacs
393 * lilypond-font-lock.el: Changes to the syntax table to facilitate
394 indentation and handle block comments properly. Distinguish
395 accents from close-brackets in fontification.
397 * lilypond-mode.el: LilyPond-indent-command set appropriately.
399 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
401 * Documentation/windows/installing.texi:
402 * Documentation/windows/compiling.texi: Include from 1.4.10.
404 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
406 * input/bugs/first-midi-tie.ly: New file.
408 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
410 * VERSION: 1.5.28 released
412 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
413 illicit beams on [c4 c4] etc.
415 * lily/bar-check-iterator.cc (Bar_check_iterator): new
416 file. Make separate iterator for Bar_checks. Bar_check now happen
417 outside engravers, meaning that you can use them with
418 skipTypesetting. Associated changes in other files.
420 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
423 * lily/spacing-spanner.cc (stem_dir_correction): removed function
425 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
427 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
429 * lily/stem.cc (set_spacing_hints): removed function
431 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
432 correction for spacing; now take vertical extents of the stem into
435 * lily/third-try.cc: More hacking to get spacing working.
437 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
438 sits at staff level and creates note spacing objects. Scrap it
439 again, and document why.
441 * lily/include/group-interface.hh: rename functions.
443 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
445 * stepmake/stepmake/c++-rules.make:
446 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
448 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
450 * make/lilypond-vars.make:
451 * scripts/ly2dvi.py (setup_environment):
452 * scripts/lilypond-book.py (setup_environment): Also set tex
455 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
457 * VERSION: 1.5.27 released.
459 * Documentation/user/refman.itely (Bar numbers): added bar number
462 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
465 2001-12-22 Mats Bengtsson <matsb@matsb@s3.kth.se>
467 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
468 spread the last few lines all over the last page of a score.
470 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
472 * lily/third-try.cc: 3rd try at revising spacing
473 engine. Not yet finished.
475 * lily/paper-column.cc (brew_molecule): print debugging marks on a
478 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
479 collecting past note heads.
481 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
484 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
485 class. Keep a queue of grobs that are still playing in busyGrobs.
487 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
488 function. Use busyGrobs to detect playing notes.
490 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
492 * Documentation/topdocs/INSTALL.texi: Added note about broken
493 python-2.1. Updated note for Debian's broken (well, broken for
494 our use anyway) tex configuration.
496 * scripts/lilypond-book.py (re_dict): python2.2 fix.
498 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
499 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
501 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
502 (But left margin of png's still misses a few pixels. Arg.)
504 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
506 * lilypond-mode.el (LilyPond-command-next-midi): Make
507 possible to kill midi-process (using "C-c C-m").
509 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
511 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
512 Convert strings with dimensions to numbers.
514 * lily/volta-engraver.cc: only make a bracket for the top staff,
515 as found in stavesFound.
517 * lily/bar-number-engraver.cc: remove staff administration.
519 * lily/mark-engraver.cc (acknowledge_grob): remove staff
520 administration. This breaks support for invisible-staff.
522 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
523 symbols into stavesFound.
525 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
526 grobs, and put them into columns.
528 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
529 Engraver_group_engraver as a potential candidate for ack'ing grobs.
531 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
533 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
534 midi section in the Emacs-mode, so it is possible to play certain
535 score in a multiscore lilypond-file.
537 2001-12-09 Rune Zedeler <rune@zedeler.dk>
538 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
539 (FIXME: not accessible from guile)
541 * lily/accidental-engraver.cc: rewrote accidental-routines to get
542 better support for Kurt Stone's suggestions.
543 Removed properties: noResetKey, forgetAccidentals, autoReminders,
545 Changed property: localKeySignature.
546 Added properties: extraNatural, autoAccidentals,
549 (BUGFIX: broken-tie-support destroyed in 1.5.16)
551 * ly/property-init.ly: added commands
552 \defaultAccidentals \modernAccidentals \modernCautionaries
553 \noResetKey \forgetAccidentals
555 * ly/engraver-init.ly: Correct initialization of new accidentals.
557 * scm/translator-property-description.scm: The new properties
560 * input/: Some examples added, some changed.
562 * Documentation/regression-test.tely: Added quick test of new
565 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
567 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
570 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
572 * lily/beam.cc (before_line_breaking): Make beams without stems
573 or with only one stem disappear.
575 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
577 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
578 files to have standardised HTML bibliography output. Update build
579 docs to reflect this.
581 * lily/include/simple-spacer.hh (struct Simple_spacer): add
582 active_count_, so that we don't have to look for active springs
585 * scm/interface-description.scm,scm/grob-property-description.scm:
588 * lily/simple-spacer.cc (solve): Handle forced line breaks
589 here. Fixes problems when combining linebreaks with non-fitting
592 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
594 * 1.4.9.jcn3 forward ports.
596 * Really included .cvsignore.
598 * Included Han-Wen's uu1 windows fixes.
600 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
602 * Added Cygwin setup.hint
604 * Removed tex, python wrappers and postinstalls to go with Cywgin's
605 tetex/texmf, python installations.
607 * Updated cygwin installer.
609 * ly2dvi: Don't accept filenames with spaces (+ fix).
611 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
613 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
615 * lily/translator-def.cc: Remove manual symbol caching.
617 * lily/script-column.cc (before_line_breaking): robustness check:
618 don't crash if no direction set.
620 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
622 * scripts/pmx2ly.py (Parser.parse_header): more generic header
626 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
628 * lily/note-head.cc (head_extent): added to compute width without
629 ledger lines. By default, ledger lines take up width now.
631 * input/regression/fingering.ly: demonstrate auto fingering.
632 Horizontal placement is still buggy.
634 * lily/fingering-engraver.cc (class Fingering_engraver):
635 added. Provides support for horizontal fingering scripts
637 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
639 * lily/side-position-interface.cc (add_staff_support): add staff
640 only for Y-axis side positions.
642 * lily/parser.yy (request_chord): Fix mem leak.
644 * lily/musical-request.cc (transpose): moved to Music::transpose()
646 * lily/include/grob-info.hh: Change music pointer to SCM, so we
647 can store grobs as grob-creation cause as well.
649 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
650 handle when adding. Use precomputed symbols throughout lily.
652 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
653 track of spacing issues.
655 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
656 to keep track of staff spacing
658 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
660 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
661 code clean from conditionals and have a concentrated sets of
662 compatitility fixes for old guile versions.
664 * Fixes for guile 1.4, including embedded ps.
666 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
668 * lily/stanza-number-engraver.cc (process_music): allow pairs as
669 well for markup texts.
671 * lily/musical-request.cc (length_mom): kludge for null pointer.
673 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
675 * scm/lily.scm (sign): bugfix
677 * CHANGES: Change log instated.
679 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.