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