]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
91ad3fec6282083625d8d738fffb4c074b377232
[lilypond.git] / ChangeLog
1 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
2
3         * mf/feta-nummer-code.mf (code): three fixes.
4
5 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
6
7         * VERSION: 1.5.53 released
8
9         * scm/lily.scm (ly-load): use primitive-load for loading.
10
11         * lily/misc.cc: remove quantise_iv()
12
13         * lily/*.cc: pass read-only arrays by reference.
14         
15         * lily/grob.cc (common_refpoint_of_array): new function. Try to
16         use common_refpoint_of_{array, list} when possible.
17
18         * lily/include/accidental-placement.hh: new file.
19
20         * lily/accidental-placement.cc (alignment_callback): position
21         accidentals in a better way.
22
23         * lily/skyline.cc: new file. Compute distances for collections of
24         boxes.
25
26         * lily/include/skyline.hh: new file
27
28 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
29
30         * lily/accidental.cc (class Accidental_interface): grob for a
31         single accidental.
32
33         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
34         of reformatting
35
36         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
37         together with new accidental-interface. 
38
39         * lily/include/*.hh: remove spurious set_interface() decls.
40
41         * lily/key-signature-interface.cc (brew_molecule): add padding for
42         natural signs. Make natural typesetting like the sharp.
43         
44
45         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
46         is now slightly curved, not straight.
47         
48
49 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
50
51         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
52
53         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
54         more strictly. Use more clever regular expressions. Commented regexps.
55
56 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
57
58         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
59
60 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
61
62         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
63         to control width of staff symbol in ragged-right mode (by request
64         of Han-Wen)
65
66         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
67         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
68         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
69         added support for ligature brackets (needed when transcribing
70         mensural music)
71
72 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
73
74         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
75         Fontify notes more strictly.
76
77 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
78
79         * mf/feta-din-code.mf: dynamic z sign.
80
81 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
82
83         * lilypond-mode.el: Prevent recoloring strings and comments.
84
85         * lilypond-font-lock.el: Handle block comments: block comments
86         can have also ordinary comments inside.
87         
88 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
89
90         * lily/stem.cc (get_default_dir): set direction to CENTER if
91         invisible. Various other fixes to deal with invisible stems and
92         stem-direction == CENTER.
93
94         * lily/rest-collision.cc (do_shift): take direction from note if
95         not set.
96
97         * input/regression/tie-grace.ly: new file.
98
99         * lily/tie-engraver.cc (create_grobs): fix tied graces.
100
101         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
102         knee correction. Fixes tight spacing for knees.
103
104 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
105
106         * VERSION: 1.5.52 released
107         
108         * lily/*.cc: add some undocced properties.
109         scm/grob-description.scm: idem.
110
111 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
112
113         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
114         multi-measure rests like "R1 *4" and scheme (typically has '#' 
115         in the beginning). Small fixes. Add few reserved words.
116
117 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
118
119         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
120         emacs mode.
121
122         * Documentation/windows/installing.texi: Suggest gswin32c (console
123         program) for getting the version.  Layout fixes.
124
125 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
126
127         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
128         windows viewing commands, remove silly comment about Yap.
129
130 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
131         
132         * Documentation/topdocs/INSTALL.texi: Describe how to learn
133         configure to find kpathsea on for example Slackware 8.0.
134
135         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
136
137         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
138         by default: avoid "1" over single bar rests.
139
140         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
141         and correct the handling of geometry options.
142
143 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
144
145         * lily/include/grob-interface.hh (ADD_INTERFACE): make
146         implementation for Class::has_interface automatically. Junk all
147         other implementations.
148
149         * lily/grob.cc (internal_get_grob_property): also typecheck
150         property reads. Catches even more undocced properties. Bugfixing
151         left for the uninspired masses.
152
153         * lily/beam.cc: remove end_after_line_breaking().
154
155         * lily/grob.cc (calculate_dependencies): remove list support for
156         callbacks.
157
158         * lily/font-size-engraver.cc: only do font-interface.
159
160 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
161
162         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
163           Add few keywords.
164
165 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
166
167         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
168         brackets using arpeggio requests.
169         
170         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
171         molecule-callback to use for drawing the brackets.
172
173         * Documentation/user/refman.itely: 
174         * input/test/chord-bracket.ly: Chord brackets documented
175         
176 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
177
178         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
179
180         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
181
182 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
183
184         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
185         direction tuplets on beams.
186
187 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
188
189         * lilypond-indent.el: Bugfix of indentation of final point in buffer
190
191 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
192
193         * lilypond-mode.el: new command: LilyPond-un-comment-region.
194         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
195         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
196         submenu to "LilyPond"-menu.
197
198         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
199         an interface to play midi.
200
201 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
202
203         * input/regression/script-stack-order.ly: new file.
204
205 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
206
207         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
208
209         * mf/feta-din-code.mf: kerning for dynamics.
210
211 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
212
213         * input/regression/dynamics-glyphs.ly: new file
214
215         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
216
217         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
218         forte f for the 2 number. Some fixes for the other bulbed glyphs.
219
220         * Documentation/windows/gs-profile.sh:
221         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
222         moved to gs/gsview windows packages.
223
224 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
225
226         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
227         finding out the duration. Fixes chord tremolo bug. 
228
229         * lily/completion-note-heads-engraver.cc (process_music): Set
230         correct duration for all requests of the broken notes.
231
232         * input/regression/completion-heads.ly: Added example of
233         Completion_heads_engraver.
234
235         * lilypond-mode.el: Added "2Midi" command
236
237 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
238
239         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
240         edge-width, edge-height and shorten-pair properties for tuplet
241         brackets.
242
243         * lilypond-indent.el: Support for blinking of matching parentheses
244         
245         * lilypond-font-lock.el: Fix fontification of closing > on its own line
246         
247         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
248         cleanups of piano pedal brackets.
249
250 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
251
252         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
253
254 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
255
256         * mf/feta-new-code.mf:  new dynamic f sign.
257         new dynamic m sign.
258
259 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
260
261         * mf/feta-new-code.mf: new dynamic p sign.
262
263 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
264
265         * lily/note-spacing.cc (stem_dir_correction): only do
266         beam-correction if a beam is there. 
267
268         * lily/stem.cc (duration_log): change from flag_i (); better
269         naming.
270         (get_default_stem_end_position): fix dot/flag collision code.
271
272 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
273
274         * VERSION: release 1.5.50
275
276         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
277         unit spring here. Reduces number of warning messages.
278
279         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
280
281 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
282
283         * scm/generic-property.scm: remove generic-property, property-engraver
284
285         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
286
287         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
288
289         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
290
291         * scm/*.scm: remove volta, hairpin and tuplet functions.
292
293         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
294         note column for notes/stems/dots that already have parents. Fixes
295         nested grace contexts.
296
297 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
298
299         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
300         get too curved slurs.
301
302         * scm/slur.scm (default-slur-extremity-offset-alist) 
303         (default-phrasing-slur-extremity-offset-alist): Move slur
304         attachments further away from note-head, vertically.  Also, leave
305         a horizontal gap between slur and stem end.
306
307         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
308
309 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
310
311         * input/regression/spacing-grace-duration.ly: new file
312
313         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
314         for shortest durations.
315
316         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
317         extent of the mm rest. 
318
319         * lily/spacing-spanner.cc (get_duration_space): better spacing for
320         really short notes.
321
322         * lily/tuplet-bracket.cc (make_bracket): new function
323         (get_x_offset): new function; make tuplet brackets align on stems
324         if stem has same direction.
325         (parallel_beam): be anal about matching bracket to tuplet.
326
327         * lily/lookup.cc (line): new function Lookup::line(). 
328
329         * scm/tex.scm (dashed-line): change -line to -system in names.
330
331         * lily/box.cc (add_point): new function.
332
333         * flower/include/interval.hh: new function add_point ().
334         new function widen()
335         
336 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
337
338         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
339
340         * scm/grob-property-description.scm (number-threshold): Add
341         description.
342
343         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
344         rest if #measures > number-threshold.  Use padding (well, fake
345         using it, anyway).
346
347         * scm/font.scm (make-style-sheet): New styles: mark-number,
348         mark-letter.
349         (paper20-style-sheet-alist): Add bigger bold fonts.
350
351         * lily/mark-engraver.cc (process_music): Use style mark-number or
352         mark-letter.
353
354         * .cvsignore: Ignore all kinds of lilypond input and output.
355
356         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
357
358 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
359
360         * lily/staff-symbol.cc (brew_molecule): make line thickness
361         adjustable.
362
363         * lily/*.cc: replace stafflinethickness by linethickness.
364
365 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
366
367         * input/regression/beam-concave.ly: Add to-be-considered-concave
368         beam.
369
370         * lily/beam.cc (check_concave): Add check for large gap between an
371         inner notehead and the line through outer noteheads.
372
373         * scm/grob-description.scm (Beam): Add concaveness-gap, default
374         value 2.0 staff-space.
375         
376         * scm/grob-property-description.scm (concaveness-gap): Add
377         description.
378
379         * input/mozart-hrn3-allegro.ly: Fix typo.
380
381 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
382
383         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
384         lily/note-head-engraver: improved implementation of roundfilledbox
385         (according to Han-Wen's request)
386
387         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
388         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
389         lily/simple-spacer.cc: ragged-right alignment
390
391 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
392
393         * input/regression/spacing-note-flags.ly: new file
394
395         * input/regression/spacing-rest.ly: new file
396
397         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
398
399         * lily/spacing-spanner.cc (note_spacing): make note spacing after
400         all grace notes tight (not only the column directly following a
401         grace note).
402
403         * scm/grob-description.scm (all-grob-descriptions): don't make
404         mm-rests larger than normal.
405
406         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
407         curved. Remove white space at the right of flags.
408
409 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
410
411         * ports/ports.make: Bugfix: ignore CVS directories.
412
413         * stepmake/.cvsignore: New file.
414
415 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
416
417         * lily/note-spacing.cc (stem_dir_correction): don't correct when
418         there is a flag on the stem.
419
420         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
421
422         * scm/grob-property-description.scm (measure-length):
423         measure-length grob property.
424
425         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
426         better spacing for breakable columns when they're juxtaposed: use
427         measure length if applicable
428
429         * lily/timing-engraver.cc (start_translation_timestep): store
430         measure length in breakable column at start of measure.
431
432 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
433
434         * ROADMAP: Add description for ports dir, to check email upon
435         commit.
436
437 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
438
439         * VERSION: 1.5.48 released
440         
441         * lily/multi-measure-rest.cc (symbol_molecule): split off from
442         brew_molecule()
443         (set_spacing_rods): Use symbol_molecule() to determine minimum
444         width
445         (church_rest): split off from brew_molecule()
446         (big_rest): split off from brew_molecule(). Construct using
447         variable shape.
448         
449         * mf/feta-eindelijk.mf: junk multi measure rest.
450
451 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
452
453         * lily/multi-measure-rest.cc (add_column): remove columns property.
454
455         * lily/dynamic-engraver.cc (process_music): add more verbose warning
456
457         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
458         3 as test piece.
459
460 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
461
462         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
463         keywords covered, dropped some non-keywords, include R- and 128-notes
464
465 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
466
467         * Code clean-up: Junk multiple implementations of ledger line
468         creation in note_head, custos, and porrectus.  This is important
469         since there soon will be some more applications of ledger lines to
470         come (e.g. ambitus engraver).
471
472         * Make thickness of ledger lines adjustable.  This is essential
473         for mensural notation.
474
475         * Fix some bugs in the current ledger_line implementation, most
476         notably that of the horizontal extent of ledger lines which equals
477         at least the extent of the metafont ledger_line character, and
478         which grows(!) if the desired extent shrinks below this limit.
479
480         * roundfilledbox: variable blotdiameter
481
482 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
483
484         * VERSION: 1.5.47 released
485
486         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
487
488         * lily/porrectus.cc:  change line-thickness to thickness, change
489         stem-direction to direction.
490
491         * scm/backend-documentation-lib.scm (check-dangling-properties):
492         Automatically detect doc'ed properties that are not in an interface
493
494         * scm/grob-property-description.scm: property cleanup. Remove many
495         paper-column props that are non-existent.
496
497         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
498         the grob has a molecule-callback.
499
500         * lily/*.cc: remove many set_interface() calls, and their
501         implementations.
502
503         * input/regression/spacing-knee.ly: new file
504
505         * input/regression/spacing-clef-first-note.ly: new file
506
507         * lily/staff-spacing.cc (get_spacing_params): different spacing
508         for pref matter to note at start of line, halfway during line.
509
510         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
511         correction only if stems have same direction (i.e. not for
512         stem-clef combination).
513         (stem_dir_correction): maximal correction for knees.
514
515         * lily/*.cc: many updates to interface descriptions.
516         
517         * lily/grob.cc (internal_set_grob_property): add interface check
518         for every set_grob_property call
519
520         * lily/*.cc: document interface stuff in C++
521         
522         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
523
524         * lily/volta-bracket.cc: naming: change volta spanner to
525         volta-bracket.
526
527         * input/bugs/*.ly: cleanup, remove lots of files.
528         
529         * buildscripts/mf-to-table.py (write_ps_encoding): generate
530         .encoding file. WARNING: upgrade to pktrace 1.0.3
531
532         * mf/feta-toevallig.mf: change PS name for parentheses.
533
534 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
535
536        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
537        also for textheight
538
539 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
540
541         * lily/scope.cc: remove file .
542
543         * lily/include/scope.hh: remove file. Remove Scope class
544
545         * VERSION: 1.5.46
546
547         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
548         score_forbidden_quants): ): take out of SCM, pass parameters so
549         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
550         secs).
551         (calc_stem_y): robustness: take care of last_visible_stem == 0.
552
553
554         * lily/lily-guile.cc (ly_unit): return internal unit.
555
556         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
557
558         * lily/paper-outputter.cc (output_version): output internal unit
559         from Paper_outputter
560
561         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
562
563 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
564
565        * scripts/ly2dvi.py: clean up old .*pk font caching code.
566
567        * scm/ps.scm: Use uppercase postscript font names for the standard
568        TeX fonts.
569
570        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
571        Add all available TeX Type1 fonts, including Feta, to the
572        Ghostscript font path.
573
574        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
575        version (affects the FontName) in lilypond.map.
576
577        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
578        documentation file to fetaNNlist.ly to avoid name collisions between
579        lilypond generated .tex file and font .tex macros file.
580
581
582 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
583
584         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
585         made mensural longa and (semi-)brevis leaner
586
587         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
588
589         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
590         clean-up: moved bezier shape and slope from porrectus to lookup
591
592         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
593         and /usr/share/texmf/fonts
594
595         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
596
597 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
598
599         * lily/text-spanner.cc (brew_molecule): add #'thickness
600         (brew_molecule): add corrections for thickness in molecule padding.
601
602         * lily/line-spanner.cc (line_atom): make function private
603
604         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
605         discover bounding box. This solves the cropping problem.
606
607         * lily/bar-check-iterator.cc (process): Only resynchronize bar
608         check when it  fails. This fixes the combination of  grace notes
609         and bar checks.
610
611 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
612
613         * lily/repeated-music.cc (minimum_start): new Scheme callable function
614         (first_start): new Scheme callable. This will fix repeated music
615         starting with grace notes.
616
617         * lily/music.cc (start_mom): check start-moment-function grob property.
618
619         * VERSION: 1.5.45 released
620
621         * input/regression/system-extents.ly: new regression test. Test
622         System extents. 
623
624         * lily/system.cc: rename LineOfScore into System 
625
626         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
627
628         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
629         (ly_get_extent): new Scheme function ly-get-extent
630
631         * ps/lilyponddefs.ps: use output-scale for  line-x
632         definition. 
633
634         * scm/ps.scm (font-load-command): 
635         use output-scale
636
637 2002-03-20  Rune Zedeler <rune@zedeler.dk>
638         
639         * lily/beaming-info.cc: Stupid typo fixed
640         
641         * lily/accidental-engraver.cc: rewrote accidental-routines to get
642         support for cross-context auto-accidentals.
643         Now the engraver can stay in Staff-context and see other contexts
644         from there.
645         Changed properties: autoAccidentals, autoCautionaries
646
647         * lily/translator-group.cc (set_children_property):
648         Function added recursively setting the same property (deep_copied)
649         for all children of a Translator_group.
650         
651         * ly/property-init.ly: added commands
652         \pianoAccidentals \voiceAccidentals
653         \modernVoiceAccidentals \modernVoiceCautionaries
654
655         * ly/engraver-init.ly: Correct initialization of new accidentals.
656         
657         * scm/translator-property-description.scm: Updated
658         
659         * input/regression/accidental-voice.ly: Added
660         
661         * Documentation/regression-test.tely: Added new test    
662
663 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
664
665         * VERSION: 1.5.44 released
666
667         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
668
669         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
670
671         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
672         at 0.4 pt.
673
674         * tex/feta*.tex: remove.
675         
676         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
677         all software dealing with it.
678
679 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
680
681         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
682         (this fixes pdf output).  Drop awk dependency.
683
684         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
685         dimensions (linewidth) are in mm.
686
687         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
688
689         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
690
691         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
692
693 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
694
695         * VERSION: 1.5.43 released
696
697         * scm/beam.scm (beam-dir-majority-median): if majority is
698         undecided, use median. Removes a forced dir in sarabande.
699
700         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
701
702 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
703  
704         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
705         widths, heights and shortens are now customisable properties.
706  
707         * scm/grob-description.scm, scm/grob-property-description.scm: New
708         properties added to PianoPedalBracket, unnecessary
709         Y-offset-callbacks removed from *Pedal, undocumented properties
710         fixed.
711  
712         * Documentation/user/refman.itely: Piano pedal updates.
713
714 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
715
716         * scm/grob-property-description.scm:
717         * scm/interface-description.scm: Remove old stuff.
718
719         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
720         0.48 (previously 0.42).
721         (Beam): Remove old stuff.
722
723         * lily/stem.cc: 
724         * lily/stem-tremolo.cc: 
725         * lily/beam.cc: 
726         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
727         (previously space-function).
728
729         * stepmake/bin/add-html-footer.py: Website title fix.
730
731 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
732
733         * scripts/ly2dvi.py (environment): use new font searching setup.
734
735         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
736
737         * lily/tfm.cc (dimensions): make code dimension independent
738
739         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
740         scaling
741
742         * tex/lily-ps-defs.tex: scaling for PS points and MM.
743
744         * lily/include/dimensions.hh: try MM as internal unit.
745
746         * scm/*.scm: remove invoke-dim1
747
748 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
749
750         * GNUmakefile.in (fontpaths): add fontpaths target,
751
752         * make/mutopia-targets.make: add PDF rules.
753
754         * make/mutopia-rules.make: add pdf rule.
755
756         * buildscripts/mutopia-index.py (list_item): add PDF.
757
758         * buildscripts/lilypond-profile.sh (TEXMF): typo.
759
760         * make/lilypond-vars.make: set TEXMF for the new font setup.
761  
762 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
763
764         * VERSION: 1.5.42 released
765         
766         * mf/feta-schrift.mf: endless twiddling of Tr.
767
768         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
769         endless twiddling with the bulb shape.
770
771         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
772         little smaller if there is an accidental.
773
774 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
775  
776         * buildscripts/lilypond-profile.sh: 
777  
778         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
779         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
780         Implement new font installation strategy
781  
782         * Documentation/misc/fontinstallation (TEXMF): Documentation of
783         the new font installation strategy.
784  
785         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
786         for comment-region.
787  
788         * input/test/staff-size.ly: Simplified using StaffContainer
789  
790         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
791         lilypond.map file
792
793 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
794
795         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
796
797         * lily/beam.cc (score_stem_lengths): new quanting stuff
798         (score_forbidden_quants): Second and third beam quant stuff.
799
800 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
801
802         * lily/beam.cc (least_squares): Remember least-squares-dy for
803         later use.
804         (quantise_interval): Don't quant to dy steeper that
805         least-squares-dy.  Return empty interval if no sane quants found.
806         (quantise_position): Try quantise_interval until we have
807         acceptable solution.
808
809 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
810
811         * scm/interface-description.scm (beam-interface): Update.
812
813 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
814
815         * VERSION: 1.5.41 released
816         
817         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
818         optima serifs on top of t, bottom of r.
819
820         * mf/feta-bolletjes.mf: make ledger line rounder. 
821
822         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
823
824         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
825         parametrization.
826
827 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
828  
829        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
830        well as text pedal indications and a combination of both.  All
831        pedal indications are horizontally aligned on a line spanner.
832  
833        * lily/text-spanner.cc: Edge-width property added to use in
834        bracketed piano pedals. Function setup_sustain_pedal added to set
835        the dimensions of the brackets. 
836  
837        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
838        some of the *Pedal properties tweaked. 
839  
840        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
841        edge-width (TextSpanner) properties.
842  
843        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
844  
845        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
846        fontified identifiers list.
847  
848        * input/test/pedal.ly: New pedal features added. 
849  
850        * Documentation/user/refman.itely: New pedal features documented.
851        
852
853 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
854
855         * lily/include/new-beam.hh: Previously new-beam.hh
856         * lily/beam.cc: Previously new-beam.cc
857         (least_squares): Bugfix: don't barf on beams with less than two
858         visible stems (tremolos).
859
860         * scm/beam.scm: 
861         * scm/grob-description.scm (Beam): Junk old beam stuff.
862         
863         
864 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
865
866         * VERSION: 1.5.40
867
868         * mf/feta-eindelijk.mf: new 8th rest.
869
870         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
871         stick out of staffline
872
873         * scripts/lilypond-book.py: fixes for texi regular expressions.
874
875 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
876
877         * lily/include/new-beam.hh:
878         * lily/new-beam.cc: New file.
879
880         * flower/include/interval.hh: 
881         * flower/include/interval.tcc (delta): New method.
882         (swap): Now public (previously private).
883         
884         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
885         1 staff-line-thickness.  Sadly, this makes dy quanting problems
886         (dy quants allowed should depend on actual left y) more visible.
887
888 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
889
890         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
891
892         * scm/grob-property-description.scm (concaveness-threshold): Add
893         typecheck and description.
894
895         * scm/grob-description.scm (Beam): Remove obsolete properties, add
896         concaveness-threshold (previously concaveness).
897
898         * lily/beam.cc (check_concave): Remove choices and debugging
899         stuff: use best concaveness calculation.
900         (quantise_dy): Remove choice.  Try to never make a slope steeper
901         by quantising, but certainly never quantise a slope away.
902         (check_stem_length_f): Remove choice.  In case of lengthening
903         alowed, always lengthen to ideal length.
904
905         * Documentation/index.texi: Fix FAQ url.
906
907         * Documentation/topdocs/INSTALL.texi: Add information about fink,
908         compile fix and 1.4 specific fix that doesn't hurt 1.5.
909
910 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
911
912         * VERSION: 1.5.39 released
913
914         * lily/simple-spacer.cc (add_rod): rods take precedence over
915         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
916
917         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
918
919         * lily/note-spacing.cc (get_spacing): only insert space for
920         accidentals if necessary.
921
922         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
923
924         * lily/spacing-spanner.cc (musical_column_spacing): new
925         function. Have correct spacing from note to end-of-line as well.
926
927 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
928
929        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
930
931        * darwin.patch: New file.
932
933        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
934        code.  Shorten stems by fraction of stems to be shortened.
935
936        * lily/stem.cc (get_default_stem_end_position): Shorten only half
937        of shorten value for boundary cases.
938
939        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
940        (Beam): Set beamed-stem-shorten to (1.0 0.5).
941
942 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
943
944        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
945
946        * scm/grob-description.scm (Beam): Add concaveness.  Replace
947        Beam::cancel_suspect_slope with Beam::check_concave.
948  
949        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
950        set slope to horizontal if concaveness > Beam.concaveness.  This
951        handles cases that kludgy cancel_suspect_slope was meant to catch
952        very well.
953        (cancel_suspect_slope): Remove.
954
955 2002-03-12 Rune Zedeler <rune@zedeler.dk>
956
957         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc allow for
958         stemLeftBeamCount and stemRightBeamCount to equal 0.
959         Fixes [c8 c4 c8]
960       
961 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
962
963         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
964         fixed spacing for pref matter, if the next column is musical, and
965         at the same moment.
966
967         * lily/note-spacing.cc (stem_dir_correction): Use correct
968         discretionary for stem-bar spacing.
969
970 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
971
972         * VERSION: 1.5.38 released 
973
974         * lily/grob.cc (warning): Use cause tracking to give more
975         meaningful errors from the backend. 
976
977         * lily/property-iterator.cc (check_grob): Warn if setting grob
978         property in unknown grob. 
979
980         * mf/feta-toevallig.mf: brushed stems for natural sign.
981
982         * lily/molecule.cc (align_to): don't translate empty molecule.
983         (this triggers a very subtle bug in time-signature.)  
984
985 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
986
987         * lily/spring.cc: remove file.
988
989         * input/regression/spacing-stem-bar.ly: new file
990
991         * lily/score.cc (run_translator): resurrect point-and-click
992
993         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
994         sarabande layout
995
996         * lily/spacing-spanner.cc (find_shortest): Shortest note for
997         spacing is now globally determined, using the most common shortest
998         note. Notes that are shorter are spaced geometrically, and with
999         expand hints. This makes spacing more even, and measures that have
1000         very short notes won't be that stretched out.  
1001
1002         * mf/feta-klef.mf: F-clef fixes, documentation on the
1003         shape. (WARNING: font changed.)
1004
1005 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
1006
1007         * lily/simple-spacer.cc (add_columns): support for infinitely
1008         stiff springs.
1009  
1010         * lily/staff-spacing.cc (get_spacing_params): space after
1011         prefatory matter is fixed.
1012
1013 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
1014
1015         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1016         barline following an upstem.
1017
1018         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1019         function from next_notes_correction().
1020         (bar_y_positions): idem.
1021
1022 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1023
1024         * input/regression/break.ly (texidoc): bugfix: escape \ in
1025         strings.
1026
1027         * lily/staff-spacing.cc (next_notes_correction): Correct the
1028         spacing of a note following a barline.
1029
1030
1031 2002-03-04  Glen Prideaux
1032
1033         * mf/feta-solfa.mf: Shaped note heads
1034
1035 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
1036
1037         * VERSION: 1.5.37 released
1038
1039         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1040         left-align molecule.
1041         
1042         * lily/break-align-interface.cc (do_alignment): completely
1043         rewritten. Now it does not use Align_interface anymore, but a
1044         separate routine. Like StaffSpacing, it reads space-alist from the
1045         breakable grobs.  This allows you to set spacing using
1046         
1047         \property Staff.Clef \override #'space-alist = '(....stuff....)  
1048  
1049         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1050         to Bar_line. Move files around as well.
1051
1052         * lily/time-signature.cc (time_signature): left align time signatures. 
1053
1054         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1055         Corrections of the glyph shape C. Comments added.
1056
1057 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1058
1059         * lily/spacing-spanner.cc: move from third-try.cc; rename
1060         Third_spacing_spanner to Spacing_spanner.
1061
1062         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1063         spacing stuff. Much cleaner now, and we prepare for neat spacing
1064         tricks around bar lines and such.
1065
1066         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1067         variables with themselves. (Ouch.)
1068
1069         * lily/span-bar.cc (brew_molecule): don't try to span bars that
1070         overlap.
1071
1072 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1073
1074         * VERSION: 1.5.36
1075
1076         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1077         ly_dir_p
1078
1079         * lily/music.cc (ly_get_mus_property): typechecking
1080         (ly_set_mus_property): idem
1081         (ly_make_music): idem
1082         (ly_music_name): idem
1083
1084         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1085
1086         * lily/note-spacing.cc (stem_dir_correction): correction for
1087         same stem notes as well. 
1088
1089         * lily/pitch.cc (pitch_transpose): stricter typechecking
1090
1091         * mf/parmesan*mf: magnification fixes.
1092
1093         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1094
1095 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1096
1097         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1098         documenting the font. (Doesn't work for parmesan at the moment)
1099
1100         * Documentation/user/appendices.itely (The Feta font): Add list of
1101         Feta font symbols with names.
1102
1103         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1104         automatically
1105
1106 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
1107
1108         * lily/translator-group.cc (ly_set_trans_property): typechecking
1109         (ly_get_trans_property): typechecking.
1110
1111         * lily/font-metric.cc (ly_text_dimension): typechecking 
1112         (ly_find_glyph_by_name): idem.
1113
1114         * scm/bass-figure.scm (brew-complete-figure): support for
1115         bracketed numbers.
1116         
1117         * lily/grob.cc (ly_get_paper_var): new function
1118
1119 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1120
1121         * VERSION (PATCH_LEVEL): 1.5.35 released.
1122
1123         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1124         (bracket): New function.
1125
1126         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1127         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
1128
1129         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1130         bugfix.
1131
1132         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1133         typecheck bugfix. 
1134
1135         * lily/grob.cc (ly_get_grob_property): be anal about types.
1136         (ly_set_grob_property): idem
1137
1138         * lily/figured-bass-engraver.cc (process_music): move molecule
1139         building completely to Scheme
1140
1141         * lily/include/musical-request.hh (class Bass_figure_req): Add
1142         class. 
1143
1144         * lily/parser.yy (bass_figure): add support for space figure.
1145
1146         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
1147
1148         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1149
1150         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1151         (ly_align_to_x): new function ly-align-to!
1152
1153         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1154         function ly-get-font
1155
1156         * mf/feta-nummer.mf: include normal-space dimension. 
1157
1158         * lily/collision.cc (check_meshing_chords): don't merge collisions
1159         with whole notes.
1160         
1161         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1162         glyph is string.
1163
1164 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
1165
1166         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1167
1168 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
1169
1170         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
1171         font changed)
1172
1173         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1174         than mensural chars
1175
1176         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1177         scm/grob-description.scm: added mensural fermata symbol
1178
1179 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1180
1181         * VERSION: 1.5.34 released.
1182
1183         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1184
1185         * lily/staff-symbol-referencer.cc (callback): assume that
1186         staff-position is unset in general.
1187
1188         * input/regression/rest-pitch.ly: new file.
1189
1190         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1191         a4\rest
1192
1193 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1194
1195         * lily/scm-option.cc (set_lily_option): add internal-type-checks
1196         as Scheme option. Run regression test by default with
1197         internal-type-checking.
1198
1199         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
1200
1201         * lily/lily-guile.cc (type_check_assignment): changed functions.
1202
1203         * scm/*description*.scm: be anal about typechecks. Some changes
1204         for internal variable names.
1205
1206 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1207
1208         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
1209
1210 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
1211
1212         * VERSION: 1.5.33 released.
1213
1214         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1215         flare_path everywhere (c-clef, numbers).        
1216
1217         * lily/bar-number-engraver.cc (process_music): also print bar
1218         number if measure starts with grace note.       
1219
1220         * input/regression/grace-bar-number.ly: new test.
1221
1222 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
1223
1224         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1225         rest as well.
1226
1227         * scm/music-functions.scm (voicify-music):  split chords into
1228         different voices automatically.
1229
1230         * lily/music.cc (ly_music_list_p): new function
1231
1232         * lily/music-sequence.cc (do_relative_octave): robustification
1233
1234         * scm/music-functions.scm: many utility functions 
1235
1236         * lily/music.cc (ly_set_mus_property): add type checks to the
1237         Scheme property assignment.
1238
1239         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1240         dvips fixes
1241
1242         * mf/lilypond.map: .map file from Mats' page. 
1243
1244 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
1245
1246         * Some more parmesan related fixes;
1247
1248         * Custos: varying shape (in particular, stem length), depending on the
1249           vertical position of the custos (on staffline / between stafflines);
1250
1251         * Custos: added grob property "neutral-direction" (same semantics as
1252           with stem); introduced new grob property "neutral-position";
1253
1254         * Time-signature: print a warning when resorting to default layout.
1255
1256 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1257
1258         * lily/translator-group.cc (add_fresh_simple_translator): remove
1259         function; initialize() is called through
1260         Translator_group::initialize().
1261
1262         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1263         for the neighbors of a loose column.
1264
1265         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1266         position loose columns so that they don't collide.
1267
1268 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1269
1270         * VERSION: 1.5.32 released.
1271
1272         * scm/font.scm: remove font-name symbol.
1273
1274         * mf/GNUmakefile: use pktrace for making PFAs
1275
1276         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1277
1278         * lily/rest-collision.cc (do_shift): read direction field from
1279         rest-column in case of note-rest collision. This should fix some
1280         problems with rest collisions.
1281
1282 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1283
1284         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1285         property.
1286
1287         * lily/note-head.cc (brew_ez_molecule): Remove note-character
1288         property. Read pitch directly from #'cause.
1289
1290         * mf/feta-puntje.mf: bugfix
1291
1292 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
1293         
1294         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1295
1296 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1297
1298         * Documentation/windows/compiling.texi: Update.
1299
1300         * Documentation/index.texi: Add link to orphaned compiling for
1301         windows page.
1302
1303         * Documentation/footer.html.in: Comment fix.
1304
1305         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1306
1307 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
1308         
1309         * VERSION: 1.5.31 released
1310
1311         * lily/new-spacing-spanner.cc: remove file.
1312
1313         * lily/third-try.cc (do_measure): only take spacings into account
1314         if they pertain to the column pair under consideration. This fixes
1315         spacing bug when mixing eighths triplets and normal eighths.
1316
1317         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1318         lines don't take up space anymore. Document why in note-head.cc
1319         comment.
1320
1321 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
1322
1323         * lily/font-interface.cc (get_font): reinstate
1324         #'font-magnification. See input/regression/font-magnification.ly
1325         (get_font): Change the definition of  #'font-name grob property.
1326
1327         * lily/grob.cc (get_uncached_molecule): output origin for grobs
1328         that have a #'cause field.
1329
1330 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1331
1332         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
1333
1334         * mf/GNUmakefile:  remove metapost stuff
1335
1336         * stepmake/aclocal.m4: remove metapost detection stuff.
1337
1338 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1339
1340         * mf/GNUmakefile (FET_FILES): 
1341         (FONT_FILES): Include parmesan.
1342
1343         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
1344         iso regex, regsub
1345
1346         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1347
1348         * Documentation/user/refman.itely (Paper size): Quote braces.
1349
1350 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1351
1352         * stepmake/aclocal.m4: fixed bison version check to be more
1353         robust.
1354
1355         * lily/stem.cc (position_noteheads): fix for cluster chords.
1356
1357         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
1358
1359         * python 2.2 support.
1360
1361 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
1362
1363         * VERSION: 1.5.30 released
1364
1365         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1366
1367         * Documentation/user/refman.itely (Dynamics): add a note about
1368         DynamicLineSpanner.
1369
1370         * scm/grob-description.scm: add a 'translator-type?  object
1371         property, so that \property Foo.Bar =\turnOff doesn't cause
1372         type check warning.
1373
1374         * lily/translator-group.cc (add_fresh_group_translator): make
1375         new add-translator functions to make distinction between fresh and
1376         used group-translators. Fixes problem with scripts on auto-changing voice 
1377
1378         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1379         add to Score_performer. Fixes bar checks in MIDI
1380
1381         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1382         heads. Fixes many quirks with ties.
1383
1384         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1385         in the grob property #'cause, instead of using Grob_info.
1386
1387         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1388         staff context, fixing dot alignment on collisions.
1389
1390         * lily/beam-engraver.cc (try_music): remove can't find beam start
1391         warning, so that skipTypesetting won't complain.
1392
1393 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1394
1395         * Documentation/user/refman.itely (Paper size): Documentation fix,
1396         papersize
1397
1398         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1399
1400         * scm/grob-description.scm: \breathe: Use feta font comma by default
1401
1402 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1403
1404         * input/template/piano-dynamics.ly (pedal): Simplified
1405
1406 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1407
1408         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1409
1410 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
1411
1412         * lilypond-mode.el (LilyPond-command-query): ignore case.
1413
1414 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1415
1416         * VERSION: 1.5.29 released
1417
1418         * all files: change 2001 to 2002 in headers globally
1419
1420         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1421         cheese") font. WARNING: fonts changed.
1422         
1423 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
1424
1425         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1426         
1427         * mf/*.mf: Added some more vaticana/solesmes style font symbols
1428         
1429         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1430
1431         * mf/*.mf: Fixed a few typos in various .mf files
1432
1433 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1434  
1435         * mf/: added macro soft_penstroke
1436         
1437                softened some glyphs
1438                redrawn triangular noteheads
1439                redrawn tab-clef
1440                added classical quarter rest
1441         
1442         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1443  
1444         * lily/bar.cc: Bugfix: repeat dots when even number of staff
1445         lines and staff_space>=2
1446  
1447         * lily/rest.cc: Use default rests when current style glyphs not
1448         found - this allows
1449         \property Staff.Rest \override #'style = #'classical
1450
1451 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1452
1453         * input/bugs/first-tie.ly: New file.
1454
1455         * input/bugs/spacing-clash.ly: New file.
1456
1457 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1458
1459         * po: regenerate.
1460
1461 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1462
1463         * lilypond-indent.el: New file providing indentation for
1464         parenthesised blocks of lilypond code in Emacs
1465         
1466         * lilypond-font-lock.el: Changes to the syntax table to facilitate
1467         indentation and handle block comments properly. Distinguish
1468         accents from close-brackets in fontification.
1469
1470         * lilypond-mode.el: LilyPond-indent-command set appropriately.
1471
1472 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1473
1474         * Documentation/windows/installing.texi: 
1475         * Documentation/windows/compiling.texi: Include from 1.4.10.
1476
1477         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1478
1479         * input/bugs/first-midi-tie.ly: New file.
1480
1481 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
1482         
1483         * VERSION: 1.5.28 released
1484
1485         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1486         illicit beams on [c4 c4] etc.
1487
1488         * lily/bar-check-iterator.cc (Bar_check_iterator): new
1489         file. Make separate iterator for Bar_checks. Bar_check now happen
1490         outside engravers, meaning that you can use them with
1491         skipTypesetting. Associated changes in other files.
1492         
1493         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1494         function
1495         
1496         * lily/spacing-spanner.cc (stem_dir_correction): removed function
1497
1498         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1499
1500         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1501
1502         * lily/stem.cc (set_spacing_hints): removed function
1503
1504         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1505         correction for spacing; now take vertical extents of the stem into
1506         account.  
1507
1508         * lily/third-try.cc: More hacking to get spacing working.
1509
1510         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1511         sits at staff level and creates note spacing objects. Scrap it
1512         again, and document why.
1513
1514         * lily/include/group-interface.hh: rename functions. 
1515
1516 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1517
1518         * stepmake/stepmake/c++-rules.make:
1519         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1520
1521 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1522
1523         * make/lilypond-vars.make: 
1524         * scripts/ly2dvi.py (setup_environment): 
1525         * scripts/lilypond-book.py (setup_environment): Also set tex
1526         memory options.
1527
1528 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1529
1530         * VERSION: 1.5.27 released.
1531
1532         * Documentation/user/refman.itely (Bar numbers): added bar number
1533         documentation.
1534
1535         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1536         again.
1537
1538 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
1539
1540         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1541         spread the last few lines all over the last page of a score.
1542
1543 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
1544
1545         * lily/third-try.cc: 3rd try at revising spacing
1546         engine. Not yet finished.
1547
1548         * lily/paper-column.cc (brew_molecule): print debugging marks on a
1549         paper-column.
1550
1551         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1552         collecting past note heads.
1553
1554         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1555         stuff.
1556
1557         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1558         class. Keep a queue of grobs that are still playing in busyGrobs. 
1559
1560         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1561         function. Use busyGrobs to detect playing notes.
1562         
1563 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1564  
1565         * Documentation/topdocs/INSTALL.texi: Added note about broken
1566         python-2.1.  Updated note for Debian's broken (well, broken for
1567         our use anyway) tex configuration.
1568         
1569         * scripts/lilypond-book.py (re_dict): python2.2 fix.
1570         
1571         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
1572         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1573         
1574         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1575         (But left margin of png's still misses a few pixels.  Arg.)
1576         
1577 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
1578
1579         * lilypond-mode.el (LilyPond-command-next-midi): Make
1580         possible to kill midi-process (using "C-c C-m").
1581
1582 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
1583
1584         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1585         Convert strings with dimensions to numbers.
1586
1587         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
1588         as found in stavesFound. 
1589
1590         * lily/bar-number-engraver.cc: remove staff administration. 
1591
1592         * lily/mark-engraver.cc (acknowledge_grob): remove staff
1593         administration. This breaks support for invisible-staff.
1594
1595         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1596         symbols into stavesFound.
1597
1598         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1599         grobs, and put them into columns.
1600
1601         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1602         Engraver_group_engraver as a potential candidate for ack'ing grobs.
1603
1604 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
1605
1606         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1607         midi section in the Emacs-mode, so it is possible to play certain
1608         score in a multiscore lilypond-file.
1609          
1610 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
1611         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1612         (FIXME: not accessible from guile)
1613         
1614         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1615         better support for Kurt Stone's suggestions.
1616         Removed properties: noResetKey, forgetAccidentals, autoReminders,
1617                             lazyKeySignature.
1618         Changed property:   localKeySignature.
1619         Added properties:   extraNatural, autoAccidentals,
1620                             autoCautionaries.
1621
1622         (BUGFIX: broken-tie-support destroyed in 1.5.16)
1623         
1624         * ly/property-init.ly: added commands
1625         \defaultAccidentals \modernAccidentals \modernCautionaries
1626         \noResetKey \forgetAccidentals
1627
1628         * ly/engraver-init.ly: Correct initialization of new accidentals.
1629         
1630         * scm/translator-property-description.scm: The new properties
1631         added.
1632         
1633         * input/: Some examples added, some changed.
1634         
1635         * Documentation/regression-test.tely: Added quick test of new
1636         accidentals.
1637
1638 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1639
1640         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1641         header not found
1642
1643 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1644
1645         * lily/beam.cc (before_line_breaking): Make beams  without stems
1646         or with only one stem disappear.
1647
1648 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1649
1650         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1651         files to have standardised HTML bibliography output. Update build
1652         docs to reflect this.
1653
1654         * lily/include/simple-spacer.hh (struct Simple_spacer): add
1655         active_count_, so that we don't have to look for active springs
1656         anymore.
1657
1658         * scm/interface-description.scm,scm/grob-property-description.scm:
1659         Add 'penalty
1660
1661         * lily/simple-spacer.cc (solve): Handle forced line breaks
1662         here. Fixes problems when combining linebreaks with non-fitting
1663         line configurations
1664
1665 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1666
1667         * 1.4.9.jcn3 forward ports.
1668         
1669         * Really included .cvsignore.
1670
1671         * Included Han-Wen's uu1 windows fixes.
1672
1673         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1674
1675         * Added Cygwin setup.hint
1676
1677         * Removed tex, python wrappers and postinstalls to go with Cywgin's
1678         tetex/texmf, python installations.
1679
1680         * Updated cygwin installer.
1681
1682         * ly2dvi: Don't accept filenames with spaces (+ fix).
1683
1684 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
1685
1686         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1687
1688         * lily/translator-def.cc: Remove manual symbol caching.
1689
1690         * lily/script-column.cc (before_line_breaking): robustness check:
1691         don't crash if no direction set.
1692
1693         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1694
1695         * scripts/pmx2ly.py (Parser.parse_header): more generic header
1696         parsing.
1697
1698
1699 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
1700
1701         * lily/note-head.cc (head_extent): added to compute width without
1702         ledger lines. By default, ledger lines take up width now.
1703
1704         * input/regression/fingering.ly: demonstrate auto fingering.
1705         Horizontal placement is still buggy. 
1706         
1707         * lily/fingering-engraver.cc (class Fingering_engraver):
1708         added. Provides support for horizontal fingering scripts
1709
1710         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1711
1712         * lily/side-position-interface.cc (add_staff_support): add staff
1713         only for Y-axis side positions.
1714
1715         * lily/parser.yy (request_chord): Fix mem leak.
1716
1717         * lily/musical-request.cc (transpose): moved to Music::transpose()
1718
1719         * lily/include/grob-info.hh: Change music pointer to SCM, so we
1720         can store grobs as grob-creation cause as well.
1721
1722         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1723         handle when adding. Use precomputed symbols throughout lily.
1724         
1725         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1726         track of spacing issues.
1727
1728         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1729         to keep track of staff spacing
1730
1731 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
1732
1733         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1734           code clean from conditionals and have a concentrated sets of
1735           compatitility fixes for old guile versions.
1736
1737         * Fixes for guile 1.4, including embedded ps.
1738
1739 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1740
1741         * lily/stanza-number-engraver.cc (process_music): allow pairs as
1742         well for markup texts.
1743
1744         * lily/musical-request.cc (length_mom): kludge for null pointer.
1745
1746         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1747
1748         * scm/lily.scm (sign): bugfix
1749
1750         * CHANGES: Change log instated.
1751
1752         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.
1753