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