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