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