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