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