]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
bfs
[lilypond.git] / ChangeLog
1 2002-07-13  Han-Wen  <hanwen@cs.uu.nl>
2
3         * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
4
5         * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
6         settings at the start of a potential auto beam.
7
8         * lily/include/sequential-iterator.hh (class Sequential_iterator):
9         bugfix: protect music list from GC.
10
11         * Documentation/user/introduction.itely: misc fixes.
12
13         * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
14         bugreport if lilypond is killed by a signal. 
15
16         * input/regression/beam-funky.ly:  new file
17
18         * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
19
20         * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
21         knees code.
22         (quanting): add french beaming support (property french-beaming)
23         (stem_beams): removed.
24
25 2002-07-12  Mats Bengtsson  <matsb@s3.kth.se>
26
27         * lily/beam.cc (after_line_breaking): Set correct stem lengths
28         also when beam positions are set manually.
29         (consider_auto_knees): Do not use automatic knees if the directions
30         are set manually by the user.
31
32 2002-07-12  Han-Wen  <hanwen@cs.uu.nl>
33
34         * input/regression/grace-auto-beam.ly: new file
35
36         * input/regression/grace-unfold-repeat.ly: new file
37
38         * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
39
40         * lily/forbid-break-engraver.cc (start_translation_timestep): skip
41         grace notes for break-forbidding. Breaks during grace notes are
42         handled by Bar_engraver.        
43
44         * lily/unfolded-repeat-iterator.cc: Reimplement
45         Unfolded_repeat_iterator, Volta_repeat_iterator using
46         Sequential_iterator. All grace functionality from {} carries over
47         to repeats as well.
48
49         * lily/sequential-iterator.cc: new file: form baseclass for
50         sequential music iterator and unfolded/volta repeat iterator.
51
52 2002-07-11  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
53
54         * lily/include/debug.hh: deprecate.
55
56         * lily/spacing-spanner.cc (set_springs): add support for
57         common-shortest-duration field.
58
59         * lily/parser.yy (translator_spec_body): allow \set in \translator
60         {}  block. This is the same as \override, here.
61
62         * lily/score-engraver.cc (one_time_step): don't warn about columns
63         when skipTypesetting == #t.
64
65         * lily/spacing-spanner.cc (musical_column_spacing): change
66         ragged right function to produce natural spacing.
67
68 2002-07-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
69
70         * lily/paper-column.cc (before_line_breaking): update
71         #'bounded-by-me field for suicided items.  This fixes crazy
72         spacing in \partcombine scores.
73
74 2002-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
75
76         * config.hh.in: Add HAVE_SSTREAM.
77         
78         * configure.in: Add check for sstream header.
79
80 2002-07-09  Mats Bengtsson  <matsb@s3.kth.se>
81  
82         * flower/source-file.cc: Fix compatibility with older g++.
83  
84 2002-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
85
86         * input/twinkle.ly: Bugfix: no automaticMelismata.
87
88 2002-07-08  Han-Wen  <hanwen@cs.uu.nl>
89
90         * mutopia/J.S.Bach/Cembalo-Partitas/: remove
91
92         * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
93         by default.
94
95         * lily/voice-devnull-engraver.cc (try_music):
96         lily/thread-devnull-engraver.cc: use proper spelling for #'always.
97
98         * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
99         copy here_mom_ too. This fixes an obscure bug with combining
100         partcombine and repeat
101
102         * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
103         factor too. 
104
105 2002-07-07  Han-Wen  <hanwen@cs.uu.nl>
106
107         * mutopia/J.S.Bach/pa.ly: remove
108         * mutopia/J.S.Bach/Duette/: remove  
109         
110         * scm/font.scm (change-rhs-size): add support for "paper19.ly"
111
112         * VERSION: 1.5.66 released
113
114         * scm/grob-description.scm (all-grob-descriptions): add
115         item-interface where necessary
116
117         * lily/score-engraver.cc (one_time_step): warn for grobs created
118         during stop_translation_timestep().
119
120         * lily/a2-engraver.cc: restrict acknowledged grob types.
121
122         * lily/chord-name-engraver.cc: remove acknowledge_grob().
123
124         * Documentation/user/tutorial.itely: doc carnage.
125
126 2002-07-06  Rune Zedeler  <rune@zedeler.dk>
127
128         * Documentation/user/refman.itely: Documented accidentals
129         (incl. bugs), subdivideBeams and drum/percussion notation.
130
131         * lily/translator-group.cc, lily/include/translator-group.hh
132         (Translator_group::set_children_property): removed.
133
134         * lily/accidental-engraver.cc: don't use
135         Translator_group::set_children_property.
136
137         * lily/new-accidental-engraver.cc: Added. More correct
138         accidentals, but wrong spacing.
139
140         * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
141         subdivideBeams-fixes.
142
143         * scm/drums.scm: Small changes/fixes in instruments and maps
144         
145 2002-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
146
147         * lexer-gcc-3.1.sh: Fixes and more comments.
148
149         * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
150         problems.
151
152         * lily/include/stream.hh:
153         * lily/include/moment.hh:
154         * lily/include/midi-stream.hh:
155         * lily/streams.cc:
156         * lily/scm-option.cc:
157         * lily/parser.yy:
158         * lily/my-lily-lexer.cc:
159         * lily/moment.cc:
160         * lily/midi-stream.cc:
161         * lily/main.cc:
162         * lily/lexer.ll:
163         * lily/includable-lexer.cc:
164         * flower/include/source-file.hh:
165         * flower/include/parray.hh:
166         * flower/include/dictionary.hh:
167         * flower/include/array.icc:
168         * flower/string.cc: 
169         * flower/source-file.cc:
170         * flower/getopt-long.cc: gcc-3.1 fixes.
171
172         * stepmake/stepmake/generic-targets.make: Add comment about warning.
173
174         * lexer-gcc-3.0.patch: Add comment, and a fix for installations
175         that have an unpatched flex and gcc-3.1.x.
176
177         * Documentation/topdocs/INSTALL.texi: Add comments and
178         instructions on gcc-3.1.x.
179
180         * lexer-gcc-3.1.sh: New file.
181
182         * aclocal.m4: regenerate.
183         
184         * stepmake/aclocal.m4: Version compare fix.
185
186 2002-07-05  Han-Wen  <hanwen@cs.uu.nl>
187
188         * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
189
190         * lily-guile.hh: remove guile 1.3 compatibility,  add 1.4
191         compatibility functions.
192
193 2002-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
194
195         * Documentation/windows/lilypond.hint (requires): Add libintl2.
196
197 2002-07-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
198
199         * VERSION: 1.5.65 released. 
200         
201         * scripts/lilypond-book.py: patches by Tom Cato Amundsen.  Adds
202         support for the columnsep when using the geometry package.
203         
204 2002-07-04  Jan Nieuwenhuizen  <janneke@gnu.org>
205
206         * scm/grob-property-description.scm (minimum-space-pair): Remove.
207
208         * Documentation/windows/README: 
209         * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
210         * Documentation/windows/changelog: New file.
211
212         * Documentation/windows/lilypond.hint (requires): libguile14 (was:
213         guile).
214
215 2002-07-03  Han-Wen  <hanwen@cs.uu.nl>
216
217         * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
218         try hash tables for mutable properties.
219
220         * lily/align-interface.cc: remove aligned-interface and props
221         minimum-space-pair extra-space 
222
223         * lily/grob-property.cc: new file move grob prop handling here.
224
225         * lily/lily-guile.cc (ly_deep_copy): add vector support
226
227         * lily/break-substitution.cc (do_break_substitution): add vector
228         support.
229
230         * lily/spanner.cc: remove extend_spanner_over_* funcs.
231
232 2002-07-02  Jan Nieuwenhuizen  <janneke@gnu.org>
233
234         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
235         broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
236         (Debian prerelease)'
237
238 2002-07-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
239
240         * lily/bar-check-iterator.cc (process): change
241         barbarCheckNoSynchronize to barCheckSynchronize
242
243         * Documentation/user/bugs.itexi: move to introduction, remove.
244
245         * Documentation/user/*.itexi: general carnage/cleanage.
246         
247         * Documentation/user/internals.itely: split most of file into
248         internal documentation (.scm and .cc)
249
250         * buildscripts/make-font-dir.py: put designsize in to X font
251         sWidth field
252
253         * make/lilypond.redhat.spec.in: postinstall bugfix
254
255 2002-07-02  Juergen Reuter  <reuter@ipd.uka.de>
256
257         * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
258         avoid segfault on undefined ambitus pitch; avoid wasteful creation
259         of pitch smobs; defer computation of centralCPosition beyond first
260         timestep to catch also clefs outside of the current voice context.
261
262 2002-07-02  Han-Wen  <hanwen@cs.uu.nl>
263
264         * input/template/satb.ly: new file
265
266 2002-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
267
268         * Documentation/user/glossary.tely: Precautions for lilypond-book:
269         don't use spaces after @lilypond options.
270
271         * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
272         threads warning.
273
274 2002-07-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
275
276         * VERSION (MAJOR_VERSION): 1.5.64
277
278 2002-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
279
280         * lily/grob.cc (mark_smob): don't mark parents, explain why.
281
282         * tex/lilyponddefs.tex: Define outputscale only once.
283
284 2002-06-29  Jan Nieuwenhuizen  <janneke@gnu.org>
285
286         * configure.in: Require guile 1.4 or newer (was 1.3.4?).
287
288 2002-06-29  Han-Wen  <hanwen@cs.uu.nl>
289
290         * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
291
292         * lily/separating-line-group-engraver.cc (acknowledge_grob):
293         ignore grobs with no-spacing-rods set.
294
295         * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
296
297         * scm/grob-description.scm (all-grob-descriptions): sort list
298         
299 2002-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
300
301         * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
302         remove stray brace.
303
304         * Documentation/topdocs/FAQ.texi (Installation): Add
305         lilypond-devel list.  Add faq about font removal.  Fix faq about
306         generating and running ./configure.
307
308 2002-06-26  Jan Nieuwenhuizen  <janneke@gnu.org>
309
310         * scm/chord-name.scm (chord::name->text): Workaround: clean markup
311         text.
312
313         * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
314
315         * input/test/ambitus.ly:
316         * lily/ambitus-engraver.cc:
317         * lily/ambitus.cc:
318         * lily/include/ambitus.hh: New file.
319
320         * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
321
322 2002-06-25  Juergen Reuter  <reuter@ipd.uka.de>
323
324         * input/test/ambitus.ly, lily/ambitus-engraver.cc,
325         lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
326         scm/basic-properties.scm, scm/grob-description.scm,
327         scm/grob-property-description.scm: Add support for ambitus.
328
329 2002-06-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
330
331         * lily/text-spanner.cc: add some props to interface (patch
332         courtesy Chris J).
333
334 2002-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
335
336         * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
337         dereference valid Grob.
338
339         * configure.in: Quoting fixes.
340
341 2002-06-24  Han-Wen  <hanwen@cs.uu.nl>
342
343         * VERSION: 1.5.63 released
344
345         * lily/grob-scheme.cc: new file
346
347         * lily/break-substitution.cc: split up break substitution
348         functionality, and make a special constant stack-space version for
349         lists of grobs. This should fix the problems of lily in
350         combination with pthreads/qthreads.
351
352         * lily/grob.cc (mark_smob): bugfix: mark other parent too.
353
354 2002-06-23  Chris Jackson  <chris@fluffhouse.org.uk>
355
356         * lily/text-spanner.cc (setup_pedal_bracket):
357         * lily/piano-pedal-engraver.cc (create_bracket_grobs): 
358         Fix the lengths of mixed-style piano pedal brackets.
359
360 2002-06-23  Jan Nieuwenhuizen  <janneke@gnu.org>
361
362         * Documentation/user/tutorial.itely (First steps): Add missing
363         quotation.
364
365         * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
366         about guile --with-threads.  Hopefully this issue can be resolved
367         rsn, but maybe we should even add warnings for the standard Debian
368         and Red Hat packages?
369
370         * configure.in: Warn if guile is configured to use threads.  Maybe
371         we should make this an error (ie, add to REQUIRED list?)
372
373         * config.make.in (PACKAGE_NAME):
374         (PACKAGE, package):  Don't hardcode.
375
376         * VERSION (PACKAGE_NAME): Typo fix.
377
378 2002-06-23  Han-Wen  <hanwen@cs.uu.nl>
379
380         * input/tutorial/brahms-*.ly: new tutorial files.
381
382         * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
383
384         * scm/script.scm (default-script-alist): fermata is up.
385
386         * lily/dynamic-engraver.cc (stop_translation_timestep): stop
387         dynamic line spanner when there is no crescendo to connect.
388
389         * lily/tie.cc (get_control_points): add test to avoid flat ties.
390
391 2002-06-22  Han-Wen  <hanwen@cs.uu.nl>
392
393         * lily/note-collision.cc (check_meshing_chords): don't crash if no
394         stems.
395
396         * scm/music-functions.scm (toplevel-music-functions): new
397         definition. Functions to apply automatically. Removes the need for
398         explicitly doing \apply #voicify-music
399
400         * lily/grob.cc (do_break_substitution): rename function, use
401         global var for criterion argument. Reduces stack usage a little.
402
403         * ly/engraver-init.ly (StaffContext): add Instrument_engraver
404
405         * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
406         visibility-lambda to break-visibility
407
408 2002-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
409
410         * input/bugs/part-combiner.ly: New file.
411
412         * lily/include/spacing-interface.hh: New file.
413
414         * lily/include/spaceable-element.hh: Remove.
415
416         * input/test/script-priority.ly: New file.
417
418 2002-06-20  Han-Wen  <hanwen@cs.uu.nl>
419
420         * lily/system.cc (output_lines): kill grobs that are only for spacing.
421
422 2002-06-20  Jan Nieuwenhuizen  <janneke@gnu.org>
423
424         * lily/fingering-engraver.cc (make_script): 
425         * lily/script-engraver.cc (process_music): 
426         * lily/text-engraver.cc: 
427         (process_acknowledged_grobs): Remove hard coded script-priority.
428
429         * flower/warn.cc: Cleanup.
430
431         * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
432         spanner now.
433
434         * aclocal.m4: Regenerate.
435
436         * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
437
438         * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
439         * lily/include/lily-guile.hh: Only include config.h if necessary.
440
441         * Changelog: cvs changes ml archive test #8.
442         
443         * lily/slur-engraver.cc: Layout fix.
444
445 2002-06-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
446
447         * ly/engraver-init.ly (RhythmicStaffContext): add
448         Dot_column_engraver, resurrect barlines 
449         
450         * VERSION: 1.5.62 released.
451
452         * lily/engraver-group-engraver.cc (do_announces): rename
453         create_grobs () to process_acknowledged_grobs().
454
455         * lily/grob.cc (programming_error): add programming_error with
456         origin location.  
457
458         * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
459         fail if a beam doesn't have stems.  
460
461         * lily/engraver-group-engraver.cc (do_announces): scary change in
462         calling convention of create_grobs():  no create_grobs() call
463         before acknowledge_grobs().
464
465         * lily/sequential-music-iterator.cc (skip): add support for grace
466         notes. 
467
468         * lily/music.cc (Music): fix very subtle and nasty memory
469         corruption bug. Typical symptom: "programming_error: Rhythmic_req
470         has no duration"
471
472         * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
473
474 2002-06-19  Han-Wen  <hanwen@cs.uu.nl>
475
476         * ly/engraver-init.ly (RhythmicStaffContext): add
477         Dot_column_engraver
478         
479
480         * lily/parser.yy: various protection fixes. Less objects are now
481         overprotected.
482
483 2002-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
484
485         * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
486         naming scheme.
487
488         * Documentation/windows/zlily-profile.sh:
489         * Documentation/windows/post-lilypond.sh: Assume normal
490         prefix=/usr for lilypond.
491
492         * lily/musical-request.cc (length_mom): Display origin with error.
493
494         * input/test/duration-check.ly: New file.
495
496         * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
497         cells.
498
499         * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
500         ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
501
502         * aclocal.m4:
503         * autogen.sh: Regenerate.
504         
505         * Documentation/topdocs/INSTALL.texi: 
506         * configure.in: 
507         * stepmake/configure.in:
508         * stepmake/aclocal.m4: Revert autoconf upgrade.  Autoconf 2.53 has
509         a serious bug wrt AC_CONFIG_AUX_DIR (reported).  Creating
510         ./configure once again requires autoconf == 2.13.
511
512         * stepmake/autogen.sh: Check for autoconf == 2.13.
513
514 2002-06-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
515
516         * lily/parser.yy (open_request_parens): add input locations to
517         open and close parens. 
518
519 2002-06-17  Chris Jackson <chris@fluffhouse.org.uk>
520
521         * lily/tuplet-bracket.cc:
522         * lily/text-spanner.cc: 
523         * lily/piano-pedal-engraver.cc: 
524         * scm/grob-description.scm: 
525         * scm/grob-property-description.scm: Changed the
526         edge-width property of brackets to edge-widen. Changed the sign of
527         the left element of edge-widen so a pair of equal numbers produces
528         a symmetrical bracket.
529
530 2002-06-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
531
532         * ly/espanol.ly: added.
533
534         * lily/simple-spacer.cc (solve): remove assert.
535
536 2002-06-17  Han-Wen  <hanwen@cs.uu.nl>
537
538         * lily/forbid-break-engraver.cc (class
539         Forbid_line_break_engraver): new engraver: forbid linebreaks
540         during playing notes
541
542         * lily/spacing-spanner.cc (loose_column): add another check: don't
543         move around bar lines as loose columns.
544
545         * scm/basic-properties.scm (default-break-barline):  add pre-break
546         for .| barline
547
548 2002-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
549
550         * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
551         well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
552
553         * scripts/lilypond-book.py (environment): Bugfix: update to new
554         TEXMF scheme, from ly2dvi.
555
556         * lily/lookup.cc (slur): Invoke bezier-bow.
557
558         * scm/tex.scm (bezier-bow): 
559         * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
560         (Previously named bezier-sandwich).
561         
562         * scm/tex.scm (bezier-sandwich):
563         * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
564
565         * make/lilypond.mandrake.spec.in (post): 
566         * make/lilypond.suse.spec.in (post): 
567         * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
568         
569         * tex/lilyponddefs.tex: Uncomment feta character support.
570
571         * Documentation/user/refman.itely (Pitches): Add espanol.ly
572         description.
573
574         * ly/catalan.ly: Add comment about (spanish) -s suffix.
575
576         * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
577         <cgscqmp@terra.es>.
578
579 2002-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
580
581         * GNUmakefile.in (short-examples):
582         (long-examples): Bugfix for --srcdir build.
583         (top-web): Rewrite weblist find command.
584
585         * stepmake/bin/config.sub: 
586         * stepmake/bin/config.guess: Update from latest autotools.
587
588         * aclocal.m4:
589         * autogen.sh: Regenerate.
590         
591         * configure.in: 
592         * stepmake/configure.in: 
593         * stepmake/aclocal.m4: Run autoupdate.  Creating ./configure now
594         requires autoconf >= 2.50.
595
596         * stepmake/autogen.sh: Check for autoconf >= 2.50.
597
598         * Documentation/user/refman.itely: Bugfix for tablature example.
599
600         * Documentation/windows/compiling.texi: Update for new and
601         improved setup.
602
603 2002-06-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
604
605         * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
606         introduce base-shortest-duration
607
608         * lily/parser.yy (music_output_def_body): don't crash when \tempo
609         in unexpected \midi{} is found.
610
611 2002-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
612
613         * stepmake/GNUmakefile.in: Don't install stepmake.  This breaks
614         the use of make/ly.make for use as an external makefile.  Probably
615         noone except for myself ever used this anyway.
616
617         * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
618         to new $datadir convention (<package>/<version>).
619
620 2002-06-13  Han-Wen  <hanwen@cs.uu.nl>
621         
622         * VERSION: 1.5.61 released
623         
624         * Document/user/refman.itely: tablature doc and code updates by
625         Jean-Baptiste Lamy <jiba@tuxfamily.org>
626         
627         * input/template/piano-dynamics.ly: bugfixes.
628
629         * lily/key-engraver.cc (try_music): read request only once. Don't
630         overwrite lastKeySignature. Call create_key() only once. This
631         fixes a bug with multiple equal key changes on polyphonic staffs.
632
633 2002-06-12  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
634
635         * scm/grob-description.scm: Add side-position-interface to TextSpanner
636
637         * scm/grob-property-description.scm: Document the trill line type.
638
639 2002-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
640
641         * stepmake/stepmake/generic-vars.make: 
642         * make/lilypond-vars.make:
643         * GNUmakefile.in (builddir-setup): New setup for builddir run.
644         Fixes LilyPond run from builddir for --srcdir builds.
645
646         * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
647         --srcdir build.
648
649 2002-06-12  Han-Wen  <hanwen@cs.uu.nl>
650
651         * scm/grob-description.scm (all-grob-descriptions): add
652         font-family to RehearsalMark
653
654         * scm/drums.scm: move over definitions from drum-pitch-init.ly
655
656         * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
657         if glyph not set.
658
659 2002-06-12  Heikki Junes  <heikki.junes@hut.fi>
660
661         * lilypond-mode.el: Propose saving before applying a command:
662         for saved buffer set default command to LilyPond.
663
664 2002-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
665
666         * buildscripts/mutopia-index.py (headertext_nopics): Add missing
667         variable.
668
669         * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
670
671         * Documentation/windows/lilypond-doc.hint: New file.
672
673         * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
674         Bugfixes for --srcdir html-doc build.
675         
676         * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
677         Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
678
679 2002-06-10  Han-Wen  <hanwen@cs.uu.nl>
680
681         * ly/script-init.ly (pralldown): add some scripts.
682
683         * Documentation/user/refman.itely: many edits.
684
685 2002-06-09  Han-Wen  <hanwen@cs.uu.nl>
686
687         * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
688         direction, this breaks staffline avoidance of the bracket when
689         they're horizontal.
690
691 2002-06-08  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
692
693         * scripts/midi2ly.py: Fix handling of -o
694
695 2002-06-08  Han-Wen  <hanwen@cs.uu.nl>
696
697         * lily/molecule.cc (translate): set max distance to 100 cm.
698
699 2002-06-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
700
701         * VERSION: 1.5.60 released
702
703         * lily/beam.cc: tremolo fix.
704
705         * scripts/convert-ly.py:  add tuplet-X-visibility rules.
706         add VerticalExtent -> verticalExtent rules.
707
708         * lily/axis-group-engraver.cc: consistent case for
709         XxxxVerticalExtent properties.  
710
711         * Documentation/user/refman.itely (Tuplets): update
712         tuplet-X-visibility properties. 
713
714         * input/test/defaultbars.ly: Corrected (thanks Mats)
715         
716 2002-06-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
717
718         * lily/beam.cc (shift_region_to_valid): fix stupido bug. 
719
720         * buildscripts/lilypond-profile.sh: override settings if
721         LILYPONDPREFIX is set.
722
723 2002-06-04  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
724
725         * scripts/ly2dvi.py (non_path_environment): Fix typo
726
727 2002-06-03  Heikki Junes  <heikki.junes@hut.fi>
728
729         * lilypond-mode.el: Extend "Quick notes" containing note tuples.
730
731         * lilypond-font-lock.el: Add fixes and comments to syntax-table.
732
733 2002-06-03  Han-Wen  <hanwen@cs.uu.nl>
734
735         * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
736         beam-engraver: use different engraver so we can mix normal and
737         grace beams.
738
739 2002-06-01  Han-Wen  <hanwen@cs.uu.nl>
740
741         * lily/beam.cc (shift_region_to_valid): Try to shift positions
742         after slope-damping and concaveness check, so that short-stems are
743         not violated.
744
745 2002-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
746
747         * stepmake/aclocal.m4: Fix for ash as /bin/sh.
748
749 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
750
751         * VERSION: 1.5.59 released 
752         
753         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
754         notice that missing features are exercise for user.
755
756 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
757
758         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
759         (but alas, not partly precomputed) value for current_y when
760         calculating stem length demerits.
761         (calc_stem_y): Temporary precomputed factors fix.
762
763         * lily/stem.cc (calc_stem_info): Take multiplicity into account
764         for shortest_y too.
765
766         * input/bugs/melisma-tie-rest.ly: New file.
767
768 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
769
770         * lily/stem.cc (calc_stem_info): remove min_y member, rename
771         stuff.  Remove kneeing stuff.
772
773         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
774         twiddling
775
776 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
777
778         * scm/sketch.scm: 
779         * scm/ps.scm: 
780         * scm/pdftex.scm: 
781         * scm/pdf.scm: 
782         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
783         patch-level of version in minor-version string.  Arg.
784
785 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
786
787         * ly/engraver-init.ly (TabStaffContext): 
788         enable TabStaff by default.
789
790         *  Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
791
792 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
793
794         * config.hh.in: Remove duplicate DIR_DATADIR entry.
795
796         * aclocal.m4: Regenerate.
797         
798         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
799
800 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
801
802         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
803
804         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
805         "Quick notes"-interface.
806
807 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
808
809         * input/regression/non-empty-text.ly: Update example with outdated
810         comment.
811
812 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
813
814         * scripts/convert-ly.py:  add textNonEmpty rule
815
816         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
817
818 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
819
820         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
821         using translate-robust add_molecule instead of add_at_edge.
822         Bugfix for #(lines (finger "" "1")).
823
824 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
825
826         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
827         tremolo placement.
828
829 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
830
831         * VERSION: 1.5.58
832         
833         * Documentation/user/refman.itely: Bugfix: add node Repeats and
834         MIDI.  Regenerate menu.  Fix @end example.
835
836         * lily/accidental.cc: Add cautionary-style to interface.
837
838         * mf/feta-beugel.mf (code): use autometric macros for braces.
839         This fixes input/bugs/braces.
840
841         * lily/afm.cc (count): return numOfChars, not size of array
842         (always equals 256.)
843
844         * lily/script.cc (before_line_breaking): postpone setting the
845         X-parent of vertical scripts. This fixes the case of scripts on
846         chords with seconds 
847
848 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
849
850         * scm/grob-description.scm:  fix alignment of barnumber: make sure
851         it doesn't hit the G-clef. 
852
853         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
854         startGraceMusic not startGraceContext).
855
856 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
857
858         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
859         found.
860
861 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
862
863         * lily/accidental-engraver.cc: remove old accidental engraver,
864         move new one to accidental-engraver.cc.
865
866         * lily/local-key-item.cc: remove file
867
868         * lily/include/local-key-item.hh: remove file
869
870         * scripts/ly2dvi.py (make_preview): add --preview-resolution
871         option.
872
873         * lily/accidental.cc (brew_molecule): support for cautionary
874         accidentals. 
875
876         * lily/note-head.cc (internal_brew_molecule): warn if note head
877         not found.
878
879         * lily/time-signature.cc (special_time_signature): remove warning
880         about time signature. 
881
882         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
883         reverse springs by limiting fixed-note space.
884
885 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
886
887         * stepmake/aclocal.m4: Bugfix: complain if program not found.
888
889         * scripts/update-lily.py (next_version, prev_version, diff_name):
890         New function.  Patches now named name-prev-latest.diff.gz.
891         Bugfix: import shutil.
892
893 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
894
895         * input/tutorial/sammartini.ly: fix and document autochange
896         weirdness.
897
898         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
899         does produce .pdftex files.
900
901         * lily/note-collision.cc (check_meshing_chords): move file from
902         collision.cc, implement merged note heads (there you go, Drarn :-)
903
904         * input/regression/collision-heads.ly: new file
905
906         * VERSION: 1.5.57 released.
907
908 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
909
910         * mf/parmesan-heads.mf, scm/grob-description.scm,
911         scm/grob-property-description.scm, scm/interface-description,
912         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
913         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
914         lily/include/ligature-engraver.hh,
915         lily/include/ligature-bracket.hh, lily/parser.yy,
916         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
917         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
918         lily/ligature-head.cc, lily/ligature-engraver.cc,
919         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
920         implemented white mensural ligatures (still with a big list of
921         TODOs)
922
923
924 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
925
926         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
927         Documentation/user/internals.itely.
928
929         * lily/function-documentation.cc: new file. Infrastructure for
930         self documenting Scheme functions.
931
932 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
933
934         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
935
936 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
937
938         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
939         and * (as in "([^>]*)?")
940
941 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
942
943         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
944         Add info about CVS.  Stable/development are currently 1.4/1.5,
945         both at lilypond.org.
946
947         * autogen.sh: Generate.
948
949         * stepmake/configure:
950         * configure: Regenerate.
951         
952         * stepmake/stepmake/automatically-generated.sub.make: Keep
953         original first line.
954
955         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
956
957         * stepmake/stepmake/generic-targets.make (configure): Generate
958         using autogen.sh.
959
960         * GNUmakefile.in (SCRIPTS):
961         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
962
963         * stepmake/autogen.sh: New file.
964
965         * configure: Check for g++ >= 2.95.
966
967         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
968         c/c++ version checking.
969
970         * flower/include/string.hh: Typo fix.
971
972         * lily/include/midi-item.hh: Remove stray i.
973
974         * Documentation/windows/GNUmakefile: Avoid collapsed directory
975         constructs '//'.
976         
977         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
978         constructs '//' from arguments.
979
980 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
981
982         * scm/lily.scm (ly-load): show SCM filenames if verbose.
983
984         * lily/lily-guile.cc (init_functions): add ly-verbose function.
985
986         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
987
988         * flower/include/{pointer,tuple}*: removed.
989
990         * VERSION: released 1.5.56
991         
992         * scm/music-functions.scm (check-start-chords): function to check
993         for chords without \context. Apply automatically from parser.
994
995 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
996
997         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
998         in index entries.
999
1000         * scm/output-lib.scm: fix ez notation stems. 
1001
1002         * lily/paper-outputter.cc: various fixes to speed up compilation.
1003
1004 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1005
1006         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
1007
1008 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1009
1010         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
1011         determine latex input.
1012
1013         * stepmake/bin/install-sh: Include latest from libtool.
1014
1015         * stepmake/configure: 
1016         * configure: Regenerate.
1017
1018         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
1019         (USER_CFLAGS): Bugfix, include CPPFLAGS.
1020
1021         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
1022
1023         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
1024         REQUIRED programs and version.  Try to continue configuring, list
1025         missing programs at the end, but don't generate a GNUmakefile if
1026         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
1027         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
1028         fancy for some older systems.
1029
1030 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
1031
1032         * lily/score-engraver.cc (typeset_all): sanity check for items
1033         that are Y parent to spanner. 
1034
1035         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
1036         pedal spanners.
1037
1038 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1039
1040         * lily/*.cc: remove as many iostream use as possible. 
1041
1042         * flower/ : remove text-db, text-stream, data-file.
1043         
1044 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
1045
1046         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
1047         (completize_preamble): don't barf if no preamble present.
1048         (do_file): allow extensions on --output
1049
1050         * scripts/ly2dvi.py (make_preview): make automatic preview of
1051         first system. Small cleanups.
1052
1053 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1054
1055         * scripts/lilypond-book.py (make_pixmap): output png directly.
1056
1057         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
1058         fonts.dir file.
1059
1060         * lily/parser.yy (My_lily_parser): comment out code. (Causes
1061         problems  with recent bison releases).
1062
1063         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
1064
1065 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
1066
1067         * lilypond-font-lock.el: Fixes the order of the note name list.
1068
1069 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1070
1071         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
1072         capability, --verbose option, rlimit hack.
1073
1074 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1075
1076         * lily/piano-pedal-engraver.cc: cleanups.
1077
1078         * lily/accidental.cc (after_line_breaking): add break tie
1079         reminders.
1080
1081         * lily/text-engraver.cc (try_music): don't typeset fingerings
1082
1083 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
1084
1085         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
1086
1087 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
1088
1089         * lily/*.cc: change gh_str02scm() to ly_str02scm().
1090
1091         * lily/spacing-spanner.cc (note_spacing): Bound
1092         shortest-playing-length by the distance to next note. This should
1093         fix chord tremolo spacing.
1094
1095         * VERSION: 1.5.55 released
1096
1097         * lily/stem.cc (off_callback): invisible stem over whole note is
1098         centered on note now.
1099
1100         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
1101         stem-tremolo is stem now.
1102
1103         * input/mozart-hrn*.ly: many corrections. 
1104
1105         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
1106         support for dynamic scripts.
1107
1108         * lily/accidental-placement.cc (position_accidentals): check for
1109         collisions as well: should avoid those heads too.
1110
1111         * lily/beam.cc (check_concave): allow undefined gap and
1112         threshold. Change the meaning of threshold/gap == 0.0.
1113         (check_concave): skip Stolba concaveness check if we have a knee
1114         on outer stems.
1115
1116 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1117
1118         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
1119         tremolos of dotted duration.
1120
1121 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
1122
1123         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
1124         downstroke again. Sigh.
1125
1126         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
1127         script on note head.
1128
1129 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
1130
1131         * lily/slur.cc (add_column): allow slur over rest. 
1132
1133 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
1134
1135         * lily/beam.cc: move scoring constants out of code
1136
1137 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
1138
1139         * mf/feta-nummer.mf: scalability fixes.
1140
1141         * mf/feta-nummer-code.mf: fixes for 5, 8. 
1142
1143         * mf/feta-klef.mf: G clef fixes.
1144
1145 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1146
1147         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
1148
1149         * scripts/lilypond-book.py: %Newline, rather than glue macros
1150         after \end{verbatim}.
1151
1152 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1153
1154         * Documentation/user/lilypond-book.itely: 
1155         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
1156         noinline.
1157
1158         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
1159
1160         * scm/grob-property-description.scm (beam-space): Junk.
1161
1162         * lily/beam.cc (space_function): New method.
1163         (get_interbeam): Call space-function.
1164
1165         * scm/grob-description.scm (Beam): Initialize space-function with
1166         Beam::space_function.
1167
1168         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
1169         Beam.space-function.  Don't quantise grace beams.
1170
1171 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1172
1173         * VERSION: 1.5.54 released
1174
1175         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
1176         bulb. 
1177
1178         * Documentation/index.texi: add PDF links.
1179
1180         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
1181
1182         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
1183         compare #'glyph as strings. 
1184
1185         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
1186
1187         * scripts/ly2dvi.py (setup_environment): fix by Mats.
1188
1189         * lily/stem.cc (head_count): Change function name. Change property
1190         to #'note-heads i.s.o.  #'heads.
1191         (position_noteheads): Kern noteheads for invisible stems.
1192         (before_line_breaking): Do position_noteheads() for whole note
1193         heads too.
1194
1195         * lily/accidental-placement.cc (position_accidentals): First
1196         determine refpoints, only then determine extents.  
1197
1198 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1199
1200         * lily/accidental-placement.cc (position_accidentals): use all
1201         note heads for note head-skyline. 
1202
1203         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
1204
1205 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1206
1207         * Documentation/windows/setup.hint (requires): Add gsview dependency.
1208
1209         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
1210
1211         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
1212
1213         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
1214
1215 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1216
1217         * mf/feta-schrift.mf: lighter staccato.
1218
1219 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
1220
1221         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
1222
1223 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
1224
1225         * VERSION: 1.5.53 released
1226
1227         * scm/lily.scm (ly-load): use primitive-load for loading.
1228
1229         * lily/misc.cc: remove quantise_iv()
1230
1231         * lily/*.cc: pass read-only arrays by reference.
1232         
1233         * lily/grob.cc (common_refpoint_of_array): new function. Try to
1234         use common_refpoint_of_{array, list} when possible.
1235
1236         * lily/include/accidental-placement.hh: new file.
1237
1238         * lily/accidental-placement.cc (alignment_callback): position
1239         accidentals in a better way.
1240
1241         * lily/skyline.cc: new file. Compute distances for collections of
1242         boxes.
1243
1244         * lily/include/skyline.hh: new file
1245
1246 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
1247
1248         * lily/accidental.cc (class Accidental_interface): grob for a
1249         single accidental.
1250
1251         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
1252         of reformatting
1253
1254         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
1255         together with new accidental-interface. 
1256
1257         * lily/include/*.hh: remove spurious set_interface() decls.
1258
1259         * lily/key-signature-interface.cc (brew_molecule): add padding for
1260         natural signs. Make natural typesetting like the sharp.
1261         
1262
1263         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
1264         is now slightly curved, not straight.
1265         
1266
1267 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
1268
1269         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
1270
1271         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
1272         more strictly. Use more clever regular expressions. Commented regexps.
1273
1274 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
1275
1276         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
1277
1278 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
1279
1280         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
1281         to control width of staff symbol in ragged-right mode (by request
1282         of Han-Wen)
1283
1284         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1285         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1286         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1287         added support for ligature brackets (needed when transcribing
1288         mensural music)
1289
1290 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
1291
1292         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1293         Fontify notes more strictly.
1294
1295 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
1296
1297         * mf/feta-din-code.mf: dynamic z sign.
1298
1299 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
1300
1301         * lilypond-mode.el: Prevent recoloring strings and comments.
1302
1303         * lilypond-font-lock.el: Handle block comments: block comments
1304         can have also ordinary comments inside.
1305         
1306 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
1307
1308         * lily/stem.cc (get_default_dir): set direction to CENTER if
1309         invisible. Various other fixes to deal with invisible stems and
1310         stem-direction == CENTER.
1311
1312         * lily/rest-collision.cc (do_shift): take direction from note if
1313         not set.
1314
1315         * input/regression/tie-grace.ly: new file.
1316
1317         * lily/tie-engraver.cc (create_grobs): fix tied graces.
1318
1319         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1320         knee correction. Fixes tight spacing for knees.
1321
1322 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1323
1324         * VERSION: 1.5.52 released
1325         
1326         * lily/*.cc: add some undocced properties.
1327         scm/grob-description.scm: idem.
1328
1329 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
1330
1331         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1332         multi-measure rests like "R1 *4" and scheme (typically has '#' 
1333         in the beginning). Small fixes. Add few reserved words.
1334
1335 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1336
1337         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1338         emacs mode.
1339
1340         * Documentation/windows/installing.texi: Suggest gswin32c (console
1341         program) for getting the version.  Layout fixes.
1342
1343 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1344
1345         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
1346         windows viewing commands, remove silly comment about Yap.
1347
1348 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
1349         
1350         * Documentation/topdocs/INSTALL.texi: Describe how to learn
1351         configure to find kpathsea on for example Slackware 8.0.
1352
1353         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1354
1355         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1356         by default: avoid "1" over single bar rests.
1357
1358         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1359         and correct the handling of geometry options.
1360
1361 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1362
1363         * lily/include/grob-interface.hh (ADD_INTERFACE): make
1364         implementation for Class::has_interface automatically. Junk all
1365         other implementations.
1366
1367         * lily/grob.cc (internal_get_grob_property): also typecheck
1368         property reads. Catches even more undocced properties. Bugfixing
1369         left for the uninspired masses.
1370
1371         * lily/beam.cc: remove end_after_line_breaking().
1372
1373         * lily/grob.cc (calculate_dependencies): remove list support for
1374         callbacks.
1375
1376         * lily/font-size-engraver.cc: only do font-interface.
1377
1378 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
1379
1380         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1381           Add few keywords.
1382
1383 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1384
1385         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1386         brackets using arpeggio requests.
1387         
1388         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1389         molecule-callback to use for drawing the brackets.
1390
1391         * Documentation/user/refman.itely: 
1392         * input/test/chord-bracket.ly: Chord brackets documented
1393         
1394 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
1395
1396         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
1397
1398         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1399
1400 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1401
1402         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1403         direction tuplets on beams.
1404
1405 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
1406
1407         * lilypond-indent.el: Bugfix of indentation of final point in buffer
1408
1409 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
1410
1411         * lilypond-mode.el: new command: LilyPond-un-comment-region.
1412         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
1413         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1414         submenu to "LilyPond"-menu.
1415
1416         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1417         an interface to play midi.
1418
1419 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1420
1421         * input/regression/script-stack-order.ly: new file.
1422
1423 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
1424
1425         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1426
1427         * mf/feta-din-code.mf: kerning for dynamics.
1428
1429 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
1430
1431         * input/regression/dynamics-glyphs.ly: new file
1432
1433         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1434
1435         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1436         forte f for the 2 number. Some fixes for the other bulbed glyphs.
1437
1438         * Documentation/windows/gs-profile.sh:
1439         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
1440         moved to gs/gsview windows packages.
1441
1442 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
1443
1444         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1445         finding out the duration. Fixes chord tremolo bug. 
1446
1447         * lily/completion-note-heads-engraver.cc (process_music): Set
1448         correct duration for all requests of the broken notes.
1449
1450         * input/regression/completion-heads.ly: Added example of
1451         Completion_heads_engraver.
1452
1453         * lilypond-mode.el: Added "2Midi" command
1454
1455 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
1456
1457         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1458         edge-width, edge-height and shorten-pair properties for tuplet
1459         brackets.
1460
1461         * lilypond-indent.el: Support for blinking of matching parentheses
1462         
1463         * lilypond-font-lock.el: Fix fontification of closing > on its own line
1464         
1465         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1466         cleanups of piano pedal brackets.
1467
1468 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
1469
1470         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1471
1472 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
1473
1474         * mf/feta-new-code.mf:  new dynamic f sign.
1475         new dynamic m sign.
1476
1477 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
1478
1479         * mf/feta-new-code.mf: new dynamic p sign.
1480
1481 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1482
1483         * lily/note-spacing.cc (stem_dir_correction): only do
1484         beam-correction if a beam is there. 
1485
1486         * lily/stem.cc (duration_log): change from flag_i (); better
1487         naming.
1488         (get_default_stem_end_position): fix dot/flag collision code.
1489
1490 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
1491
1492         * VERSION: release 1.5.50
1493
1494         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1495         unit spring here. Reduces number of warning messages.
1496
1497         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1498
1499 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1500
1501         * scm/generic-property.scm: remove generic-property, property-engraver
1502
1503         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1504
1505         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1506
1507         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1508
1509         * scm/*.scm: remove volta, hairpin and tuplet functions.
1510
1511         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1512         note column for notes/stems/dots that already have parents. Fixes
1513         nested grace contexts.
1514
1515 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1516
1517         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1518         get too curved slurs.
1519
1520         * scm/slur.scm (default-slur-extremity-offset-alist) 
1521         (default-phrasing-slur-extremity-offset-alist): Move slur
1522         attachments further away from note-head, vertically.  Also, leave
1523         a horizontal gap between slur and stem end.
1524
1525         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1526
1527 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1528
1529         * input/regression/spacing-grace-duration.ly: new file
1530
1531         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1532         for shortest durations.
1533
1534         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1535         extent of the mm rest. 
1536
1537         * lily/spacing-spanner.cc (get_duration_space): better spacing for
1538         really short notes.
1539
1540         * lily/tuplet-bracket.cc (make_bracket): new function
1541         (get_x_offset): new function; make tuplet brackets align on stems
1542         if stem has same direction.
1543         (parallel_beam): be anal about matching bracket to tuplet.
1544
1545         * lily/lookup.cc (line): new function Lookup::line(). 
1546
1547         * scm/tex.scm (dashed-line): change -line to -system in names.
1548
1549         * lily/box.cc (add_point): new function.
1550
1551         * flower/include/interval.hh: new function add_point ().
1552         new function widen()
1553         
1554 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1555
1556         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1557
1558         * scm/grob-property-description.scm (number-threshold): Add
1559         description.
1560
1561         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1562         rest if #measures > number-threshold.  Use padding (well, fake
1563         using it, anyway).
1564
1565         * scm/font.scm (make-style-sheet): New styles: mark-number,
1566         mark-letter.
1567         (paper20-style-sheet-alist): Add bigger bold fonts.
1568
1569         * lily/mark-engraver.cc (process_music): Use style mark-number or
1570         mark-letter.
1571
1572         * .cvsignore: Ignore all kinds of lilypond input and output.
1573
1574         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1575
1576 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1577
1578         * lily/staff-symbol.cc (brew_molecule): make line thickness
1579         adjustable.
1580
1581         * lily/*.cc: replace stafflinethickness by linethickness.
1582
1583 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1584
1585         * input/regression/beam-concave.ly: Add to-be-considered-concave
1586         beam.
1587
1588         * lily/beam.cc (check_concave): Add check for large gap between an
1589         inner notehead and the line through outer noteheads.
1590
1591         * scm/grob-description.scm (Beam): Add concaveness-gap, default
1592         value 2.0 staff-space.
1593         
1594         * scm/grob-property-description.scm (concaveness-gap): Add
1595         description.
1596
1597         * input/mozart-hrn3-allegro.ly: Fix typo.
1598
1599 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
1600
1601         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1602         lily/note-head-engraver: improved implementation of roundfilledbox
1603         (according to Han-Wen's request)
1604
1605         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1606         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1607         lily/simple-spacer.cc: ragged-right alignment
1608
1609 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
1610
1611         * input/regression/spacing-note-flags.ly: new file
1612
1613         * input/regression/spacing-rest.ly: new file
1614
1615         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1616
1617         * lily/spacing-spanner.cc (note_spacing): make note spacing after
1618         all grace notes tight (not only the column directly following a
1619         grace note).
1620
1621         * scm/grob-description.scm (all-grob-descriptions): don't make
1622         mm-rests larger than normal.
1623
1624         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1625         curved. Remove white space at the right of flags.
1626
1627 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1628
1629         * ports/ports.make: Bugfix: ignore CVS directories.
1630
1631         * stepmake/.cvsignore: New file.
1632
1633 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
1634
1635         * lily/note-spacing.cc (stem_dir_correction): don't correct when
1636         there is a flag on the stem.
1637
1638         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1639
1640         * scm/grob-property-description.scm (measure-length):
1641         measure-length grob property.
1642
1643         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1644         better spacing for breakable columns when they're juxtaposed: use
1645         measure length if applicable
1646
1647         * lily/timing-engraver.cc (start_translation_timestep): store
1648         measure length in breakable column at start of measure.
1649
1650 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1651
1652         * ROADMAP: Add description for ports dir, to check email upon
1653         commit.
1654
1655 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
1656
1657         * VERSION: 1.5.48 released
1658         
1659         * lily/multi-measure-rest.cc (symbol_molecule): split off from
1660         brew_molecule()
1661         (set_spacing_rods): Use symbol_molecule() to determine minimum
1662         width
1663         (church_rest): split off from brew_molecule()
1664         (big_rest): split off from brew_molecule(). Construct using
1665         variable shape.
1666         
1667         * mf/feta-eindelijk.mf: junk multi measure rest.
1668
1669 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
1670
1671         * lily/multi-measure-rest.cc (add_column): remove columns property.
1672
1673         * lily/dynamic-engraver.cc (process_music): add more verbose warning
1674
1675         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1676         3 as test piece.
1677
1678 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
1679
1680         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1681         keywords covered, dropped some non-keywords, include R- and 128-notes
1682
1683 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1684
1685         * Code clean-up: Junk multiple implementations of ledger line
1686         creation in note_head, custos, and porrectus.  This is important
1687         since there soon will be some more applications of ledger lines to
1688         come (e.g. ambitus engraver).
1689
1690         * Make thickness of ledger lines adjustable.  This is essential
1691         for mensural notation.
1692
1693         * Fix some bugs in the current ledger_line implementation, most
1694         notably that of the horizontal extent of ledger lines which equals
1695         at least the extent of the metafont ledger_line character, and
1696         which grows(!) if the desired extent shrinks below this limit.
1697
1698         * roundfilledbox: variable blotdiameter
1699
1700 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
1701
1702         * VERSION: 1.5.47 released
1703
1704         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1705
1706         * lily/porrectus.cc:  change line-thickness to thickness, change
1707         stem-direction to direction.
1708
1709         * scm/backend-documentation-lib.scm (check-dangling-properties):
1710         Automatically detect doc'ed properties that are not in an interface
1711
1712         * scm/grob-property-description.scm: property cleanup. Remove many
1713         paper-column props that are non-existent.
1714
1715         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1716         the grob has a molecule-callback.
1717
1718         * lily/*.cc: remove many set_interface() calls, and their
1719         implementations.
1720
1721         * input/regression/spacing-knee.ly: new file
1722
1723         * input/regression/spacing-clef-first-note.ly: new file
1724
1725         * lily/staff-spacing.cc (get_spacing_params): different spacing
1726         for pref matter to note at start of line, halfway during line.
1727
1728         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1729         correction only if stems have same direction (i.e. not for
1730         stem-clef combination).
1731         (stem_dir_correction): maximal correction for knees.
1732
1733         * lily/*.cc: many updates to interface descriptions.
1734         
1735         * lily/grob.cc (internal_set_grob_property): add interface check
1736         for every set_grob_property call
1737
1738         * lily/*.cc: document interface stuff in C++
1739         
1740         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
1741
1742         * lily/volta-bracket.cc: naming: change volta spanner to
1743         volta-bracket.
1744
1745         * input/bugs/*.ly: cleanup, remove lots of files.
1746         
1747         * buildscripts/mf-to-table.py (write_ps_encoding): generate
1748         .encoding file. WARNING: upgrade to pktrace 1.0.3
1749
1750         * mf/feta-toevallig.mf: change PS name for parentheses.
1751
1752 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1753
1754        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1755        also for textheight
1756
1757 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
1758
1759         * lily/scope.cc: remove file .
1760
1761         * lily/include/scope.hh: remove file. Remove Scope class
1762
1763         * VERSION: 1.5.46
1764
1765         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1766         score_forbidden_quants): ): take out of SCM, pass parameters so
1767         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1768         secs).
1769         (calc_stem_y): robustness: take care of last_visible_stem == 0.
1770
1771
1772         * lily/lily-guile.cc (ly_unit): return internal unit.
1773
1774         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
1775
1776         * lily/paper-outputter.cc (output_version): output internal unit
1777         from Paper_outputter
1778
1779         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1780
1781 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1782
1783        * scripts/ly2dvi.py: clean up old .*pk font caching code.
1784
1785        * scm/ps.scm: Use uppercase postscript font names for the standard
1786        TeX fonts.
1787
1788        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1789        Add all available TeX Type1 fonts, including Feta, to the
1790        Ghostscript font path.
1791
1792        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1793        version (affects the FontName) in lilypond.map.
1794
1795        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1796        documentation file to fetaNNlist.ly to avoid name collisions between
1797        lilypond generated .tex file and font .tex macros file.
1798
1799
1800 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
1801
1802         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1803         made mensural longa and (semi-)brevis leaner
1804
1805         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1806
1807         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1808         clean-up: moved bezier shape and slope from porrectus to lookup
1809
1810         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1811         and /usr/share/texmf/fonts
1812
1813         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1814
1815 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
1816
1817         * lily/text-spanner.cc (brew_molecule): add #'thickness
1818         (brew_molecule): add corrections for thickness in molecule padding.
1819
1820         * lily/line-spanner.cc (line_atom): make function private
1821
1822         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1823         discover bounding box. This solves the cropping problem.
1824
1825         * lily/bar-check-iterator.cc (process): Only resynchronize bar
1826         check when it  fails. This fixes the combination of  grace notes
1827         and bar checks.
1828
1829 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
1830
1831         * lily/repeated-music.cc (minimum_start): new Scheme callable function
1832         (first_start): new Scheme callable. This will fix repeated music
1833         starting with grace notes.
1834
1835         * lily/music.cc (start_mom): check start-moment-function grob property.
1836
1837         * VERSION: 1.5.45 released
1838
1839         * input/regression/system-extents.ly: new regression test. Test
1840         System extents. 
1841
1842         * lily/system.cc: rename LineOfScore into System 
1843
1844         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1845
1846         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1847         (ly_get_extent): new Scheme function ly-get-extent
1848
1849         * ps/lilyponddefs.ps: use output-scale for  line-x
1850         definition. 
1851
1852         * scm/ps.scm (font-load-command): 
1853         use output-scale
1854
1855 2002-03-20  Rune Zedeler <rune@zedeler.dk>
1856         
1857         * lily/beaming-info.cc: Stupid typo fixed
1858         
1859         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1860         support for cross-context auto-accidentals.
1861         Now the engraver can stay in Staff-context and see other contexts
1862         from there.
1863         Changed properties: autoAccidentals, autoCautionaries
1864
1865         * lily/translator-group.cc (set_children_property):
1866         Function added recursively setting the same property (deep_copied)
1867         for all children of a Translator_group.
1868         
1869         * ly/property-init.ly: added commands
1870         \pianoAccidentals \voiceAccidentals
1871         \modernVoiceAccidentals \modernVoiceCautionaries
1872
1873         * ly/engraver-init.ly: Correct initialization of new accidentals.
1874         
1875         * scm/translator-property-description.scm: Updated
1876         
1877         * input/regression/accidental-voice.ly: Added
1878         
1879         * Documentation/regression-test.tely: Added new test    
1880
1881 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1882
1883         * VERSION: 1.5.44 released
1884
1885         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1886
1887         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1888
1889         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1890         at 0.4 pt.
1891
1892         * tex/feta*.tex: remove.
1893         
1894         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1895         all software dealing with it.
1896
1897 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1898
1899         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1900         (this fixes pdf output).  Drop awk dependency.
1901
1902         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1903         dimensions (linewidth) are in mm.
1904
1905         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1906
1907         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1908
1909         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1910
1911 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
1912
1913         * VERSION: 1.5.43 released
1914
1915         * scm/beam.scm (beam-dir-majority-median): if majority is
1916         undecided, use median. Removes a forced dir in sarabande.
1917
1918         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1919
1920 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1921  
1922         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1923         widths, heights and shortens are now customisable properties.
1924  
1925         * scm/grob-description.scm, scm/grob-property-description.scm: New
1926         properties added to PianoPedalBracket, unnecessary
1927         Y-offset-callbacks removed from *Pedal, undocumented properties
1928         fixed.
1929  
1930         * Documentation/user/refman.itely: Piano pedal updates.
1931
1932 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1933
1934         * scm/grob-property-description.scm:
1935         * scm/interface-description.scm: Remove old stuff.
1936
1937         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1938         0.48 (previously 0.42).
1939         (Beam): Remove old stuff.
1940
1941         * lily/stem.cc: 
1942         * lily/stem-tremolo.cc: 
1943         * lily/beam.cc: 
1944         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
1945         (previously space-function).
1946
1947         * stepmake/bin/add-html-footer.py: Website title fix.
1948
1949 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1950
1951         * scripts/ly2dvi.py (environment): use new font searching setup.
1952
1953         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1954
1955         * lily/tfm.cc (dimensions): make code dimension independent
1956
1957         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1958         scaling
1959
1960         * tex/lily-ps-defs.tex: scaling for PS points and MM.
1961
1962         * lily/include/dimensions.hh: try MM as internal unit.
1963
1964         * scm/*.scm: remove invoke-dim1
1965
1966 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1967
1968         * GNUmakefile.in (fontpaths): add fontpaths target,
1969
1970         * make/mutopia-targets.make: add PDF rules.
1971
1972         * make/mutopia-rules.make: add pdf rule.
1973
1974         * buildscripts/mutopia-index.py (list_item): add PDF.
1975
1976         * buildscripts/lilypond-profile.sh (TEXMF): typo.
1977
1978         * make/lilypond-vars.make: set TEXMF for the new font setup.
1979  
1980 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1981
1982         * VERSION: 1.5.42 released
1983         
1984         * mf/feta-schrift.mf: endless twiddling of Tr.
1985
1986         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1987         endless twiddling with the bulb shape.
1988
1989         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1990         little smaller if there is an accidental.
1991
1992 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1993  
1994         * buildscripts/lilypond-profile.sh: 
1995  
1996         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1997         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1998         Implement new font installation strategy
1999  
2000         * Documentation/misc/fontinstallation (TEXMF): Documentation of
2001         the new font installation strategy.
2002  
2003         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
2004         for comment-region.
2005  
2006         * input/test/staff-size.ly: Simplified using StaffContainer
2007  
2008         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
2009         lilypond.map file
2010
2011 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2012
2013         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
2014
2015         * lily/beam.cc (score_stem_lengths): new quanting stuff
2016         (score_forbidden_quants): Second and third beam quant stuff.
2017
2018 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2019
2020         * lily/beam.cc (least_squares): Remember least-squares-dy for
2021         later use.
2022         (quantise_interval): Don't quant to dy steeper that
2023         least-squares-dy.  Return empty interval if no sane quants found.
2024         (quantise_position): Try quantise_interval until we have
2025         acceptable solution.
2026
2027 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2028
2029         * scm/interface-description.scm (beam-interface): Update.
2030
2031 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2032
2033         * VERSION: 1.5.41 released
2034         
2035         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
2036         optima serifs on top of t, bottom of r.
2037
2038         * mf/feta-bolletjes.mf: make ledger line rounder. 
2039
2040         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
2041
2042         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
2043         parametrization.
2044
2045 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
2046  
2047        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
2048        well as text pedal indications and a combination of both.  All
2049        pedal indications are horizontally aligned on a line spanner.
2050  
2051        * lily/text-spanner.cc: Edge-width property added to use in
2052        bracketed piano pedals. Function setup_sustain_pedal added to set
2053        the dimensions of the brackets. 
2054  
2055        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
2056        some of the *Pedal properties tweaked. 
2057  
2058        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
2059        edge-width (TextSpanner) properties.
2060  
2061        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
2062  
2063        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
2064        fontified identifiers list.
2065  
2066        * input/test/pedal.ly: New pedal features added. 
2067  
2068        * Documentation/user/refman.itely: New pedal features documented.
2069        
2070
2071 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
2072
2073         * lily/include/new-beam.hh: Previously new-beam.hh
2074         * lily/beam.cc: Previously new-beam.cc
2075         (least_squares): Bugfix: don't barf on beams with less than two
2076         visible stems (tremolos).
2077
2078         * scm/beam.scm: 
2079         * scm/grob-description.scm (Beam): Junk old beam stuff.
2080         
2081         
2082 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2083
2084         * VERSION: 1.5.40
2085
2086         * mf/feta-eindelijk.mf: new 8th rest.
2087
2088         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
2089         stick out of staffline
2090
2091         * scripts/lilypond-book.py: fixes for texi regular expressions.
2092
2093 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
2094
2095         * lily/include/new-beam.hh:
2096         * lily/new-beam.cc: New file.
2097
2098         * flower/include/interval.hh: 
2099         * flower/include/interval.tcc (delta): New method.
2100         (swap): Now public (previously private).
2101         
2102         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
2103         1 staff-line-thickness.  Sadly, this makes dy quanting problems
2104         (dy quants allowed should depend on actual left y) more visible.
2105
2106 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
2107
2108         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
2109
2110         * scm/grob-property-description.scm (concaveness-threshold): Add
2111         typecheck and description.
2112
2113         * scm/grob-description.scm (Beam): Remove obsolete properties, add
2114         concaveness-threshold (previously concaveness).
2115
2116         * lily/beam.cc (check_concave): Remove choices and debugging
2117         stuff: use best concaveness calculation.
2118         (quantise_dy): Remove choice.  Try to never make a slope steeper
2119         by quantising, but certainly never quantise a slope away.
2120         (check_stem_length_f): Remove choice.  In case of lengthening
2121         alowed, always lengthen to ideal length.
2122
2123         * Documentation/index.texi: Fix FAQ url.
2124
2125         * Documentation/topdocs/INSTALL.texi: Add information about fink,
2126         compile fix and 1.4 specific fix that doesn't hurt 1.5.
2127
2128 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
2129
2130         * VERSION: 1.5.39 released
2131
2132         * lily/simple-spacer.cc (add_rod): rods take precedence over
2133         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
2134
2135         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
2136
2137         * lily/note-spacing.cc (get_spacing): only insert space for
2138         accidentals if necessary.
2139
2140         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
2141
2142         * lily/spacing-spanner.cc (musical_column_spacing): new
2143         function. Have correct spacing from note to end-of-line as well.
2144
2145 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2146
2147        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
2148
2149        * darwin.patch: New file.
2150
2151        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
2152        code.  Shorten stems by fraction of stems to be shortened.
2153
2154        * lily/stem.cc (get_default_stem_end_position): Shorten only half
2155        of shorten value for boundary cases.
2156
2157        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
2158        (Beam): Set beamed-stem-shorten to (1.0 0.5).
2159
2160 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2161
2162        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
2163
2164        * scm/grob-description.scm (Beam): Add concaveness.  Replace
2165        Beam::cancel_suspect_slope with Beam::check_concave.
2166  
2167        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
2168        set slope to horizontal if concaveness > Beam.concaveness.  This
2169        handles cases that kludgy cancel_suspect_slope was meant to catch
2170        very well.
2171        (cancel_suspect_slope): Remove.
2172
2173 2002-03-12 Rune Zedeler <rune@zedeler.dk>
2174
2175         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
2176         stemLeftBeamCount and stemRightBeamCount to equal 0.
2177         Fixes [c8 c4 c8]
2178       
2179 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
2180
2181         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
2182         fixed spacing for pref matter, if the next column is musical, and
2183         at the same moment.
2184
2185         * lily/note-spacing.cc (stem_dir_correction): Use correct
2186         discretionary for stem-bar spacing.
2187
2188 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
2189
2190         * VERSION: 1.5.38 released 
2191
2192         * lily/grob.cc (warning): Use cause tracking to give more
2193         meaningful errors from the backend. 
2194
2195         * lily/property-iterator.cc (check_grob): Warn if setting grob
2196         property in unknown grob. 
2197
2198         * mf/feta-toevallig.mf: brushed stems for natural sign.
2199
2200         * lily/molecule.cc (align_to): don't translate empty molecule.
2201         (this triggers a very subtle bug in time-signature.)  
2202
2203 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
2204
2205         * lily/spring.cc: remove file.
2206
2207         * input/regression/spacing-stem-bar.ly: new file
2208
2209         * lily/score.cc (run_translator): resurrect point-and-click
2210
2211         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
2212         sarabande layout
2213
2214         * lily/spacing-spanner.cc (find_shortest): Shortest note for
2215         spacing is now globally determined, using the most common shortest
2216         note. Notes that are shorter are spaced geometrically, and with
2217         expand hints. This makes spacing more even, and measures that have
2218         very short notes won't be that stretched out.  
2219
2220         * mf/feta-klef.mf: F-clef fixes, documentation on the
2221         shape. (WARNING: font changed.)
2222
2223 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
2224
2225         * lily/simple-spacer.cc (add_columns): support for infinitely
2226         stiff springs.
2227  
2228         * lily/staff-spacing.cc (get_spacing_params): space after
2229         prefatory matter is fixed.
2230
2231 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
2232
2233         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
2234         barline following an upstem.
2235
2236         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
2237         function from next_notes_correction().
2238         (bar_y_positions): idem.
2239
2240 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2241
2242         * input/regression/break.ly (texidoc): bugfix: escape \ in
2243         strings.
2244
2245         * lily/staff-spacing.cc (next_notes_correction): Correct the
2246         spacing of a note following a barline.
2247
2248
2249 2002-03-04  Glen Prideaux
2250
2251         * mf/feta-solfa.mf: Shaped note heads
2252
2253 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
2254
2255         * VERSION: 1.5.37 released
2256
2257         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
2258         left-align molecule.
2259         
2260         * lily/break-align-interface.cc (do_alignment): completely
2261         rewritten. Now it does not use Align_interface anymore, but a
2262         separate routine. Like StaffSpacing, it reads space-alist from the
2263         breakable grobs.  This allows you to set spacing using
2264         
2265         \property Staff.Clef \override #'space-alist = '(....stuff....)  
2266  
2267         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
2268         to Bar_line. Move files around as well.
2269
2270         * lily/time-signature.cc (time_signature): left align time signatures. 
2271
2272         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
2273         Corrections of the glyph shape C. Comments added.
2274
2275 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
2276
2277         * lily/spacing-spanner.cc: move from third-try.cc; rename
2278         Third_spacing_spanner to Spacing_spanner.
2279
2280         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
2281         spacing stuff. Much cleaner now, and we prepare for neat spacing
2282         tricks around bar lines and such.
2283
2284         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2285         variables with themselves. (Ouch.)
2286
2287         * lily/span-bar.cc (brew_molecule): don't try to span bars that
2288         overlap.
2289
2290 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
2291
2292         * VERSION: 1.5.36
2293
2294         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2295         ly_dir_p
2296
2297         * lily/music.cc (ly_get_mus_property): typechecking
2298         (ly_set_mus_property): idem
2299         (ly_make_music): idem
2300         (ly_music_name): idem
2301
2302         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2303
2304         * lily/note-spacing.cc (stem_dir_correction): correction for
2305         same stem notes as well. 
2306
2307         * lily/pitch.cc (pitch_transpose): stricter typechecking
2308
2309         * mf/parmesan*mf: magnification fixes.
2310
2311         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2312
2313 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2314
2315         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2316         documenting the font. (Doesn't work for parmesan at the moment)
2317
2318         * Documentation/user/appendices.itely (The Feta font): Add list of
2319         Feta font symbols with names.
2320
2321         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2322         automatically
2323
2324 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
2325
2326         * lily/translator-group.cc (ly_set_trans_property): typechecking
2327         (ly_get_trans_property): typechecking.
2328
2329         * lily/font-metric.cc (ly_text_dimension): typechecking 
2330         (ly_find_glyph_by_name): idem.
2331
2332         * scm/bass-figure.scm (brew-complete-figure): support for
2333         bracketed numbers.
2334         
2335         * lily/grob.cc (ly_get_paper_var): new function
2336
2337 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2338
2339         * VERSION (PATCH_LEVEL): 1.5.35 released.
2340
2341         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2342         (bracket): New function.
2343
2344         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2345         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
2346
2347         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2348         bugfix.
2349
2350         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2351         typecheck bugfix. 
2352
2353         * lily/grob.cc (ly_get_grob_property): be anal about types.
2354         (ly_set_grob_property): idem
2355
2356         * lily/figured-bass-engraver.cc (process_music): move molecule
2357         building completely to Scheme
2358
2359         * lily/include/musical-request.hh (class Bass_figure_req): Add
2360         class. 
2361
2362         * lily/parser.yy (bass_figure): add support for space figure.
2363
2364         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
2365
2366         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2367
2368         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2369         (ly_align_to_x): new function ly-align-to!
2370
2371         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2372         function ly-get-font
2373
2374         * mf/feta-nummer.mf: include normal-space dimension. 
2375
2376         * lily/collision.cc (check_meshing_chords): don't merge collisions
2377         with whole notes.
2378         
2379         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2380         glyph is string.
2381
2382 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
2383
2384         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2385
2386 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
2387
2388         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
2389         font changed)
2390
2391         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2392         than mensural chars
2393
2394         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2395         scm/grob-description.scm: added mensural fermata symbol
2396
2397 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2398
2399         * VERSION: 1.5.34 released.
2400
2401         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2402
2403         * lily/staff-symbol-referencer.cc (callback): assume that
2404         staff-position is unset in general.
2405
2406         * input/regression/rest-pitch.ly: new file.
2407
2408         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2409         a4\rest
2410
2411 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2412
2413         * lily/scm-option.cc (set_lily_option): add internal-type-checks
2414         as Scheme option. Run regression test by default with
2415         internal-type-checking.
2416
2417         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
2418
2419         * lily/lily-guile.cc (type_check_assignment): changed functions.
2420
2421         * scm/*description*.scm: be anal about typechecks. Some changes
2422         for internal variable names.
2423
2424 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2425
2426         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
2427
2428 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
2429
2430         * VERSION: 1.5.33 released.
2431
2432         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2433         flare_path everywhere (c-clef, numbers).        
2434
2435         * lily/bar-number-engraver.cc (process_music): also print bar
2436         number if measure starts with grace note.       
2437
2438         * input/regression/grace-bar-number.ly: new test.
2439
2440 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
2441
2442         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2443         rest as well.
2444
2445         * scm/music-functions.scm (voicify-music):  split chords into
2446         different voices automatically.
2447
2448         * lily/music.cc (ly_music_list_p): new function
2449
2450         * lily/music-sequence.cc (do_relative_octave): robustification
2451
2452         * scm/music-functions.scm: many utility functions 
2453
2454         * lily/music.cc (ly_set_mus_property): add type checks to the
2455         Scheme property assignment.
2456
2457         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2458         dvips fixes
2459
2460         * mf/lilypond.map: .map file from Mats' page. 
2461
2462 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
2463
2464         * Some more parmesan related fixes;
2465
2466         * Custos: varying shape (in particular, stem length), depending on the
2467           vertical position of the custos (on staffline / between stafflines);
2468
2469         * Custos: added grob property "neutral-direction" (same semantics as
2470           with stem); introduced new grob property "neutral-position";
2471
2472         * Time-signature: print a warning when resorting to default layout.
2473
2474 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2475
2476         * lily/translator-group.cc (add_fresh_simple_translator): remove
2477         function; initialize() is called through
2478         Translator_group::initialize().
2479
2480         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2481         for the neighbors of a loose column.
2482
2483         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2484         position loose columns so that they don't collide.
2485
2486 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2487
2488         * VERSION: 1.5.32 released.
2489
2490         * scm/font.scm: remove font-name symbol.
2491
2492         * mf/GNUmakefile: use pktrace for making PFAs
2493
2494         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2495
2496         * lily/rest-collision.cc (do_shift): read direction field from
2497         rest-column in case of note-rest collision. This should fix some
2498         problems with rest collisions.
2499
2500 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2501
2502         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2503         property.
2504
2505         * lily/note-head.cc (brew_ez_molecule): Remove note-character
2506         property. Read pitch directly from #'cause.
2507
2508         * mf/feta-puntje.mf: bugfix
2509
2510 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
2511         
2512         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2513
2514 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2515
2516         * Documentation/windows/compiling.texi: Update.
2517
2518         * Documentation/index.texi: Add link to orphaned compiling for
2519         windows page.
2520
2521         * Documentation/footer.html.in: Comment fix.
2522
2523         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2524
2525 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
2526         
2527         * VERSION: 1.5.31 released
2528
2529         * lily/new-spacing-spanner.cc: remove file.
2530
2531         * lily/third-try.cc (do_measure): only take spacings into account
2532         if they pertain to the column pair under consideration. This fixes
2533         spacing bug when mixing eighths triplets and normal eighths.
2534
2535         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2536         lines don't take up space anymore. Document why in note-head.cc
2537         comment.
2538
2539 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
2540
2541         * lily/font-interface.cc (get_font): reinstate
2542         #'font-magnification. See input/regression/font-magnification.ly
2543         (get_font): Change the definition of  #'font-name grob property.
2544
2545         * lily/grob.cc (get_uncached_molecule): output origin for grobs
2546         that have a #'cause field.
2547
2548 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2549
2550         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
2551
2552         * mf/GNUmakefile:  remove metapost stuff
2553
2554         * stepmake/aclocal.m4: remove metapost detection stuff.
2555
2556 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2557
2558         * mf/GNUmakefile (FET_FILES): 
2559         (FONT_FILES): Include parmesan.
2560
2561         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
2562         iso regex, regsub
2563
2564         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2565
2566         * Documentation/user/refman.itely (Paper size): Quote braces.
2567
2568 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2569
2570         * stepmake/aclocal.m4: fixed bison version check to be more
2571         robust.
2572
2573         * lily/stem.cc (position_noteheads): fix for cluster chords.
2574
2575         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
2576
2577         * python 2.2 support.
2578
2579 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
2580
2581         * VERSION: 1.5.30 released
2582
2583         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2584
2585         * Documentation/user/refman.itely (Dynamics): add a note about
2586         DynamicLineSpanner.
2587
2588         * scm/grob-description.scm: add a 'translator-type?  object
2589         property, so that \property Foo.Bar =\turnOff doesn't cause
2590         type check warning.
2591
2592         * lily/translator-group.cc (add_fresh_group_translator): make
2593         new add-translator functions to make distinction between fresh and
2594         used group-translators. Fixes problem with scripts on auto-changing voice 
2595
2596         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2597         add to Score_performer. Fixes bar checks in MIDI
2598
2599         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2600         heads. Fixes many quirks with ties.
2601
2602         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2603         in the grob property #'cause, instead of using Grob_info.
2604
2605         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2606         staff context, fixing dot alignment on collisions.
2607
2608         * lily/beam-engraver.cc (try_music): remove can't find beam start
2609         warning, so that skipTypesetting won't complain.
2610
2611 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2612
2613         * Documentation/user/refman.itely (Paper size): Documentation fix,
2614         papersize
2615
2616         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2617
2618         * scm/grob-description.scm: \breathe: Use feta font comma by default
2619
2620 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2621
2622         * input/template/piano-dynamics.ly (pedal): Simplified
2623
2624 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2625
2626         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2627
2628 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
2629
2630         * lilypond-mode.el (LilyPond-command-query): ignore case.
2631
2632 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2633
2634         * VERSION: 1.5.29 released
2635
2636         * all files: change 2001 to 2002 in headers globally
2637
2638         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2639         cheese") font. WARNING: fonts changed.
2640         
2641 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
2642
2643         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2644         
2645         * mf/*.mf: Added some more vaticana/solesmes style font symbols
2646         
2647         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2648
2649         * mf/*.mf: Fixed a few typos in various .mf files
2650
2651 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2652  
2653         * mf/: added macro soft_penstroke
2654         
2655                softened some glyphs
2656                redrawn triangular noteheads
2657                redrawn tab-clef
2658                added classical quarter rest
2659         
2660         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2661  
2662         * lily/bar.cc: Bugfix: repeat dots when even number of staff
2663         lines and staff_space>=2
2664  
2665         * lily/rest.cc: Use default rests when current style glyphs not
2666         found - this allows
2667         \property Staff.Rest \override #'style = #'classical
2668
2669 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2670
2671         * input/bugs/first-tie.ly: New file.
2672
2673         * input/bugs/spacing-clash.ly: New file.
2674
2675 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2676
2677         * po: regenerate.
2678
2679 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2680
2681         * lilypond-indent.el: New file providing indentation for
2682         parenthesised blocks of lilypond code in Emacs
2683         
2684         * lilypond-font-lock.el: Changes to the syntax table to facilitate
2685         indentation and handle block comments properly. Distinguish
2686         accents from close-brackets in fontification.
2687
2688         * lilypond-mode.el: LilyPond-indent-command set appropriately.
2689
2690 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2691
2692         * Documentation/windows/installing.texi: 
2693         * Documentation/windows/compiling.texi: Include from 1.4.10.
2694
2695         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2696
2697         * input/bugs/first-midi-tie.ly: New file.
2698
2699 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
2700         
2701         * VERSION: 1.5.28 released
2702
2703         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2704         illicit beams on [c4 c4] etc.
2705
2706         * lily/bar-check-iterator.cc (Bar_check_iterator): new
2707         file. Make separate iterator for Bar_checks. Bar_check now happen
2708         outside engravers, meaning that you can use them with
2709         skipTypesetting. Associated changes in other files.
2710         
2711         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2712         function
2713         
2714         * lily/spacing-spanner.cc (stem_dir_correction): removed function
2715
2716         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2717
2718         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2719
2720         * lily/stem.cc (set_spacing_hints): removed function
2721
2722         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2723         correction for spacing; now take vertical extents of the stem into
2724         account.  
2725
2726         * lily/third-try.cc: More hacking to get spacing working.
2727
2728         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2729         sits at staff level and creates note spacing objects. Scrap it
2730         again, and document why.
2731
2732         * lily/include/group-interface.hh: rename functions. 
2733
2734 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2735
2736         * stepmake/stepmake/c++-rules.make:
2737         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2738
2739 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2740
2741         * make/lilypond-vars.make: 
2742         * scripts/ly2dvi.py (setup_environment): 
2743         * scripts/lilypond-book.py (setup_environment): Also set tex
2744         memory options.
2745
2746 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2747
2748         * VERSION: 1.5.27 released.
2749
2750         * Documentation/user/refman.itely (Bar numbers): added bar number
2751         documentation.
2752
2753         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2754         again.
2755
2756 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
2757
2758         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2759         spread the last few lines all over the last page of a score.
2760
2761 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
2762
2763         * lily/third-try.cc: 3rd try at revising spacing
2764         engine. Not yet finished.
2765
2766         * lily/paper-column.cc (brew_molecule): print debugging marks on a
2767         paper-column.
2768
2769         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2770         collecting past note heads.
2771
2772         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2773         stuff.
2774
2775         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2776         class. Keep a queue of grobs that are still playing in busyGrobs. 
2777
2778         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2779         function. Use busyGrobs to detect playing notes.
2780         
2781 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2782  
2783         * Documentation/topdocs/INSTALL.texi: Added note about broken
2784         python-2.1.  Updated note for Debian's broken (well, broken for
2785         our use anyway) tex configuration.
2786         
2787         * scripts/lilypond-book.py (re_dict): python2.2 fix.
2788         
2789         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
2790         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2791         
2792         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2793         (But left margin of png's still misses a few pixels.  Arg.)
2794         
2795 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
2796
2797         * lilypond-mode.el (LilyPond-command-next-midi): Make
2798         possible to kill midi-process (using "C-c C-m").
2799
2800 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
2801
2802         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2803         Convert strings with dimensions to numbers.
2804
2805         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
2806         as found in stavesFound. 
2807
2808         * lily/bar-number-engraver.cc: remove staff administration. 
2809
2810         * lily/mark-engraver.cc (acknowledge_grob): remove staff
2811         administration. This breaks support for invisible-staff.
2812
2813         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2814         symbols into stavesFound.
2815
2816         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2817         grobs, and put them into columns.
2818
2819         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2820         Engraver_group_engraver as a potential candidate for ack'ing grobs.
2821
2822 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
2823
2824         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2825         midi section in the Emacs-mode, so it is possible to play certain
2826         score in a multiscore lilypond-file.
2827          
2828 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
2829         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2830         (FIXME: not accessible from guile)
2831         
2832         * lily/accidental-engraver.cc: rewrote accidental-routines to get
2833         better support for Kurt Stone's suggestions.
2834         Removed properties: noResetKey, forgetAccidentals, autoReminders,
2835                             lazyKeySignature.
2836         Changed property:   localKeySignature.
2837         Added properties:   extraNatural, autoAccidentals,
2838                             autoCautionaries.
2839
2840         (BUGFIX: broken-tie-support destroyed in 1.5.16)
2841         
2842         * ly/property-init.ly: added commands
2843         \defaultAccidentals \modernAccidentals \modernCautionaries
2844         \noResetKey \forgetAccidentals
2845
2846         * ly/engraver-init.ly: Correct initialization of new accidentals.
2847         
2848         * scm/translator-property-description.scm: The new properties
2849         added.
2850         
2851         * input/: Some examples added, some changed.
2852         
2853         * Documentation/regression-test.tely: Added quick test of new
2854         accidentals.
2855
2856 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2857
2858         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2859         header not found
2860
2861 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2862
2863         * lily/beam.cc (before_line_breaking): Make beams  without stems
2864         or with only one stem disappear.
2865
2866 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2867
2868         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2869         files to have standardised HTML bibliography output. Update build
2870         docs to reflect this.
2871
2872         * lily/include/simple-spacer.hh (struct Simple_spacer): add
2873         active_count_, so that we don't have to look for active springs
2874         anymore.
2875
2876         * scm/interface-description.scm,scm/grob-property-description.scm:
2877         Add 'penalty
2878
2879         * lily/simple-spacer.cc (solve): Handle forced line breaks
2880         here. Fixes problems when combining linebreaks with non-fitting
2881         line configurations
2882
2883 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2884
2885         * 1.4.9.jcn3 forward ports.
2886         
2887         * Really included .cvsignore.
2888
2889         * Included Han-Wen's uu1 windows fixes.
2890
2891         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2892
2893         * Added Cygwin setup.hint
2894
2895         * Removed tex, python wrappers and postinstalls to go with Cywgin's
2896         tetex/texmf, python installations.
2897
2898         * Updated cygwin installer.
2899
2900         * ly2dvi: Don't accept filenames with spaces (+ fix).
2901
2902 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
2903
2904         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2905
2906         * lily/translator-def.cc: Remove manual symbol caching.
2907
2908         * lily/script-column.cc (before_line_breaking): robustness check:
2909         don't crash if no direction set.
2910
2911         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2912
2913         * scripts/pmx2ly.py (Parser.parse_header): more generic header
2914         parsing.
2915
2916
2917 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
2918
2919         * lily/note-head.cc (head_extent): added to compute width without
2920         ledger lines. By default, ledger lines take up width now.
2921
2922         * input/regression/fingering.ly: demonstrate auto fingering.
2923         Horizontal placement is still buggy. 
2924         
2925         * lily/fingering-engraver.cc (class Fingering_engraver):
2926         added. Provides support for horizontal fingering scripts
2927
2928         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2929
2930         * lily/side-position-interface.cc (add_staff_support): add staff
2931         only for Y-axis side positions.
2932
2933         * lily/parser.yy (request_chord): Fix mem leak.
2934
2935         * lily/musical-request.cc (transpose): moved to Music::transpose()
2936
2937         * lily/include/grob-info.hh: Change music pointer to SCM, so we
2938         can store grobs as grob-creation cause as well.
2939
2940         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2941         handle when adding. Use precomputed symbols throughout lily.
2942         
2943         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2944         track of spacing issues.
2945
2946         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2947         to keep track of staff spacing
2948
2949 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
2950
2951         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2952           code clean from conditionals and have a concentrated sets of
2953           compatibility fixes for old guile versions.
2954
2955         * Fixes for guile 1.4, including embedded ps.
2956
2957 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2958
2959         * lily/stanza-number-engraver.cc (process_music): allow pairs as
2960         well for markup texts.
2961
2962         * lily/musical-request.cc (length_mom): kludge for null pointer.
2963
2964         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2965
2966         * scm/lily.scm (sign): bugfix
2967
2968         * CHANGES: Change log instated.
2969
2970         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.
2971