]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
de0be30a7a11b5740ec1fcb44d46949fafa6473a
[lilypond.git] / ChangeLog
1 2002-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2
3         * input/test/trills.ly: Comment out \comma.
4
5         * lily/tab-note-heads-engraver.cc: 
6         * scm/translator-property-description.scm: Add tablatureFormat.
7
8         * input/test/staff-bracket.ly: Update.
9
10         * lily/regular-spacing-engraver.cc: Add regular-distance-to.
11
12         * input/test/orchestscore.ly:  
13
14         * input/test/part-combine-moments.ly:
15         * input/test/part-combine-staff.ly: markScriptPadding ->
16         RehearsalMark #'padding.
17
18 2002-08-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
19
20         * Documentation/user/introduction.itely: small corrections.
21
22         * scm/translator-property-description.scm (tablatureFormat):
23         describe property.
24
25         * lily/parser.yy (property_def): Ugh. Switch off
26         internal-type-checking for autoBeamSettings.
27
28 2002-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
29
30         * lily/mensural-ligature-engraver.cc:
31         * scm/grob-property-description.scm: Add head-width, join-left,
32         primitive.
33         
34         * lily/mensural-ligature.cc: 
35         * lily/ligature-bracket.cc: 
36         * scm/grob-property-description.scm: 
37
38         * lily/ligature-head.cc: Add ligature-primitive-callback.
39
40         * input/test/beam-control.ly: 
41         * input/test/bar-script-visibility.ly: Update.
42
43         * lily/music.cc (internal_set_mus_property): [!NDEBUG] Remove, use
44         abort instead of assert.
45
46 2002-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
47
48         * input/test/ambitus.ly: Comment out ambitus until anal-proof.
49
50         * buildscripts/mf-to-table.py (write_fontlist): change
51         extra-extent-X extra-X-extent.
52
53         * scm/music-property-description.scm (label): Typecheck markup?
54         (was string?).
55
56         * Documentation/user/refman.itely (Tablatures basic): Change
57         TabStaff @lilypond snippets to @example until TabStaff is
58         anal-proof.
59
60 2002-08-18  Rune Zedeler <rune@zedeler.dk>
61
62         * mf/feta-klef.mf: (another) white pixels bug in g-clef fixed.
63         
64 2002-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
65
66         * lily/include/lily-guile.hh (LY_DEFINE_NOARGS): Remove.
67
68         * lily/grob-property.cc (internal_set_grob_property): Revert oops.
69
70         * lily/input.cc (message): 
71         * flower/warn.cc (message): Flush output.
72
73         * po/lilypond.pot: Run make po-replace.
74
75         * Documentation/user/GNUmakefile (LILYPOND_BOOK_FLAGS): be anal
76         with type checks.
77
78         * Documentation/GNUmakefile (LILYPOND_BOOK_FLAGS): 
79         * input/regression/GNUmakefile (LILYPOND_BOOK_FLAGS):
80         * input/test/GNUmakefile (LILYPOND_BOOK_FLAGS): 
81         * Documentation/user/invoking.itexi: 
82         * lily/scm-option.cc:
83         * lily/main.cc: Debugging options: ly-set-option (was:
84         set-lily-option).
85
86         * lily/scm-option.cc (ly_option_usage): New function.
87
88 2002-08-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
89
90         * lily/parser.yy (script_abbreviation): accept -_ script.
91
92         * ly/script-init.ly (dashUnderscore): add NOTE-_ == portato (dash
93         and dot)
94
95         * scripts/lilypond-book.py (re_dict): add spaces after command sequences
96         (LatexPaper.find_latex_dims): run latex in nonstopmode
97
98         * input/font-body.ly: remove.
99
100         * input/test/harmonic.ly: new file.
101
102         * lily/side-position-interface.cc (aligned_side): don't add
103         padding again.
104
105 2002-08-18  Werner Lemberg  <wl@gnu.org>
106
107         * ly/engraver-init.ly:
108         s/extraverticalExtent/extraVerticalExtent/.
109         
110 2002-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
111
112         * lily/parser.yy (assignment, Simple_music): Warning message fix.
113         Junk ARRAY_SIZE definition.
114
115         * lily/score-engraver.cc: Uniformise error message.
116
117         * lily/grob-property.cc (internal_set_grob_property,
118         internal_get_grob_property): [!NDEBUG] Remove, use abort instead
119         of assert; we always want this functionality.  Uniformise warning
120         message.
121         
122         * lily/main.cc (main, main_prog): Bugfix: move exit-upon-files
123         back, until after evaluating init_scheme_code.
124
125         * scm/translator-property-description.scm (breakAlignOrder): Doco fix.
126
127         * Documentation/user/lilypond-book.itely: Remove @cindex
128         without argument.
129
130         * Documentation/user/internals.itely: Remove stray comma after
131         @cindex entry.
132
133 2002-08-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
134
135         * VERSION: 1.5.74 released  
136
137         * lily/break-substitution.cc (fast_fubstitute_grob_list): use
138         realloc()
139
140         * lily/dynamic-engraver.cc (process_music): don't use SCM_UNDEFINED
141
142         * Documentation/user/tutorial.itely: fixes by Graham Percival.
143
144 2002-08-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
145
146         * lily/lily-guile.cc (type_check_assignment): if
147         internal-type-checking set, abort if we find an unknown property.
148
149         * input/regression/GNUmakefile,input/test/GNUmakefile: be anal
150         with typechecks
151
152         * lily/beam.cc: add 'knee to interface
153
154         * input/test/*.ly: remove or update files using deprecated
155         properties
156
157         * lily/system.cc (spanner_count): new function
158
159         * lily/break-substitution.cc (fast_fubstitute_grob_list): special
160         function for break substitutions on groblists in spanners. By
161         reordering the elements of the list, we can skip large parts of
162         the list in the break substitution. This brings the complexity of
163         Lily back to more-or-less linear in the length of the score.
164
165         Measured speed increase: 20 % (coriolan, without -O2)
166
167         * lily/parse-scm.cc (parse_handler): don't construct a new strport
168         for every parsing. This saves a lot of garbage on large files that
169         have many # constructs.
170
171         * lily/source-file.cc (init_port): add an SCM port to the
172         sourcefile as well. 
173
174         * lily/include/input-file-results.hh: move from
175         file-results. Rename Input_file_settings to Input_file_results.
176
177         * flower/ : remove simple-file-storage, mapped-file-storage,
178         string-storage. Move source-file, binary-source-file to lily/
179
180         * Documentation/header.html.in: remove FAQ
181
182         * Documentation/index.texi (Top): reorganise
183
184         * Documentation/topdocs/INSTALL.texi (Top): add note about fonts.
185
186         * Documentation/topdocs/FAQ.texi: remove.
187
188         * stepmake/stepmake/documentation-targets.make (footify): must
189         depend on all .html files, otherwise rebuilds are broken due to
190         the time stamps 
191
192         * ly/declarations-init.ly (noBreak): set penalty to 10001 (>
193         10000).
194
195 2002-08-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
196
197         * ly/engraver-init.ly (ChordNamesContext): minimumverticalExtent
198         -> minimumVerticalExtent
199
200 2002-08-16  Stephen Peters <portnoy@portnoy.org>
201
202         * scm/pdf.scm, pdftex.scm: pdftex updates
203
204         * scripts/ly2dvi.py: pdflatex support
205         
206 2002-08-16  Jan Nieuwenhuizen  <janneke@gnu.org>
207
208         * Documentation/windows/installing.texi: Include info from Wiki. 
209
210 2002-08-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
211
212         * scripts/lilypond-book.py (output_dict): Replace
213         \includegraphics{xxx.eps} -> \includegraphics{xxx} to 
214         simplify for pdflatex users (makes no difference to latex users).
215
216 2002-08-16  Jan Nieuwenhuizen  <janneke@gnu.org>
217
218         * Documentation/index.texi: 
219         * Documentation/windows/compiling.texi: 
220         * Documentation/windows/installing.texi: Update to reflect
221         LilyPond's inclusion into Cygwin.
222
223 2002-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
224
225         * input/test/phrasing-slur-height.ly: New file.
226
227         * scm/grob-property-description.scm (height-limit, ratio): Add.
228
229         * lily/slur.cc: 
230         * scm/grob-description.scm (Slur, PhrasingSlur): Move height-limit
231         and ratio out of details.
232
233         * lily/scores.cc (Input_file_settings): Initalize global_header_.
234
235         * lily/include/file-results.hh (class Input_file_settings): Add
236         private constructor.
237
238         * cygwin/GNUmakefile: [CYGWIN] Install bug-lilypond-cygwin.  Typo
239         fix.  Add kpsewhich commands (Thanks Mats).
240
241         * cygwin/bug-lilypond-cygwin.sh: New file.
242
243         * stepmake/stepmake/help2man-rules.make: Better way of showing
244         help2man command.
245
246         * Documentation/topdocs/FAQ.texi: Add more possible stale font
247         paths.
248
249         * stepmake/bin/package-diff.py: Prepend ./ to cut-and-pastable
250         commands.
251
252         * Documentation/topdocs/INSTALL.texi: Mention the need to and how
253         to create configure for CVS source trees.  Mention libkpathsea-dev
254         as alternative possible name for tetex-devel (or should that be
255         the other way around?).
256
257 2002-08-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
258
259         * lily/include/file-results.hh (class Input_file_settings):
260         encapsulate file settings in a class, Input_file_settings.
261
262         * lily/scores.cc: new function ly_set_point_and_click_x
263         
264         * Documentation/topdocs/README.texi (Top): add note about xdelta
265
266         * Documentation/topdocs/INSTALL.texi (Top): move kpathsea to problems
267         section.
268         
269 2002-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
270
271         * scripts/ly2dvi.py: Remove debug printing.
272
273 2002-08-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
274
275         * scripts/convert-ly.py (FatalConversionError.conv): bug in
276         verticalExtent replacement.
277
278         * VERSION: 1.73 released.
279
280 2002-08-14 <jiba@tuxfamily.org>
281
282         * scm/output-lib.scm: Support of hammers and pulls in tablature
283         -- Hammers and pulls are inserted exactly like slurs, and a "H" or
284         a "P" is added over the slur as needed.  
285
286         * ./input/test/tablature-hammer.ly: example of hammer, pull and
287         legato in a tablature.
288
289         * ly/engraver-init.ly: Stem.up-to-staff is now disabled by
290         default, since it appears that most of the published tablatures
291         are not like that.
292
293 2002-08-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
294
295         * lily/beam.cc (brew_molecule): use
296         Staff_symbol_referencer::staff_space for thickness.
297
298 2002-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
299
300         * Documentation/user/lilypond.tely: Add dir entries for
301         executables.
302
303         * Documentation/user/converters.itely: 
304         * Documentation/user/invoking.itexi: Fix `invocation' node names,
305         in line with standard dir entries.
306
307         * Documentation/user/convert-ly.itexi
308         * Documentation/user/ly2dvi.itexi: Remove.
309         
310         * scripts/ly2dvi.py: Add pseudo-filter (and stdout output)
311         support.
312
313         * lily/main.c: 
314         * lily/paper-score.cc : 
315         * lily/gourlay-breaking.cc: Write info to stderr.
316
317         * buildscripts/help2man.pl: Update to latest version from Debian.
318         Fixes generation of man pages with perl 5.6.1.
319
320         * GNUmakefile.in: Add python link to build-datadir.  Fixes
321         generation of midi2ly man page.
322
323 2002-08-14  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
324
325         * Documentation/user/{tutorial.itely, introduction.itely}: 
326         Small fixes.
327
328 2002-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
329
330         * lily/beam.cc (least_squares): Add comment.
331
332         * input/regression/beam-center-slope.ly: Update.
333
334         * lily/beam-quanting.cc (score_stem_lengths): Revert oops.
335
336         * input/template/melody-chords.ly: New file.
337
338         * lily/stem.cc (calc_stem_info): Move, document, clean up and fix
339         up-to-stem feature.
340
341         * ly/grace-init.ly (startGraceMusic):
342         * scm/grob-description.scm (beamed-lengths): Subtract half a beam
343         thickness, to fix most ugly beams.  See input/test/stem.ly and
344         baerenreiter-sarabande.ly.
345
346         * input/test/stem.ly:
347         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Play with
348         beamed-lengths.
349
350         * input/test/spacing.ly: Give enough room to test spacing.
351
352         * cygwin/post-lilypond.sh: Fix and update.
353
354         * cygwin/zlily-profile.sh: Remove.
355
356 2002-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
357
358         * GNUmakefile.in (EXTRA_DIST_FILES): Add server.el.patch.
359
360         * scm/grob-property-description.scm
361         (beamed-extreme-minimum-free-lengths): New property, now correctly
362         named.
363
364         * ly/grace-init.ly: New beam property updates.
365
366         * input/les-nereides.ly: Updates.
367
368         * cygwin/README.in: New file.
369
370         * input/sondag-morgen/GNUmakefile: 
371         * input/mutopia/R.Schumann/GNUmakefile: New file.
372
373         * scm/grob-property-description.scm (beamed-minimum-free-lengths):
374         (beamed-extreme-free-lengths): New property.
375
376         * lily/beam.cc (forced_stem_count): Count boundary cases too.
377         (set_stem_shorten): Integer divide bug fix.
378
379         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Really expect
380         six systems, change warning into error.
381
382         * scm/grob-description.scm (beamed-stem-shorten): Shorten 8th
383         beams same as normal stem (one staffspace), high order beams less
384         (arbitrary guess).
385         (beamed-lengths): Standard length for all beams.
386         (beamed-minimum-free-lengths):
387         (beamed-extreme-minimum-free-lengths): New property.
388
389         * input/regression/beam-default-lengths.ly: 
390         * input/regression/beam-shortened-lengths.ly: New file.
391
392         * lily/stem.cc (get_stem_info): New function.
393         (calc_stem_info): Partial rewrite.
394
395         * scm/grob-description.scm (Beam): same beamed-stem-shorten for
396         all beam counts.
397
398 2002-08-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
399
400         * VERSION: 1.5.72 released
401
402         * input/sondag-morgen/GNUmakefile (examples): add file
403
404         * input/mutopia/R.Schumann/GNUmakefile (examples): add file
405         
406         * lily/lily-guile.cc (to_dir): return CENTER if not a direction.
407
408         * lily/include/grob.hh: remove remove_grob_property()
409
410         * lily/stem-engraver.cc (stop_translation_timestep): remove
411         dir-forced grob property
412
413         * Documentation/user/refman.itely (Grace notes): explain grace
414         after main note.
415
416         * input/test/ : small convert-ly mishaps.
417
418         * Documentation/user/preface.itely: small bits 
419
420         * Documentation/user/introduction.itely: add sectioning
421
422 2002-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
423
424         * lily/stem.cc (get_default_stem_end_position): use beam_count - 1
425         as index; this fixes too short forced stem directions.
426         (calc_stem_info): various minute bugfixes.  
427
428         * lily/gourlay-breaking.cc (combine_demerits): set uniform
429         tightness constraint back to one. This fixes Baerenreiter
430         sarabande layout.
431
432         * input: some fixes. Add \version to all files.
433         
434         * lily/stem.cc (calc_stem_info): Use get_direction_beam_count.
435
436         * lily/beam.cc (get_direction_beam_count): New function.
437
438         * GNUmakefile.in: Fix config.h dependency.
439
440         * input/test/beam-dir-function.ly: Fix for new default
441         neutral-direction = -1 (down).
442
443         * input/regression/tuplet-properties.ly:
444         * input/regression/tuplet-nest.ly: Fix.
445
446         * lilypond-font-lock.el (LilyPond-font-lock-keywords):
447         * input/test/improv.ly:
448         * input/test/cautionaries.ly: Accidentals -> Accidental.
449
450         * input/test/add-text-script.ly: Bugfix.  How did this ever work?
451
452         * Documentation/windows/installing.texi: 
453         * Documentation/windows/compiling.texi:
454         * cygwin/README: Update to reflect new binary release setup and
455         build instructions.
456
457 2002-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
458
459         * server.el.patch: Update.
460
461 2002-08-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
462
463         * stepmake/stepmake/metafont-rules.make: pktrace -> mftrace name
464         change.
465         * configure.in: idem
466
467 2002-08-10  Juergen Reuter  <reuter@ipd.uka.de>
468
469         * mf/parmesan-timesig.mf, scm/output-lib.scm,
470         lily/include/time-signature.hh, lily/time-signature.cc,
471         input/test/time.ly: fixed broken time-signature by setting grob
472         property font-family automatically.
473
474 2002-08-10  Jan Nieuwenhuizen  <janneke@gnu.org>
475
476         * Documentation/user/tutorial.itely (Running LilyPond): Mention
477         xdvi and XFree86 option for Windows users.
478
479         * Documentation/user/invoking.itexi: Add ly2dvi's -p alias.
480
481         * scripts/ly2dvi.py: Bugfix for `ly2dvi -I ./foo foo.ly'.  Also
482         append directory of first file to search path, allowing
483         `ly2dvi foo/foo.ly' when foo.ly includes other files from
484         directory foo.  Add short option alias '-p' for --pdf.
485
486         * input/test/trills.ly: 
487         * input/test/preset-extent.ly: 
488         * scm/grob-property-description.scm: more extent renaming.
489
490 2002-08-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
491
492         * lily/parse-scm.cc (protected_ly_parse_scm): compatibility with
493         CVS GUILE 
494
495         * input/test/preset-extent.ly (texidoc): added file.
496
497         * scripts/convert-ly.py: add extent rule.
498
499         * lily/grob.cc: change extent-[XY] to [XY]-extent globally.
500
501 2002-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
502
503         * lily/main.cc (main): Remove stale #ifdef for windows.
504
505         * stepmake/stepmake/python-module-rules.make: 
506         * stepmake/stepmake/python-module-vars.make: 
507         * stepmake/stepmake/shared-library-vars.make: Add Cygwin support.
508
509         * stepmake/stepmake/generic-vars.make:
510         * cygwin/GNUmakefile: Fix Cygwin build detection.
511         
512         * stepmake/stepmake/shared-library-rules.make: Remove version juggling.
513
514         * stepmake/stepmake/shared-library-targets.make: Default target
515         includes version, add target libFOO.
516
517         * lily/main.cc: Temporary fix for access to scm_read_opts array
518         from shared Cygwin library.
519
520 2002-08-08  Rune Zedeler <rune@zedeler.dk>
521         
522         * ly/property-init.ly: Added phrasingSlurUp, phrasingSlurDown and
523         phrasingSlurBoth.
524
525         * input/mutopia/R.Schumann/romanze-op28-2.ly: Added.
526
527         * input/sondag-morgen/*: renamed files from input/SondagMorgen/*
528         
529 2002-08-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
530
531         * lily/beam.cc (struct Int_set): typo.
532
533         * mf/feta-beugel.mf (code): braces should start at 0, not 1.
534
535         * lily/include/lily-guile.hh (scm_int2num): guile 1.4 compatibility. 
536
537         * scm/grob-description.scm (all-grob-descriptions): set
538         X-offset-callbacks for TextScript
539
540         * lily/stem.cc (invisible_b): don't use support_head(), since it
541         sets stem direction.
542
543         * lily/beam.cc (struct Int_set): don't get stuck inserting
544         interval segments of length 0.0.
545
546         * scripts/convert-ly.py:  break-align conversion.
547
548 2002-08-06  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
549
550         * lily/*.cc (process_music): gh_int2scm -> scm_int2num
551
552 2002-08-06  Heikki Junes <hjunes@cc.hut.fi>
553
554         * lilypond-mode.el: Also "C-xC-s" sets default command to LilyPond.
555
556 2002-08-05  Rune Zedeler <rune@zedeler.dk>
557
558         * mf/feta-eindelijk.mf: Fix silly typo in 16th and shorter rests.
559
560 2002-08-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
561
562         * stepmake/bin/make-version.py: robustify.
563
564         * input/test/rhythm-excercise.ly: new file
565
566         * input/test/blank-notes.ly: new file
567
568         * lily/note-head.cc (head_extent): robustness fix.
569         
570         * Documentation/user/preface.itely: add some more.
571
572 2002-08-04  Rune Zedeler <rune@zedeler.dk>
573
574         * Documentation/user/refman.itely
575         * Documentation/user/internals.itely: Documented "Current" property.
576         
577 2002-08-04  Han-Wen  <hanwen@cs.uu.nl>
578
579         * lily/lily-guile.cc: change gh_str02scm to scm_makfrom0str.
580
581 2002-08-04  Werner Lemberg  <wl@gnu.org>
582
583         * tex/lilyponddefs.tex: s/filllastpage/lastpagefill/.
584         
585         * Documentation/user/refman.itely: Document it.
586
587 2002-08-04  Han-Wen  <hanwen@cs.uu.nl>
588
589         * lily/main.cc (sane_putenv): Oops.  Should supply a private copy
590         to putenv. (this was actually caught by valgrind, but I didn't
591         think the error was mine... )
592
593 2002-08-03  Han-Wen  <hanwen@cs.uu.nl>
594
595         * tex/lilyponddefs.tex: add filllastpage support.
596
597         * GNUmakefile.in: barf if config.h is older than configure. 
598
599         * VERSION: released 1.5.71 
600         
601         * lily/beam.cc (consider_auto_knees): rewrite function; now only
602         consider horizontal knees. Fixes input/bugs/bizzarre-beam.ly
603
604         * lily/syllable-group.cc (set_lyric_align): fix centering on note
605         head for `normal' lyrics. This fixes input/bugs/lyrics-spacing.ly.
606
607 2002-08-02  Han-Wen  <hanwen@cs.uu.nl>
608
609         * lily/beam.cc (connect_beams): fix quarter note beams.
610
611         * input/regression/beam-quarter.ly: new file.
612
613 2002-08-02  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
614
615         * buildscripts/mf-to-table.py (postfixes): Reduce the line spacing
616         in the font list.
617
618 2002-08-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
619
620         * lily/scm-option.cc: excorcise iostream.
621
622         * lily/main.cc: remove iostream usage.
623
624 2002-08-02  Han-Wen  <hanwen@cs.uu.nl>
625
626         * scripts/lilypond-book.py: make URL for printfilename option.
627
628         * lily/beam.cc (position_with_maximal_common_beams): fix kneed
629         beamlets. This fixes input/bugs/knee
630
631         * ly/engraver-init.ly (HaraKiriStaffContext): switch off auto knee
632         for hara kiri staffs.
633
634         * lily/slur-engraver.cc (try_music): remove nested slur
635         functionality. This fixes spurious warnings with the partcombiner.
636
637 2002-08-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
638
639         * lily/parse-scm.cc (protected_ly_parse_scm): guile 1.4 compatibility.
640
641 2002-08-01 Rune Zedeler <rune@zedeler.dk>
642
643         * lily/tab-note-heads-engraver.cc: add algorithm for automatically
644         selecting frets when none given by user. Read property
645         "minimumFret".
646
647         * scm/translator-property-description.scm: Add "minimumFret"
648         
649         * mf/feta-eindelijk.mf: Changed layout of 16th and shorter rests
650         to match the 8th rest. slanted 8th rest a bit more.
651         WARNING: 8th rest and classical quarter rest exchanged.
652         
653 2002-08-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
654
655         * scm/grob-description.scm (RehearsalMark): Add baseline-skip to
656         handle multiline marks correctly.
657
658 2002-07-31  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
659
660         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Fix dvips flags
661
662 2002-07-31 Rune Zedeler <rune@zedeler.dk>
663
664         * input/SondagMorgen/*.ly: Added. TODO: Lots of cleanups but now
665         it's there.
666
667 2002-07-31  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
668
669         * lily/parser.yy (chord_notes): typo. 
670
671         * scm/music-functions.scm (unfold-repeats): bugfix
672
673 2002-07-31  Rune Zedeler <rune@zedeler.dk>
674
675         * ly/engraver-init.ly: remove alias "Current" from all contexts.
676
677         * lily/translator-group (find_existing_translator): If
678         n=="Current", return this context.
679         
680         * lily/rest.cc:
681         * lily/time-signature.cc: spacing for even number of staff lines.
682         
683 2002-07-31  Han-Wen  <hanwen@cs.uu.nl>
684
685         * input/bugs/: remove various files.
686
687         * Documentation/user/refman.itely: doco updates.
688
689         * scripts/ly2dvi.py (find_pfa_fonts): add and document --pdf
690         option.
691
692 2002-07-30  Rune Zedeler <rune@zedeler.dk>
693
694         * ly/engraver-init.ly: add alias "Current" to all contexts.
695
696         * ly/property-init.ly: Use "Current" context in the accidental
697         macros. TODO: Do the same in some of the other macros?
698         
699         * scm/output-lib.scm (tablature-stem-attachment-function): add
700         duration argument. Now the function can be called again :-)
701
702 2002-07-30  Han-Wen  <hanwen@cs.uu.nl>
703
704         * lily/parse-scm.cc (parse_handler): add better error message,
705         return a sensible number of nchars
706
707 2002-07-29  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
708
709         * lily/parse-scm.cc (protected_ly_parse_scm): catch GUILE errors
710         when parsing, and emit useful warning message.
711
712         * lily/lily-guile.cc (ly_parse_scm): add line/col/file locations
713         to SCM port for parser.
714
715 2002-07-28  Rune Zedeler <rune@zedeler.dk>
716         
717         * lily/note-spacing.cc (stem_dir_correction) Add property
718         knee_spacing_correction controlling the amount of optical spacing
719         added to knees.
720         
721 2002-07-28  Glen Prideaux  <gprideau@odyssey.apana.org.au>
722        
723        * lily/syllable-group.cc (set_lyric_align): Only fiddle with
724        alignment if a note has more than a single lyric so single stanza
725        songs are aligned correctly.
726
727 2002-07-28  Han-Wen  <hanwen@cs.uu.nl>
728
729         * input/test/broken-spanner-adjustment.ly: new file.
730
731 2002-07-27  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
732
733         * scripts/lilypond-book.py: Handle printfilename also together
734         with {small,}verbatim
735
736 2002-07-27  Juergen Reuter  <reuter@ipd.uka.de>
737
738         * scm/output-lib.scm, lily/note-head.cc: fixed broken baroque
739         note-head style by setting grob property font-family
740         automatically.
741
742 2002-07-26  Jan Nieuwenhuizen  <janneke@gnu.org>
743
744         * VERSION: 1.5.70 released.
745         
746         * Documentation/user/lilypond-book.itely (Insert music snippets
747         into your texts using lilypond-book): Briefly mention HTML
748         documents.  Started rewrite, but lost inspiration.
749
750         * lily/grob-scheme.cc (get_original, get_system, get_broken_into):
751         Move scheme funcs from grob.cc and spanner.cc.
752
753         * lily, flower: Ran buildscripts/ontgaar.py.  See also
754         http://lilypond.org/wiki/?CodingStandards.
755         
756         * Documentation/GNUmakefile: Remove regression-test stuff.
757         (deep-WWW-clean): Remove wiki-dump.  Fixes web-clean target.
758
759         * Documentation/regression-test.tely: Remove.
760
761         * Documentation/user/refman.itely (Text scripts): Comment out ref
762         to PostScript output.
763
764         * lily/beam.cc (knee_b): Fix to also work if some dirs are not
765         set.
766
767         * lily/beam.cc (set_stem_directions): For knees, set stems to
768         their natural direction.
769
770 2002-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
771
772         * lily/stem.cc (calc_stem_info): Don't force stems of kneed beams
773         to reach middle staff line.
774
775         * lily/beam.cc (consider_auto_knees): Recalculate beam position
776         after deciding for a knee.
777
778 2002-07-26  Han-Wen  <hanwen@cs.uu.nl>
779
780         * Documentation/user/internals.itely: move output-formats doco to
781         WikiWiki.
782         
783 2002-07-25  Han-Wen  <hanwen@cs.uu.nl>
784         
785         * po/fr.po: update from TP
786
787         * input/template/GNUmakefile (TITLE): add lysdoc target for the
788         templates
789
790         * Documentation/user/introduction.itely (Introduction): finish
791         introduction 
792
793 2002-07-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
794
795         * lily/include/music-iterator.hh (class Music_iterator): change
796         get_music() to get_pending_events().
797
798 2002-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
799
800         * buildscripts/ontgaar.py: get_music () -> get_pending_events ().
801         
802         * buildscripts/ontgaar.py: New file.
803
804         * scm/grob-property-description.scm (conditional-elements): Add
805         extent-X.
806
807         * lily/grob.cc: Add extent-X and extent-Y to interface.
808
809         * lily/grob-scheme.cc (ly_get_parent): Don't dereference null
810         parent. (Han-Wen)
811
812         * input/test/move-accidentals.ly: New file. (Han-Wen)
813
814 2002-07-25  Han-Wen  <hanwen@cs.uu.nl>
815
816         * lily/grob-scheme.cc (ly_get_parent): don't crash if no parent.
817
818         * lily/slur.cc (get_first_notecolumn_y): robustness: don't crash
819         if no note-columns.
820
821         * server.el.patch: new file.
822
823         * Documentation/user/refman.itely (Point and click):  updates.
824         (Graphical interfaces): add node
825         (Vertical spacing): add node
826
827 2002-07-24  Jan Nieuwenhuizen  <janneke@gnu.org>
828
829         * lily, lily/include: Rename line to system.  Junk _l suffix.
830
831 2002-07-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
832
833         * po/fr.po: update from TP.
834
835         * buildscripts/lilypond-profile.sh: update support for
836         LILYPONDPREFIX
837
838 2002-07-24  Jan Nieuwenhuizen  <janneke@gnu.org>
839
840         * Documentation/user/refman.itely (Point and click): Add info
841         about GVim, NEdit.
842
843 2002-07-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
844
845         * lily/accidental-placement.cc (extent_callback): remove function
846         (position_accidentals): do nothing if not live.
847         Use accidental-grobs property i.s.o. accidentals, to maintain
848         proper typing. 
849
850 2002-07-24  Jan Nieuwenhuizen  <janneke@gnu.org>
851
852         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: *
853         input/test/count-systems.ly: Update to new system-count function
854         names.
855
856         * lily/grob.cc (get_line, get_original): Use LY_DEFINE.
857
858         * lily/spanner.cc (get_broken_into): Use LY_DEFINE.
859
860         * lily/include/spanner.hh:
861         * lily/include/grob.hh: Remove DECLARE_SCHEME_CALLBACKs.
862
863         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Add
864         forcedBreak options and fix measure count comments.
865
866         * GNUmakefile.in: Junk intl.
867
868         * config.make.in (prefix): Prepend $(DESTDIR) to allow install
869         without overriding prefix.
870
871         * aclocal.m4: Regenerate.
872         
873         * stepmake/aclocal.m4: Don't expand $prefix: fixes install with
874         other $prefix.
875
876         * cygwin/GNUmakefile: 
877         * ly/GNUmakefile: 
878         * python/GNUmakefile: 
879         * make/GNUmakefile: 
880         * mf/GNUmakefile: 
881         * scm/GNUmakefile:
882         * tex/GNUmakefile: use local_package_datadir iso datadir.
883
884         * make/substitute.make (ATVARIABLES): Add local_lilypond_datadir.
885
886         * aclocal.m4: Regenerate.
887         
888         * config.hh.in:
889         * config.make.in:
890         * stepmake/aclocal.m4: Cleanups and more conventional naming for
891         datadir ($prefix/share), package_datadir ($prefix/$package), and
892         local_package_datadir ($prefix/$package/$version).
893         
894         * make/lilypond-vars.make:
895         * scripts/ly2dvi.py:
896         * scripts/lilypond-book.py:
897         * scripts/mup2ly.py:
898         * scripts/midi2ly.py: use local_package_datadir iso datadir.
899         
900         * GNUmakefile.in: build_datadir without version.
901         
902         * lily/main.cc: Datadir cleanup.
903
904         * lily/text-item.cc (lookup_text): 
905         * lily/music-output-def.cc (print_smob): 
906         * lily/mensural-ligature.cc (brew_molecule):
907         * lily/beam-quanting.cc (score_slopes_dy, score_forbidden_quants):
908         Fix warnings.
909         
910 2002-07-23  Jan Nieuwenhuizen  <janneke@gnu.org>
911
912         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Warn when not
913         using 6 systems, like the original.
914
915         * input/test/count-systems.ly: New file.
916
917         * lily/spanner.cc (get_broken_into):
918         * lily/grob.cc (original_scm, line_scm): New function.
919
920         * lily/include/grob.hh (ly_scm2grob_array): Moved from
921         group-interface.hh and renamed.
922         (ly_grob_array2scm): New function.
923
924 2002-07-23  Juergen Reuter  <reuter@ipd.uka.de>
925
926         * lily/ambitus-engraver.cc: bugfix: create ambitus grob during
927         process_music phase
928
929 2002-07-23  Han-Wen  <hanwen@cs.uu.nl>
930
931         * lily/separation-item.cc (width): cache extent in extent-X
932
933         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
934         only add extent for non-musical column.
935
936         * lily/accidental-placement.cc (split_accidentals): new function
937         (get_relevant_accidental_extent): new function
938
939         * lily/staff-spacing.cc (next_note_correction): idem
940
941         * lily/separating-group-spanner.cc (find_rods): use
942         conditional_width().
943         
944         * scm/sketch.scm: fix roundfilledbox definition
945
946         * lily/lily-guile.cc (robust_list_ref): be sensible with negative
947         argument. This fixes too-long stems on half and quarter notes.
948
949 2002-07-23  Jan Nieuwenhuizen  <janneke@gnu.org>
950
951         * Documentation/index.texi: Add, fix, change some links and names,
952         including dump of wiki wiki.
953
954         * Documentation/GNUmakefile (local-WWW): Slurp wiki.
955
956         * buildscripts/wiki-slurp.py: New file.  Accept multiple pattern.
957         (unwiki): Replace local urls with <img src> too.
958
959         * Documentation/GNUmakefile (wiki-dump): New target.
960
961         * Documentation/header.html.in: Link to Documentation/index
962         renamed to Index (was other...).
963
964         * Documentation/regression-test.tely: Remove.
965
966         * make/lysdoc-targets.make (local-WWW): Add default targets .ps.gz
967         and .pdf.
968
969 2002-07-22  Han-Wen  <hanwen@cs.uu.nl>
970
971         * VERSION: 1.5.69 released
972         
973         * lily/accidental-placement.cc (position_accidentals): document
974         two bugcases.
975
976         * lily/skyline.cc (skyline_meshing_distance): bugfixes.
977
978 2002-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
979
980         * input/regression/abe.ly: 
981         * input/test/transposing.ly: Remove mention of mudela.
982
983         * scripts/lilypond-book.py (make_pixmap): Don't use quiet_system,
984         ie, don't redirect PNG output to /dev/null.  Fixes lys-to-tely
985         documents.
986
987         * input/test/mark.ly: 
988         * Documentation/user/refman.itely: Re-enable \mark #'() example.
989
990         * lily/parser.yy: Revert to MARK scalar.
991
992 2002-07-21  Han-Wen  <hanwen@cs.uu.nl>
993
994         * lily/accidental.cc (accurate_boxes): add function to represent
995         flat with 2 boxes. Improves flat-flat accidental spacing. 
996
997         * lily/accidental-placement.cc (stagger_apes): try to arrange accs
998         in a C form, with the top accidental closet to the chord.
999
1000         * lily/stem.cc (get_default_stem_end_position): don't crash if
1001         lengths not set.
1002         (get_default_stem_end_position): idem for stem-shorten.
1003
1004         * mf/feta-toevallig.mf: enlarge flat bbox.
1005
1006         * input/regression/lyrics-extender.ly: new file.
1007
1008         * lily/lyric-extender.cc (brew_molecule): don't add
1009         right-trim-amount if extender is broken.
1010
1011         * scripts/ly2dvi.py (global_latex_preamble): bugfix (thanks Werner).
1012
1013 2002-07-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1014
1015         * Documentation/index.texi: Add pointers to new regression and
1016         test documents.
1017
1018         * Documentation/user/converters.itely:
1019         Documentation/user/invoking.itexi: Some small fixes for uniform
1020         usage example.
1021
1022         * input/allfontsize.ly, size*.ly: New files, moved from
1023         input/regression.
1024         
1025         * input/font20.ly, font-body.ly: New files, moved from input/test.
1026         
1027         * input/font*.ly: New files, moved from input/test.
1028
1029         * input/test/*.ly: Remove empty files, fix broken ones.
1030
1031         * input/test/different-time-signatures.ly: Add FIXME marker;
1032         comment-out broken code.
1033
1034         * Documentation/regression-test.tely: Comment-out, add
1035         obsolete-marker and url to regression-test-dir.
1036
1037         * input/test/GNUmakefile: 
1038         * input/regression/GNUmakefile: Add rule for lys-to-tely.py.
1039
1040         * input/regression/+.ly:
1041         * input/test/+.ly: New file.
1042
1043         * input/test/cue-notes.ly: better example
1044
1045         * Documentation/user/refman.itely (Font selection): font size doco
1046
1047         * input/mutopia/F.Schubert/standchen.ly: note bugfix
1048
1049         * lily/stem.cc: rewrite of scoring to give sane results on knee
1050         beams.
1051
1052         * lily/beam.cc (set_stem_lengths): extend stems for gapped tremolo
1053         beams.
1054         (connect_beams): chop off beaming outside the beam. Fixes problem
1055         with tremolo beams.
1056
1057         * lily/score-engraver.cc (initialize): error if feta20.afm
1058
1059 2002-07-19  Han-Wen  <hanwen@cs.uu.nl>
1060
1061         * scm/engraver-documentation-lib.scm
1062         (document-property-operation): add properties to context
1063         documentation.
1064
1065         * scm/documentation-lib.scm (pad-string-to): align info menus.
1066
1067 2002-07-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1068
1069         * debian/GNUmakefile: Remove lilypond.links.
1070         
1071         * debian/: Debian patch (Anthony Fok).
1072         
1073         * debian/lilypond.links: Remove, as per Anthony's request.
1074
1075         * aclocal.m4: Regenerate.
1076         
1077         * stepmake/aclocal.m4: Add --with-kpathsea-include,
1078         --with-kpathsea-lib options.
1079
1080         * scripts/mup2ly.py: Cut-n-paste include missing lilylib.
1081
1082         * stepmake/stepmake/compile-vars.make: 
1083         * stepmake/stepmake/executable-rules.make: 
1084         * stepmake/stepmake/python-module-rules.make:
1085         * stepmake/stepmake/shared-library-rules.make: Use ALL_LDFLAGS, to
1086         guard agains user override of LDFLAGS.
1087
1088         * Documentation/user/refman.itely: Compile fix for \mark #'(music ...).
1089
1090         * Documentation/user/internals.itely: Use ly-set-mus-property!.
1091
1092         * cygwin/mknetrel: New file.
1093
1094         * cygwin: New directory.  Moved Cygwin stuff from
1095         Documentation/windows.
1096         
1097         * Documentation/windows/fix-suffixes.sh:
1098         * buildscripts/walk.sh: Junk.
1099
1100         * aclocal.m4: Regenerate.
1101
1102         * buildscripts/walk.sh: Remove.
1103
1104         * stepmake/stepmake/topdocs-targets.make: 
1105         * stepmake/stepmake/help2man-rules.make: 
1106         * stepmake/stepmake/generic-vars.make: 
1107         * stepmake/make/stepmake.make: 
1108         * Documentation/user/GNUmakefile: 
1109         * make/stepmake.make: 
1110         * make/lilypond-vars.make: 
1111         * GNUmakefile.in: 
1112         * stepmake/aclocal.m4: Remove builddir cruftyness.
1113         
1114         * stepmake/stepmake/c++-rules.make: Use ALL_CXXFLAGS, to guard
1115         agains user override of CXXFLAGS.
1116         
1117         * stepmake/stepmake/c++-vars.make (ALL_CXXFLAGS): Include CXXFLAGS.
1118         
1119         * stepmake/stepmake/c-rules.make: Use ALL_CFLAGS, to guard
1120         against user override of CFLAGS.
1121         
1122         * stepmake/stepmake/c-vars.make (ALL_CFLAGS): Include CFLAGS.
1123
1124 2002-07-17  Han-Wen  <hanwen@cs.uu.nl>
1125
1126         * GNUmakefile.in: distribute lexer-gcc-3.1.sh  as well
1127         
1128         * lily/music.cc (LY_DEFINE): change ly-set-mus-property to
1129         ly-set-mus-property!
1130
1131         * lily/grob.cc (LY_DEFINE): change ly-set-grob-property to ly-set-grob-property!
1132
1133         * lily/parser.yy (Repeated_music): shift duration log for tremolo
1134         repeats, instead of klutzing around.
1135
1136         * lily/chord-tremolo-engraver.cc (acknowledge_grob): set X parent
1137         of stem tremolo grobs.
1138
1139         * scm/music-functions.scm (shift-duration-log): new function, add
1140         to duration log of all notes.
1141
1142         * lily/duration.cc: add compression factor arguments to
1143         make-duration.
1144         compression-factor, dot-count, duration-log: add scheme functions.
1145
1146         * lily/mark-engraver.cc (process_music): allow \mark to take a
1147         number as argument as well.
1148
1149 2002-07-16  Han-Wen  <hanwen@cs.uu.nl>
1150
1151         * lily/rest.cc (after_line_breaking): only translate the whole
1152         rest if we have more than 1 staff line
1153
1154 2002-07-16  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1155
1156         * VERSION: release 1.5.68
1157
1158         * scripts/lilypond-book.py: fixes by Tom Cato Amundsen.
1159
1160 2002-07-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1161
1162         * lily/beam-quanting.cc (score_forbidden_quants): split beam
1163         quanting functionality.
1164         (quanting): argh. Forgot how linear interpolation works. Bugfix.
1165
1166         * Documentation/index.texi (Top): add whole-big-page documentation.
1167
1168         * lily/side-position-interface.cc (general_side_position):
1169         Subtract parent offset iso. adding it. (Huh? How could this have
1170         worked?)
1171
1172         * lily/clef-engraver.cc (stop_translation_timestep): add staff to
1173         OctavateEight support.
1174
1175         * scripts/lilypond-book.py: add smallverbatim option.
1176
1177         * lily/beam.cc (quanting): bugfix. Behave sanely when no visible
1178         stems.
1179
1180         * lily/accidental-placement.cc (position_accidentals): add padding
1181         property. Increase default setting to 0.2. 
1182
1183 2002-07-15  Han-Wen  <hanwen@cs.uu.nl>
1184
1185         * lily/paper-column.cc (before_line_breaking): urg. bugfix.
1186
1187         * lily/separating-line-group-engraver.cc (finalize): don't replace
1188         right-items, but add to list. This fixes a bug when a staff ends
1189         with cross-staff voice switching away.
1190  
1191 2002-07-14  Han-Wen  <hanwen@cs.uu.nl>
1192
1193         * input/mutopia/GNUmakefile: move mutopia/ to input/mutopia/
1194
1195         * lily/beam.cc (quanting): add explicit support for cross-staff
1196         beaming: make slope penalty larger.
1197
1198         * lily/beam.cc: use common refpoints throughout. This fixes many
1199         cross staff issues.
1200  
1201         * lily/paper-column.cc (before_line_breaking): bug fix.
1202
1203         * lily/volta-engraver.cc (process_music): do something sensible if
1204         no staffs found. 
1205
1206         * scripts/lilypond-book.py (make_pixmap): opps. Do png conversion
1207         only once. 
1208
1209         * Documentation/user/refman.itely (Global layout): made section on
1210         global layout, added spacing documentation.
1211
1212         * lily/staff-symbol.cc (brew_molecule): change ragged right for
1213         staff symbols. See comments.
1214
1215 2002-07-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1216
1217         * lily/voice-devnull-engraver.cc (acknowledge_grob): Use proper
1218         spelling for always.  In solo a due mode, kill spanners when the
1219         other thread has solo.
1220
1221         * lily/thread-devnull-engraver.cc (acknowledge_grob): In solo a
1222         due mode, kill everything when the other thread has solo.
1223
1224         * lily/a2-engraver.cc (acknowledge_grob): In solo a due mode, do
1225         not set directions when we have solo.
1226
1227         * lily/part-combine-music-iterator.cc (process): Set property
1228         "othersolo" if the other thread has solo.
1229
1230 2002-07-13  Han-Wen  <hanwen@cs.uu.nl>
1231
1232         * VERSION: 1.5.67 released.
1233         
1234         * lily/beam.cc (calc_stem_y): fix beams on quarter notes.
1235
1236         * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
1237
1238         * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
1239         settings at the start of a potential auto beam.
1240
1241         * lily/include/sequential-iterator.hh (class Sequential_iterator):
1242         bugfix: protect music list from GC.
1243
1244         * Documentation/user/introduction.itely: misc fixes.
1245
1246         * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
1247         bugreport if lilypond is killed by a signal. 
1248
1249         * input/regression/beam-funky.ly:  new file
1250
1251         * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
1252
1253         * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
1254         knees code.
1255         (quanting): add french beaming support (property french-beaming)
1256         (stem_beams): removed.
1257
1258 i2002-07-12  Mats Bengtsson  <matsb@s3.kth.se>
1259
1260         * lily/beam.cc (after_line_breaking): Set correct stem lengths
1261         also when beam positions are set manually.
1262         (consider_auto_knees): Do not use automatic knees if the directions
1263         are set manually by the user.
1264
1265 2002-07-12  Han-Wen  <hanwen@cs.uu.nl>
1266
1267         * input/regression/grace-auto-beam.ly: new file
1268
1269         * input/regression/grace-unfold-repeat.ly: new file
1270
1271         * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
1272
1273         * lily/forbid-break-engraver.cc (start_translation_timestep): skip
1274         grace notes for break-forbidding. Breaks during grace notes are
1275         handled by Bar_engraver.        
1276
1277         * lily/unfolded-repeat-iterator.cc: Reimplement
1278         Unfolded_repeat_iterator, Volta_repeat_iterator using
1279         Sequential_iterator. All grace functionality from {} carries over
1280         to repeats as well.
1281
1282         * lily/sequential-iterator.cc: new file: form baseclass for
1283         sequential music iterator and unfolded/volta repeat iterator.
1284
1285 2002-07-11  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1286
1287         * lily/include/debug.hh: deprecate.
1288
1289         * lily/spacing-spanner.cc (set_springs): add support for
1290         common-shortest-duration field.
1291
1292         * lily/parser.yy (translator_spec_body): allow \set in \translator
1293         {}  block. This is the same as \override, here.
1294
1295         * lily/score-engraver.cc (one_time_step): don't warn about columns
1296         when skipTypesetting == #t.
1297
1298         * lily/spacing-spanner.cc (musical_column_spacing): change
1299         ragged right function to produce natural spacing.
1300
1301 2002-07-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1302
1303         * lily/paper-column.cc (before_line_breaking): update
1304         #'bounded-by-me field for suicided items.  This fixes crazy
1305         spacing in \partcombine scores.
1306
1307 2002-07-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1308
1309         * config.hh.in: Add HAVE_SSTREAM.
1310         
1311         * configure.in: Add check for sstream header.
1312
1313 2002-07-09  Mats Bengtsson  <matsb@s3.kth.se>
1314  
1315         * flower/source-file.cc: Fix compatibility with older g++.
1316  
1317 2002-07-09  Jan Nieuwenhuizen  <janneke@gnu.org>
1318
1319         * input/twinkle.ly: Bugfix: no automaticMelismata.
1320
1321 2002-07-08  Han-Wen  <hanwen@cs.uu.nl>
1322
1323         * mutopia/J.S.Bach/Cembalo-Partitas/: remove
1324
1325         * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
1326         by default.
1327
1328         * lily/voice-devnull-engraver.cc (try_music):
1329         lily/thread-devnull-engraver.cc: use proper spelling for #'always.
1330
1331         * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
1332         copy here_mom_ too. This fixes an obscure bug with combining
1333         partcombine and repeat
1334
1335         * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
1336         factor too. 
1337
1338 2002-07-07  Han-Wen  <hanwen@cs.uu.nl>
1339
1340         * mutopia/J.S.Bach/pa.ly: remove
1341         * mutopia/J.S.Bach/Duette/: remove  
1342         
1343         * scm/font.scm (change-rhs-size): add support for "paper19.ly"
1344
1345         * VERSION: 1.5.66 released
1346
1347         * scm/grob-description.scm (all-grob-descriptions): add
1348         item-interface where necessary
1349
1350         * lily/score-engraver.cc (one_time_step): warn for grobs created
1351         during stop_translation_timestep().
1352
1353         * lily/a2-engraver.cc: restrict acknowledged grob types.
1354
1355         * lily/chord-name-engraver.cc: remove acknowledge_grob().
1356
1357         * Documentation/user/tutorial.itely: doc carnage.
1358
1359 2002-07-06  Rune Zedeler  <rune@zedeler.dk>
1360
1361         * Documentation/user/refman.itely: Documented accidentals
1362         (incl. bugs), subdivideBeams and drum/percussion notation.
1363
1364         * lily/translator-group.cc, lily/include/translator-group.hh
1365         (Translator_group::set_children_property): removed.
1366
1367         * lily/accidental-engraver.cc: don't use
1368         Translator_group::set_children_property.
1369
1370         * lily/new-accidental-engraver.cc: Added. More correct
1371         accidentals, but wrong spacing.
1372
1373         * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
1374         subdivideBeams-fixes.
1375
1376         * scm/drums.scm: Small changes/fixes in instruments and maps
1377         
1378 2002-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1379
1380         * lexer-gcc-3.1.sh: Fixes and more comments.
1381
1382         * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
1383         problems.
1384
1385         * lily/include/stream.hh:
1386         * lily/include/moment.hh:
1387         * lily/include/midi-stream.hh:
1388         * lily/streams.cc:
1389         * lily/scm-option.cc:
1390         * lily/parser.yy:
1391         * lily/my-lily-lexer.cc:
1392         * lily/moment.cc:
1393         * lily/midi-stream.cc:
1394         * lily/main.cc:
1395         * lily/lexer.ll:
1396         * lily/includable-lexer.cc:
1397         * flower/include/source-file.hh:
1398         * flower/include/parray.hh:
1399         * flower/include/dictionary.hh:
1400         * flower/include/array.icc:
1401         * flower/string.cc: 
1402         * flower/source-file.cc:
1403         * flower/getopt-long.cc: gcc-3.1 fixes.
1404
1405         * stepmake/stepmake/generic-targets.make: Add comment about warning.
1406
1407         * lexer-gcc-3.0.patch: Add comment, and a fix for installations
1408         that have an unpatched flex and gcc-3.1.x.
1409
1410         * Documentation/topdocs/INSTALL.texi: Add comments and
1411         instructions on gcc-3.1.x.
1412
1413         * lexer-gcc-3.1.sh: New file.
1414
1415         * aclocal.m4: regenerate.
1416         
1417         * stepmake/aclocal.m4: Version compare fix.
1418
1419 2002-07-05  Han-Wen  <hanwen@cs.uu.nl>
1420
1421         * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
1422
1423         * lily-guile.hh: remove guile 1.3 compatibility,  add 1.4
1424         compatibility functions.
1425
1426 2002-07-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1427
1428         * Documentation/windows/lilypond.hint (requires): Add libintl2.
1429
1430 2002-07-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1431
1432         * VERSION: 1.5.65 released. 
1433         
1434         * scripts/lilypond-book.py: patches by Tom Cato Amundsen.  Adds
1435         support for the columnsep when using the geometry package.
1436         
1437 2002-07-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1438
1439         * scm/grob-property-description.scm (minimum-space-pair): Remove.
1440
1441         * Documentation/windows/README: 
1442         * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
1443         * Documentation/windows/changelog: New file.
1444
1445         * Documentation/windows/lilypond.hint (requires): libguile14 (was:
1446         guile).
1447
1448 2002-07-03  Han-Wen  <hanwen@cs.uu.nl>
1449
1450         * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
1451         try hash tables for mutable properties.
1452
1453         * lily/align-interface.cc: remove aligned-interface and props
1454         minimum-space-pair extra-space 
1455
1456         * lily/grob-property.cc: new file move grob prop handling here.
1457
1458         * lily/lily-guile.cc (ly_deep_copy): add vector support
1459
1460         * lily/break-substitution.cc (do_break_substitution): add vector
1461         support.
1462
1463         * lily/spanner.cc: remove extend_spanner_over_* funcs.
1464
1465 2002-07-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1466
1467         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
1468         broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
1469         (Debian prerelease)'
1470
1471 2002-07-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1472
1473         * lily/bar-check-iterator.cc (process): change
1474         barbarCheckNoSynchronize to barCheckSynchronize
1475
1476         * Documentation/user/bugs.itexi: move to introduction, remove.
1477
1478         * Documentation/user/*.itexi: general carnage/cleanage.
1479         
1480         * Documentation/user/internals.itely: split most of file into
1481         internal documentation (.scm and .cc)
1482
1483         * buildscripts/make-font-dir.py: put designsize in to X font
1484         sWidth field
1485
1486         * make/lilypond.redhat.spec.in: postinstall bugfix
1487
1488 2002-07-02  Juergen Reuter  <reuter@ipd.uka.de>
1489
1490         * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
1491         avoid segfault on undefined ambitus pitch; avoid wasteful creation
1492         of pitch smobs; defer computation of centralCPosition beyond first
1493         timestep to catch also clefs outside of the current voice context.
1494
1495 2002-07-02  Han-Wen  <hanwen@cs.uu.nl>
1496
1497         * input/template/satb.ly: new file
1498
1499 2002-07-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1500
1501         * Documentation/user/glossary.tely: Precautions for lilypond-book:
1502         don't use spaces after @lilypond options.
1503
1504         * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
1505         threads warning.
1506
1507 2002-07-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1508
1509         * VERSION (MAJOR_VERSION): 1.5.64
1510
1511 2002-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1512
1513         * lily/grob.cc (mark_smob): don't mark parents, explain why.
1514
1515         * tex/lilyponddefs.tex: Define outputscale only once.
1516
1517 2002-06-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1518
1519         * configure.in: Require guile 1.4 or newer (was 1.3.4?).
1520
1521 2002-06-29  Han-Wen  <hanwen@cs.uu.nl>
1522
1523         * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
1524
1525         * lily/separating-line-group-engraver.cc (acknowledge_grob):
1526         ignore grobs with no-spacing-rods set.
1527
1528         * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
1529
1530         * scm/grob-description.scm (all-grob-descriptions): sort list
1531         
1532 2002-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1533
1534         * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
1535         remove stray brace.
1536
1537         * Documentation/topdocs/FAQ.texi (Installation): Add
1538         lilypond-devel list.  Add faq about font removal.  Fix faq about
1539         generating and running ./configure.
1540
1541 2002-06-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1542
1543         * scm/chord-name.scm (chord::name->text): Workaround: clean markup
1544         text.
1545
1546         * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
1547
1548         * input/test/ambitus.ly:
1549         * lily/ambitus-engraver.cc:
1550         * lily/ambitus.cc:
1551         * lily/include/ambitus.hh: New file.
1552
1553         * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
1554
1555 2002-06-25  Juergen Reuter  <reuter@ipd.uka.de>
1556
1557         * input/test/ambitus.ly, lily/ambitus-engraver.cc,
1558         lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
1559         scm/basic-properties.scm, scm/grob-description.scm,
1560         scm/grob-property-description.scm: Add support for ambitus.
1561
1562 2002-06-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1563
1564         * lily/text-spanner.cc: add some props to interface (patch
1565         courtesy Chris J).
1566
1567 2002-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
1568
1569         * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
1570         dereference valid Grob.
1571
1572         * configure.in: Quoting fixes.
1573
1574 2002-06-24  Han-Wen  <hanwen@cs.uu.nl>
1575
1576         * VERSION: 1.5.63 released
1577
1578         * lily/grob-scheme.cc: new file
1579
1580         * lily/break-substitution.cc: split up break substitution
1581         functionality, and make a special constant stack-space version for
1582         lists of grobs. This should fix the problems of lily in
1583         combination with pthreads/qthreads.
1584
1585         * lily/grob.cc (mark_smob): bugfix: mark other parent too.
1586
1587 2002-06-23  Chris Jackson  <chris@fluffhouse.org.uk>
1588
1589         * lily/text-spanner.cc (setup_pedal_bracket):
1590         * lily/piano-pedal-engraver.cc (create_bracket_grobs): 
1591         Fix the lengths of mixed-style piano pedal brackets.
1592
1593 2002-06-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1594
1595         * Documentation/user/tutorial.itely (First steps): Add missing
1596         quotation.
1597
1598         * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
1599         about guile --with-threads.  Hopefully this issue can be resolved
1600         rsn, but maybe we should even add warnings for the standard Debian
1601         and Red Hat packages?
1602
1603         * configure.in: Warn if guile is configured to use threads.  Maybe
1604         we should make this an error (ie, add to REQUIRED list?)
1605
1606         * config.make.in (PACKAGE_NAME):
1607         (PACKAGE, package):  Don't hardcode.
1608
1609         * VERSION (PACKAGE_NAME): Typo fix.
1610
1611 2002-06-23  Han-Wen  <hanwen@cs.uu.nl>
1612
1613         * input/tutorial/brahms-*.ly: new tutorial files.
1614
1615         * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
1616
1617         * scm/script.scm (default-script-alist): fermata is up.
1618
1619         * lily/dynamic-engraver.cc (stop_translation_timestep): stop
1620         dynamic line spanner when there is no crescendo to connect.
1621
1622         * lily/tie.cc (get_control_points): add test to avoid flat ties.
1623
1624 2002-06-22  Han-Wen  <hanwen@cs.uu.nl>
1625
1626         * lily/note-collision.cc (check_meshing_chords): don't crash if no
1627         stems.
1628
1629         * scm/music-functions.scm (toplevel-music-functions): new
1630         definition. Functions to apply automatically. Removes the need for
1631         explicitly doing \apply #voicify-music
1632
1633         * lily/grob.cc (do_break_substitution): rename function, use
1634         global var for criterion argument. Reduces stack usage a little.
1635
1636         * ly/engraver-init.ly (StaffContext): add Instrument_engraver
1637
1638         * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
1639         visibility-lambda to break-visibility
1640
1641 2002-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
1642
1643         * input/bugs/part-combiner.ly: New file.
1644
1645         * lily/include/spacing-interface.hh: New file.
1646
1647         * lily/include/spaceable-element.hh: Remove.
1648
1649         * input/test/script-priority.ly: New file.
1650
1651 2002-06-20  Han-Wen  <hanwen@cs.uu.nl>
1652
1653         * lily/system.cc (output_lines): kill grobs that are only for spacing.
1654
1655 2002-06-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1656
1657         * lily/fingering-engraver.cc (make_script): 
1658         * lily/script-engraver.cc (process_music): 
1659         * lily/text-engraver.cc: 
1660         (process_acknowledged_grobs): Remove hard coded script-priority.
1661
1662         * flower/warn.cc: Cleanup.
1663
1664         * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
1665         spanner now.
1666
1667         * aclocal.m4: Regenerate.
1668
1669         * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
1670
1671         * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
1672         * lily/include/lily-guile.hh: Only include config.h if necessary.
1673
1674         * Changelog: cvs changes ml archive test #8.
1675         
1676         * lily/slur-engraver.cc: Layout fix.
1677
1678 2002-06-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1679
1680         * ly/engraver-init.ly (RhythmicStaffContext): add
1681         Dot_column_engraver, resurrect barlines 
1682         
1683         * VERSION: 1.5.62 released.
1684
1685         * lily/engraver-group-engraver.cc (do_announces): rename
1686         create_grobs () to process_acknowledged_grobs().
1687
1688         * lily/grob.cc (programming_error): add programming_error with
1689         origin location.  
1690
1691         * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
1692         fail if a beam doesn't have stems.  
1693
1694         * lily/engraver-group-engraver.cc (do_announces): scary change in
1695         calling convention of create_grobs():  no create_grobs() call
1696         before acknowledge_grobs().
1697
1698         * lily/sequential-music-iterator.cc (skip): add support for grace
1699         notes. 
1700
1701         * lily/music.cc (Music): fix very subtle and nasty memory
1702         corruption bug. Typical symptom: "programming_error: Rhythmic_req
1703         has no duration"
1704
1705         * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
1706
1707 2002-06-19  Han-Wen  <hanwen@cs.uu.nl>
1708
1709         * ly/engraver-init.ly (RhythmicStaffContext): add
1710         Dot_column_engraver
1711         
1712
1713         * lily/parser.yy: various protection fixes. Less objects are now
1714         overprotected.
1715
1716 2002-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1717
1718         * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
1719         naming scheme.
1720
1721         * Documentation/windows/zlily-profile.sh:
1722         * Documentation/windows/post-lilypond.sh: Assume normal
1723         prefix=/usr for lilypond.
1724
1725         * lily/musical-request.cc (length_mom): Display origin with error.
1726
1727         * input/test/duration-check.ly: New file.
1728
1729         * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
1730         cells.
1731
1732         * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
1733         ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
1734
1735         * aclocal.m4:
1736         * autogen.sh: Regenerate.
1737         
1738         * Documentation/topdocs/INSTALL.texi: 
1739         * configure.in: 
1740         * stepmake/configure.in:
1741         * stepmake/aclocal.m4: Revert autoconf upgrade.  Autoconf 2.53 has
1742         a serious bug wrt AC_CONFIG_AUX_DIR (reported).  Creating
1743         ./configure once again requires autoconf == 2.13.
1744
1745         * stepmake/autogen.sh: Check for autoconf == 2.13.
1746
1747 2002-06-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1748
1749         * lily/parser.yy (open_request_parens): add input locations to
1750         open and close parens. 
1751
1752 2002-06-17  Chris Jackson <chris@fluffhouse.org.uk>
1753
1754         * lily/tuplet-bracket.cc:
1755         * lily/text-spanner.cc: 
1756         * lily/piano-pedal-engraver.cc: 
1757         * scm/grob-description.scm: 
1758         * scm/grob-property-description.scm: Changed the
1759         edge-width property of brackets to edge-widen. Changed the sign of
1760         the left element of edge-widen so a pair of equal numbers produces
1761         a symmetrical bracket.
1762
1763 2002-06-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1764
1765         * ly/espanol.ly: added.
1766
1767         * lily/simple-spacer.cc (solve): remove assert.
1768
1769 2002-06-17  Han-Wen  <hanwen@cs.uu.nl>
1770
1771         * lily/forbid-break-engraver.cc (class
1772         Forbid_line_break_engraver): new engraver: forbid linebreaks
1773         during playing notes
1774
1775         * lily/spacing-spanner.cc (loose_column): add another check: don't
1776         move around bar lines as loose columns.
1777
1778         * scm/basic-properties.scm (default-break-barline):  add pre-break
1779         for .| barline
1780
1781 2002-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1782
1783         * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
1784         well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
1785
1786         * scripts/lilypond-book.py (environment): Bugfix: update to new
1787         TEXMF scheme, from ly2dvi.
1788
1789         * lily/lookup.cc (slur): Invoke bezier-bow.
1790
1791         * scm/tex.scm (bezier-bow): 
1792         * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
1793         (Previously named bezier-sandwich).
1794         
1795         * scm/tex.scm (bezier-sandwich):
1796         * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
1797
1798         * make/lilypond.mandrake.spec.in (post): 
1799         * make/lilypond.suse.spec.in (post): 
1800         * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
1801         
1802         * tex/lilyponddefs.tex: Uncomment feta character support.
1803
1804         * Documentation/user/refman.itely (Pitches): Add espanol.ly
1805         description.
1806
1807         * ly/catalan.ly: Add comment about (spanish) -s suffix.
1808
1809         * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
1810         <cgscqmp@terra.es>.
1811
1812 2002-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1813
1814         * GNUmakefile.in (short-examples):
1815         (long-examples): Bugfix for --srcdir build.
1816         (top-web): Rewrite weblist find command.
1817
1818         * stepmake/bin/config.sub: 
1819         * stepmake/bin/config.guess: Update from latest autotools.
1820
1821         * aclocal.m4:
1822         * autogen.sh: Regenerate.
1823         
1824         * configure.in: 
1825         * stepmake/configure.in: 
1826         * stepmake/aclocal.m4: Run autoupdate.  Creating ./configure now
1827         requires autoconf >= 2.50.
1828
1829         * stepmake/autogen.sh: Check for autoconf >= 2.50.
1830
1831         * Documentation/user/refman.itely: Bugfix for tablature example.
1832
1833         * Documentation/windows/compiling.texi: Update for new and
1834         improved setup.
1835
1836 2002-06-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1837
1838         * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
1839         introduce base-shortest-duration
1840
1841         * lily/parser.yy (music_output_def_body): don't crash when \tempo
1842         in unexpected \midi{} is found.
1843
1844 2002-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1845
1846         * stepmake/GNUmakefile.in: Don't install stepmake.  This breaks
1847         the use of make/ly.make for use as an external makefile.  Probably
1848         noone except for myself ever used this anyway.
1849
1850         * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
1851         to new $datadir convention (<package>/<version>).
1852
1853 2002-06-13  Han-Wen  <hanwen@cs.uu.nl>
1854         
1855         * VERSION: 1.5.61 released
1856         
1857         * Document/user/refman.itely: tablature doc and code updates by
1858         Jean-Baptiste Lamy <jiba@tuxfamily.org>
1859         
1860         * input/template/piano-dynamics.ly: bugfixes.
1861
1862         * lily/key-engraver.cc (try_music): read request only once. Don't
1863         overwrite lastKeySignature. Call create_key() only once. This
1864         fixes a bug with multiple equal key changes on polyphonic staffs.
1865
1866 2002-06-12  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1867
1868         * scm/grob-description.scm: Add side-position-interface to TextSpanner
1869
1870         * scm/grob-property-description.scm: Document the trill line type.
1871
1872 2002-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1873
1874         * stepmake/stepmake/generic-vars.make: 
1875         * make/lilypond-vars.make:
1876         * GNUmakefile.in (builddir-setup): New setup for builddir run.
1877         Fixes LilyPond run from builddir for --srcdir builds.
1878
1879         * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
1880         --srcdir build.
1881
1882 2002-06-12  Han-Wen  <hanwen@cs.uu.nl>
1883
1884         * scm/grob-description.scm (all-grob-descriptions): add
1885         font-family to RehearsalMark
1886
1887         * scm/drums.scm: move over definitions from drum-pitch-init.ly
1888
1889         * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
1890         if glyph not set.
1891
1892 2002-06-12  Heikki Junes  <heikki.junes@hut.fi>
1893
1894         * lilypond-mode.el: Propose saving before applying a command:
1895         for saved buffer set default command to LilyPond.
1896
1897 2002-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1898
1899         * buildscripts/mutopia-index.py (headertext_nopics): Add missing
1900         variable.
1901
1902         * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
1903
1904         * Documentation/windows/lilypond-doc.hint: New file.
1905
1906         * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
1907         Bugfixes for --srcdir html-doc build.
1908         
1909         * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
1910         Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
1911
1912 2002-06-10  Han-Wen  <hanwen@cs.uu.nl>
1913
1914         * ly/script-init.ly (pralldown): add some scripts.
1915
1916         * Documentation/user/refman.itely: many edits.
1917
1918 2002-06-09  Han-Wen  <hanwen@cs.uu.nl>
1919
1920         * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
1921         direction, this breaks staffline avoidance of the bracket when
1922         they're horizontal.
1923
1924 2002-06-08  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1925
1926         * scripts/midi2ly.py: Fix handling of -o
1927
1928 2002-06-08  Han-Wen  <hanwen@cs.uu.nl>
1929
1930         * lily/molecule.cc (translate): set max distance to 100 cm.
1931
1932 2002-06-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1933
1934         * VERSION: 1.5.60 released
1935
1936         * lily/beam.cc: tremolo fix.
1937
1938         * scripts/convert-ly.py:  add tuplet-X-visibility rules.
1939         add VerticalExtent -> verticalExtent rules.
1940
1941         * lily/axis-group-engraver.cc: consistent case for
1942         XxxxVerticalExtent properties.  
1943
1944         * Documentation/user/refman.itely (Tuplets): update
1945         tuplet-X-visibility properties. 
1946
1947         * input/test/defaultbars.ly: Corrected (thanks Mats)
1948         
1949 2002-06-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1950
1951         * lily/beam.cc (shift_region_to_valid): fix stupido bug. 
1952
1953         * buildscripts/lilypond-profile.sh: override settings if
1954         LILYPONDPREFIX is set.
1955
1956 2002-06-04  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1957
1958         * scripts/ly2dvi.py (non_path_environment): Fix typo
1959
1960 2002-06-03  Heikki Junes  <heikki.junes@hut.fi>
1961
1962         * lilypond-mode.el: Extend "Quick notes" containing note tuples.
1963
1964         * lilypond-font-lock.el: Add fixes and comments to syntax-table.
1965
1966 2002-06-03  Han-Wen  <hanwen@cs.uu.nl>
1967
1968         * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
1969         beam-engraver: use different engraver so we can mix normal and
1970         grace beams.
1971
1972 2002-06-01  Han-Wen  <hanwen@cs.uu.nl>
1973
1974         * lily/beam.cc (shift_region_to_valid): Try to shift positions
1975         after slope-damping and concaveness check, so that short-stems are
1976         not violated.
1977
1978 2002-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1979
1980         * stepmake/aclocal.m4: Fix for ash as /bin/sh.
1981
1982 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
1983
1984         * VERSION: 1.5.59 released 
1985         
1986         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
1987         notice that missing features are exercise for user.
1988
1989 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1990
1991         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
1992         (but alas, not partly precomputed) value for current_y when
1993         calculating stem length demerits.
1994         (calc_stem_y): Temporary precomputed factors fix.
1995
1996         * lily/stem.cc (calc_stem_info): Take multiplicity into account
1997         for shortest_y too.
1998
1999         * input/bugs/melisma-tie-rest.ly: New file.
2000
2001 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
2002
2003         * lily/stem.cc (calc_stem_info): remove min_y member, rename
2004         stuff.  Remove kneeing stuff.
2005
2006         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
2007         twiddling
2008
2009 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2010
2011         * scm/sketch.scm: 
2012         * scm/ps.scm: 
2013         * scm/pdftex.scm: 
2014         * scm/pdf.scm: 
2015         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
2016         patch-level of version in minor-version string.  Arg.
2017
2018 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
2019
2020         * ly/engraver-init.ly (TabStaffContext): 
2021         enable TabStaff by default.
2022
2023         *  Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
2024
2025 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2026
2027         * config.hh.in: Remove duplicate DIR_DATADIR entry.
2028
2029         * aclocal.m4: Regenerate.
2030         
2031         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
2032
2033 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
2034
2035         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
2036
2037         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
2038         "Quick notes"-interface.
2039
2040 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
2041
2042         * input/regression/non-empty-text.ly: Update example with outdated
2043         comment.
2044
2045 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
2046
2047         * scripts/convert-ly.py:  add textNonEmpty rule
2048
2049         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
2050
2051 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2052
2053         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
2054         using translate-robust add_molecule instead of add_at_edge.
2055         Bugfix for #(lines (finger "" "1")).
2056
2057 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
2058
2059         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
2060         tremolo placement.
2061
2062 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
2063
2064         * VERSION: 1.5.58
2065         
2066         * Documentation/user/refman.itely: Bugfix: add node Repeats and
2067         MIDI.  Regenerate menu.  Fix @end example.
2068
2069         * lily/accidental.cc: Add cautionary-style to interface.
2070
2071         * mf/feta-beugel.mf (code): use autometric macros for braces.
2072         This fixes input/bugs/braces.
2073
2074         * lily/afm.cc (count): return numOfChars, not size of array
2075         (always equals 256.)
2076
2077         * lily/script.cc (before_line_breaking): postpone setting the
2078         X-parent of vertical scripts. This fixes the case of scripts on
2079         chords with seconds 
2080
2081 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
2082
2083         * scm/grob-description.scm:  fix alignment of barnumber: make sure
2084         it doesn't hit the G-clef. 
2085
2086         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
2087         startGraceMusic not startGraceContext).
2088
2089 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2090
2091         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
2092         found.
2093
2094 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
2095
2096         * lily/accidental-engraver.cc: remove old accidental engraver,
2097         move new one to accidental-engraver.cc.
2098
2099         * lily/local-key-item.cc: remove file
2100
2101         * lily/include/local-key-item.hh: remove file
2102
2103         * scripts/ly2dvi.py (make_preview): add --preview-resolution
2104         option.
2105
2106         * lily/accidental.cc (brew_molecule): support for cautionary
2107         accidentals. 
2108
2109         * lily/note-head.cc (internal_brew_molecule): warn if note head
2110         not found.
2111
2112         * lily/time-signature.cc (special_time_signature): remove warning
2113         about time signature. 
2114
2115         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
2116         reverse springs by limiting fixed-note space.
2117
2118 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2119
2120         * stepmake/aclocal.m4: Bugfix: complain if program not found.
2121
2122         * scripts/update-lily.py (next_version, prev_version, diff_name):
2123         New function.  Patches now named name-prev-latest.diff.gz.
2124         Bugfix: import shutil.
2125
2126 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
2127
2128         * input/tutorial/sammartini.ly: fix and document autochange
2129         weirdness.
2130
2131         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
2132         does produce .pdftex files.
2133
2134         * lily/note-collision.cc (check_meshing_chords): move file from
2135         collision.cc, implement merged note heads (there you go, Drarn :-)
2136
2137         * input/regression/collision-heads.ly: new file
2138
2139         * VERSION: 1.5.57 released.
2140
2141 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
2142
2143         * mf/parmesan-heads.mf, scm/grob-description.scm,
2144         scm/grob-property-description.scm, scm/interface-description,
2145         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
2146         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
2147         lily/include/ligature-engraver.hh,
2148         lily/include/ligature-bracket.hh, lily/parser.yy,
2149         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
2150         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
2151         lily/ligature-head.cc, lily/ligature-engraver.cc,
2152         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
2153         implemented white mensural ligatures (still with a big list of
2154         TODOs)
2155
2156
2157 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
2158
2159         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
2160         Documentation/user/internals.itely.
2161
2162         * lily/function-documentation.cc: new file. Infrastructure for
2163         self documenting Scheme functions.
2164
2165 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
2166
2167         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
2168
2169 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
2170
2171         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
2172         and * (as in "([^>]*)?")
2173
2174 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
2175
2176         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
2177         Add info about CVS.  Stable/development are currently 1.4/1.5,
2178         both at lilypond.org.
2179
2180         * autogen.sh: Generate.
2181
2182         * stepmake/configure:
2183         * configure: Regenerate.
2184         
2185         * stepmake/stepmake/automatically-generated.sub.make: Keep
2186         original first line.
2187
2188         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
2189
2190         * stepmake/stepmake/generic-targets.make (configure): Generate
2191         using autogen.sh.
2192
2193         * GNUmakefile.in (SCRIPTS):
2194         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
2195
2196         * stepmake/autogen.sh: New file.
2197
2198         * configure: Check for g++ >= 2.95.
2199
2200         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
2201         c/c++ version checking.
2202
2203         * flower/include/string.hh: Typo fix.
2204
2205         * lily/include/midi-item.hh: Remove stray i.
2206
2207         * Documentation/windows/GNUmakefile: Avoid collapsed directory
2208         constructs '//'.
2209         
2210         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
2211         constructs '//' from arguments.
2212
2213 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
2214
2215         * scm/lily.scm (ly-load): show SCM filenames if verbose.
2216
2217         * lily/lily-guile.cc (init_functions): add ly-verbose function.
2218
2219         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
2220
2221         * flower/include/{pointer,tuple}*: removed.
2222
2223         * VERSION: released 1.5.56
2224         
2225         * scm/music-functions.scm (check-start-chords): function to check
2226         for chords without \context. Apply automatically from parser.
2227
2228 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
2229
2230         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
2231         in index entries.
2232
2233         * scm/output-lib.scm: fix ez notation stems. 
2234
2235         * lily/paper-outputter.cc: various fixes to speed up compilation.
2236
2237 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2238
2239         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
2240
2241 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2242
2243         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
2244         determine latex input.
2245
2246         * stepmake/bin/install-sh: Include latest from libtool.
2247
2248         * stepmake/configure: 
2249         * configure: Regenerate.
2250
2251         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
2252         (USER_CFLAGS): Bugfix, include CPPFLAGS.
2253
2254         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
2255
2256         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
2257         REQUIRED programs and version.  Try to continue configuring, list
2258         missing programs at the end, but don't generate a GNUmakefile if
2259         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
2260         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
2261         fancy for some older systems.
2262
2263 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
2264
2265         * lily/score-engraver.cc (typeset_all): sanity check for items
2266         that are Y parent to spanner. 
2267
2268         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
2269         pedal spanners.
2270
2271 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2272
2273         * lily/*.cc: remove as many iostream use as possible. 
2274
2275         * flower/ : remove text-db, text-stream, data-file.
2276         
2277 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
2278
2279         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
2280         (completize_preamble): don't barf if no preamble present.
2281         (do_file): allow extensions on --output
2282
2283         * scripts/ly2dvi.py (make_preview): make automatic preview of
2284         first system. Small cleanups.
2285
2286 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2287
2288         * scripts/lilypond-book.py (make_pixmap): output png directly.
2289
2290         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
2291         fonts.dir file.
2292
2293         * lily/parser.yy (My_lily_parser): comment out code. (Causes
2294         problems  with recent bison releases).
2295
2296         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
2297
2298 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
2299
2300         * lilypond-font-lock.el: Fixes the order of the note name list.
2301
2302 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2303
2304         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
2305         capability, --verbose option, rlimit hack.
2306
2307 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2308
2309         * lily/piano-pedal-engraver.cc: cleanups.
2310
2311         * lily/accidental.cc (after_line_breaking): add break tie
2312         reminders.
2313
2314         * lily/text-engraver.cc (try_music): don't typeset fingerings
2315
2316 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
2317
2318         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
2319
2320 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
2321
2322         * lily/*.cc: change gh_str02scm() to ly_str02scm().
2323
2324         * lily/spacing-spanner.cc (note_spacing): Bound
2325         shortest-playing-length by the distance to next note. This should
2326         fix chord tremolo spacing.
2327
2328         * VERSION: 1.5.55 released
2329
2330         * lily/stem.cc (off_callback): invisible stem over whole note is
2331         centered on note now.
2332
2333         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
2334         stem-tremolo is stem now.
2335
2336         * input/mozart-hrn*.ly: many corrections. 
2337
2338         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
2339         support for dynamic scripts.
2340
2341         * lily/accidental-placement.cc (position_accidentals): check for
2342         collisions as well: should avoid those heads too.
2343
2344         * lily/beam.cc (check_concave): allow undefined gap and
2345         threshold. Change the meaning of threshold/gap == 0.0.
2346         (check_concave): skip Stolba concaveness check if we have a knee
2347         on outer stems.
2348
2349 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2350
2351         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
2352         tremolos of dotted duration.
2353
2354 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
2355
2356         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
2357         downstroke again. Sigh.
2358
2359         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
2360         script on note head.
2361
2362 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
2363
2364         * lily/slur.cc (add_column): allow slur over rest. 
2365
2366 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
2367
2368         * lily/beam.cc: move scoring constants out of code
2369
2370 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
2371
2372         * mf/feta-nummer.mf: scalability fixes.
2373
2374         * mf/feta-nummer-code.mf: fixes for 5, 8. 
2375
2376         * mf/feta-klef.mf: G clef fixes.
2377
2378 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2379
2380         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
2381
2382         * scripts/lilypond-book.py: %Newline, rather than glue macros
2383         after \end{verbatim}.
2384
2385 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
2386
2387         * Documentation/user/lilypond-book.itely: 
2388         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
2389         noinline.
2390
2391         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
2392
2393         * scm/grob-property-description.scm (beam-space): Junk.
2394
2395         * lily/beam.cc (space_function): New method.
2396         (get_interbeam): Call space-function.
2397
2398         * scm/grob-description.scm (Beam): Initialize space-function with
2399         Beam::space_function.
2400
2401         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
2402         Beam.space-function.  Don't quantise grace beams.
2403
2404 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2405
2406         * VERSION: 1.5.54 released
2407
2408         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
2409         bulb. 
2410
2411         * Documentation/index.texi: add PDF links.
2412
2413         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
2414
2415         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
2416         compare #'glyph as strings. 
2417
2418         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
2419
2420         * scripts/ly2dvi.py (setup_environment): fix by Mats.
2421
2422         * lily/stem.cc (head_count): Change function name. Change property
2423         to #'note-heads i.s.o.  #'heads.
2424         (position_noteheads): Kern noteheads for invisible stems.
2425         (before_line_breaking): Do position_noteheads() for whole note
2426         heads too.
2427
2428         * lily/accidental-placement.cc (position_accidentals): First
2429         determine refpoints, only then determine extents.  
2430
2431 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2432
2433         * lily/accidental-placement.cc (position_accidentals): use all
2434         note heads for note head-skyline. 
2435
2436         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
2437
2438 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2439
2440         * Documentation/windows/setup.hint (requires): Add gsview dependency.
2441
2442         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
2443
2444         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
2445
2446         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
2447
2448 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2449
2450         * mf/feta-schrift.mf: lighter staccato.
2451
2452 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
2453
2454         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
2455
2456 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
2457
2458         * VERSION: 1.5.53 released
2459
2460         * scm/lily.scm (ly-load): use primitive-load for loading.
2461
2462         * lily/misc.cc: remove quantise_iv()
2463
2464         * lily/*.cc: pass read-only arrays by reference.
2465         
2466         * lily/grob.cc (common_refpoint_of_array): new function. Try to
2467         use common_refpoint_of_{array, list} when possible.
2468
2469         * lily/include/accidental-placement.hh: new file.
2470
2471         * lily/accidental-placement.cc (alignment_callback): position
2472         accidentals in a better way.
2473
2474         * lily/skyline.cc: new file. Compute distances for collections of
2475         boxes.
2476
2477         * lily/include/skyline.hh: new file
2478
2479 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
2480
2481         * lily/accidental.cc (class Accidental_interface): grob for a
2482         single accidental.
2483
2484         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
2485         of reformatting
2486
2487         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
2488         together with new accidental-interface. 
2489
2490         * lily/include/*.hh: remove spurious set_interface() decls.
2491
2492         * lily/key-signature-interface.cc (brew_molecule): add padding for
2493         natural signs. Make natural typesetting like the sharp.
2494         
2495
2496         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
2497         is now slightly curved, not straight.
2498         
2499
2500 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
2501
2502         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
2503
2504         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
2505         more strictly. Use more clever regular expressions. Commented regexps.
2506
2507 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
2508
2509         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
2510
2511 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
2512
2513         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
2514         to control width of staff symbol in ragged-right mode (by request
2515         of Han-Wen)
2516
2517         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
2518         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
2519         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
2520         added support for ligature brackets (needed when transcribing
2521         mensural music)
2522
2523 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
2524
2525         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
2526         Fontify notes more strictly.
2527
2528 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
2529
2530         * mf/feta-din-code.mf: dynamic z sign.
2531
2532 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
2533
2534         * lilypond-mode.el: Prevent recoloring strings and comments.
2535
2536         * lilypond-font-lock.el: Handle block comments: block comments
2537         can have also ordinary comments inside.
2538         
2539 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
2540
2541         * lily/stem.cc (get_default_dir): set direction to CENTER if
2542         invisible. Various other fixes to deal with invisible stems and
2543         stem-direction == CENTER.
2544
2545         * lily/rest-collision.cc (do_shift): take direction from note if
2546         not set.
2547
2548         * input/regression/tie-grace.ly: new file.
2549
2550         * lily/tie-engraver.cc (create_grobs): fix tied graces.
2551
2552         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
2553         knee correction. Fixes tight spacing for knees.
2554
2555 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2556
2557         * VERSION: 1.5.52 released
2558         
2559         * lily/*.cc: add some undocced properties.
2560         scm/grob-description.scm: idem.
2561
2562 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
2563
2564         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
2565         multi-measure rests like "R1 *4" and scheme (typically has '#' 
2566         in the beginning). Small fixes. Add few reserved words.
2567
2568 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2569
2570         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
2571         emacs mode.
2572
2573         * Documentation/windows/installing.texi: Suggest gswin32c (console
2574         program) for getting the version.  Layout fixes.
2575
2576 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2577
2578         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
2579         windows viewing commands, remove silly comment about Yap.
2580
2581 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
2582         
2583         * Documentation/topdocs/INSTALL.texi: Describe how to learn
2584         configure to find kpathsea on for example Slackware 8.0.
2585
2586         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
2587
2588         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
2589         by default: avoid "1" over single bar rests.
2590
2591         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
2592         and correct the handling of geometry options.
2593
2594 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2595
2596         * lily/include/grob-interface.hh (ADD_INTERFACE): make
2597         implementation for Class::has_interface automatically. Junk all
2598         other implementations.
2599
2600         * lily/grob.cc (internal_get_grob_property): also typecheck
2601         property reads. Catches even more undocced properties. Bugfixing
2602         left for the uninspired masses.
2603
2604         * lily/beam.cc: remove end_after_line_breaking().
2605
2606         * lily/grob.cc (calculate_dependencies): remove list support for
2607         callbacks.
2608
2609         * lily/font-size-engraver.cc: only do font-interface.
2610
2611 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
2612
2613         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
2614           Add few keywords.
2615
2616 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
2617
2618         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
2619         brackets using arpeggio requests.
2620         
2621         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
2622         molecule-callback to use for drawing the brackets.
2623
2624         * Documentation/user/refman.itely: 
2625         * input/test/chord-bracket.ly: Chord brackets documented
2626         
2627 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
2628
2629         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
2630
2631         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
2632
2633 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2634
2635         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
2636         direction tuplets on beams.
2637
2638 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
2639
2640         * lilypond-indent.el: Bugfix of indentation of final point in buffer
2641
2642 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
2643
2644         * lilypond-mode.el: new command: LilyPond-un-comment-region.
2645         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
2646         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
2647         submenu to "LilyPond"-menu.
2648
2649         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
2650         an interface to play midi.
2651
2652 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2653
2654         * input/regression/script-stack-order.ly: new file.
2655
2656 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
2657
2658         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
2659
2660         * mf/feta-din-code.mf: kerning for dynamics.
2661
2662 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
2663
2664         * input/regression/dynamics-glyphs.ly: new file
2665
2666         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
2667
2668         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
2669         forte f for the 2 number. Some fixes for the other bulbed glyphs.
2670
2671         * Documentation/windows/gs-profile.sh:
2672         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
2673         moved to gs/gsview windows packages.
2674
2675 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
2676
2677         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
2678         finding out the duration. Fixes chord tremolo bug. 
2679
2680         * lily/completion-note-heads-engraver.cc (process_music): Set
2681         correct duration for all requests of the broken notes.
2682
2683         * input/regression/completion-heads.ly: Added example of
2684         Completion_heads_engraver.
2685
2686         * lilypond-mode.el: Added "2Midi" command
2687
2688 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
2689
2690         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
2691         edge-width, edge-height and shorten-pair properties for tuplet
2692         brackets.
2693
2694         * lilypond-indent.el: Support for blinking of matching parentheses
2695         
2696         * lilypond-font-lock.el: Fix fontification of closing > on its own line
2697         
2698         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
2699         cleanups of piano pedal brackets.
2700
2701 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
2702
2703         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
2704
2705 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
2706
2707         * mf/feta-new-code.mf:  new dynamic f sign.
2708         new dynamic m sign.
2709
2710 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
2711
2712         * mf/feta-new-code.mf: new dynamic p sign.
2713
2714 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2715
2716         * lily/note-spacing.cc (stem_dir_correction): only do
2717         beam-correction if a beam is there. 
2718
2719         * lily/stem.cc (duration_log): change from flag_i (); better
2720         naming.
2721         (get_default_stem_end_position): fix dot/flag collision code.
2722
2723 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
2724
2725         * VERSION: release 1.5.50
2726
2727         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
2728         unit spring here. Reduces number of warning messages.
2729
2730         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
2731
2732 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
2733
2734         * scm/generic-property.scm: remove generic-property, property-engraver
2735
2736         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
2737
2738         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
2739
2740         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
2741
2742         * scm/*.scm: remove volta, hairpin and tuplet functions.
2743
2744         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
2745         note column for notes/stems/dots that already have parents. Fixes
2746         nested grace contexts.
2747
2748 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2749
2750         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
2751         get too curved slurs.
2752
2753         * scm/slur.scm (default-slur-extremity-offset-alist) 
2754         (default-phrasing-slur-extremity-offset-alist): Move slur
2755         attachments further away from note-head, vertically.  Also, leave
2756         a horizontal gap between slur and stem end.
2757
2758         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
2759
2760 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
2761
2762         * input/regression/spacing-grace-duration.ly: new file
2763
2764         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
2765         for shortest durations.
2766
2767         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
2768         extent of the mm rest. 
2769
2770         * lily/spacing-spanner.cc (get_duration_space): better spacing for
2771         really short notes.
2772
2773         * lily/tuplet-bracket.cc (make_bracket): new function
2774         (get_x_offset): new function; make tuplet brackets align on stems
2775         if stem has same direction.
2776         (parallel_beam): be anal about matching bracket to tuplet.
2777
2778         * lily/lookup.cc (line): new function Lookup::line(). 
2779
2780         * scm/tex.scm (dashed-line): change -line to -system in names.
2781
2782         * lily/box.cc (add_point): new function.
2783
2784         * flower/include/interval.hh: new function add_point ().
2785         new function widen()
2786         
2787 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2788
2789         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
2790
2791         * scm/grob-property-description.scm (number-threshold): Add
2792         description.
2793
2794         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
2795         rest if #measures > number-threshold.  Use padding (well, fake
2796         using it, anyway).
2797
2798         * scm/font.scm (make-style-sheet): New styles: mark-number,
2799         mark-letter.
2800         (paper20-style-sheet-alist): Add bigger bold fonts.
2801
2802         * lily/mark-engraver.cc (process_music): Use style mark-number or
2803         mark-letter.
2804
2805         * .cvsignore: Ignore all kinds of lilypond input and output.
2806
2807         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
2808
2809 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
2810
2811         * lily/staff-symbol.cc (brew_molecule): make line thickness
2812         adjustable.
2813
2814         * lily/*.cc: replace stafflinethickness by linethickness.
2815
2816 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2817
2818         * input/regression/beam-concave.ly: Add to-be-considered-concave
2819         beam.
2820
2821         * lily/beam.cc (check_concave): Add check for large gap between an
2822         inner notehead and the line through outer noteheads.
2823
2824         * scm/grob-description.scm (Beam): Add concaveness-gap, default
2825         value 2.0 staff-space.
2826         
2827         * scm/grob-property-description.scm (concaveness-gap): Add
2828         description.
2829
2830         * input/mozart-hrn3-allegro.ly: Fix typo.
2831
2832 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
2833
2834         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
2835         lily/note-head-engraver: improved implementation of roundfilledbox
2836         (according to Han-Wen's request)
2837
2838         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
2839         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
2840         lily/simple-spacer.cc: ragged-right alignment
2841
2842 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
2843
2844         * input/regression/spacing-note-flags.ly: new file
2845
2846         * input/regression/spacing-rest.ly: new file
2847
2848         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
2849
2850         * lily/spacing-spanner.cc (note_spacing): make note spacing after
2851         all grace notes tight (not only the column directly following a
2852         grace note).
2853
2854         * scm/grob-description.scm (all-grob-descriptions): don't make
2855         mm-rests larger than normal.
2856
2857         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
2858         curved. Remove white space at the right of flags.
2859
2860 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2861
2862         * ports/ports.make: Bugfix: ignore CVS directories.
2863
2864         * stepmake/.cvsignore: New file.
2865
2866 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
2867
2868         * lily/note-spacing.cc (stem_dir_correction): don't correct when
2869         there is a flag on the stem.
2870
2871         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
2872
2873         * scm/grob-property-description.scm (measure-length):
2874         measure-length grob property.
2875
2876         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
2877         better spacing for breakable columns when they're juxtaposed: use
2878         measure length if applicable
2879
2880         * lily/timing-engraver.cc (start_translation_timestep): store
2881         measure length in breakable column at start of measure.
2882
2883 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2884
2885         * ROADMAP: Add description for ports dir, to check email upon
2886         commit.
2887
2888 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
2889
2890         * VERSION: 1.5.48 released
2891         
2892         * lily/multi-measure-rest.cc (symbol_molecule): split off from
2893         brew_molecule()
2894         (set_spacing_rods): Use symbol_molecule() to determine minimum
2895         width
2896         (church_rest): split off from brew_molecule()
2897         (big_rest): split off from brew_molecule(). Construct using
2898         variable shape.
2899         
2900         * mf/feta-eindelijk.mf: junk multi measure rest.
2901
2902 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
2903
2904         * lily/multi-measure-rest.cc (add_column): remove columns property.
2905
2906         * lily/dynamic-engraver.cc (process_music): add more verbose warning
2907
2908         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
2909         3 as test piece.
2910
2911 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
2912
2913         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
2914         keywords covered, dropped some non-keywords, include R- and 128-notes
2915
2916 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
2917
2918         * Code clean-up: Junk multiple implementations of ledger line
2919         creation in note_head, custos, and porrectus.  This is important
2920         since there soon will be some more applications of ledger lines to
2921         come (e.g. ambitus engraver).
2922
2923         * Make thickness of ledger lines adjustable.  This is essential
2924         for mensural notation.
2925
2926         * Fix some bugs in the current ledger_line implementation, most
2927         notably that of the horizontal extent of ledger lines which equals
2928         at least the extent of the metafont ledger_line character, and
2929         which grows(!) if the desired extent shrinks below this limit.
2930
2931         * roundfilledbox: variable blotdiameter
2932
2933 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
2934
2935         * VERSION: 1.5.47 released
2936
2937         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
2938
2939         * lily/porrectus.cc:  change line-thickness to thickness, change
2940         stem-direction to direction.
2941
2942         * scm/backend-documentation-lib.scm (check-dangling-properties):
2943         Automatically detect doc'ed properties that are not in an interface
2944
2945         * scm/grob-property-description.scm: property cleanup. Remove many
2946         paper-column props that are non-existent.
2947
2948         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
2949         the grob has a molecule-callback.
2950
2951         * lily/*.cc: remove many set_interface() calls, and their
2952         implementations.
2953
2954         * input/regression/spacing-knee.ly: new file
2955
2956         * input/regression/spacing-clef-first-note.ly: new file
2957
2958         * lily/staff-spacing.cc (get_spacing_params): different spacing
2959         for pref matter to note at start of line, halfway during line.
2960
2961         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
2962         correction only if stems have same direction (i.e. not for
2963         stem-clef combination).
2964         (stem_dir_correction): maximal correction for knees.
2965
2966         * lily/*.cc: many updates to interface descriptions.
2967         
2968         * lily/grob.cc (internal_set_grob_property): add interface check
2969         for every set_grob_property call
2970
2971         * lily/*.cc: document interface stuff in C++
2972         
2973         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
2974
2975         * lily/volta-bracket.cc: naming: change volta spanner to
2976         volta-bracket.
2977
2978         * input/bugs/*.ly: cleanup, remove lots of files.
2979         
2980         * buildscripts/mf-to-table.py (write_ps_encoding): generate
2981         .encoding file. WARNING: upgrade to pktrace 1.0.3
2982
2983         * mf/feta-toevallig.mf: change PS name for parentheses.
2984
2985 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2986
2987        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
2988        also for textheight
2989
2990 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
2991
2992         * lily/scope.cc: remove file .
2993
2994         * lily/include/scope.hh: remove file. Remove Scope class
2995
2996         * VERSION: 1.5.46
2997
2998         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
2999         score_forbidden_quants): ): take out of SCM, pass parameters so
3000         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
3001         secs).
3002         (calc_stem_y): robustness: take care of last_visible_stem == 0.
3003
3004
3005         * lily/lily-guile.cc (ly_unit): return internal unit.
3006
3007         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
3008
3009         * lily/paper-outputter.cc (output_version): output internal unit
3010         from Paper_outputter
3011
3012         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
3013
3014 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3015
3016        * scripts/ly2dvi.py: clean up old .*pk font caching code.
3017
3018        * scm/ps.scm: Use uppercase postscript font names for the standard
3019        TeX fonts.
3020
3021        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
3022        Add all available TeX Type1 fonts, including Feta, to the
3023        Ghostscript font path.
3024
3025        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
3026        version (affects the FontName) in lilypond.map.
3027
3028        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
3029        documentation file to fetaNNlist.ly to avoid name collisions between
3030        lilypond generated .tex file and font .tex macros file.
3031
3032
3033 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
3034
3035         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
3036         made mensural longa and (semi-)brevis leaner
3037
3038         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
3039
3040         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
3041         clean-up: moved bezier shape and slope from porrectus to lookup
3042
3043         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
3044         and /usr/share/texmf/fonts
3045
3046         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
3047
3048 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
3049
3050         * lily/text-spanner.cc (brew_molecule): add #'thickness
3051         (brew_molecule): add corrections for thickness in molecule padding.
3052
3053         * lily/line-spanner.cc (line_atom): make function private
3054
3055         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
3056         discover bounding box. This solves the cropping problem.
3057
3058         * lily/bar-check-iterator.cc (process): Only resynchronize bar
3059         check when it  fails. This fixes the combination of  grace notes
3060         and bar checks.
3061
3062 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
3063
3064         * lily/repeated-music.cc (minimum_start): new Scheme callable function
3065         (first_start): new Scheme callable. This will fix repeated music
3066         starting with grace notes.
3067
3068         * lily/music.cc (start_mom): check start-moment-function grob property.
3069
3070         * VERSION: 1.5.45 released
3071
3072         * input/regression/system-extents.ly: new regression test. Test
3073         System extents. 
3074
3075         * lily/system.cc: rename LineOfScore into System 
3076
3077         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
3078
3079         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
3080         (ly_get_extent): new Scheme function ly-get-extent
3081
3082         * ps/lilyponddefs.ps: use output-scale for  line-x
3083         definition. 
3084
3085         * scm/ps.scm (font-load-command): 
3086         use output-scale
3087
3088 2002-03-20  Rune Zedeler <rune@zedeler.dk>
3089         
3090         * lily/beaming-info.cc: Stupid typo fixed
3091         
3092         * lily/accidental-engraver.cc: rewrote accidental-routines to get
3093         support for cross-context auto-accidentals.
3094         Now the engraver can stay in Staff-context and see other contexts
3095         from there.
3096         Changed properties: autoAccidentals, autoCautionaries
3097
3098         * lily/translator-group.cc (set_children_property):
3099         Function added recursively setting the same property (deep_copied)
3100         for all children of a Translator_group.
3101         
3102         * ly/property-init.ly: added commands
3103         \pianoAccidentals \voiceAccidentals
3104         \modernVoiceAccidentals \modernVoiceCautionaries
3105
3106         * ly/engraver-init.ly: Correct initialization of new accidentals.
3107         
3108         * scm/translator-property-description.scm: Updated
3109         
3110         * input/regression/accidental-voice.ly: Added
3111         
3112         * Documentation/regression-test.tely: Added new test    
3113
3114 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3115
3116         * VERSION: 1.5.44 released
3117
3118         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
3119
3120         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
3121
3122         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
3123         at 0.4 pt.
3124
3125         * tex/feta*.tex: remove.
3126         
3127         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
3128         all software dealing with it.
3129
3130 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3131
3132         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
3133         (this fixes pdf output).  Drop awk dependency.
3134
3135         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
3136         dimensions (linewidth) are in mm.
3137
3138         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
3139
3140         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
3141
3142         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
3143
3144 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
3145
3146         * VERSION: 1.5.43 released
3147
3148         * scm/beam.scm (beam-dir-majority-median): if majority is
3149         undecided, use median. Removes a forced dir in sarabande.
3150
3151         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
3152
3153 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
3154  
3155         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
3156         widths, heights and shortens are now customisable properties.
3157  
3158         * scm/grob-description.scm, scm/grob-property-description.scm: New
3159         properties added to PianoPedalBracket, unnecessary
3160         Y-offset-callbacks removed from *Pedal, undocumented properties
3161         fixed.
3162  
3163         * Documentation/user/refman.itely: Piano pedal updates.
3164
3165 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3166
3167         * scm/grob-property-description.scm:
3168         * scm/interface-description.scm: Remove old stuff.
3169
3170         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
3171         0.48 (previously 0.42).
3172         (Beam): Remove old stuff.
3173
3174         * lily/stem.cc: 
3175         * lily/stem-tremolo.cc: 
3176         * lily/beam.cc: 
3177         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
3178         (previously space-function).
3179
3180         * stepmake/bin/add-html-footer.py: Website title fix.
3181
3182 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3183
3184         * scripts/ly2dvi.py (environment): use new font searching setup.
3185
3186         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
3187
3188         * lily/tfm.cc (dimensions): make code dimension independent
3189
3190         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
3191         scaling
3192
3193         * tex/lily-ps-defs.tex: scaling for PS points and MM.
3194
3195         * lily/include/dimensions.hh: try MM as internal unit.
3196
3197         * scm/*.scm: remove invoke-dim1
3198
3199 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
3200
3201         * GNUmakefile.in (fontpaths): add fontpaths target,
3202
3203         * make/mutopia-targets.make: add PDF rules.
3204
3205         * make/mutopia-rules.make: add pdf rule.
3206
3207         * buildscripts/mutopia-index.py (list_item): add PDF.
3208
3209         * buildscripts/lilypond-profile.sh (TEXMF): typo.
3210
3211         * make/lilypond-vars.make: set TEXMF for the new font setup.
3212  
3213 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
3214
3215         * VERSION: 1.5.42 released
3216         
3217         * mf/feta-schrift.mf: endless twiddling of Tr.
3218
3219         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
3220         endless twiddling with the bulb shape.
3221
3222         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
3223         little smaller if there is an accidental.
3224
3225 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3226  
3227         * buildscripts/lilypond-profile.sh: 
3228  
3229         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
3230         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
3231         Implement new font installation strategy
3232  
3233         * Documentation/misc/fontinstallation (TEXMF): Documentation of
3234         the new font installation strategy.
3235  
3236         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
3237         for comment-region.
3238  
3239         * input/test/staff-size.ly: Simplified using StaffContainer
3240  
3241         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
3242         lilypond.map file
3243
3244 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3245
3246         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
3247
3248         * lily/beam.cc (score_stem_lengths): new quanting stuff
3249         (score_forbidden_quants): Second and third beam quant stuff.
3250
3251 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
3252
3253         * lily/beam.cc (least_squares): Remember least-squares-dy for
3254         later use.
3255         (quantise_interval): Don't quant to dy steeper that
3256         least-squares-dy.  Return empty interval if no sane quants found.
3257         (quantise_position): Try quantise_interval until we have
3258         acceptable solution.
3259
3260 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3261
3262         * scm/interface-description.scm (beam-interface): Update.
3263
3264 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3265
3266         * VERSION: 1.5.41 released
3267         
3268         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
3269         optima serifs on top of t, bottom of r.
3270
3271         * mf/feta-bolletjes.mf: make ledger line rounder. 
3272
3273         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
3274
3275         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
3276         parametrization.
3277
3278 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
3279  
3280        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
3281        well as text pedal indications and a combination of both.  All
3282        pedal indications are horizontally aligned on a line spanner.
3283  
3284        * lily/text-spanner.cc: Edge-width property added to use in
3285        bracketed piano pedals. Function setup_sustain_pedal added to set
3286        the dimensions of the brackets. 
3287  
3288        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
3289        some of the *Pedal properties tweaked. 
3290  
3291        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
3292        edge-width (TextSpanner) properties.
3293  
3294        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
3295  
3296        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
3297        fontified identifiers list.
3298  
3299        * input/test/pedal.ly: New pedal features added. 
3300  
3301        * Documentation/user/refman.itely: New pedal features documented.
3302        
3303
3304 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3305
3306         * lily/include/new-beam.hh: Previously new-beam.hh
3307         * lily/beam.cc: Previously new-beam.cc
3308         (least_squares): Bugfix: don't barf on beams with less than two
3309         visible stems (tremolos).
3310
3311         * scm/beam.scm: 
3312         * scm/grob-description.scm (Beam): Junk old beam stuff.
3313         
3314         
3315 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3316
3317         * VERSION: 1.5.40
3318
3319         * mf/feta-eindelijk.mf: new 8th rest.
3320
3321         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
3322         stick out of staffline
3323
3324         * scripts/lilypond-book.py: fixes for texi regular expressions.
3325
3326 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3327
3328         * lily/include/new-beam.hh:
3329         * lily/new-beam.cc: New file.
3330
3331         * flower/include/interval.hh: 
3332         * flower/include/interval.tcc (delta): New method.
3333         (swap): Now public (previously private).
3334         
3335         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
3336         1 staff-line-thickness.  Sadly, this makes dy quanting problems
3337         (dy quants allowed should depend on actual left y) more visible.
3338
3339 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3340
3341         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
3342
3343         * scm/grob-property-description.scm (concaveness-threshold): Add
3344         typecheck and description.
3345
3346         * scm/grob-description.scm (Beam): Remove obsolete properties, add
3347         concaveness-threshold (previously concaveness).
3348
3349         * lily/beam.cc (check_concave): Remove choices and debugging
3350         stuff: use best concaveness calculation.
3351         (quantise_dy): Remove choice.  Try to never make a slope steeper
3352         by quantising, but certainly never quantise a slope away.
3353         (check_stem_length_f): Remove choice.  In case of lengthening
3354         alowed, always lengthen to ideal length.
3355
3356         * Documentation/index.texi: Fix FAQ url.
3357
3358         * Documentation/topdocs/INSTALL.texi: Add information about fink,
3359         compile fix and 1.4 specific fix that doesn't hurt 1.5.
3360
3361 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
3362
3363         * VERSION: 1.5.39 released
3364
3365         * lily/simple-spacer.cc (add_rod): rods take precedence over
3366         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
3367
3368         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
3369
3370         * lily/note-spacing.cc (get_spacing): only insert space for
3371         accidentals if necessary.
3372
3373         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
3374
3375         * lily/spacing-spanner.cc (musical_column_spacing): new
3376         function. Have correct spacing from note to end-of-line as well.
3377
3378 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3379
3380        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
3381
3382        * darwin.patch: New file.
3383
3384        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
3385        code.  Shorten stems by fraction of stems to be shortened.
3386
3387        * lily/stem.cc (get_default_stem_end_position): Shorten only half
3388        of shorten value for boundary cases.
3389
3390        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
3391        (Beam): Set beamed-stem-shorten to (1.0 0.5).
3392
3393 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3394
3395        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
3396
3397        * scm/grob-description.scm (Beam): Add concaveness.  Replace
3398        Beam::cancel_suspect_slope with Beam::check_concave.
3399  
3400        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
3401        set slope to horizontal if concaveness > Beam.concaveness.  This
3402        handles cases that kludgy cancel_suspect_slope was meant to catch
3403        very well.
3404        (cancel_suspect_slope): Remove.
3405
3406 2002-03-12 Rune Zedeler <rune@zedeler.dk>
3407
3408         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
3409         stemLeftBeamCount and stemRightBeamCount to equal 0.
3410         Fixes [c8 c4 c8]
3411       
3412 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
3413
3414         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
3415         fixed spacing for pref matter, if the next column is musical, and
3416         at the same moment.
3417
3418         * lily/note-spacing.cc (stem_dir_correction): Use correct
3419         discretionary for stem-bar spacing.
3420
3421 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
3422
3423         * VERSION: 1.5.38 released 
3424
3425         * lily/grob.cc (warning): Use cause tracking to give more
3426         meaningful errors from the backend. 
3427
3428         * lily/property-iterator.cc (check_grob): Warn if setting grob
3429         property in unknown grob. 
3430
3431         * mf/feta-toevallig.mf: brushed stems for natural sign.
3432
3433         * lily/molecule.cc (align_to): don't translate empty molecule.
3434         (this triggers a very subtle bug in time-signature.)  
3435
3436 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
3437
3438         * lily/spring.cc: remove file.
3439
3440         * input/regression/spacing-stem-bar.ly: new file
3441
3442         * lily/score.cc (run_translator): resurrect point-and-click
3443
3444         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
3445         sarabande layout
3446
3447         * lily/spacing-spanner.cc (find_shortest): Shortest note for
3448         spacing is now globally determined, using the most common shortest
3449         note. Notes that are shorter are spaced geometrically, and with
3450         expand hints. This makes spacing more even, and measures that have
3451         very short notes won't be that stretched out.  
3452
3453         * mf/feta-klef.mf: F-clef fixes, documentation on the
3454         shape. (WARNING: font changed.)
3455
3456 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
3457
3458         * lily/simple-spacer.cc (add_columns): support for infinitely
3459         stiff springs.
3460  
3461         * lily/staff-spacing.cc (get_spacing_params): space after
3462         prefatory matter is fixed.
3463
3464 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
3465
3466         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
3467         barline following an upstem.
3468
3469         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
3470         function from next_notes_correction().
3471         (bar_y_positions): idem.
3472
3473 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3474
3475         * input/regression/break.ly (texidoc): bugfix: escape \ in
3476         strings.
3477
3478         * lily/staff-spacing.cc (next_notes_correction): Correct the
3479         spacing of a note following a barline.
3480
3481
3482 2002-03-04  Glen Prideaux
3483
3484         * mf/feta-solfa.mf: Shaped note heads
3485
3486 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
3487
3488         * VERSION: 1.5.37 released
3489
3490         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
3491         left-align molecule.
3492         
3493         * lily/break-align-interface.cc (do_alignment): completely
3494         rewritten. Now it does not use Align_interface anymore, but a
3495         separate routine. Like StaffSpacing, it reads space-alist from the
3496         breakable grobs.  This allows you to set spacing using
3497         
3498         \property Staff.Clef \override #'space-alist = '(....stuff....)  
3499  
3500         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
3501         to Bar_line. Move files around as well.
3502
3503         * lily/time-signature.cc (time_signature): left align time signatures. 
3504
3505         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
3506         Corrections of the glyph shape C. Comments added.
3507
3508 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
3509
3510         * lily/spacing-spanner.cc: move from third-try.cc; rename
3511         Third_spacing_spanner to Spacing_spanner.
3512
3513         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
3514         spacing stuff. Much cleaner now, and we prepare for neat spacing
3515         tricks around bar lines and such.
3516
3517         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
3518         variables with themselves. (Ouch.)
3519
3520         * lily/span-bar.cc (brew_molecule): don't try to span bars that
3521         overlap.
3522
3523 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
3524
3525         * VERSION: 1.5.36
3526
3527         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
3528         ly_dir_p
3529
3530         * lily/music.cc (ly_get_mus_property): typechecking
3531         (ly_set_mus_property): idem
3532         (ly_make_music): idem
3533         (ly_music_name): idem
3534
3535         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
3536
3537         * lily/note-spacing.cc (stem_dir_correction): correction for
3538         same stem notes as well. 
3539
3540         * lily/pitch.cc (pitch_transpose): stricter typechecking
3541
3542         * mf/parmesan*mf: magnification fixes.
3543
3544         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
3545
3546 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3547
3548         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
3549         documenting the font. (Doesn't work for parmesan at the moment)
3550
3551         * Documentation/user/appendices.itely (The Feta font): Add list of
3552         Feta font symbols with names.
3553
3554         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
3555         automatically
3556
3557 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
3558
3559         * lily/translator-group.cc (ly_set_trans_property): typechecking
3560         (ly_get_trans_property): typechecking.
3561
3562         * lily/font-metric.cc (ly_text_dimension): typechecking 
3563         (ly_find_glyph_by_name): idem.
3564
3565         * scm/bass-figure.scm (brew-complete-figure): support for
3566         bracketed numbers.
3567         
3568         * lily/grob.cc (ly_get_paper_var): new function
3569
3570 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3571
3572         * VERSION (PATCH_LEVEL): 1.5.35 released.
3573
3574         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
3575         (bracket): New function.
3576
3577         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
3578         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
3579
3580         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
3581         bugfix.
3582
3583         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
3584         typecheck bugfix. 
3585
3586         * lily/grob.cc (ly_get_grob_property): be anal about types.
3587         (ly_set_grob_property): idem
3588
3589         * lily/figured-bass-engraver.cc (process_music): move molecule
3590         building completely to Scheme
3591
3592         * lily/include/musical-request.hh (class Bass_figure_req): Add
3593         class. 
3594
3595         * lily/parser.yy (bass_figure): add support for space figure.
3596
3597         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
3598
3599         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
3600
3601         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
3602         (ly_align_to_x): new function ly-align-to!
3603
3604         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
3605         function ly-get-font
3606
3607         * mf/feta-nummer.mf: include normal-space dimension. 
3608
3609         * lily/collision.cc (check_meshing_chords): don't merge collisions
3610         with whole notes.
3611         
3612         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
3613         glyph is string.
3614
3615 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
3616
3617         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
3618
3619 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
3620
3621         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
3622         font changed)
3623
3624         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
3625         than mensural chars
3626
3627         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
3628         scm/grob-description.scm: added mensural fermata symbol
3629
3630 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3631
3632         * VERSION: 1.5.34 released.
3633
3634         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
3635
3636         * lily/staff-symbol-referencer.cc (callback): assume that
3637         staff-position is unset in general.
3638
3639         * input/regression/rest-pitch.ly: new file.
3640
3641         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
3642         a4\rest
3643
3644 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3645
3646         * lily/scm-option.cc (set_lily_option): add internal-type-checks
3647         as Scheme option. Run regression test by default with
3648         internal-type-checking.
3649
3650         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
3651
3652         * lily/lily-guile.cc (type_check_assignment): changed functions.
3653
3654         * scm/*description*.scm: be anal about typechecks. Some changes
3655         for internal variable names.
3656
3657 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3658
3659         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
3660
3661 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
3662
3663         * VERSION: 1.5.33 released.
3664
3665         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
3666         flare_path everywhere (c-clef, numbers).        
3667
3668         * lily/bar-number-engraver.cc (process_music): also print bar
3669         number if measure starts with grace note.       
3670
3671         * input/regression/grace-bar-number.ly: new test.
3672
3673 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
3674
3675         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
3676         rest as well.
3677
3678         * scm/music-functions.scm (voicify-music):  split chords into
3679         different voices automatically.
3680
3681         * lily/music.cc (ly_music_list_p): new function
3682
3683         * lily/music-sequence.cc (do_relative_octave): robustification
3684
3685         * scm/music-functions.scm: many utility functions 
3686
3687         * lily/music.cc (ly_set_mus_property): add type checks to the
3688         Scheme property assignment.
3689
3690         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
3691         dvips fixes
3692
3693         * mf/lilypond.map: .map file from Mats' page. 
3694
3695 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
3696
3697         * Some more parmesan related fixes;
3698
3699         * Custos: varying shape (in particular, stem length), depending on the
3700           vertical position of the custos (on staffline / between stafflines);
3701
3702         * Custos: added grob property "neutral-direction" (same semantics as
3703           with stem); introduced new grob property "neutral-position";
3704
3705         * Time-signature: print a warning when resorting to default layout.
3706
3707 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3708
3709         * lily/translator-group.cc (add_fresh_simple_translator): remove
3710         function; initialize() is called through
3711         Translator_group::initialize().
3712
3713         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
3714         for the neighbors of a loose column.
3715
3716         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
3717         position loose columns so that they don't collide.
3718
3719 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3720
3721         * VERSION: 1.5.32 released.
3722
3723         * scm/font.scm: remove font-name symbol.
3724
3725         * mf/GNUmakefile: use pktrace for making PFAs
3726
3727         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
3728
3729         * lily/rest-collision.cc (do_shift): read direction field from
3730         rest-column in case of note-rest collision. This should fix some
3731         problems with rest collisions.
3732
3733 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3734
3735         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
3736         property.
3737
3738         * lily/note-head.cc (brew_ez_molecule): Remove note-character
3739         property. Read pitch directly from #'cause.
3740
3741         * mf/feta-puntje.mf: bugfix
3742
3743 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
3744         
3745         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
3746
3747 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
3748
3749         * Documentation/windows/compiling.texi: Update.
3750
3751         * Documentation/index.texi: Add link to orphaned compiling for
3752         windows page.
3753
3754         * Documentation/footer.html.in: Comment fix.
3755
3756         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
3757
3758 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
3759         
3760         * VERSION: 1.5.31 released
3761
3762         * lily/new-spacing-spanner.cc: remove file.
3763
3764         * lily/third-try.cc (do_measure): only take spacings into account
3765         if they pertain to the column pair under consideration. This fixes
3766         spacing bug when mixing eighths triplets and normal eighths.
3767
3768         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
3769         lines don't take up space anymore. Document why in note-head.cc
3770         comment.
3771
3772 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
3773
3774         * lily/font-interface.cc (get_font): reinstate
3775         #'font-magnification. See input/regression/font-magnification.ly
3776         (get_font): Change the definition of  #'font-name grob property.
3777
3778         * lily/grob.cc (get_uncached_molecule): output origin for grobs
3779         that have a #'cause field.
3780
3781 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3782
3783         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
3784
3785         * mf/GNUmakefile:  remove metapost stuff
3786
3787         * stepmake/aclocal.m4: remove metapost detection stuff.
3788
3789 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3790
3791         * mf/GNUmakefile (FET_FILES): 
3792         (FONT_FILES): Include parmesan.
3793
3794         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
3795         iso regex, regsub
3796
3797         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
3798
3799         * Documentation/user/refman.itely (Paper size): Quote braces.
3800
3801 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3802
3803         * stepmake/aclocal.m4: fixed bison version check to be more
3804         robust.
3805
3806         * lily/stem.cc (position_noteheads): fix for cluster chords.
3807
3808         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
3809
3810         * python 2.2 support.
3811
3812 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
3813
3814         * VERSION: 1.5.30 released
3815
3816         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
3817
3818         * Documentation/user/refman.itely (Dynamics): add a note about
3819         DynamicLineSpanner.
3820
3821         * scm/grob-description.scm: add a 'translator-type?  object
3822         property, so that \property Foo.Bar =\turnOff doesn't cause
3823         type check warning.
3824
3825         * lily/translator-group.cc (add_fresh_group_translator): make
3826         new add-translator functions to make distinction between fresh and
3827         used group-translators. Fixes problem with scripts on auto-changing voice 
3828
3829         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
3830         add to Score_performer. Fixes bar checks in MIDI
3831
3832         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
3833         heads. Fixes many quirks with ties.
3834
3835         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
3836         in the grob property #'cause, instead of using Grob_info.
3837
3838         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
3839         staff context, fixing dot alignment on collisions.
3840
3841         * lily/beam-engraver.cc (try_music): remove can't find beam start
3842         warning, so that skipTypesetting won't complain.
3843
3844 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3845
3846         * Documentation/user/refman.itely (Paper size): Documentation fix,
3847         papersize
3848
3849         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
3850
3851         * scm/grob-description.scm: \breathe: Use feta font comma by default
3852
3853 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3854
3855         * input/template/piano-dynamics.ly (pedal): Simplified
3856
3857 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
3858
3859         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
3860
3861 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
3862
3863         * lilypond-mode.el (LilyPond-command-query): ignore case.
3864
3865 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3866
3867         * VERSION: 1.5.29 released
3868
3869         * all files: change 2001 to 2002 in headers globally
3870
3871         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
3872         cheese") font. WARNING: fonts changed.
3873         
3874 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
3875
3876         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
3877         
3878         * mf/*.mf: Added some more vaticana/solesmes style font symbols
3879         
3880         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
3881
3882         * mf/*.mf: Fixed a few typos in various .mf files
3883
3884 2002-01-17 Rune Zedeler <rune@zedeler.dk>
3885         
3886         * mf/: added macro soft_penstroke
3887         
3888                softened some glyphs
3889                redrawn triangular noteheads
3890                redrawn tab-clef
3891                added classical quarter rest
3892         
3893         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
3894  
3895         * lily/bar.cc: Bugfix: repeat dots when even number of staff
3896         lines and staff_space>=2
3897  
3898         * lily/rest.cc: Use default rests when current style glyphs not
3899         found - this allows
3900         \property Staff.Rest \override #'style = #'classical
3901
3902 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3903
3904         * input/bugs/first-tie.ly: New file.
3905
3906         * input/bugs/spacing-clash.ly: New file.
3907
3908 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
3909
3910         * po: regenerate.
3911
3912 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
3913
3914         * lilypond-indent.el: New file providing indentation for
3915         parenthesised blocks of lilypond code in Emacs
3916         
3917         * lilypond-font-lock.el: Changes to the syntax table to facilitate
3918         indentation and handle block comments properly. Distinguish
3919         accents from close-brackets in fontification.
3920
3921         * lilypond-mode.el: LilyPond-indent-command set appropriately.
3922
3923 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
3924
3925         * Documentation/windows/installing.texi: 
3926         * Documentation/windows/compiling.texi: Include from 1.4.10.
3927
3928         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
3929
3930         * input/bugs/first-midi-tie.ly: New file.
3931
3932 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
3933         
3934         * VERSION: 1.5.28 released
3935
3936         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
3937         illicit beams on [c4 c4] etc.
3938
3939         * lily/bar-check-iterator.cc (Bar_check_iterator): new
3940         file. Make separate iterator for Bar_checks. Bar_check now happen
3941         outside engravers, meaning that you can use them with
3942         skipTypesetting. Associated changes in other files.
3943         
3944         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
3945         function
3946         
3947         * lily/spacing-spanner.cc (stem_dir_correction): removed function
3948
3949         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
3950
3951         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
3952
3953         * lily/stem.cc (set_spacing_hints): removed function
3954
3955         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
3956         correction for spacing; now take vertical extents of the stem into
3957         account.  
3958
3959         * lily/third-try.cc: More hacking to get spacing working.
3960
3961         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
3962         sits at staff level and creates note spacing objects. Scrap it
3963         again, and document why.
3964
3965         * lily/include/group-interface.hh: rename functions. 
3966
3967 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3968
3969         * stepmake/stepmake/c++-rules.make:
3970         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
3971
3972 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3973
3974         * make/lilypond-vars.make: 
3975         * scripts/ly2dvi.py (setup_environment): 
3976         * scripts/lilypond-book.py (setup_environment): Also set tex
3977         memory options.
3978
3979 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3980
3981         * VERSION: 1.5.27 released.
3982
3983         * Documentation/user/refman.itely (Bar numbers): added bar number
3984         documentation.
3985
3986         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
3987         again.
3988
3989 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
3990
3991         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
3992         spread the last few lines all over the last page of a score.
3993
3994 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
3995
3996         * lily/third-try.cc: 3rd try at revising spacing
3997         engine. Not yet finished.
3998
3999         * lily/paper-column.cc (brew_molecule): print debugging marks on a
4000         paper-column.
4001
4002         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
4003         collecting past note heads.
4004
4005         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
4006         stuff.
4007
4008         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
4009         class. Keep a queue of grobs that are still playing in busyGrobs. 
4010
4011         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
4012         function. Use busyGrobs to detect playing notes.
4013         
4014 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4015  
4016         * Documentation/topdocs/INSTALL.texi: Added note about broken
4017         python-2.1.  Updated note for Debian's broken (well, broken for
4018         our use anyway) tex configuration.
4019         
4020         * scripts/lilypond-book.py (re_dict): python2.2 fix.
4021         
4022         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
4023         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
4024         
4025         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
4026         (But left margin of png's still misses a few pixels.  Arg.)
4027         
4028 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
4029
4030         * lilypond-mode.el (LilyPond-command-next-midi): Make
4031         possible to kill midi-process (using "C-c C-m").
4032
4033 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
4034
4035         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
4036         Convert strings with dimensions to numbers.
4037
4038         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
4039         as found in stavesFound. 
4040
4041         * lily/bar-number-engraver.cc: remove staff administration. 
4042
4043         * lily/mark-engraver.cc (acknowledge_grob): remove staff
4044         administration. This breaks support for invisible-staff.
4045
4046         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
4047         symbols into stavesFound.
4048
4049         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
4050         grobs, and put them into columns.
4051
4052         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
4053         Engraver_group_engraver as a potential candidate for ack'ing grobs.
4054
4055 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
4056
4057         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
4058         midi section in the Emacs-mode, so it is possible to play certain
4059         score in a multiscore lilypond-file.
4060          
4061 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
4062         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
4063         (FIXME: not accessible from guile)
4064         
4065         * lily/accidental-engraver.cc: rewrote accidental-routines to get
4066         better support for Kurt Stone's suggestions.
4067         Removed properties: noResetKey, forgetAccidentals, autoReminders,
4068                             lazyKeySignature.
4069         Changed property:   localKeySignature.
4070         Added properties:   extraNatural, autoAccidentals,
4071                             autoCautionaries.
4072
4073         (BUGFIX: broken-tie-support destroyed in 1.5.16)
4074         
4075         * ly/property-init.ly: added commands
4076         \defaultAccidentals \modernAccidentals \modernCautionaries
4077         \noResetKey \forgetAccidentals
4078
4079         * ly/engraver-init.ly: Correct initialization of new accidentals.
4080         
4081         * scm/translator-property-description.scm: The new properties
4082         added.
4083         
4084         * input/: Some examples added, some changed.
4085         
4086         * Documentation/regression-test.tely: Added quick test of new
4087         accidentals.
4088
4089 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
4090
4091         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
4092         header not found
4093
4094 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
4095
4096         * lily/beam.cc (before_line_breaking): Make beams  without stems
4097         or with only one stem disappear.
4098
4099 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
4100
4101         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
4102         files to have standardised HTML bibliography output. Update build
4103         docs to reflect this.
4104
4105         * lily/include/simple-spacer.hh (struct Simple_spacer): add
4106         active_count_, so that we don't have to look for active springs
4107         anymore.
4108
4109         * scm/interface-description.scm,scm/grob-property-description.scm:
4110         Add 'penalty
4111
4112         * lily/simple-spacer.cc (solve): Handle forced line breaks
4113         here. Fixes problems when combining linebreaks with non-fitting
4114         line configurations
4115
4116 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4117
4118         * 1.4.9.jcn3 forward ports.
4119         
4120         * Really included .cvsignore.
4121
4122         * Included Han-Wen's uu1 windows fixes.
4123
4124         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
4125
4126         * Added Cygwin setup.hint
4127
4128         * Removed tex, python wrappers and postinstalls to go with Cywgin's
4129         tetex/texmf, python installations.
4130
4131         * Updated cygwin installer.
4132
4133         * ly2dvi: Don't accept filenames with spaces (+ fix).
4134
4135 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
4136
4137         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
4138
4139         * lily/translator-def.cc: Remove manual symbol caching.
4140
4141         * lily/script-column.cc (before_line_breaking): robustness check:
4142         don't crash if no direction set.
4143
4144         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
4145
4146         * scripts/pmx2ly.py (Parser.parse_header): more generic header
4147         parsing.
4148
4149
4150 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
4151
4152         * lily/note-head.cc (head_extent): added to compute width without
4153         ledger lines. By default, ledger lines take up width now.
4154
4155         * input/regression/fingering.ly: demonstrate auto fingering.
4156         Horizontal placement is still buggy. 
4157         
4158         * lily/fingering-engraver.cc (class Fingering_engraver):
4159         added. Provides support for horizontal fingering scripts
4160
4161         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
4162
4163         * lily/side-position-interface.cc (add_staff_support): add staff
4164         only for Y-axis side positions.
4165
4166         * lily/parser.yy (request_chord): Fix mem leak.
4167
4168         * lily/musical-request.cc (transpose): moved to Music::transpose()
4169
4170         * lily/include/grob-info.hh: Change music pointer to SCM, so we
4171         can store grobs as grob-creation cause as well.
4172
4173         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
4174         handle when adding. Use precomputed symbols throughout lily.
4175         
4176         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
4177         track of spacing issues.
4178
4179         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
4180         to keep track of staff spacing
4181
4182 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
4183
4184         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
4185           code clean from conditionals and have a concentrated sets of
4186           compatibility fixes for old guile versions.
4187
4188         * Fixes for guile 1.4, including embedded ps.
4189
4190 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
4191
4192         * lily/stanza-number-engraver.cc (process_music): allow pairs as
4193         well for markup texts.
4194
4195         * lily/musical-request.cc (length_mom): kludge for null pointer.
4196
4197         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
4198
4199         * scm/lily.scm (sign): bugfix
4200
4201         * CHANGES: Change log instated.
4202
4203         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.
4204