]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
Merge branch 'cvs-head' of git+ssh://repo.or.cz/srv/git/lilypond
[lilypond.git] / ChangeLog
1 2006-10-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2
3         * Hand-force git changes to commit.  Where is my changelog?
4
5 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
6
7         * buildscripts/git-update-changelog.py (main): write .msg and cvs
8         command.
9
10         * scm/define-grobs.scm: 
11         separation-items have width
12         
13         * VERSION: 
14         bump version
15         
16         * .gitignore: 
17         * Documentation/topdocs/NEWS.tely: 
18         * lily/separating-group-spanner.cc: 
19         * lily/slur-engraver.cc: 
20         * lily/slur-scoring.cc: 
21         * scm/define-grobs.scm: 
22         * input/regression/slur-clef.ly:
23         add breakableSeparationItem to extra encompass for slurs. This
24         fixes slur/clef slur/key collisions etc. Should fix #49
25         
26         * lily/include/slur-scoring.hh: 
27         * lily/slur-scoring.cc: 
28         Use X of separation item as slur start. Fixes #120
29
30 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
31
32         * buildscripts/git-update-changelog.py (changelog_body): don't
33         write committishes.
34
35         * lily/grob.cc: add avoid-slur
36
37 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
38
39         * emacsclient.patch: 
40         * server.el.patch: 
41         move server/emacsclient to elisp/
42
43         * buildscripts/git-update-changelog.py (Commit.note_del_file):
44         apply patches too
45
46         * elisp/server.el.patch: 
47         move emacs patches.
48
49         * elisp/emacsclient.patch: 
50         emacsclient too.
51
52         * buildscripts/git-update-changelog.py: 
53         ignore ChangeLog
54
55         * .gitignore: 
56         update
57
58         * ChangeLog: 
59         * buildscripts/git-update-changelog.py: 
60         script to update ChangeLog with Git messages.
61
62         * lily/beam-engraver.cc: 
63         * input/regression/rest-pitched-beam.ly: 
64         don't set callback if staff-position set. Fixes #126.
65
66         * lily/bar-number-engraver.cc: 
67         * lily/beam.cc: 
68         * lily/fingering-engraver.cc: 
69         * lily/grob-property.cc: 
70         * lily/grob.cc: 
71         * lily/include/grob.hh: 
72         * lily/include/lily-guile-macros.hh: 
73         * lily/mark-engraver.cc: 
74         * lily/melody-engraver.cc: 
75         * lily/script-column.cc: 
76         * lily/tie-formatting-problem.cc: 
77         * lily/tie.cc: 
78         internal_get_property_data() using ly_symbol2scm()
79
80         * stepmake/stepmake/generic-targets.make: 
81         create .gitignore in outdir.
82
83         * .gitignore: 
84         new file.
85
86 2006-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
87
88         * input/test/vertical-extent.ly: 
89         * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
90
91 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
92
93         * stepmake/bin/add-html-footer.py (compose): remove setgcos
94
95 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
96
97         * GNUmakefile.in (install-help2man): install-help2man target. 
98
99 2006-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
100
101         * SConstruct (configure): Do not check for /bin/sh.
102
103 2006-10-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
104
105         * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
106         files.
107
108         * Documentation/topdocs/NEWS.tely (Top): add FretBoards example. 
109
110         * input/regression/fret-boards.ly: new file.
111
112         * po/de.po: new po courtesy translation team.
113
114         * scripts/lilypond-book.py (get_option_parser): add newline to doc
115         string.
116
117 2006-10-27  Mats Bengtsson  <mabe@drongo.s3.kth.se>
118
119         * ly/gregorian-init.ly (neumeDemoLayout): update
120         minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent 
121
122         * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
123         obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
124
125 2006-10-27  Erlend Aasland  <erlenda@gmail.com>
126
127         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
128         Yet another build fix.
129
130 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
131
132         * SConstruct (lilypondprefix): use sorted() for list_sort()
133         indent 4
134
135 2006-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
136
137         * flower/SConscript: Unit test rules.
138
139         * flower/test-std.cc: Compile fix.
140
141 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
142
143         * python/midi.c (pymidi_parse_track): warning fixes.
144
145         * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
146         include dot-column.hh
147
148 2006-10-26  Graham Percival  <gpermus@gmail.com>
149
150         * Documentation/user/{basic-, global}: minor changes from mailist.
151
152 2006-10-26  Erlend Aasland  <erlenda@gmail.com>
153
154         * scm/define-grobs.scm: trivial beautification
155
156         * lily/tie-performer.cc: no need to #include "pqueue.hh"
157
158         * lily/source-file.cc: put multibyte var inside #if clause
159
160         * scm/define-grob-interfaces.scm:
161         * scm/define-grob-properties.scm:
162         Build fix (string-fret-finger-combinations)
163
164         * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
165         lexer-gcc-3.1.sh
166
167         * Documentation/user/lilypond-book.itely: Build fix.
168
169 2006-10-26  Joe Neeman  <joeneeman@gmail.com>
170
171         * lily/system.cc (get_paper_system): 
172         * lily/paper-book.cc (systems): 
173         move most of the backwards compatibility stuff into
174         Paper_book::systems
175
176         * Documentation/topdocs/NEWS.tely: add 2 entries for the
177         page breaking stuff
178
179         * Documentation/user/page.itely: remove time-scaled-music
180         bug for the Page_turn_engraver
181
182         * lily/paper-book.cc (set_system_penalty): backwards
183         compatibility (breakbefore) for the old page breaker
184
185 2006-10-25  Graham Percival  <gpermus@gmail.com>
186
187         * Diocumentation/user/instrument-notation.itely: added more
188         info about stanzas; thanks Geoff!
189
190         * Documentation/user/ {basic, advanced}: small fixes from
191         mailist.
192
193         * THANKS: add some bug reporters.
194
195 2006-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
196
197         * scm/define-context-properties.scm (all-user-translation-properties):
198         noteToFretFunction: Add.
199
200         * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
201         fret-diagram-interface (WAS: fret-board-interface).  Fixes build.
202
203 2006-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
204
205         * flower/file-name.cc (dos_to_posix): Help std::string.copy with
206         trailing zero.
207
208         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
209         Remove bashism in delete.
210
211 2006-10-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
214
215         * scm/translation-functions.scm (determine-frets-mf): flatten let*
216
217         * scm/define-context-properties.scm
218         (all-user-translation-properties): add maximumFretStretch property.
219
220         * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
221
222         * lily/source-file.cc (get_counts): use multibyte variable.
223
224         * scm/translation-functions.scm (determine-frets-mf): new
225         function: compute fret numbers. 
226
227         * scm/output-lib.scm (string-frets->description) new function.
228         (fret-board::calc-stencil): new function
229
230         * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
231
232         * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob. 
233
234         * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
235
236         * lily/tab-note-heads-engraver.cc: cleanups.
237
238         * lily/fretboard-engraver.cc: new file
239
240         * ly/engraver-init.ly: add FretBoards context
241
242 2006-10-24  Joe Neeman  <joeneeman@gmail.com>
243
244         * lily/grob.cc (pure_relative_y_coordinate)
245         (pure_height): use the new call_pure_function stuff
246
247         * lily/grob-property.cc (call_pure_function): wrapper for the scheme
248         call-pure-function
249
250         * lily/side-position-interface.cc (pure_y_aligned_side): add an
251         optarg
252
253         * lily/simple-closure.cc (ly_eval_simple_closure): make
254         simple-closure evaluatable from scheme
255         (evaluate_with_simple_closure): make simple-closures pure-
256         evaluatable
257
258         * lily/slur.cc (pure_outside_slur_callback): new function
259
260         * ly/paper-defaults.ly: change default blank-page-force to 2 (this
261         fits in with previous changes that made the page forces much
262         smaller)
263
264         * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
265         and pure-Y-extent into this new function.
266         (pure-conversions-alist): add outside-slur-callback
267
268 2006-10-24  Mats Bengtsson  <mabe@drongo.s3.kth.se>
269
270         * Documentation/user/advanced-notation.itely (Instrument names):
271         Remove obsolete bug workaround for instrument names on piano
272         staff. 
273
274 2006-10-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
275
276         * Documentation/user/lilypond-book.itely (Integrating DocBook and
277         music): patch by Bertalan Fodor for docbook.
278
279         * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
280         of $(LILYPOND). Prevents lilypond run for .txt files.
281
282         * INSTALL.txt: gitness.
283
284         * .cvsignore: update to force gitness. 
285
286 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
287
288         * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
289         detect suicide in nested tuplets.
290
291 2006-10-23  Werner Lemberg  <wl@gnu.org>
292
293         * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
294         typo in argument to FT_Get_X11_Font_Format.
295
296 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
297
298         * stepmake/stepmake/po-vars.make: more gitness.
299
300         * flower/polynomial.cc (check_sol): no empty if bodies. 
301
302 =======
303 2006-10-30  Jan Nieuwenhuizen  <janneke@gnu.org>
304
305         * stepmake/stepmake/po-vars.make: Resolve.
306
307 2006-10-29  Jan Nieuwenhuizen  <janneke@gnu.org>
308
309         * stepmake/stepmake/po-vars.make: test change for GIT gateway.
310
311 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
312
313         * buildscripts/git-update-changelog.py (main): write .msg and cvs command.
314
315         * scm/define-grobs.scm: 
316         separation-items have width
317         
318         * VERSION: 
319         bump version
320         
321         * .gitignore: 
322         * Documentation/topdocs/NEWS.tely: 
323         * lily/separating-group-spanner.cc: 
324         * lily/slur-engraver.cc: 
325         * lily/slur-scoring.cc: 
326         * scm/define-grobs.scm: 
327         * input/regression/slur-clef.ly:
328         add breakableSeparationItem to extra encompass for slurs. This
329         fixes slur/clef slur/key collisions etc. Should fix #49
330         
331         * lily/include/slur-scoring.hh: 
332         * lily/slur-scoring.cc: 
333         Use X of separation item as slur start. Fixes #120
334
335 2006-10-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
336
337         * buildscripts/git-update-changelog.py (changelog_body): don't
338         write committishes.
339
340         * lily/grob.cc: add avoid-slur
341
342 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
343
344         * emacsclient.patch: 
345         * server.el.patch: 
346         move server/emacsclient to elisp/
347
348         * buildscripts/git-update-changelog.py (Commit.note_del_file):
349         apply patches too
350
351         * elisp/server.el.patch: 
352         move emacs patches.
353
354         * elisp/emacsclient.patch: 
355         emacsclient too.
356
357         * buildscripts/git-update-changelog.py: 
358         ignore ChangeLog
359
360         * .gitignore: 
361         update
362
363         * ChangeLog: 
364         * buildscripts/git-update-changelog.py: 
365         script to update ChangeLog with Git messages.
366
367         * lily/beam-engraver.cc: 
368         * input/regression/rest-pitched-beam.ly: 
369         don't set callback if staff-position set. Fixes #126.
370
371         * lily/bar-number-engraver.cc: 
372         * lily/beam.cc: 
373         * lily/fingering-engraver.cc: 
374         * lily/grob-property.cc: 
375         * lily/grob.cc: 
376         * lily/include/grob.hh: 
377         * lily/include/lily-guile-macros.hh: 
378         * lily/mark-engraver.cc: 
379         * lily/melody-engraver.cc: 
380         * lily/script-column.cc: 
381         * lily/tie-formatting-problem.cc: 
382         * lily/tie.cc: 
383         internal_get_property_data() using ly_symbol2scm()
384
385         * stepmake/stepmake/generic-targets.make: 
386         create .gitignore in outdir.
387
388         * .gitignore: 
389         new file.
390
391 2006-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
392
393         * input/test/vertical-extent.ly: 
394         * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
395
396 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
397
398         * stepmake/bin/add-html-footer.py (compose): remove setgcos
399
400 2006-10-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
401
402         * GNUmakefile.in (install-help2man): install-help2man target. 
403
404 2006-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
405
406         * SConstruct (configure): Do not check for /bin/sh.
407
408 2006-10-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
409
410         * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
411         files.
412
413         * Documentation/topdocs/NEWS.tely (Top): add FretBoards example. 
414
415         * input/regression/fret-boards.ly: new file.
416
417         * po/de.po: new po courtesy translation team.
418
419         * scripts/lilypond-book.py (get_option_parser): add newline to doc
420         string.
421
422 2006-10-27  Mats Bengtsson  <mabe@drongo.s3.kth.se>
423
424         * ly/gregorian-init.ly (neumeDemoLayout): update
425         minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent 
426
427         * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
428         obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
429
430 2006-10-27  Erlend Aasland  <erlenda@gmail.com>
431
432         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
433         Yet another build fix.
434
435 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
436
437         * SConstruct (lilypondprefix): use sorted() for list_sort()
438         indent 4
439
440 2006-10-26  Jan Nieuwenhuizen  <janneke@gnu.org>
441
442         * flower/SConscript: Unit test rules.
443
444         * flower/test-std.cc: Compile fix.
445
446 2006-10-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
447
448         * python/midi.c (pymidi_parse_track): warning fixes.
449
450         * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
451         include dot-column.hh
452
453 2006-10-26  Graham Percival  <gpermus@gmail.com>
454
455         * Documentation/user/{basic-, global}: minor changes from mailist.
456
457 2006-10-26  Erlend Aasland  <erlenda@gmail.com>
458
459         * scm/define-grobs.scm: trivial beautification
460
461         * lily/tie-performer.cc: no need to #include "pqueue.hh"
462
463         * lily/source-file.cc: put multibyte var inside #if clause
464
465         * scm/define-grob-interfaces.scm:
466         * scm/define-grob-properties.scm:
467         Build fix (string-fret-finger-combinations)
468
469         * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
470         lexer-gcc-3.1.sh
471
472         * Documentation/user/lilypond-book.itely: Build fix.
473
474 2006-10-26  Joe Neeman  <joeneeman@gmail.com>
475
476         * lily/system.cc (get_paper_system): 
477         * lily/paper-book.cc (systems): 
478         move most of the backwards compatibility stuff into
479         Paper_book::systems
480
481         * Documentation/topdocs/NEWS.tely: add 2 entries for the
482         page breaking stuff
483
484         * Documentation/user/page.itely: remove time-scaled-music
485         bug for the Page_turn_engraver
486
487         * lily/paper-book.cc (set_system_penalty): backwards
488         compatibility (breakbefore) for the old page breaker
489
490 2006-10-25  Graham Percival  <gpermus@gmail.com>
491
492         * Diocumentation/user/instrument-notation.itely: added more
493         info about stanzas; thanks Geoff!
494
495         * Documentation/user/ {basic, advanced}: small fixes from
496         mailist.
497
498         * THANKS: add some bug reporters.
499
500 2006-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
501
502         * scm/define-context-properties.scm (all-user-translation-properties):
503         noteToFretFunction: Add.
504
505         * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
506         fret-diagram-interface (WAS: fret-board-interface).  Fixes build.
507
508 2006-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
509
510         * flower/file-name.cc (dos_to_posix): Help std::string.copy with
511         trailing zero.
512
513         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
514         Remove bashism in delete.
515
516 2006-10-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
517
518         * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
519
520         * scm/translation-functions.scm (determine-frets-mf): flatten let*
521
522         * scm/define-context-properties.scm
523         (all-user-translation-properties): add maximumFretStretch property.
524
525         * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
526
527         * lily/source-file.cc (get_counts): use multibyte variable.
528
529         * scm/translation-functions.scm (determine-frets-mf): new
530         function: compute fret numbers. 
531
532         * scm/output-lib.scm (string-frets->description) new function.
533         (fret-board::calc-stencil): new function
534
535         * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
536
537         * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob. 
538
539         * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
540
541         * lily/tab-note-heads-engraver.cc: cleanups.
542
543         * lily/fretboard-engraver.cc: new file
544
545         * ly/engraver-init.ly: add FretBoards context
546
547 2006-10-24  Joe Neeman  <joeneeman@gmail.com>
548
549         * lily/grob.cc (pure_relative_y_coordinate)
550         (pure_height): use the new call_pure_function stuff
551
552         * lily/grob-property.cc (call_pure_function): wrapper for the scheme
553         call-pure-function
554
555         * lily/side-position-interface.cc (pure_y_aligned_side): add an
556         optarg
557
558         * lily/simple-closure.cc (ly_eval_simple_closure): make
559         simple-closure evaluatable from scheme
560         (evaluate_with_simple_closure): make simple-closures pure-
561         evaluatable
562
563         * lily/slur.cc (pure_outside_slur_callback): new function
564
565         * ly/paper-defaults.ly: change default blank-page-force to 2 (this
566         fits in with previous changes that made the page forces much
567         smaller)
568
569         * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
570         and pure-Y-extent into this new function.
571         (pure-conversions-alist): add outside-slur-callback
572
573 2006-10-24  Mats Bengtsson  <mabe@drongo.s3.kth.se>
574
575         * Documentation/user/advanced-notation.itely (Instrument names):
576         Remove obsolete bug workaround for instrument names on piano
577         staff. 
578
579 2006-10-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
580
581         * Documentation/user/lilypond-book.itely (Integrating DocBook and
582         music): patch by Bertalan Fodor for docbook.
583
584         * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
585         of $(LILYPOND). Prevents lilypond run for .txt files.
586
587         * INSTALL.txt: gitness.
588
589         * .cvsignore: update to force gitness. 
590
591 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
592
593         * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
594         detect suicide in nested tuplets.
595
596 2006-10-23  Werner Lemberg  <wl@gnu.org>
597
598         * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
599         typo in argument to FT_Get_X11_Font_Format.
600
601 2006-10-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
602
603         * stepmake/stepmake/po-vars.make: more gitness.
604
605         * flower/polynomial.cc (check_sol): no empty if bodies. 
606
607 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
608
609         * stepmake/stepmake/po-vars.make: test change for GIT gateway.
610
611 2006-10-22  Jürgen Reuter  <reuter@ipd.uka.de>
612
613         * Documentation/user/examples.itely (Transcription of mensural
614         music): Added more comments in .ly source.  Suggest to remove
615         Forbid_line_break_engraver to allow line breaking at all bars.
616
617         * Documentation/user/instrument-notation.itely (Ancient
618         articulations): Updated @refbugs regarding episem.
619
620         * Documentation/user/instrument-notation.itely (Gregorian square
621         neumes ligatures): Added \augmentum dots.  Updated @refbugs
622         regarding \augmentum.
623
624         * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
625
626         * input/test/ligature-vaticana.ly: Added \augmentum dots.  Updated
627         comment.
628
629         * lily/vaticana-ligature-engraver.cc: Added TODO comment for
630         \augmentum dots.
631
632         * ly/gregorian-init.ly: Added \augmentum macro.
633
634 2006-10-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
635
636         * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
637
638         * lily/pango-font.cc (pango_item_string_stencil): use
639         FT_Get_X11_Font_Format()
640
641 2006-10-22  John Mandereau  <john.mandereau@free.fr>
642
643         * po/fr.po: update translation.
644
645 2006-10-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
646
647         * VERSION (PATCH_LEVEL): bump version
648
649         * input/regression/horizontal-bracket-break.ly: new file.
650
651         * scm/define-grobs.scm (all-grob-descriptions): calc
652         connect-to-neighbor. 
653
654         * lily/horizontal-bracket.cc (make_bracket): support
655         connect-to-neighbor.  Fix #118
656
657         * VERSION: release 2.9.26-2
658
659         * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
660
661         * VERSION (PACKAGE_NAME): release 2.9.26
662
663         * buildscripts/output-distance.py (test_basic_compare): add
664         multipage test.
665         (FileLink.multi_img_cell): new function, glob multi-page png
666         images.
667
668 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
669
670         * po/lilypond.pot: update.
671
672         * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
673
674         * Documentation/user/global.itely (File structure): remove
675         \addqoute remark.
676
677         * lily/parser.yy (FIXME): remove ADDQUOTE
678
679         * Documentation/user/global.itely (Extracting fragments of
680         notation): new node, about clip systems.
681
682         * Documentation/user/lilypond-book.itely (Many quotes of a large
683         score): ref to clip systems.
684
685         * Documentation/user/instrument-notation.itely (Entering lyrics):
686         add note about lyric ties and required font.
687
688         * lily/open-type-font.cc (glyph_list): format errors.
689
690         * Documentation/user/programming-interface.itely (Scheme
691         procedures as properties): more doco on simple-closure and scheme
692         callbacks.
693         (Input variables and Scheme): use lilypond[verbatim], document
694         dummy statement.
695
696         * Documentation/user/page.itely (Displaying spacing): use \book
697         explicitly, so arrows show .
698         (Line breaking): add note about Forbid_line_break_engraver
699
700         * Documentation/user/tweaks.itely (Common tweaks): also set length
701         to prevent tie squeezing. 
702         (Default files): use @var{}
703
704         * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
705         (Generating LilyPond files): add FOMUS.
706
707 2006-10-20  Joe Neeman  <joeneeman@gmail.com>
708
709         * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
710         Y-offset for TextScript and Script
711
712         * lily/text-engraver.cc (make_item): 
713         * lily/script-engraver.cc (make_script_from_event):
714         remove call to Side_position_interface::set_axis since all scripts
715         now have this set by default
716
717         * lily/context.cc: 
718         * lily/prob.cc: use variables
719
720 2006-10-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
721
722         * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
723         at typography, rather analyse stream event duration. 
724
725         * Documentation/user/page.itely (Page formatting): set a6 paper
726         for system separator example.
727         
728         * lily/arpeggio.cc (Module): idem.
729
730         * lily/accidental-placement.cc: add script-priority property.
731
732         * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
733
734         * lily/ttf.cc (print_trailer): if all else fails: use
735         glyphIndexXXXX as glyph name. Fixes #117.
736
737         * lily/pango-font.cc (pango_item_string_stencil): only use cmap
738         entry if cmap contains glyph.
739         (get_index_to_charcode_map): remove from Pango_font class, use
740         global filename -> font mapping.
741         (get_glyph_index_name): new function.
742         (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
743         only for TTF. 
744
745         * scripts/lilypond-book.py (main): use -deps-box-padding=-3
746
747         * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
748         a number.
749
750         * scm/define-grob-properties.scm (all-user-grob-properties):
751         remove outdated doc. Fixes #116
752
753         * lily/completion-note-heads-engraver.cc (process_music): always
754         clone input events; otherwise we may overwrite input 'duration
755         property. Fixes #115.
756
757         * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
758         scm_t_int32 != int
759
760         * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
761         anchor. Fixes #114
762
763         * VERSION (PATCH_LEVEL): bump version.
764
765 2006-10-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
766
767         * lily/engraver.cc (internal_make_grob): use variables.
768
769         * flower/string-convert.cc (dec2double): clean-up warnings. 
770
771         * configure.in (CXXFLAGS): add -Werror.
772
773         * VERSION (PACKAGE_NAME): release 2.9.25
774
775 2006-10-18  Joe Neeman  <joeneeman@gmail.com>
776
777         * lily/simple-spacer.cc (get_line_forces): test for non-fitting
778         line even if we precede a forced break.
779
780         * lily/optimal-page-breaking.cc (try_page_spacing): square line
781         forces too. Make page-spacing weight default to 10 because the
782         changes to vertical springs decreased the page force/line force
783         proportions. Also, take the average of line force and page force
784         instead of just the sum.
785
786         * lily/constrained-breaking.cc (initialize): make the stiffness
787         of the vertical springs depend on the height of the system. This
788         prevents pages with only a few large systems from getting huge
789         forces
790
791         * Documentation/user/page.itely (Page formatting): document the
792         change in default page-spacing-weight
793
794         * lily/include/constrained-breaking.hh: initialise bottom_padding_
795
796 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
797
798         * input/typography-demo.ly (melody): remove superfluous slur.
799
800         * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
801         add piano-pedal-script-interface
802
803 2006-10-18  Bertalan Fodor  <lilypondtool@organum.hu>
804
805         * scripts/lilypond-book.py: DocBook support.
806
807 2006-10-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
808
809         * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
810         Y-alignment code.
811         (stop_translation_timestep): set bound to currentMusicalColumn if
812         not set yet. Fixes #102
813
814         * lily/piano-pedal-bracket.cc: formatting.
815
816         * input/test/engraver-one-by-one.ly (MyStaff): reformat.
817
818         * lily/piano-pedal-align-engraver.cc: new class
819         Piano_pedal_align_engraver. Handle side-positioning Y-alignment
820         for piano pedals.  
821
822 2006-10-18  Heikki Junes  <hjunes@gmail.com>
823
824         * po/fi.po: Update Finnish translation (before the next release).
825
826 2006-10-17  Joe Neeman  <joeneeman@gmail.com>
827
828         * lily/system.cc (get_paper_system): reinstate the backwards-
829         compatible page breaking for the old page breaker.
830
831 2006-10-17  Erik Sandberg  <mandolaerik@gmail.com>
832         
833         * lily/recording-group-engraver.cc: removed
834
835         * lily/context.cc, lily/translator-group.cc: Don't touch
836         Context::implementation_ if it's null
837
838 2006-10-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
839
840         * scm/paper.scm: only use left-margin if defined.
841
842         * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
843
844         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
845
846         * lily/new-fingering-engraver.cc: stringFingerOrientations ->
847         strokeFingerOrientations
848
849         * lily/script-column.cc (row_before_line_breaking): also handle
850         accidentals and arpeggios in horizontal script stacking.
851
852         * lily/script-row-engraver.cc (acknowledge_accidental_placement):
853         new function.
854
855         * input/regression/script-stack-horizontal.ly: trim.
856
857 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
858
859         * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
860         'text property too.
861
862         * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
863         'text if string argument.
864
865         * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
866
867         * scm/define-context-properties.scm
868         (all-user-translation-properties): change to strokeFingerOrientations
869
870 2006-10-16  Erik Sandberg  <mandolaerik@gmail.com>
871
872         * lily/parser.yy: remove debug output
873
874 2006-10-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
875
876         * ly/paper-defaults.ly: set left/right margin.
877
878         * scm/paper.scm (set-paper-dimensions): use left-margin and
879         right-margin for computing linewidth.
880
881         * Documentation/topdocs/NEWS.tely (Top): idem.
882
883         * input/regression/lyric-tie.ly (texidoc): use vowels for tied
884         lyrics example.
885
886         * scm/define-markup-commands.scm (tied-lyric): increase negative
887         space: space syllables tighter.
888
889         * VERSION (PATCH_LEVEL): bump version.
890
891         * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
892         Ax paper sizes. 
893
894 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
895
896         * COPYING: further clarification
897
898         * VERSION: release 2.9.24
899
900         * input/regression/script-stack-horizontal.ly: add version.
901
902         * scm/lily-library.scm (list-join): use fold-right. Fixes #112
903
904         * input/regression/lyric-tie.ly (texidoc): use different words.
905
906         * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
907
908 2006-10-15  Erik Sandberg  <mandolaerik@gmail.com>
909
910         * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
911         macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
912         
913 2006-10-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
914
915         * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4; 
916
917         * Doxyfile: remove file.
918
919         * scm/define-grob-interfaces.scm (string-finger-interface): add
920         string-finger-interface
921
922         * lily/general-scheme.cc (LY_DEFINE): move
923         ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[] 
924
925         * Documentation/topdocs/NEWS.tely (Top): add note for
926         string-finger feature.
927
928         * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
929         property.
930
931         * scm/output-lib.scm (string-finger::calc-text): read 'digit
932         instead of 'text
933
934         * input/regression/script-stack-horizontal.ly: new file.
935
936         * ly/engraver-init.ly: add Script_row_engraver.
937
938         * lily/script-column.cc (order_grobs): refactor: separate axis
939         independent code.
940         (row_before_line_breaking): new function.
941
942         * lily/script-row-engraver.cc (Script_row_engraver): new file.
943
944         * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
945
946 2006-10-14  Jürgen Reuter  <reuter@ipd.uka.de>
947
948         * Documentation/user/instrument-notation.itely: Cleanup: Remove
949         annoying skip notes from mensural ligature example.  Update
950         @refbugs for ligatures and mensural ligatures.
951
952         * lily/coherent-ligature-engraver.cc,
953         lily/include/coherent-ligature-engraver.hh,
954         lily/mensural-ligature-engraver.cc,
955         lily/vaticana-ligature-engraver.cc: Revise code for item
956         reparentizing.  There should now be less programming_error
957         messages.
958
959         * lily/mensural-ligature-engraver.cc: Improve placement of dots.
960
961         * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
962         Maintenance bugfix: Don't create empty Stencil (), but empty box
963         instead.  This fix should eliminate some programming_error
964         messages.
965
966         * ly/engraver-init.ly (MensuralStaff): Set default accidental
967         style.
968
969         * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
970         \layout block _before_ score.
971
972 2006-10-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
973
974         * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
975
976         * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
977
978 2006-10-13  Erlend Aasland  <erlenda@gmail.com>
979
980         * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
981
982 2006-10-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
983
984         * VERSION (PATCH_LEVEL): bump version.
985
986         * COPYING: clarify exception note.
987
988         * lily/main.cc: remove remark about "COPYING".
989
990         * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
991         system-count starts at 0 for each clip-region. Change name to
992         FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
993         layout block, per score.
994
995 2006-10-13  Erik Sandberg  <mandolaerik@gmail.com>
996
997         * lily/input-smob.cc: add equal_p for Input
998
999         * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
1000         function
1001
1002         * lily/parser.yy: MY_MAKE_MUSIC sets music origin
1003
1004         * lily/prob.cc: Add equal_p predicate for Prob
1005
1006         * lily/translator.cc: small cleanup
1007
1008         * scm/document-music.cc: use data from translator listener
1009         registration to generate documentation for event classes
1010
1011         * lily/*: Eliminate accept arg of ADD_TRANSLATOR
1012         
1013         * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
1014         
1015 2006-10-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1016
1017         * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
1018
1019 2006-10-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1020
1021         * Documentation/topdocs/INSTALL.texi: Thinko.
1022
1023         * .cvsignore: Update.
1024
1025         * lexer-gcc-3.1.sh: Remove.
1026
1027         * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
1028         Update anonymous cvs access.  Remove comment about gcc 3.0.4.
1029
1030 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1031
1032         * VERSION: release 2.9.23
1033
1034         * lily/paper-column-engraver.cc (stop_translation_timestep): also
1035         typecheck barnumber.
1036
1037         * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
1038
1039         * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
1040
1041         * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
1042
1043         * input/regression/clip-systems.ly (Notes): new file. 
1044
1045         * scm/lily.scm (define-scheme-options): add clip-systems option.
1046
1047         * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
1048         function
1049         (dump-stencil-as-EPS): move bbox calculation from previous
1050         dump-stencil-as-EPS
1051         (output-framework): use -dclip-systems 
1052
1053         * scm/lily-library.scm (filtered-map): new function
1054
1055         * scm/framework-ps.scm (clip-system-EPS): new function.
1056         (clip-system-EPSes): new function.
1057
1058         * lily/paper-column.cc: add rhythmic-location to interface
1059
1060         * scm/define-grob-properties.scm (all-user-grob-properties): add
1061         rhythmic-location property.
1062
1063         * scm/clip-region.scm: new file: rhythmic-location data type and
1064         system-clipped-x-extent function.
1065
1066         * ly/init.ly: use (scm clip-region)
1067
1068         * lily/paper-column-engraver.cc (stop_translation_timestep): set
1069         rhythmic-location for paper column grobs.
1070
1071         * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
1072
1073 2006-10-12  Jürgen Reuter  <reuter@ipd.uka.de>
1074
1075         * ly/engraver-init.ly: Remove obsolete comment on
1076         Bar_number_engraver.
1077
1078         * Documentation/user/instrument-notation.itely: Tune Ancient
1079         Articulations figure, such that the episem actually shows.
1080
1081         * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
1082         fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
1083
1084         * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
1085         cleanup.
1086
1087 2006-10-12  Graham Percival  <gpermus@gmail.com>
1088
1089         * Documentation/user/ {some}: minor edits that were lost somehow.
1090
1091 2006-10-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1092
1093         * VERSION (PACKAGE_NAME): bump version.
1094
1095         * input/regression/lyric-tie.ly (texidoc): new file.
1096
1097         * Documentation/topdocs/NEWS.tely (Top): add new feature.
1098
1099         * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
1100
1101         * scm/define-markup-commands.scm (tied-lyric): new function: split
1102         string along ~ and reattach with U+203F (tie character) and
1103         negative space.
1104
1105         * scm/output-lib.scm (lyric-text::calc-text): new function.
1106
1107         * lily/lyric-engraver.cc (process_music): don't set 'text.
1108
1109         * scm/output-lib.scm (string-finger::calc-text): new function
1110         (lyric-text::print): new function.
1111
1112         * lily/new-fingering-engraver.cc (add_fingering): refactor; make
1113         generic for fingering & string number. Use for string-finger. 
1114
1115         * scm/define-music-types.scm (music-descriptions): add
1116         StringFingerEvent
1117
1118         * lily/fingering-engraver.cc (listen_string_finger): new function
1119
1120         * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
1121
1122         * scm/define-context-properties.scm
1123         (all-user-translation-properties): add stringFingerOrientations
1124
1125 2006-10-11  Jürgen Reuter  <reuter@ipd.uka.de>
1126
1127         * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
1128         ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
1129
1130         * lily/dots.cc: Added style property for dots.
1131
1132         * mf/parmesan-heads.mf: Fix typo in comment.
1133
1134         * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
1135         adding longa head to feta font and removing obsolete default
1136         mapping scheme code.
1137
1138 2006-10-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1139
1140         * scm/output-lib.scm (fingering::calc-text): use origin
1141         event-property, not music-property.
1142
1143         * lily/lilypond.rc.in: spell my name correctly.
1144
1145 2006-10-10  Joe Neeman  <joeneeman@gmail.com>
1146
1147         * lily/grob.cc (pure_height): only add minimum-Y-extent if we
1148         already have a non-empty extent. Fixes estimation for Hara-kiri
1149         staves.
1150
1151 2006-10-09  Jürgen Reuter  <reuter@ipd.uka.de>
1152
1153         * ly/gregorian-init.ly: Simplify definition of \episemInitium and
1154         \episemFinis.
1155
1156         * lily/ligature-engraver.cc: Remove unused #include.
1157
1158         * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
1159         Bugfix: remove method check_for_prefix_loss(Item *) from global
1160         namespace to avoid namespace pollution.
1161
1162 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1163
1164         * VERSION: release 2.9.22
1165
1166         * ly/generate-documentation.ly: update option name.
1167
1168         * lily/dynamic-text-spanner.cc (print): revert fix.
1169
1170         * scm/define-grob-interfaces.scm
1171         (trill-pitch-accidental-interface):
1172         add trill-pitch-accidental-interface
1173
1174         * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
1175         dereference if it's really a duration.
1176
1177         * lily/figured-bass-engraver.cc (process_music): clear spanner if
1178         useBassFigureExtenders is not set.
1179         (listen_bass_figure): record as new event if
1180         useBassFigureExtenders not set. Fixes #103.
1181
1182         * scm/stencil.scm (circle-stencil): don't center stencil argument,
1183         instead: move circle. Fixes #107.
1184
1185         * scm/define-grobs.scm (all-grob-descriptions): set
1186         allow-loose-spacing for PaperColumn and
1187         NonMusicalPaperColumn. Kludge for #110.
1188
1189         * lily/spaceable-grob.cc: add allow-loose-spacing property.
1190
1191         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1192         allow-loose-spacing property.
1193
1194         * scm/define-markup-commands.scm (postscript): gsave & grestore
1195         around embedded PS. Do setlinewidth too. Fixes  #109.
1196
1197 2006-10-08  Jürgen Reuter  <reuter@ipd.uka.de>
1198
1199         * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
1200         code.  This patch fixes ligature brackets that were not at all
1201         engraved any more.
1202
1203 2006-10-08  Graham Percival  <gpermus@gmail.com>
1204
1205         * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
1206
1207         * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
1208
1209         * scm/define-context-properties.scm: clarified docs (bug 91).
1210
1211         * Documentation/user/basic-notation.itely: document volta brackets
1212         not aligning (bug 63).
1213
1214         * Documentation/user/ global.itely invoking.itely: ignore or
1215         add warnings about texstr.
1216
1217 2006-10-08  John Mandereau  <john.mandereau@free.fr>
1218
1219         * po/fr.po: update translation.
1220
1221         * po/: update msgids.
1222
1223 2006-10-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1224
1225         * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
1226
1227 2006-10-08  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1228
1229         * Documentation/user/page.itely (Two-pass vertical spacing): add
1230         documentation for two-pass spacing technique.
1231
1232 2006-10-06  Graham Percival  <gpermus@gmail.com>
1233
1234         * Documentation/user/convert-ly.txt: new file; new
1235         storage place for this file (moved from bugs/ CVS).
1236
1237 2006-10-06  Jürgen Reuter  <reuter@ipd.uka.de>
1238
1239         * lily/note-head.cc: Fixed programming_error message.
1240
1241 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1242
1243         * scm/define-grobs.scm (pure-conversion): move pure-callback
1244         further into body.
1245
1246         * scm/script.scm (default-script-alist): set avoid-slur for turn,
1247         marcato, stopped, thumb.
1248
1249 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1250
1251         * lily/completion-note-heads-engraver.cc (process_music): don't
1252         skimp on memory usage.
1253
1254         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
1255         stems too. Fixes #5
1256
1257         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
1258         parenthesis item. This fixes premature Y-extent triggering. Fixes
1259         issue #95. 
1260  
1261         * VERSION (PATCH_LEVEL): bump version.
1262
1263 2006-10-04  Graham Percival  <gpermus@gmail.com>
1264
1265         * Documentation/user/advanced-notation.itely: added
1266         info about instrument names for piano or other contexts,
1267         thanks Marcus!
1268
1269 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1270
1271         * mf/feta-bolletjes.mf (solfa_quarter_width): use
1272         solfa_base_notewidth as unit for non-DO-notes too.
1273
1274         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
1275
1276         * VERSION: release 2.9.21
1277
1278         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
1279         override.
1280
1281 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1282
1283         * python/lilylib.py (progress): Minor fix.
1284
1285 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1286
1287         * lily/note-name-engraver.cc: doc engraver.
1288
1289         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
1290
1291         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
1292
1293         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
1294         by callback.
1295
1296         * lily/stem-engraver.cc (make_stem): don't set duration-log
1297
1298         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1299         write snippet-names binary.
1300
1301         * python/lilylib.py (system): use os.system for mingw32
1302
1303         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
1304         to $PATH.
1305
1306         * scm/backend-library.scm: update email address.
1307
1308         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
1309         example.
1310
1311         * scm/define-grobs.scm (all-grob-descriptions): use callback to
1312         calc dot count.
1313
1314         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
1315         handle dot creation separately.
1316
1317         * lily/tab-note-heads-engraver.cc (process_music): idem.
1318
1319         * lily/drum-note-engraver.cc (process_music): idem.
1320
1321         * lily/note-heads-engraver.cc (process_music): idem.
1322
1323         * lily/rest-engraver.cc: don't set duration-log.
1324
1325         * scm/output-lib.scm (string-number::calc-text): new function.
1326         (note-head::calc-duration-log): new function.
1327
1328         * lily/fingering-engraver.cc (make_script): remove 'text setting.
1329
1330         * scm/output-lib.scm (fingering::calc-text): new function.
1331
1332 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1333
1334         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1335          and include-eps-font -> include-eps-fonts
1336
1337 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1338
1339         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1340
1341         * lily/timing-translator.cc: list properties.
1342         (start_translation_timestep): update internalBarNumber too.
1343
1344         * scm/define-context-properties.scm
1345         (all-user-translation-properties): add internalBarNumber.
1346
1347         * input/regression/spacing-no-note.ly: new file.
1348
1349         * buildscripts/output-distance.py (link_file): verbosity for OSError.
1350
1351         * lily/book.cc: #include cleanup.
1352
1353         * lily/include/lily-guile-macros.hh: add assert to
1354         scm_or_str2symbol(SCM).
1355
1356         * VERSION (PATCH_LEVEL): bump version.
1357
1358         * lily/spacing-spanner.cc (musical_column_spacing): handle
1359         musical->nonmusical spacing case, where there is no spacing
1360         wish. Fixes issue #61.
1361
1362         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1363         (pango_item_string_stencil): use logical rect horizontally (to
1364         preserve spaces), ink_rect vertically (for time signatures).
1365
1366         * lily/font-metric.cc (word_stencil): new interface function
1367
1368         * input/regression/utf-8-mixed-text.ly: new file.
1369
1370         * lily/percent-repeat-engraver.cc (listen_percent): remove
1371         spurious warning.
1372
1373         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1374         non-dynamic scripts. Fixes #30.
1375
1376         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1377
1378         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1379
1380         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1381         SCM_UNDEFINED for non-existent data.
1382
1383         * lily/side-position-interface.cc (general_side_position): allow
1384         optional current_offset argument for chaining, so combinations of side-position
1385         and outside slur callback don't add up.  Fixes issue #92.
1386
1387         * lily/pango-font.cc (pango_item_string_stencil): use
1388         logical_rect. This prevents spaces after words from disappearing,
1389         issue #72.
1390         
1391         * VERSION: release 2.9.20
1392
1393 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1394
1395         * scm/define-grob-properties.scm (all-user-grob-properties):
1396         mention stencil as user settable.
1397
1398 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
1399
1400         * Documentation/user/page.itely (Page formatting): 
1401         document auto-first-page-number
1402
1403         * lily/page-breaking.cc (find_chunks_and_breaks): 
1404         * lily/paper-score.cc (calc_breaking): Follow changes to the
1405         Constrained_breaking interface
1406
1407         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1408         here backwards, as an optimisation
1409         (initialize): new function; move most of the code in resize () here
1410         (combine_demerits): cache ragged_right_
1411         (Constrained_breaking): constructor now takes the Paper_score
1412
1413 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
1414         
1415         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1416         avoid parser lookahead for 0-ary functions.
1417
1418         * lily/translator.cc: Extract event classes from
1419         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1420
1421 2006-10-02  Heikki Junes  <hjunes@gmail.com>
1422
1423         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1424         KBabel fix tool.
1425
1426 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1427
1428         * scm/layout-page-layout.scm (page-breaking-wrapper): new
1429         function. Call the page breaking function selected in the
1430         `page-breaking' \paper variable, then the post processing function
1431         chosen using the `page-post-process' \paper variable.
1432         (line-height): new function. Return the height of a system.
1433         (line-minimum-position-on-page): new function. Return the position
1434         of a system on page (using the previous line position), only
1435         considering between system padding.
1436         (stretchable-line?): new function. Says whether a line can be
1437         stretched (ie. is not a title nor a single staff system).
1438         (page-maximum-space-left): new function. Computes space left on a
1439         page, when all systems are separated by their padding.
1440
1441         * lily/page-breaking.cc (breaking::make_pages): Move page post
1442         processing function call to page breaking wrapper (common to all
1443         page breakers).
1444
1445         * lily/paper-book.cc (book::pages): call the page breaking
1446         wrapper, instead of the page breaker directly
1447
1448         * ly/paper-defaults.ly: Add \paper variables for page breaking
1449         wrapper and page post processing function. Make
1450         `write-page-layout' value depend on the 'dump-tweaks option. Add a
1451         `system-maximum-stretch-procedure' variable for holding a function
1452         computing the maximum stretch a system allows.
1453
1454         * scm/layout-page-dump.scm (write-page-breaks): computes the
1455         stretch to apply to systems on a page to minimize left
1456         space. Dump this stretch length.
1457
1458         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1459         the system-stretch property of the tweak data to stretch the
1460         system.
1461         (includePageLayoutFile): Void function which includes the
1462         generated page-layout file if it exists and if the page layout
1463         dumping is not asked.
1464         (scoreTweak): if the score tweak named by the argument exists,
1465         return it.
1466
1467 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
1468
1469         * lily/page-spacing.cc (compress_lines, uncompress_solution):
1470         handle correctly the case where there are multiple \noPageBreaks
1471         in a row.
1472
1473 2006-09-30  Laura Conrad <lconrad@laymusic.org>
1474
1475         * abc2ly.py adds segno (S) and Coda (O) to articulations.
1476         
1477         * abc2ly.py fix so that entering " -- " will translate to a -- in
1478         the lilypond instead of a " - - "
1479         
1480 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
1481
1482         * lily/align-interface.cc: fix typo
1483
1484         * lily/dynamic-text-spanner.cc (print): Add a special case for
1485         trill spanner right sides. 
1486
1487         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1488
1489         * lily/align-interface.cc (get_extents_aligned_translates): add
1490         support for padding variable.
1491
1492         * lily/break-align-interface.cc (self_align_callback): oops: use
1493         loop variable in guard.
1494
1495         * input/regression/repeat-percent-grace.ly: new file.
1496
1497         * lily/percent-repeat-engraver.cc (start_translation_timestep):
1498         remember first currentCommandColumn of a grace run. Fixes issue 70.
1499
1500         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1501         move class definition to CC file.
1502
1503         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1504
1505         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1506         measure-long  repeats.
1507
1508         * flower/include/international.hh: include stdarg.h
1509
1510 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
1511
1512         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1513         put_systems_on_pages to return an empty result, we need to assign
1514         demerits properly in that case.
1515         (put_systems_on_pages): Make the number of pages depend on the
1516         evenness of page_number. Add auto-first-page-number.
1517         (calc_subproblem): ensure that the page-number is even for the
1518         left-hand page. Warn if the first page-turn doesn't fit onto the
1519         first (right-hand) page.
1520
1521         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1522         (min_page_count): make this publicly accessible
1523         (min_page_count): fix a bug when there are forced page breaks that
1524         was introduced when I made this loop run backwards
1525         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1526         replace space_systems_on_min_pages with these two. The logic in
1527         space_systems_on_min_pages was getting too convoluted and is better
1528         contained in page-turn-page-breaking.
1529
1530         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1531         conditional
1532         (breakable_column): typo
1533
1534         * lily/source-file.cc (get_line): fix off-by-one error
1535         and clean up some of the logic
1536
1537 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
1538
1539         * lily/page-breaking.cc (make_pages): honour the first-page-number
1540         property
1541
1542 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1543
1544         * VERSION (PACKAGE_NAME): bump version.
1545
1546 2006-09-26  Pal Benko  <benko.pal@gmail.com>
1547
1548         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1549         (the latter is the same as petrucci-f which is kept for compatibility)
1550
1551 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
1552         
1553         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1554
1555 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1556
1557         * lily/global-context.cc (run_iterator_on_me): break out of loop
1558         if moment doesn't increase.
1559
1560         * scm/define-grob-properties.scm (all-user-grob-properties): add
1561         forced property.
1562
1563         * lily/accidental.cc (after_line_breaking): read forced property.
1564
1565         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1566         property.
1567
1568         * input/regression/accidental-forced-tie.ly:  new file.
1569
1570 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1571
1572         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1573
1574         * lily/figured-bass-engraver.cc: only listen to rest events if
1575         ignoreFiguredBassRest is not set.
1576
1577         * scm/define-context-properties.scm
1578         (all-user-translation-properties): add ignoreFiguredBassRest property
1579
1580 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
1581
1582         * lily/paper-book.cc (get_system_specs):
1583         (set_system_penalty): fix breakbefore.
1584         We used to set a penalty on the system after the break, now we
1585         set a permission on the system before the break
1586
1587         * lily/grob-property.cc: add scm debugging hooks into
1588         property modification
1589
1590         * lily/context-property.cc:
1591         * lily/engraver.cc:
1592         rename make_foo_from_properties to internal_make_foo and
1593         move it from context-property.cc to a member function of
1594         Engraver.
1595         
1596         * lily/include/lily-guile-macros.hh:
1597         overload ly_symbol2scm macro so that there is no more need
1598         to use internal_foo
1599
1600         * lily/volta-repeat-iterator.cc:
1601         * lily/tweak-engraver.cc:
1602         * lily/tuplet-bracket.cc:
1603         * lily/span-bar-engraver.cc:
1604         * lily/script-engraver.cc:
1605         * lily/prob-scheme.cc:
1606         * lily/pointer-group-interface.cc:
1607         * lily/parser.yy:
1608         * lily/grob-scheme.cc:
1609         * lily/grob-property.cc:
1610         * lily/context.cc:
1611         * lily/context-property.cc:
1612         * lily/break-substitution.cc:
1613         * lily/break-align-engraver.cc:
1614         * lily/axis-group-interface.cc:
1615         * lily/align-interface.cc:
1616         remove calls to internal_FOO
1617
1618         * lily/system-start-delimiter-engraver.cc:
1619         * lily/parenthesis-engraver.cc:
1620         * lily/accidental-engraver.cc:
1621         remove calls to make_foo_from_properties
1622
1623 2006-09-23  Graham Percival  <gpermus@gmail.com>
1624
1625         * Documentation/user/programming-iterfaces.itely: fix
1626         def-music-function -> define-music... leftover.
1627
1628 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
1629
1630         * lily/page-spacing.cc (min_page_count): by running the loop
1631         backwards, we can calculate ragged_last properly.
1632
1633 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1634
1635         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1636         printfirst-page-number -> print-first-page-number
1637
1638         * python/convertrules.py: corresponding rule.
1639
1640         * Documentation/user/page.itely (Page formatting): Document the
1641         default values of all page layout parameters. 
1642
1643 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
1644
1645         * lily/lexer.ll: remove limitation on music function arity. New
1646         mode extratoken, which inserts extra EXPECT_* tokens after
1647         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1648
1649         * lily/parser.yy: Change grammar for music function accordingly.
1650
1651         * lily/include/lily-parser.hh: New method get_state, new member
1652         hidden_state. Works around a problem when parser fetches
1653         MUSIC_FUNCTION token but not the following EXPECT_* token.
1654
1655         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1656         remove try_music
1657
1658         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1659         references to Music; use ASSIGN_EVENT_ONCE everywhere
1660
1661         * lily/grob-info.cc: junk *music_cause
1662
1663         * lily/music.cc: copy eventified articulations to stream event
1664
1665         * lily/part-combine-iterator.cc: Cleanup using enums
1666
1667         * lily/translator-group.cc: Junk OldMusicEvent, and associated
1668         methods
1669
1670         * lily/include/engraver.hh: Junk music.hh include
1671
1672         * lily/stream-event.cc: Changed constructors
1673
1674 2006-09-21  Graham Percival  <gpermus@gmail.com>
1675
1676         * Documentation/user/tweaks.itely (Fitting music onto fewer
1677         pages): change settings to avoid warning messages.
1678
1679 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1680
1681         * Documentation/user/tweaks.itely (Fitting music onto fewer
1682         pages): Add between-system-space setting. 
1683
1684 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1685
1686         * lily/accidental-placement.cc (calc_positioning_done): don't
1687         trigger Y-extent calculation too early. Use pure_height instead.
1688
1689         * lily/scale.cc (LY_DEFINE): new file. 
1690
1691 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
1692
1693         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1694         that happen at the start of a score: having a zero-length
1695         chunk was messing up min_system_count calculations.
1696
1697         * lily/source-file.cc (get_line): lower_bound, not
1698         binary_search. Fixes problem where point-and-click would
1699         always point to the first line.
1700
1701 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1702
1703         * lily/accidental-placement.cc (calc_positioning_done): also put
1704         stems into accidental support. 
1705
1706         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1707         event_ detected.
1708
1709         * scm/script.scm (default-script-alist): avoid-slur and
1710         slur-padding for portato script.
1711
1712         * lily/stem-tremolo.cc (translated_stencil): new function. 
1713         (height): use new function. Fixes tremolos on whole notes.
1714
1715         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1716         slur found.
1717
1718 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1719
1720         * scripts/abc2ly.py (try_parse_comment): idem.
1721
1722         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1723         bar_string iso. string.find()
1724
1725         * lily/*.cc: idem.
1726
1727         * lily/slur.cc (get_curve): always use scm_is_pair() looping
1728         scheme lists.  
1729
1730 2006-09-18  Graham Percival  <gpermus@gmail.com>
1731
1732         * Documentation/user/basic-notation.itely: add bug
1733         warning about ties and octavation/clef.
1734
1735 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1736
1737         * VERSION (PACKAGE_NAME): release 2.9.18
1738
1739 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
1740
1741         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1742         figure out midi file names right here.
1743         
1744 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1745
1746         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1747
1748         * scm/backend-library.scm: option naming:  gs-font-load*s*
1749
1750         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1751         include-eps-fonts
1752
1753 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
1754
1755         * scm/define-music-types.scm (music-descriptions): remove
1756         BreakEvent and fix {Page,Line}{Break,Turn}Event so
1757         Music::to_event doesn't complain.
1758
1759         * lily/accidental-placement.cc (ape_compare):
1760         * lily/semi-tie.cc (compare): 
1761         * lily/note-column.cc (shift_compare): replace by XXX_less
1762
1763         * lily/tie-formatting-problem.cc (set_chord_outline): 
1764         * lily/tie-column.cc (calc_positioning_done): 
1765         * lily/system.cc (post_processing)
1766         (get_paper_system): 
1767         * lily/stem.cc (note_head_positions)
1768         (calc_positioning_done): 
1769         * lily/spanner.cc (do_break_processing)
1770         (find_broken_piece): 
1771         * lily/span-bar.cc (print): 
1772         * lily/semi-tie-column.cc (calc_positioning_done): 
1773         * lily/rest-collision.cc (calc_positioning_done): 
1774         * lily/program-option.cc (get_help_string): 
1775         * lily/note-collision.cc (get_clash_groups):
1776         * lily/new-fingering-engraver.cc (position_scripts):
1777         * lily/keyword.cc (Keyword_table):
1778         * lily/hara-kiri-group-spanner.cc (request_suicide):
1779         * lily/grob-pq-engraver.cc (stop_translation_timestep):
1780         * lily/accidental-placement.cc (calc_positioning_done):
1781         (stagger_apes):
1782         * lily/beam.cc (get_beam_segments):
1783         * lily/grob-array.cc (remove_duplicates):
1784         use new vector_sort
1785         
1786         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1787         ragged-last-bottom = ##f (test the new page breaker)
1788
1789         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1790
1791         * scm/define-context-properties.scm
1792         (all-internal-translation-properties): remove properties that
1793         were used to communicate page-turn stuff to the paper-column
1794         engraver.
1795
1796         * lily/lily-guile.cc (robust_scm2string): new function
1797
1798         * lily/paper-column-engraver.cc: Clean up page turn stuff
1799
1800         * lily/page-turn-engraver.cc: Re-write the page turn logic here
1801         instead of cluttering up paper-column-engraver.cc
1802
1803 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1804
1805         * scm/layout-page-dump.scm (scm): export utility function names,
1806         to allow user writing cutsom dumping functions.
1807
1808         * scm/layout-page-layout.scm: export utility function names to
1809         enable custom page breaking function writing. Tabify.
1810         (line-next-space): use ?-suffix only for predicates
1811         (page-maximum-space-to-fill): new function. Return the space
1812         between first and bottom system of a page, to give to
1813         space-systems.
1814         (space-systems): use a space-to-fill argument (for instance as
1815         computed by page-maximum-space-to-fill) instead of computing
1816         internaly this space with the page height. That way, the caller
1817         can adjust the space to use.
1818         (make-page-from-systems, walk-paths): compute space to fill before
1819         calling space-systems.
1820
1821 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1822
1823         * scm/script.scm (default-script-alist): set paddings for every
1824         type here, increase for portato mark.
1825
1826         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
1827         -dinclude-eps-fonts
1828
1829 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1830
1831         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1832         use spanner::set-spacing-rods
1833
1834         * lily/note-column.cc: reformat.
1835
1836         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1837         step positioning for note/rest combinations.
1838
1839         * input/regression/rest-note-collision.ly: new file.
1840
1841         * scm/define-grobs.scm (all-grob-descriptions): add
1842         springs-and-rods
1843
1844         * flower/include/std-vector.hh: switch off again.
1845
1846         * VERSION (PATCH_LEVEL): bump to 2.9.18
1847
1848         * flower/include/std-string.hh: idem.
1849
1850         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1851
1852 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
1853
1854         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1855         PianoStaff. 
1856
1857 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
1858
1859         * Documentation/user/page.itely: update page breaking documentation
1860
1861 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
1862
1863         * lily/note-collision.cc (calc_positioning_done): only access
1864         first head if available.
1865
1866         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1867
1868         * scm/framework-ps.scm (output-preview-framework): use new name.
1869
1870         * lily/program-option.cc (internal_set_option): use new names.
1871
1872         * Documentation/user/SConscript (lilypond_book_flags): update -d
1873         variable names.
1874
1875         * Documentation/user/lilypond-book.itely (Inserting LilyPond
1876         output into other programs): new variable names.
1877
1878         * scm/lily.scm (define-scheme-options): uniformize var names.
1879
1880         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1881         tuplets_ is non-empty before popping.
1882
1883 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
1884
1885         * lily/spanner.cc (find_broken_piece): 
1886         * lily/spacing-spanner.cc (get_columns): 
1887         * lily/source-file.cc (get_line): 
1888         * lily/simple-spacer.cc (get_column_description): 
1889         * lily/keyword.cc (lookup): 
1890         use the new binary search.
1891
1892         * flower/include/std-vector.hh: replace binary_search with
1893         a more STL-like version
1894
1895 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
1896
1897         * lily/tie-performer.cc: remove unused last_event_ property.
1898         (class Tie_performer): add now_tied_heads_ property for
1899         partially-tied heads.
1900         (acknowledge_audio_element): when adding an Audio_note, put the
1901         note in now_tied_heads_ if the audio note is partially tied.
1902         (stop_translation_timestep): always include entries in
1903         now_tied_heads_ in heads_to_tie_.
1904
1905         * lily/drum-note-performer.cc (process_music): look for tie-events
1906         in the articulations; pass to Audio_note constructor.
1907
1908         * lily/note-performer.cc (process_music): look for tie-events in
1909         the articulations; pass to Audio_note constructor.
1910
1911         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1912         constructor.
1913
1914         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1915         include initializer in constructor.
1916
1917 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
1918
1919         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1920         unless they are breakable. This fixes discrepancies between the forces
1921         calculated here and the forces calculated in get_line_configuration.
1922
1923         * lily/grob.cc (pure_relative_y_coordinate): fix some
1924         mis-estimation that was happening with piano staves.
1925
1926         * lily/constrained-breaking.cc (resize): don't choke if we get a
1927         measure that won't fit on a line.
1928         (combine_demerits): don't consider uniformity when ragged
1929
1930         * lily/page-spacing.cc (solve): why the f* were there two of these?
1931         (calc_subproblem): properly handle the case where a system is taller
1932         than the page.
1933
1934         * lily/system.cc (get_paper_system): ensure that all the permissions
1935         and penalties are passed to the paper systems.
1936
1937         * lily/page-breaking.cc (create_system_list): support system-count.
1938
1939         * scm/define-grobs.scm (pure-print-callbacks): add
1940         ly:script-interface::print
1941
1942         * lily/page-spacing.cc (min_page_count): fix calculation of min
1943         pages if we are ragged and there are non-zero springs.
1944
1945         * scm/layout-page-layout.scm: if the pure-height estimates are under
1946         the real height, allow space-systems to ignore padding if it is
1947         needed in order to fit the systems on one page
1948
1949         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1950         ragged properties
1951         (solve): fix performance problem. Make sure we always get at least
1952         one solution
1953
1954         * lily/page-breaking.cc (make_pages): include write-page-breaks
1955         and page-stencil
1956
1957         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1958
1959         * scm/define-grobs.scm: add the new slur-callback
1960         fix pure-relevant to not exclude grobs whose extent is already
1961         calculated
1962
1963         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1964         page breaker
1965
1966         * lily/slur.cc (pure_height): new callback to estimate the height
1967         of a slur
1968
1969 2006-09-02  Graham Percival  <gpermus@gmail.com>
1970
1971         * Documentation/user/invoking.itely: small update on
1972         MacOS X notes; thanks Trevor!
1973
1974 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
1975
1976         * VERSION (MY_PATCH_LEVEL): release 2.9.17
1977
1978         * lily/lexer.ll: accept EOF in all states.
1979
1980         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1981
1982         * lily/source-file.cc (Source_file): always 0-terminate character
1983         array, to prevent Flex from barfing.
1984
1985         * lily/global-context.cc (get_output): robustness: don't crash if
1986         no Score context found.
1987
1988         * lily/include/book.hh (class Book): idem.
1989
1990         * lily/include/context-def.hh (struct Context_def): idem.
1991
1992         * lily/include/score.hh (class Score): don't derive from Input.
1993
1994         * lily/book.cc (Book): add a copy ctor. 
1995
1996         * buildscripts/output-distance.py (FileLink.calc_distance): count
1997         orphans in distance too.
1998
1999         * python/midi.c (midi_parse_track): robustness: don't read past
2000         end of string.
2001
2002         * ly/performer-init.ly: add Control_track_performer, move
2003         Tempo_performer and Time_signature_performer to Score.        
2004
2005         * lily/score-performer.cc (acknowledge_audio_elements): override
2006         from base class: add to audio-columns
2007
2008         * lily/control-track-performer.cc (add_text): new file: generate
2009         the control track.
2010
2011         * lily/performance.cc: move output_header_track to
2012         Control_track_performer ()
2013
2014         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
2015
2016         * lily/include/midi-item.hh (class Midi_channel_item): insert
2017         class into hierarchy, for items that can have a channel setting. Dehungarify.
2018
2019         * lily/include/performer.hh (class Performer): remove
2020         play_element();  move functionality into announce/acknowledge.
2021
2022         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
2023
2024         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
2025         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
2026
2027 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2028
2029         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
2030         ambituses.
2031
2032         * lily/all-font-metrics.cc: remove TFM support.
2033
2034         * lily/include/tfm.hh: remove TFM support, TFM reader.
2035
2036         * lily/include/binary-source-file.hh: remove Binary_source_file.
2037
2038 2006-08-27  Graham Percival  <gpermus@gmail.com>
2039
2040         * Documentation/topdocs/NEWS.itely: add @c marker for
2041         stuff I've processed.
2042
2043         * Documentation/user/ various: info from NEWS.
2044
2045 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
2046
2047         * lily/paper-column-engraver.cc (finalize): Oops, this change
2048         should have gone in on 2006-08-23
2049
2050 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
2051
2052         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
2053         quotes to quote arguments. Fixes Windows problem.
2054
2055         * python/lilylib.py (progress): idem
2056
2057 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2058
2059         * scripts/musicxml2ly.py: fix for importing
2060         minor key signatures from MusicXML.  (Phillip Kirlin)
2061
2062 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
2063
2064         * python/musicxml.py: 
2065         (Attributes.get_key_signature): now correctly retrieves mode from 
2066         MusicXML. 
2067
2068 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
2069
2070         * lily/parser.yy (output_def_body): take ownership of identifier
2071         back to C++.
2072
2073         * Documentation/user/advanced-notation.itely (Metronome marks):
2074         update use of \tempo in \midi.
2075
2076         * VERSION: release 2.9.16
2077         
2078 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
2079
2080         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
2081         web partially)
2082
2083 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2084
2085         * input/regression/tie-chord-partial.ly: clarify example.
2086
2087         * scm/define-music-properties.scm (all-music-properties): remove
2088         untied.
2089
2090         * ly/music-functions-init.ly: remove \untied.
2091
2092         * lily/tie-engraver.cc (struct Head_event_tuple): store both
2093         stream events and music events.
2094         (stop_translation_timestep): search acknowledged heads for
2095         tie-event.
2096
2097         * input/regression/tie-chord-partial.ly: new file.
2098
2099         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
2100         for \char markup command.
2101
2102         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
2103
2104         * scm/define-music-types.scm (music-descriptions): consistency:
2105         Use solo-{one,two}-event iso. solo-[12]-event.
2106
2107         * lily/part-combine-engraver.cc (process_music):
2108         Use solo-{one,two}-event iso. solo-[12]-event.
2109
2110         * ly/declarations-init.ly (partCombineListener): add Timing as
2111         alias
2112
2113         * flower/std-string.cc (string_copy): use copy ()
2114
2115         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
2116
2117 2006-08-24  Graham Percival  <gpermus@gmail.com>
2118
2119         * Documentation/user/changing-defaults.itely, global.itely,
2120         lilypond-book.itely, page.itely: minor changes from mailist.
2121
2122 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2123
2124         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
2125         snippet-map
2126
2127         * scm/define-context-properties.scm
2128         (translator-property-description): robustness: detect type errors
2129         in property definitions.
2130
2131         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
2132         after getting it from SCM. 
2133
2134         * lily/smobs.cc (protect_smob): switch off fancy smob protection
2135         for now. 
2136
2137         * lily/include/performer.hh (class Performer): strip get_tempo()
2138         method.
2139
2140         * lily/midi-def.cc: strip file.
2141
2142         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
2143
2144         * lily/include/context-def.hh (struct Context_def): use
2145         VIRTUAL_COPY_CONSTRUCTOR().
2146
2147         * lily/source-file.cc: smobification.
2148
2149         * lily/include/source-file.hh (class Source_file): smobify
2150         Source_file. Trim redundant members.
2151
2152         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
2153         clones after creation. This plugs a huge memory leak.
2154
2155         * python/convertrules.py (FatalConversionError.sub_tempo):
2156         complete rule for \midi{ \tempo }
2157
2158         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
2159
2160         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
2161
2162 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
2163
2164         * input/regression/optimal-page-breaking-hstretch.ly: test for
2165         ragged-last-bottom also
2166
2167         * lily/paper-column-engraver.cc (finalize): make the end of a score
2168         breakable by default. This is to balance out a change in behaviour
2169         of the page-turn-breaker which no longer makes the end of a score
2170         breakable.
2171
2172         * lily/paper-book.cc (pages): set the systems_ once the pages are
2173         broken
2174
2175         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
2176         Page_breaking interface.
2177
2178         * lily/page-breaking.cc (class Page_breaking): make the interface
2179         more consistent and provide abstractions for dealing with
2180         Line_divisions.
2181
2182         * lily/optimal-page-breaking.cc (solve): use a more straightforward
2183         algorithm. Use the new interface to Page_breaking.
2184
2185         * lily/page-spacing.cc: better support for ragged-bottom and
2186         ragged-last-bottom
2187
2188 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2189
2190         * python/convertrules.py (conv): warning on \tempo{}
2191
2192         * ly/performer-init.ly: set tempoWholesPerMinute.
2193
2194         * ly/midi-init.ly: remove \midi
2195
2196         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
2197         MIDI tempo.
2198
2199         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
2200         tempoUnitDuration for determining what to print.
2201
2202         * lily/lyric-extender.cc: typo.
2203
2204         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
2205
2206         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
2207         function.
2208
2209         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
2210
2211         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
2212         eps-pad-boxes is set.
2213
2214         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
2215
2216         * THANKS: update sponsors.
2217
2218         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
2219
2220         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2221
2222         * input/regression/tie-chord-untied.ly: new file.
2223
2224         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
2225
2226         * scm/define-music-properties.scm (all-music-properties): add
2227         'untied property.
2228
2229         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
2230         than .ly.txt.
2231         (headertext_nopics): sanitize no-examples text.
2232
2233         * scm/page.scm (make-page-stencil): don't rely on extents of
2234         page-stencil. This fixes spurious space around .EPS files produced
2235         with the EPS backend.
2236
2237 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
2238
2239         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
2240
2241         * lily/hara-kiri-engraver.cc (process_music): remember
2242         keepAliveInterfaces after processing \set
2243
2244         * lily/lyric-extender.cc (print): support left/right-padding for
2245         extenders.
2246
2247         * scm/documentation-generate.scm (string-append): revert lilypond/
2248         path, doc why.
2249
2250 2006-08-20  Graham Percival  <gpermus@gmail.com>
2251
2252         * Documentation/user/lilypond.tely: clarification to
2253         license presentation (not to actual license).
2254
2255         * Documentation/user/basic-notation.itely,
2256         instrument-notation.itely: minor changes.
2257
2258         * input/ {regression, test}/+.ly: clarification to
2259         text (you can click on examples).  Thanks, Mats!
2260
2261         * input/manual/bar-lines.ly: adds ||: repeats.
2262
2263 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2264
2265         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
2266
2267         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
2268
2269         * Documentation/user/lilypond.tely: strip lilypond/ from info
2270         links, rename to category LilyPond
2271
2272         * lily/pango-font.cc (description_string): new function.
2273
2274         * VERSION: release 2.9.15
2275
2276         * lily/spacing-engraver.cc (stop_translation_timestep): use
2277         Dscho's fix for spacing spanner. 
2278
2279         * scm/define-music-types.scm (music-descriptions): use
2280         apply-output-event for ApplyOutputEvent
2281
2282         * lily/output-property-engraver.cc (listen_apply_output): rename
2283         from listen_layout_instruction.
2284
2285         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
2286         function protect()
2287
2288 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2289
2290         * scm/lily.scm (lilypond-all): option read-file-list: substitute
2291         commandline args with contains, split by \n.
2292
2293         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
2294         write snippet-names file, call with -dread-file-list. Fixes
2295         command limitations on 64-bit systems.
2296
2297         * input/regression/stencil-color-rotation.ly: new file.
2298
2299         * lily/include/translator.hh (struct Acknowledge_information):
2300         revert: don't use Protected_scm in global objects, as GUILE can't
2301         handle gc_unprotect from automated destructors on MacOS X.
2302  
2303         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
2304         color, not the original stencil. Fixes combinations of
2305         color/transparency/rotation. 
2306
2307         * scripts/lilypond-book.py (main): add --formats=eps for
2308         texinfo/latex.
2309
2310         * lily/spacing-engraver.cc (stop_translation_timestep): don't
2311         crash if spacing_ is nonexistent.
2312
2313 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
2314
2315         * scripts/lilypond-book.py (output): Remove obsolete(!?)
2316         \catcode`\@=12 in the LaTeX output.
2317
2318 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2319
2320         * scm/define-music-types.scm (music-descriptions):
2321         use sustain-event iso. sustain-pedal-event.
2322
2323 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
2324
2325         * scripts/convert-ly.py: honour the -n command-line switch
2326
2327 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
2328
2329         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2330         break specification.
2331
2332 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
2333
2334         * Documentation/user: convert-ly the user manual
2335
2336 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2337
2338         * stepmake/aclocal.m4: version check patch (thanks MWD)
2339
2340         * ly/music-functions-init.ly: robustness. Don't crash if
2341         currentBarNumber is not a number.
2342
2343         * VERSION (PATCH_LEVEL): bump.
2344
2345 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2346
2347         * stepmake/aclocal.m4: better version check; handle fooX.Y
2348         binaries too.
2349
2350         * ly/performer-init.ly: instrument name fixup.
2351
2352         * input/manual/chord-names-jazz.ly (banterProperties):
2353         instrumentName update
2354
2355         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2356
2357         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2358
2359         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2360         function. Use hash tables to check membership.
2361
2362         * lily/general-scheme.cc (LY_DEFINE): new function.
2363
2364         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2365
2366         * lily/include/translator.hh (struct Acknowledge_information): add
2367         Protected_scm
2368
2369         * ly/music-functions-init.ly: change name to BreathingEvent
2370
2371         * input/regression/*.ly: apply it.
2372
2373         * python/convertrules.py (conv): better instrumentName conversion
2374         rule.
2375
2376         * scm/define-music-types.scm (music-descriptions): add
2377         line-break-event to LineBreakEvent music
2378
2379         * lily/music.cc (to_event): don't crash if music type not set.
2380
2381         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2382         spacing not set.
2383
2384         * lily/spacing-engraver.cc (stop_translation_timestep): set
2385         spacing for proportional notation too.
2386
2387         * scm/translation-functions.scm (format-bass-figure): inspect
2388         stream-event.
2389
2390         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2391
2392 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
2393
2394         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2395
2396         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2397
2398         * scm/layout-page-layout.scm (make-page-from-systems): new function
2399         (optimal-page-breaks): use the new page-breaking calling convention
2400
2401         * scm/define-context-properties.scm (all-user-translation-properties):
2402         add revokePageTurns
2403
2404         * lily/paper-column-engraver.cc (stop_translation_timestep): add
2405         revokePageTurns  functionality. If there is a special barline within
2406         the breakable region, break there instead of at the end of the region.
2407
2408         * lily/paper-book.cc (pages): use the new page-breaking calling
2409         convention
2410
2411 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
2412
2413         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2414
2415         * scripts/lilypond-book.py: insert \sourcefileline command in
2416         output, so lilypond error messages refer to the spot in the
2417         original .lytex / .itely sourcefile.
2418
2419 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2420
2421         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2422         space to next column for distance to fixed col.
2423
2424         * VERSION (PACKAGE_NAME): release 2.9.14
2425
2426         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2427         if no accidental.
2428
2429         * lily/accidental-engraver.cc (process_acknowledged): don't create
2430         accidental for trill span event. This fixes spurious accidentals
2431         on trills.
2432
2433 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
2434
2435         * scm/define-grob-properties.scm (all-user-grob-properties):
2436         Clarify documentation of side-axis and direction. Thanks to Paul
2437         for the inspiration.
2438
2439         * lily/bar-line.cc: Add documentation for "||:" also in the
2440         interface documentation.
2441
2442 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2443
2444         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2445
2446         * lily/paper-column.cc (set_system): new function.
2447
2448         * lily/spacing-engraver.cc (stop_translation_timestep): store
2449         SpacingSpanner refs in Paper_column.
2450
2451         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2452         compute loose clique spacing using GraceSpacing/SpacingSpanner.
2453
2454 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2455
2456         * lily/beam-engraver.cc (listen_beam): add method for
2457         Grace_beam_engraver too.
2458
2459 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
2460
2461         * python/convertrules.py: Fix indentation bug that broke
2462         conversion of files older than 1.3.117.
2463         Fix escape error in the description for 2.9.6.
2464
2465 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
2466
2467         * lily/*-engraver.cc: convert all try_music functions to listen_*
2468         functions.
2469
2470         * lily/piano-pedal-engraver.cc: some additional cleanups: use
2471         enums to represent pedal types, and calculate more data statically.
2472
2473         * scm/part-combiner.scm (recording-group-emulate): create a
2474         softcoded substitute for recording-group-engraver.cc.
2475
2476         * lily/music.cc: make a common transpose function for events and
2477         music
2478
2479         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2480         ManualMelismaEvent, and obsoletes Melisma_translator.
2481
2482 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2483
2484         * input/test/instrument-name-align.ly: update version.
2485
2486 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
2487
2488         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2489         Doc the --pdf flag to lilypond-book.
2490
2491 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2492
2493         * Documentation/topdocs/NEWS.tely (Top): add description.
2494
2495         * input/regression/tuplet-full-length-note.ly: add file.
2496
2497         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2498         always store axis group.
2499
2500 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2501
2502         * input/regression/instrument-switch.ly: new file.
2503
2504         * lily/instrument-switch-engraver.cc (process_music): new file.
2505
2506         * ly/engraver-init.ly: add Instrument_switch_engraver
2507
2508         * ly/music-functions-init.ly: \instrumentSwitch
2509
2510         * scm/define-context-properties.scm
2511         (all-user-translation-properties): add instrumentCueName
2512
2513         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2514
2515 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2516
2517         * ly/music-functions-init.ly: music function \transposition.
2518
2519         * lily/parser.yy (command_element): softcode \transposition.
2520
2521         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2522         (process_music): oops.
2523
2524         * lily/instrument-name-engraver.cc (start_spanner): new
2525         function. Create spanner when property changes.
2526         (stop_spanner): new function.
2527
2528         * python/convertrules.py (conv): add rule.
2529
2530         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2531         shortInstrumentName iso. instr.
2532
2533         * scm/output-ps.scm (dashed-line): add phase argument to
2534         dashed-line.
2535
2536         * lily/bar-line.cc (dashed_bar_line): new function.
2537         (compound_barline): support \bar "dashed". 
2538
2539         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2540         --output=DIR to DIR/BASE if it is a dir. 
2541
2542         * flower/file-name.cc (file_part): new function
2543         (dir_part): new function
2544
2545         * lily/lily-parser-scheme.cc (LY_DEFINE): 
2546
2547         * DEDICATION: update
2548
2549 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
2550
2551         * lily/instrument-name-engraver.cc: formatting.
2552
2553         * python/convertrules.py (conv): bugfix for \epsfile.
2554
2555 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
2556
2557         * lily/grob.cc:
2558         
2559         * lily/gourlay-breaking.cc: Oops, these should have been included
2560         in my last commit
2561
2562 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2563
2564         * scripts/*.py (program_name): cleanup relocation snippets.
2565
2566         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2567
2568 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
2569
2570         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2571         page-breakable by default
2572
2573         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2574         correctly calculated for a single-system page
2575
2576         * scm/lily-library.scm (interval-sane?): also check that the first number is no
2577         bigger than the second number
2578
2579         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2580         acknowledge that we aren't satisfying constraints)
2581
2582         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2583         non-Items
2584
2585         * lily/grob.cc (pure_height): add minimum-Y-extent
2586
2587         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2588         ragged
2589
2590         * lily/constrained-breaking.cc: convert code to use new Matrix class
2591         (get_best_solution): new function
2592
2593         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2594         is a page with no systems
2595
2596 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2597
2598         * VERSION (PACKAGE_NAME): release 2.9.13
2599
2600         * scm/define-grobs.scm (all-grob-descriptions): remove stray
2601         assignment.
2602
2603 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
2604
2605         * Documentation/topdocs/NEWS.tely (Top): doc new features.
2606
2607         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2608         function.
2609
2610         * scm/define-grob-properties.scm (all-user-grob-properties):
2611         remove grace-space-factor.
2612
2613         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2614         grace-spacing-interface
2615         (spacing-options-interface): add.
2616
2617         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2618
2619         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2620
2621         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2622         GraceSpacing object.
2623
2624         * lily/note-spacing.cc: fix prop list formatting
2625
2626         * lily/beaming-pattern.cc (de_grace): new function. Sensible
2627         beaming for grace notes too.
2628
2629         * input/regression/spacing-grace.ly: update.
2630
2631         * lily/grace-spacing-engraver.cc: new file.
2632
2633         * lily/spacing-spanner.cc: add strict-grace-spacing.
2634
2635 2006-07-20  Graham Percival  <gpermus@gmail.com>
2636
2637         * lily/parser.yy: compile fix.
2638
2639 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2640
2641         * scm/define-grobs.scm (all-grob-descriptions): typo.
2642
2643         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2644         .eps extension from includegraphics.
2645
2646         * scripts/lilypond-book.py (main): add support for --pdf. 
2647
2648         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2649         callback to compute common shortest duration.
2650         (set_springs): typo.
2651
2652         * scm/define-grob-properties.scm (all-user-grob-properties): add
2653         strict-grace-spacing.
2654
2655         * lily/spacing-determine-loose-columns.cc (is_loose_column):
2656         support float_grace_columns_.
2657
2658         * lily/spacing-options.cc (init_from_grob): new file.
2659
2660         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2661
2662         * input/regression/spacing-loose-grace.ly: new file.
2663
2664         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2665
2666         * lily/tuplet-engraver.cc (struct Tuplet_description): read
2667         tupletFullLengthNote too. Choose right bound depending on value.
2668
2669         * input/regression/tuplet-full-length-note.ly: new file.
2670
2671 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2672
2673         * lily/*-performer.cc: Converted try_music to listen_*
2674
2675         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2676         as a stream-event internally. Introduce event_cause (), deprecate
2677         music_cause ().
2678
2679         * scm/define-music-types.scm: Removed BusyPlayingEvent
2680         
2681 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
2682
2683         * Documentation/user/advanced-notation.itely (Font selection):
2684         Document how to get a list of available fonts using 'lilypond
2685         -dshow-available-fonts blabla'.
2686
2687 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2688
2689         * GNUmakefile.in: filter lily-XXX.pdf files.
2690
2691         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2692
2693         * scm/define-grob-properties.scm (all-internal-grob-properties):
2694         remove delta-pitch. Use delta-position everywhere.
2695
2696         * scm/output-lib.scm (fall::print): use new order.
2697
2698         * scm/output-ps.scm (path): reorder arguments.
2699
2700         * scm/output-svg.scm (path): support for path primitive.
2701
2702         * input/regression/bend-after.ly: new file.
2703
2704         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2705         recipe for eps -> pdf conversion.
2706
2707 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
2708
2709         * lily/parser.yy, lily/lexer.ll: added some simplifications by
2710         Angelo Contardi.
2711
2712 2006-07-19  Graham Percival  <gpermus@gmail.com>
2713
2714         * input/manual/screech-boink.ly: moved to here.
2715
2716         * input/screech-boink.ly: deleted.
2717
2718         * scm/define-grob-properties.scm: clarify doc string.
2719
2720 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2721
2722         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2723
2724         * scm/output-ps.scm (path): define path.
2725
2726         * scm/define-stencil-commands.scm
2727         (ly:register-stencil-expression): add path.
2728
2729         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2730
2731         * ly/engraver-init.ly: add Fall_engraver
2732
2733         * lily/parser.yy (music_function_event): allow musicfunction
2734         without music arg as music_function_event.
2735
2736         * lily/grob-scheme.cc (LY_DEFINE):
2737         ly:grob-robust-relative-extent. New function.
2738
2739         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2740
2741         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2742
2743         * scm/output-lib.scm (fall::print): new function
2744
2745         * lily/fall-engraver.cc (stop_fall): new file.
2746
2747         * ly/music-functions-init.ly: alphabetise.
2748
2749         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2750         base.
2751
2752 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2753
2754         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2755
2756         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2757         doc pdftex usage.
2758
2759         * lily/translator-group.cc (connect_to_context): non const error message.
2760
2761         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2762
2763         * scm/paper.scm (internal-set-paper-size): define landscape to #f
2764         if unset.
2765
2766         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
2767
2768         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2769
2770         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2771         systems.pdftex too.
2772
2773         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2774
2775         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2776
2777         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2778
2779         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2780
2781         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2782
2783         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
2784
2785 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2786
2787         * scm/layout-page-layout.scm: Define module, tidy code, use more
2788         functions iso. a single big one.
2789
2790         * scm/layout-page-dump.scm: move page dump functions used in two
2791         pass spacing to this file. Define module.
2792
2793         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2794          (separate module)
2795
2796         * ly/paper-defaults.ly: use module layout-page-layout.
2797
2798 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
2799
2800         * lily/music.cc: Revised MusicEvent event class. It now contains
2801         event data directly instead of encapsulating it in music. The
2802         previously used class is renamed to OldMusicEvent.
2803
2804         * lily/stream-event.cc: Stream events are now probs.
2805         
2806         * lily/translator-group.cc, lily/translator.cc: Translators can
2807         now listen directly to stream events, by using macros
2808         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2809
2810         * lily/arpeggio-engraver.cc: Converted to use new event system
2811
2812         * THANKS: Corrected spelling mistake.
2813
2814 2006-07-12  Graham Percival  <gpermus@gmail.com>
2815
2816         * Documentation/user/SConscript, make/lilypond-vars.make,
2817         input/GNUmakefile: doc build looks in input/manual instead
2818         of input/test/
2819
2820         * input/manual/ GNUmakefile, SConscript: build files for
2821         input/manual/
2822
2823         * input/test/ various: some files moved to input/manual/ 
2824
2825         * Documentation/user/basic-notation.itely: small updates;
2826         thanks Kieren and Charles!
2827
2828 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2829
2830         * VERSION (PACKAGE_NAME): release 2.9.11
2831
2832         * Documentation/topdocs/NEWS.tely (Top): update prop value 
2833
2834         * Documentation/user/basic-notation.itely (Tuplets): new property
2835         value.
2836
2837 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2838
2839         * python/convertrules.py (conv): tweaks. 
2840
2841         * VERSION (PATCH_LEVEL): bump version.
2842
2843         * python/convertrules.py (conv): add rule for
2844         tupletNumberFormatFunction.
2845
2846         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2847         tupletNumberFormatFunction.
2848
2849         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2850         text through 'text callback.
2851
2852         * lily/time-scaled-music-iterator.cc (construct_children): copy
2853         tweaks generated events.
2854
2855         * scm/define-context-properties.scm
2856         (all-user-translation-properties): remove tupletNumberFormatFunction
2857
2858         * lily/tuplet-engraver.cc (process_music): don't read
2859         tupletNumberFormatFunction
2860
2861         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2862         function.
2863
2864 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
2865
2866         * lily/global-context-scheme.cc: Separated ly:run-translator into
2867         smaller pieces.
2868
2869         * lily/score-engraver.cc, lily/score-performer.cc,
2870         scm/define-context-properties.scm: Make paper/midi output
2871         accessable as a context property.
2872
2873         * lily/score-translator.cc, lily/score-context.cc: Removed.
2874
2875 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
2876
2877         * scm/ps-to-png.scm (Module): 
2878         * scm/framework-tex.scm (Module): 
2879         * scm/framework-ps.scm (Module): 
2880         * scm/backend-library.scm (Module): 
2881         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2882         "dDEVICEHEIGHTPOINTS".
2883
2884 2006-07-04  Graham Percival  <gpermus@gmail.com>
2885
2886         * Documentation/user/ various: general improvements to
2887         "working with lilypond files" section.
2888
2889 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
2890
2891         * lily/sequential-iterator.cc: Change the default get_music_list
2892         to read elements-callback music property
2893
2894         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2895         processing of multimeasure rests. Softcoded
2896         sequential-music-iterator.
2897
2898         * lily/sequential-music-iterator.cc: Removed.
2899
2900 2006-06-28  Graham Percival  <gpermus@gmail.com>
2901
2902         * Documentation/user/basic-notation.itely: clarify \repeatTie.
2903
2904 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
2905
2906         * lily/parser.yy: Wrap non-post-events in EventChords before
2907         assigning them to identifiers.
2908
2909 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
2910
2911         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2912         gives correct vertical placement of \bar ":" in all staff
2913         sizes. Thanks Martial!
2914
2915 2006-06-26  Graham Percival  <gpermus@gmail.com>
2916
2917         * Documentation/user/invoking.itely : minor update from mailist.
2918
2919 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
2920
2921         * lily/ various: Introduce stream events of types Prepare,
2922         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2923         ChangeContext, SetProperty, RevertProperty, Override and Revert.
2924
2925         * lily/global-context*.cc: Time is now -inf before iteration
2926         starts.
2927
2928         * lily/include/context.hh: Removed unique_, init_
2929
2930         * Documentation/topdocs/NEWS: Make the feathered beam example
2931         avoid triggering a bug.
2932
2933 2006-06-24  Graham Percival  <gpermus@gmail.com>
2934
2935         * Documentation/user/ various: small additions from mailist.
2936
2937 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
2938
2939         * ly/performer-init.ly: Add some missing links in the context
2940         hierarchy for MIDI output. There are probably some more missing!
2941
2942 2006-06-21  Graham Percival  <gpermus@gmail.com>
2943
2944         * Documentation/user/ various: minor spelling fixes;
2945         thanks Dave Luttinen!
2946
2947         * Documentation/user/ various: small clarifications;
2948         thanks Anthony Youngman!
2949
2950 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2951
2952         * po/fr.po: add \n appropriately.
2953
2954         * lily/lexer.ll: remove ? from version-seen?  
2955
2956 2006-06-19  John Mandereau  <john.mandereau@free.fr>
2957
2958         * po/fr.po; update translation, by Jean-Charles Malahieude and
2959         John Mandereau.
2960
2961 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2962
2963         * THANKS: add Markus Schneider.
2964
2965         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2966         Staff_symbol_engraver
2967
2968         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2969         replace staff_engraver
2970
2971         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2972         spanner.
2973
2974         * lily/staff-collecting-engraver.cc
2975         (acknowledge_end_staff_symbol): new function
2976
2977         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
2978
2979         * lily/staff-collecting-engraver.cc
2980         (acknowledge_end_staff_symbol): new function.
2981
2982         * lily/main.cc: switch on relocation by default.
2983
2984 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2985
2986         * lily/spacing-spanner.cc (musical_column_spacing): set
2987         compound_fixed_note_space to 0.0. Document why.
2988
2989         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2990         range of inverse_hooke_
2991         (Simple_spacer): init completely.
2992         (fits): const
2993         (get_line_configuration): don't use cols.resize(); it introduces
2994         initialized data.
2995
2996         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
2997
2998         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2999
3000         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
3001         try. Divide by beatlength.
3002
3003         * input/regression/beaming-ternary-metrum.ly: update doc.
3004         add beatLength hack.
3005
3006         * scm/music-functions.scm (make-time-signature-set): add
3007         standard-beat-grouping. 
3008
3009 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3010
3011         * input/regression/tie-whole.ly: new file.
3012
3013         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
3014         cross center of note head in case of invisible stem. 
3015
3016 2006-06-16  Graham Percival  <gpermus@gmail.com>
3017
3018         * Documentation/user/ various: small fixes from mailist.
3019
3020 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3021
3022         * lily/breathing-sign.cc (offset_callback): idem.
3023
3024         * lily/align-interface.cc (align_to_fixed_distance): remove
3025         hungarian suffix.
3026
3027         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
3028         x%2==0.
3029
3030 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
3031
3032         * VERSION (PACKAGE_NAME): release 2.9.9
3033
3034         * ly/lilypond-book-preamble.ly: add \version
3035
3036 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
3037
3038         * scripts/lilypond-book.py (PREAMBLE_LY): include
3039         lilypond-book-preamble.ly
3040
3041         * lily/stem.cc (get_beaming): return max of 0 and
3042         scm_ilength. Fixes slurring from/to beams.
3043
3044         * ly/lilypond-book-preamble.ly: new file.
3045
3046         * lily/slur.cc: add inspect-index feature.
3047
3048 2006-06-13  Graham Percival  <gpermus@gmail.com>
3049
3050         * Documentation/user/tutorial.itely: trivial fix.
3051
3052 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
3053
3054         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
3055         all non-event music in the parser via MAKE_SYNTAX.
3056
3057         * lily/parser-scheme.cc: Add ly:parser-error function
3058
3059         * scm/paper.scm: fix typo
3060
3061 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
3062
3063         * THANKS: add RT.
3064
3065         * lily/font-config.cc (init_fontconfig): add warning if cache_file
3066         is null.
3067
3068         * buildscripts/output-distance.py (test_compare_signatures):
3069         timing routines.
3070         (read_signature_file): use new signature format.
3071
3072         * scm/stencil.scm (write-system-signature): simpler signature
3073         format.
3074
3075         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
3076         for beamed case. 
3077
3078         * lily/note-spacing.cc (stem_dir_correction): don't inspect
3079         stem_end_position, but estimate instead. 
3080
3081         * lily/tuplet-bracket.cc (calc_positions): look at
3082         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
3083         brackets narrower than beams. 
3084
3085         * lily/lexer.ll: set version-seen? even if version is
3086         INVALID. 
3087
3088         * lily/rest.cc (y_offset_callback): bugfix: decide position
3089         override based on scm_is_number(). Fixes \rest on center staff
3090         line. 
3091
3092         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
3093         patterns for 16th triplets.
3094
3095 2006-06-10  Graham Percival  <gpermus@gmail.com>
3096
3097         * Documentation/user/ page.itely, global.itely: editing
3098         and reorg.
3099
3100         * Documentation/user/ various: findex -> funindex.
3101
3102 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
3103
3104         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
3105         insert extra tuplet events.
3106
3107 2006-06-10  Graham Percival  <gpermus@gmail.com>
3108
3109         * Documentation/user/programming-interfaces.itely: add
3110         info from NEWS.
3111
3112         * python/convertrules.py: add annotatefoo -> annotate-foo
3113         rules.
3114
3115         * Documentation/user/global.itely: start editing.
3116
3117         * Documentation/user/page.itely: major editing, new spacing
3118         docs.
3119
3120 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
3121
3122         * scm/define-markup-commands.scm (wordwrap-markups): use
3123         output-def 'line-width if undefined.
3124
3125         * HACKING: trim outdated info.
3126
3127 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
3128
3129         * scm/define-grobs.scm (all-grob-descriptions): Add
3130         line-spanner-interface to all grobs that already have
3131         text-spanner-interface or dynamic-text-spanner-interface
3132
3133         * scm/page.scm: Rename annotate{headers,systems,page}->
3134         annotate-*
3135
3136         * input/regression/page-spacing.ly,
3137         input/regression/page-layout-manual-position.ly: idem
3138
3139 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
3140
3141         * lily/line-spanner.cc: cleanup property list.
3142
3143         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
3144         generator expressions (2.3 compat). 
3145
3146 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
3147
3148         * lily/vertical-align-engraver.cc: Make sure that the
3149         align{Above,Below}Context properties are included in the automatic
3150         documentation.
3151
3152 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
3153
3154         * scm/paper-system.scm (paper-system-annotate): also annotate the
3155         estimated pure-Y-extent
3156
3157         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
3158
3159         * lily/system.cc (break_into_pieces): set the estimated height
3160         of each child system
3161
3162         * lily/stem.cc (pure_height): new pure-Y-extent callback
3163
3164         * lily/staff-symbol-referencer.cc (callback): don't destroy
3165         the staff-position property
3166
3167         * lily/hara-kiri-group-spanner.cc (request_suicide): split
3168         consider_suicide into two functions
3169
3170         * lily/constrained-breaking.cc (resize): use the new pure
3171         callbacks to estimate the height of a system
3172
3173         * lily/axis-group-interface.cc (pure_group_height): new
3174         side-effect-free VerticalAxisGroup height-callback
3175
3176         * lily/align-interface.cc (get_extents_aligned_translates):
3177         split align_elements_to_extents into two functions
3178         (get_pure_child_y_translation): new function
3179
3180         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
3181
3182         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
3183
3184         * lily/paper-score.cc: cache break_indices and columns
3185
3186         * lily/side-position-interface.cc: new pure-Y-extent callbacks
3187         
3188 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
3189
3190         * lily/font-config.cc (init_fontconfig): do the init if
3191         cache_file, but don't look at cache_file.
3192
3193         * input/regression/quote-tie.ly: new file.
3194
3195         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
3196         to Head_event_tuple, so we deal gracefully with ties on
3197         cue-endings.
3198
3199         * lily/pango-font.cc (pango_item_string_stencil): type correctness
3200         for FcChar8*
3201
3202 2006-06-08  Graham Percival  <gpermus@gmail.com>
3203
3204         * input/test/ smart-transpose.ly, reverse-music.ly:
3205         \applyMusic to music functions update, thanks Michael!
3206
3207 2006-06-07  Graham Percival  <gpermus@gmail.com>
3208
3209         * input/test/ add-staccato.ly, add-text-script.ly,
3210         unfold-all-repeats.ly, music-box.ly: \applyMusic to
3211         music functions update, thanks to Michael Meixner.
3212
3213         * Documentation/user/music-glossary.tely: small fix
3214         from Francisco.
3215
3216         * Documentation/user/ various: minor additions from mailist.
3217
3218         * Documentation/user/lilypond.tely, basic-notation.itely:
3219         small test of @funindex.  (works here)
3220
3221         * input/test/font-table.ly: reduce size to partially
3222         de-ugly version in manual.
3223
3224         * Documentation/user/page.itely: new file (split former
3225         "global issues" into "page settings" and "non-musical
3226         output".
3227
3228         * Documentation/user/ various: fix @ref{}s to match
3229         new chapter names (above).
3230
3231 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
3232
3233         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
3234
3235 2006-06-06  Graham Percival  <gpermus@gmail.com>
3236
3237         * Documentation/user/advanced-notation.itely: add example
3238         for segno/coda on barline.
3239
3240         * tex/texinfo.tex: merge from upstream.
3241
3242 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
3243
3244         * scripts/lilypond-book.py (process_snippets): Argument fix.
3245
3246         * SConstruct:
3247         * buildscripts/builder.py:
3248         * lily/SConscript: 
3249         * mf/SConscript: 
3250         * Documentation/user/SConscript:  More SCons fixes.
3251
3252 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3253
3254         * lily/font-config.cc (init_fontconfig): Only initialize if
3255         global cache_file is found.
3256
3257 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
3258
3259         * ly/music-functions-init.ly: Updated \overrideProperty to use the
3260         new \applyOutput.
3261
3262 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3263
3264         * VERSION (PACKAGE_NAME): release 2.9.8
3265
3266         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
3267         function. Delay ledger modifying ledgered grobs to
3268         stop_translation_timestep(), to ensure that we're ledgering
3269         according to the new spanner.
3270         (acknowledge_staff_symbol): don't check for non-NULL
3271         staff_sym->get_bound()
3272
3273         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
3274         creation.
3275
3276         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
3277         pictures too.
3278
3279         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
3280         directly from srcdir/stepmake/aclocal.m4
3281         
3282         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
3283         disting MISC files.
3284
3285         * lily/simple-spacer.cc (get_column_desc): desc -> description.
3286
3287 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
3288
3289         * lily/simple-spacer.cc (get_line_configuration): add
3290         keep-inside-line rods
3291         (struct Column_desc): add constructor
3292         (struct Rod_desc): add constructor
3293         (get_line_forces): check for forced page breaks here too
3294
3295         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
3296         support/elements cycles between InstrumentNames and AxisGroups
3297
3298 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3299
3300         * config.make.in (METAFONT): remove MAKEINFO_VERSION
3301
3302         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
3303         make-txt-files target.
3304
3305         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
3306         make-txt-files target.
3307
3308         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
3309
3310         * stepmake/stepmake/generic-vars.make (distdir): create dist in
3311         top-build-dir.
3312
3313 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
3314
3315         * Documentation/user/instrument-notation.itely,
3316         input/regression/breathing-sign-ancient.ly,
3317         input/test/divisiones.ly: Removed redundant property settings for
3318         vaticana contexts.
3319
3320         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3321         fix lyrics alignment problems.  They are implemented now as scheme
3322         functions that add the appropriate unicode char to the first lyric
3323         event rather than adding a separate lyric event.  Minor edit of
3324         comments.
3325
3326 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3327
3328         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3329         pollute src dir with built .txt files, but install directly from
3330         Documentation/topdocs/out/
3331
3332         * buildscripts/output-distance.py
3333         (ComparisonData.create_html_result_page): put version/directories
3334         in table header.
3335
3336         * Documentation/topdocs/NEWS.tely (Top): document spacing section
3337         feature.
3338
3339         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3340         Patch by Karl Hammar
3341         
3342         * buildscripts/readlink.py: add  file.
3343         Patch by Karl Hammar
3344
3345 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
3346
3347         * lily/tuplet-number.cc (print): prevent stencil from being
3348         garbage collected.
3349
3350 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3351
3352         * scm/stencil.scm (write-system-signature): explicitly 
3353         -well, superfluously- close output port.
3354
3355         * buildscripts/output-distance.py (main): oops. Add extra argument.
3356
3357 2006-06-05  Graham Percival  <gpermus@gmail.com>
3358
3359         * Documentation/user/music-glossary.tely: clarified example
3360         from Francisco Vila, thanks!
3361
3362 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3363
3364         * input/regression/spacing-section.ly: new file.
3365
3366         * lily/input.cc (programming_error): new function.
3367
3368         * lily/spacing-engraver.cc (try_music): new function. Accept
3369         spacing-section-event
3370
3371         * lily/spacing-spanner.cc (set_springs): take slices of all
3372         columns for spacing.
3373
3374         * lily/include/paper-column.hh (class Paper_column): add
3375         Paper_column::compare.
3376
3377         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3378
3379         * scm/define-music-types.scm (music-descriptions): add
3380         SpacingSectionEvent
3381
3382         * lily/music-iterator.cc (report_event): use programming_error for
3383         sending non-event error.
3384
3385         * lily/input.cc (programming_error): new function
3386
3387         * buildscripts/output-distance.py (main): use compare-XXX for
3388         compare files.
3389         (main): --threshold option, default at 0.30
3390
3391         * output-distance.py (main): add --threshold option.
3392
3393 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3394
3395         * scm/paper-system.scm (paper-system-annotate): fix problem when
3396         annotating an empty system
3397
3398 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3399
3400         * GNUmakefile.in: reinstate old web tar/copying.
3401
3402 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3403
3404         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3405         nothing changes. (Erik S) 
3406
3407         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3408         count. (Erik S)
3409
3410 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3411
3412         * scm/define-markup-commands.scm (whiteout): do not force
3413         foreground color of argument markup to black.
3414
3415         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3416         the left of the arrow, instead of below the arrow name, so that,
3417         when two little arrows are vertically stacked, their dimensions
3418         and name should not overlap. Add a color key parameter.
3419
3420         * scm/paper-system.scm (paper-system-annotate): Annotate
3421         next-space+next-padding instead of next-space. Annotate space
3422         between next-padding and next-space+padding, respectively, and
3423         following system extent and refpoint-Y-extent. Use colors.
3424
3425         * scm/page.scm (annotate-page): translate annotations slightly to
3426         the right.
3427
3428 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3429
3430         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3431         fix for x-staff slurs. Thanks Joe!
3432
3433         * buildscripts/output-distance.py
3434         (SystemLink.output_expression_change_count): keep track of changed
3435         details, and dump in details html page.
3436  
3437         * input/regression/figured-bass-staff.ly: add note about setting
3438         properties in Staff context.
3439
3440         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3441         add slurs and ties to support too.
3442
3443         * buildscripts/output-distance.py (main): set dest_dir
3444         argument. Add --max-count option.
3445
3446 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
3447
3448         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
3449         shortcuts for special unicode chars that are useful in chant
3450         notation.  Revised exisiting and added new comments.
3451
3452 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3453
3454         * make/mutopia-rules.make: remove duplicate recipe.
3455
3456 2006-06-02  Werner Lemberg  <wl@gnu.org>
3457
3458         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3459         Add support for U+0132 (IJ) and U+0133 (ij).
3460
3461 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3462
3463         * buildscripts/output-distance.py (FileLink): new class. collect
3464         info systems from one .ly file. 
3465         (FileLink.link_files_for_html): further tweaks.
3466
3467 2006-06-02  Graham Percival  <gpermus@gmail.com>
3468
3469         * tex/texinfo.tex: partial fix for @funindex.
3470
3471         * Documentation/user/macros.tely: uncomment @funindex (doesn't
3472         break anything).
3473
3474 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3475
3476         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3477
3478         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3479         @example too. Backportme.
3480
3481 2006-06-02  Graham Percival  <gpermus@gmail.com>
3482
3483         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3484         from Werner Lemberg.
3485
3486 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
3487
3488         * Documentation/user/music-glossary.tely: additional spanish
3489         updates and a lyrics fix in an example.
3490
3491 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
3492
3493         * scm/define-grob-properties.scm: Previous patch contained
3494         spurious line from another patch not yet committed.  Fixed.
3495
3496         * scm/define-grob-properties.scm: Add missing doc strings for
3497         ancient notation.
3498
3499 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3500
3501         * buildscripts/output-distance.py
3502         (ComparisonData.write_text_result_page): separate the scores, sort
3503         by geo_score.
3504
3505         * scm/framework-eps.scm (output-classic-framework): start at 1 for
3506         system signatures.
3507
3508         * buildscripts/output-distance.py (me_path): use argv[0] for
3509         sys.path extension
3510         (ComparisonData.img_cell): use colored borders.
3511
3512         * scm/stencil.scm (write-system-signature): escape newlines too.
3513         (write-system-signature): use (1,-1) interval for empty interval
3514
3515 2006-01-01  Graham Percival  <gpermus@gmail.com>
3516
3517         * Documentation/user/music-glossary.tely: Spanish updates
3518         from Francisco Vila.
3519
3520         * Documentation/user/lilypond-book.itely: addition from
3521         Vaclav Smilauer.
3522
3523         * Documentation/user/ various: edits, small additions
3524         from mailist, etc.
3525
3526 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3527
3528         * GNUmakefile.in (tree-lib-prefix-current):
3529         (tree-share-prefix-current): Use version number in tree, add
3530         `current' symlinks.
3531
3532 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3533
3534         * GNUmakefile.in: write VERSION, again.
3535
3536         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3537         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3538
3539         * stepmake/aclocal.m4: robuster version detection.
3540
3541         * buildscripts/output-distance.py
3542         (ComparisonData.create_html_result_page): copy only if file
3543         exists, fixup src paths.
3544
3545         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3546
3547 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3548
3549         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3550         Another datarootdir reto.
3551
3552         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3553         available.  This should be moved to postinstall-lilypond-doc.
3554
3555 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3556
3557         * GNUmakefile.in: simplify local-WWW-post. 
3558         remove -type l from find.
3559
3560         * buildscripts/output-distance.py (ComparisonData.compare_trees):
3561         fixes. Don't follow symlinks.
3562         (ComparisonData.create_html_result_page): remove previous results.
3563         insert ../python in path.
3564
3565         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3566
3567 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
3568
3569         * config.make.in (datadir): Add datarootdir to silence autoconf.
3570
3571         * stepmake/aclocal.m4: Update for autoconf-2.59d.
3572
3573 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
3574
3575         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3576
3577         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3578         slash beams too wide.
3579
3580 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3581
3582         * VERSION: release 2.9.7
3583         
3584 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3585
3586         * lily/relocate.cc (read_relocation_dir): Do not blindly
3587         dereference DIR.
3588
3589 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3590
3591         * lily/parser.yy: replace THIS by PARSER
3592
3593         * Documentation/index.html.in: add link to test-results.html page.
3594
3595         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3596
3597         * scm/translation-functions.scm (format-bass-figure): translate
3598         digits over 10 to the left
3599
3600         * scm/define-markup-commands.scm (translate-scaled): new markup.
3601
3602         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3603         7 glyph. 
3604
3605         * ly/engraver-init.ly: add Figured_bass_engraver
3606
3607         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3608
3609         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3610
3611         * lily/score-engraver.cc (announce_grob): only note START announces.
3612
3613         * lily/include/engraver-group.hh (Translator_group):
3614         acknowledge_hash_table_ is now drul.
3615
3616         * lily/engraver.cc (announce_end_grob): new method.
3617
3618         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3619
3620         * lily/translator-dispatch-list.cc (create): take start_end argument.
3621
3622         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3623         acknowledge_static_array_ to drul
3624
3625         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3626
3627         * scm/define-grob-interfaces.scm
3628         (bass-figure-alignment-interface): add bass-figure-alignment-interface
3629
3630         * scm/define-grobs.scm (all-grob-descriptions): add
3631         BassFigureAlignmentPositioning
3632
3633         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3634         number stays up to date. Backportme.
3635
3636 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
3637
3638         * Documentation/user/basic-notation.itely (Bar lines): Document
3639         the "||:" bar type. 
3640
3641 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
3642
3643         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3644
3645         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3646         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
3647         build.
3648
3649         * Resurrect `scons lily' build.
3650
3651         * SConstruct (symlink_tree): Bugfix: link
3652         music-drawing-routines.ps to file iso directory.
3653
3654         * lily/SConscript: Remove kpath-guile from LIBS.
3655
3656         * SConstruct (libdir_package_version): Typo.
3657         (configure): Comment-out fontforge for lack of fontforge.pc .
3658         Also add libdir* to environment.
3659
3660 2006-05-30  Graham Percival  <gpermus@gmail.com>
3661
3662         * Documentation/user/ various: minor additions from mailist and
3663         editing.
3664
3665 2006-05-30  Paco <fravd@ya.com>
3666
3667         * Documentation/user/music-glossary.tely: numerous corrections and
3668         some new translations.
3669
3670 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3671
3672         * BackportmeStart.
3673         
3674         * buildscripts/output-distance.py
3675         (ComparisonData.create_html_result_page): new routine: summarise
3676         results in HTML page with images. 
3677         (ComparisonData.create_text_result_page): create summary text files too.
3678
3679         * GNUmakefile.in (web-ext): package .signature files too. They
3680         compress well. 
3681
3682         * scm/stencil.scm (write-system-signature): typo.
3683
3684         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3685
3686         * scm/stencil.scm (write-system-signature): better escaping.
3687         only write signature for music systems, not for markup systems.
3688
3689         * scm/framework-ps.scm (output-framework): dump-signatures support
3690         for plain output.
3691
3692         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3693
3694         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3695         for -dno-point-and-click
3696
3697         * lily/grob.cc (get_print_stencil): don't read
3698         point_and_click_global to determine whether to set grob-cause.
3699
3700 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3701
3702         * buildscripts/output-distance.py (main): new function.
3703         (ComparisonData): new class.
3704
3705         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3706         careful with generating new LedgerLineSpanners.
3707
3708         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3709
3710         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3711         context. This fixes double ledger lines in output. 
3712
3713         * lily/system.cc (get_paper_system): remove 3 layer limit.
3714
3715         * buildscripts/output-distance.py (SystemLink.distance): new
3716         file. Compare signatures.
3717
3718         * python/safeeval.py (SafeEval.visitUnarySub): new file.
3719
3720         * lily/grob-array.cc (remove_duplicates): rename from
3721         uniq(). Sort before calling uniq() so it actually works.
3722
3723 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3724
3725         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3726         \version from lilypond file snippet.
3727         (Lilypond_file_snippet.ly): oops. typo.
3728         (find_toplevel_snippets): urgh. again.
3729
3730         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3731         prevent duplicated broken items in output.
3732
3733         * scm/framework-eps.scm (output-classic-framework): only dump if
3734         dump-signatures is set.
3735
3736         * scm/lily.scm (define-scheme-options): add dump-signatures option.
3737
3738         * scm/stencil.scm (write-system-signature): new routine: write
3739         python parseable signature of a separate paper system.
3740         BackportmeEnd.
3741         
3742 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
3743
3744         * lily/stanza-number-engraver.cc (process_music): use is_markup()
3745         iso is_string().
3746         include header.
3747
3748 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
3749
3750         * translator-group.cc: send music events to engravers in
3751         non-bottom contexts.
3752
3753         * tuplet-engraver.cc: process tuplet brackets in correct order.
3754
3755 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3756
3757         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3758         arg 2 might point us to a new binary (patch by Karl Hammar)
3759         
3760 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3761
3762         * VERSION (PACKAGE_NAME): release 2.9.6
3763
3764         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
3765
3766         * Documentation/user/*.itely: 2nd
3767         attempt: replace funindex -> findex globally.
3768
3769 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3770
3771         * input/no-notation/display-lily-tests.ly: fix \applyOutput
3772         test. Add \break, \pageBreak, \pageTurn, etc, tests.
3773
3774         * scm/define-music-display-methods.scm: display methods for
3775         breaks. Fix \applyOutput.
3776
3777 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
3778
3779         * Documentation/user/macros.itexi: comment out funindex expansion. 
3780
3781         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3782         everywhere.
3783
3784         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3785         Karl Hammar. Backportme.
3786  
3787         * Documentation/user/advanced-notation.itely (Balloon help): idem.
3788
3789         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3790
3791         * Documentation/user/programming-interface.itely (Running a
3792         function on all layout objects): idem.
3793
3794         * Documentation/user/introduction.itely (Automated engraving):
3795         update \applyOutput syntax
3796
3797         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3798         remove debugging hook.
3799
3800         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3801         expansion. 
3802
3803         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3804
3805         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3806         TEXI2DVI_FLAGS to texi2dvi invocation. 
3807
3808 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
3809
3810         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3811         works. More work is done by iterator now, and engraver has been
3812         very much simplified.
3813
3814         * lily/translator-group.cc: try_music is now invoked through a
3815         listener
3816
3817         * lily/*-iterator.cc: Massive cleanups. Junked
3818         try_music_in_children globally. Renamed try_music to report_event,
3819         and made that method descend to a bottom context automatically.
3820
3821         * lily/event-iterator.cc: New file.
3822
3823         * lily/output-property-iterator.cc,
3824         lily/old-lyric-combine-music-iterator.cc: Removed.
3825
3826         * python/convert-rules.py: Modified the syntax for \applyOutput.
3827
3828 2006-05-23  Graham Percival  <gpermus@gmail.com>
3829
3830         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3831         creation.
3832
3833         * Documentation/user/ various: stuff that might have helped
3834         to fix the pdf creation, plus some minor doc additions.
3835
3836         * Documentation/user/changing-defaults.itely: remove @b from
3837         @b{ @internasref{foo}}; this breaks texi2dvi -E.
3838
3839 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3840
3841         * lily/beaming-pattern.cc (beamify): deal with negative start
3842         moments for beaming patterns.
3843
3844 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3845
3846         * lily/beaming-info.cc (beamify): new function: read beatLength
3847         and beatGrouping from context. 
3848
3849         * input/regression/beam-beat-grouping.ly (Module): new file.
3850
3851         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3852
3853         * lily/beam.cc (get_beam_segments): generate events for
3854         max_connect_ case too.
3855         (get_beam_segments): read Stem::max-beam-connect.
3856
3857         * input/regression/beam-single-stem.ly: new file.
3858
3859         * lily/stem.cc (set_beaming): use #f as signaling value for
3860         beamcount 0.
3861
3862         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3863
3864         * lily/beam.cc (set_beaming): read clip-edges property.
3865         (calc_direction): don't suicide for single stem.
3866
3867         * lily/beaming-info.cc (best_splitpoint_index): take bool*
3868         argument, remove 1<<15 hack. Remove clip_edges() 
3869
3870         * lily/hairpin.cc (print): only do padding for nonmusical bounds
3871
3872 2006-05-21  Graham Percival  <gpermus@gmail.com>
3873
3874         * Documentation/user/basic-notation.itely: reorg.
3875
3876         * Documentation/user/ various: minor fixes.
3877
3878 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
3879
3880         * lily/stencil-expression.cc (register_stencil_head): opps, append
3881         to cdr of static SCM object.
3882
3883 2006-05-19  Graham Percival  <gpermus@gmail.com>
3884
3885         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3886         update framework for command index.  DOC WRITERS: use @funindex
3887         instead of @cindex @code{}.
3888
3889         * Documentation/user/ various: replace @cindex @code{} => @funindex
3890
3891 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
3892
3893         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3894         case positions is set manually. 
3895
3896 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
3897         
3898         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3899         rules to Scheme.
3900
3901 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
3902
3903         * Documentation/user/changing-defaults.itely (Contexts explained):
3904         use absolute dimension for @image.
3905
3906         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3907         out image for illustration too.
3908         ($(outdir)/%.png): add more png <-> eps rules. 
3909
3910 2006-05-17  Graham Percival  <gpermus@gmail.com>
3911
3912         * Documentation/user/ various: remove trailing whitespace, cosmetic
3913         change to reduce changes produced by diff.
3914
3915 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3916
3917         * lily/main.cc (do_chroot_jail): correctness tweak.
3918
3919         * python/lilylib.py (system): import subprocess in system () only.
3920
3921         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3922
3923         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3924         variable. Backportme.
3925
3926 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
3927         
3928         * lily/parser.yy: Change all syntax rules of type Music to SCM type
3929
3930 2006-05-17  Werner Lemberg  <wl@gnu.org>
3931
3932         * lily/lexer.ll (init_signature_has_table): Add
3933         `scm-scm-music-music'.
3934
3935         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3936         (Generic_prefix_music_scm): Add rule for it.
3937
3938         * lily/quote-iterator.cc (Quote_iterator::process): Handle
3939         `quoted-transposition' property.
3940
3941         * ly/music-functions-init.ly (transposedCueDuring): New function.
3942
3943         * scm/define-music-properties.scm (all-music-properties): Updated.
3944
3945         * Documenation/topdocs/NEWS.itely: Document it.
3946
3947 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
3948
3949         * python/lilylib.py (system): move import subprocess to system()
3950         definition. 
3951
3952         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3953
3954         * VERSION (PATCH_LEVEL): release 2.9.5
3955         
3956         * Documentation/topdocs/INSTALL.texi (Top): update versions and
3957         build instructions. 
3958
3959         * ly/engraver-init.ly: switch on hairpinToBarline by default.
3960
3961 2006-05-16  Graham Percival  <gpermus@gmail.com>
3962
3963         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3964
3965         * Documentation/user/ various: minor fixes.
3966
3967 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3968
3969         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3970
3971 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
3972
3973         * Documentation/user/advanced-notation.itely (Instrument names):
3974         Modified obsolete instruction on how to move instrument names away
3975         from the staves. Hmm, at second thought the bug probably has been
3976         solved, so the full bug description should probably be removed.
3977
3978 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
3979
3980         * lily/dynamic-engraver.cc (typeset_all): hang ending on
3981         currentCommandColumn. 
3982
3983         * lily/hairpin.cc (print): also add padding for non-neighbor
3984         hairpin bounds.
3985
3986         * scm/define-context-properties.scm
3987         (all-user-translation-properties): add hairpinToBarline
3988
3989         * input/regression/hairpin-to-barline.ly: new file.
3990
3991         * lily/context.cc (internal_send_stream_event): thinko fix.
3992
3993         * lily/tie.cc (set_default_control_points): robustness fix.
3994
3995         * python/musicxml.py (Part.interpret): don't complain about
3996         incomplete measures.
3997
3998         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3999         new music if last_event_chord() returned None.
4000
4001         * python/musicxml.py (Part.interpret): skip back over chord notes.
4002
4003 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
4004         
4005         * lily/percent-repeat-engraver.cc, lily/parser.yy,
4006         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
4007         lily/slash-repeat-engraver.cc,
4008         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
4009         iterator sends PercentEvents
4010
4011         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
4012         rework tuplets: send start/stop events to engraver
4013
4014         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
4015         dispatchers event-source and events-below to Context
4016         
4017 2006-05-15  Graham Percival  <gpermus@gmail.com>
4018
4019         * Documentation/user/README.txt: update info for doc writers.
4020
4021         * Documentation/user/programming-interface.itely: integrate
4022         Nicolas' fixes for chapter rewrite.
4023
4024         * Documentation/user/ various: minor fixes.
4025
4026 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
4027
4028         * lily/clef-engraver.cc: cleanup.
4029
4030         * Documentation/user/GNUmakefile: dist context-example.eps too.
4031
4032         * lily/key-engraver.cc (create_key): use
4033         explicitKeySignatureVisibility for cancellation too. 
4034
4035         * lily/font-config.cc (init_fontconfig): don't close file if
4036         f==NULL. 
4037
4038 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
4039
4040         * Documentation/topdocs/NEWS.tely: niente and rotation news
4041
4042 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
4043
4044         * lily/include/stencil.hh
4045         * lily/stencil.cc (rotate): new function. Makes it possible
4046         to rotate a stencil around a given offset.
4047
4048         * lily/grob.cc (get_print_stencil): add rotation support
4049
4050         * lily/stencil-interpret.cc (interpret_stencil_expression):
4051         add rotation support
4052
4053         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
4054
4055         * scm/define-grob-properties.scm: add 'rotation property
4056
4057         * scm/define-markup-commands.scm: add rotate markup command
4058         
4059         * scm/output-ps.scm: add rotation support in PostScript backend
4060
4061         * scm/output-svg.scm: add rotation support in SVG backend
4062
4063 2006-05-13  Graham Percival  <gpermus@gmail.com>
4064
4065         * Documentation/user/music-glossary.itely: French correction.
4066
4067         * Documentation/user/programming-interface.itely: major
4068         new docs, some reorg, some info from Nicolas.
4069
4070         * Documentation/user/ various: small fixes.
4071
4072 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
4073
4074         * Documentation/user/programming-interface.itely (Markup
4075         programmer interface): Remove duplicate text.
4076
4077 2006-05-12  Graham Percival  <gpermus@gmail.com>
4078
4079         * Documentation/user/context-example.eps: new file.
4080
4081         * Documentation/user/changing-defaults.itely: set up file to
4082         use eps image.
4083
4084         * Documentation/user/programming-interface.itely: changes
4085         from mailist.
4086
4087 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
4088
4089         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
4090
4091 2006-05-11  Graham Percival  <gpermus@gmail.com>
4092
4093         * Documentation/user/programming-interface.itely: first round of
4094         editing and merging emails from Nicolas.
4095
4096         * Documentation/user/scheme-tutorial: minor edit.
4097
4098 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
4099
4100         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
4101         XML attributes.
4102         (Xml_node.message): use it.
4103
4104         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
4105         oops. Add duration argument.
4106
4107 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
4108
4109         * lily/paper-column-engraver.cc (make_columns):
4110         * scm/define-grobs.scm: Revert my previous change and set the default
4111         in define-grobs.scm instead.
4112
4113 2006-05-09  Graham Percival  <gpermus@gmail.com>
4114         
4115         * Documentation/user/changing-defaults.itely: general editing,
4116         info about \set and \override.
4117
4118         * Documentation/user/tweaking.itely, advanced-notation.itely:
4119         fixes from Dave Luttinen, thanks!
4120
4121 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
4122
4123         * lily/paper-column-engraver.cc (make_columns): By default, a column
4124         needs to be breakable.
4125
4126 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
4127
4128         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
4129         Attributes methods
4130         (musicxml_time_to_lily): idem
4131         (musicxml_key_to_lily): idem
4132         (instrument_drumtype_dict): dict for supported drumtypes.
4133         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
4134         moments and pending mm rests
4135         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
4136         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
4137         (musicxml_voice_to_lily_voice): add mode change.
4138         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
4139         speed and less memory usage (factor 5 to 10).
4140         (convert): write -defs.ly  and driver file separately so people
4141         can script their own part extraction.
4142
4143         * python/musicxml.py (minidom_demarshal_node): new function:
4144         separate minidom handling.
4145         (lxml_demarshal_node): new function: support lxml.etree too.
4146         (Xml_node.message): new function: verbose error message, with XML
4147         path to offending node.
4148         (Attributes.get_measure_length): sane interface to MusicXML attributes.
4149         (Part_list.generate_id_instrument_dict): new method: collect
4150         instrument names, to be able to set drum_type.
4151         (Part.interpret): handle underfull measures
4152         (Part.interpret): assign instrument names.
4153
4154         * python/musicexp.py (Output_printer.close): new method
4155         (MusicWrapper.print_ly): new class: support other modes,
4156         eg. \drummode
4157         (BarCheck.print_ly): new class. Support bar checks, with comments
4158         and fancy barchecks. 
4159         (NoteEvent.__init__): also set drum_type for drum notes.
4160         (MultiMeasureRest.lisp_expression): dump mm rests.
4161
4162         * lily/paper-column-engraver.cc (stop_translation_timestep): set
4163         line-break-permission if forbidBreak is not set.
4164
4165 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
4166
4167         * scm/define-context-properties.scm:
4168         * scm/define-grob-properties.scm:
4169         * scm/define-grobs.scm:
4170         * scm/define-music-display-methods.scm:
4171         * scm/define-music-properties.scm:
4172         * scm/define-music-types.scm:
4173         * scm/music-functions.scm:
4174         * ly/declarations-init.ly:
4175         * lily/include/constrained-breaking.hh:
4176         * lily/system.cc:
4177         * lily/spaceable-grob.cc:
4178         * lily/simple-spacer.cc:
4179         * lily/paper-score.cc:
4180         * lily/paper-column.cc:
4181         * lily/paper-column-engraver.cc:
4182         * lily/item.cc:
4183         * lily/gourlay-breaking.cc:
4184         * lily/constrained-breaking.cc:
4185         * python/convertrules.py:
4186         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
4187         "page-break-penalty" and "line-break-permission".
4188         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
4189         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
4190
4191         * lily/bar-engraver.cc:
4192         * lily/beam-engraver.cc:
4193         * lily/forbid-break-engraver.cc:
4194         * lily/ligature-engraver.cc:
4195         * lily/paper-column-engraver.cc:
4196         * lily/percent-repeat-engraver.cc:
4197         * lily/score-engraver.cc:
4198         * lily/score-engraver.hh:
4199         * lily/paper-column-engraver.hh:
4200         Inter-engraver communication regarding line breaks is done through context
4201         properties (Score.forbidBreak) instead of function calls.
4202
4203 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
4204
4205         * VERSION (PACKAGE_NAME): release 2.9.4
4206
4207 2006-05-08  Graham Percival  <gpermus@gmail.com>
4208
4209         * Documentation/user/working.itely: proofreading from Dave
4210         Luttinen, thanks.
4211
4212         * Doucmentation/user/README.txt: updated with manual style info.
4213
4214         * Documentation/user/ various: trim linewidth to 78 chars.
4215
4216 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
4217
4218         * scm/define-grob-properties.scm (all-internal-grob-properties):
4219         remove chord-tremolo property.
4220
4221         * lily/beam.cc (get_beam_segments): don't use stem position as
4222         base for broken ends.
4223
4224 2006-05-06  Graham Percival  <gpermus@gmail.com>
4225
4226         * Documentation/user/putting.itely: proofreading from Dave
4227         Luttinen, thanks!
4228
4229         * Documentation/user/ various: more reorg and clarifications.
4230
4231 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
4232
4233         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
4234
4235         * ly/music-functions-init.ly: new function featherDurations
4236
4237         * lily/beam.cc: read grow-direction for feathered beaming.
4238
4239         * Documentation/topdocs/NEWS.tely (Top): typo.
4240
4241 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4242
4243         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
4244         tremolo beams.
4245
4246 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
4247         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
4248         used by music streams.
4249
4250         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
4251         lily/stream-event.cc, lily/stream-event-scheme.cc,
4252         lily/listener.cc, lily/scheme-listener.cc,
4253         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
4254         lily/include/stream-event.hh, lily/include/listener.hh,
4255         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
4256         Created data structures for music streams.
4257         
4258 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4259
4260         * lily/beam.cc (get_beam_segments): new function. Reorganise the
4261         construction of a beam. 
4262         (print): rewrite. 
4263
4264         * flower/include/std-vector.hh (default_compare): use only one comparison.
4265
4266         * scm/define-markup-commands.scm (note-by-number): remove debug display.
4267         (note-by-number): further attachment fixes.
4268
4269         * scm/lily-library.scm (ordered-cons): new function.
4270         (interval-index): new function
4271
4272         * lily/note-head-scheme.cc (LY_DEFINE): new file.
4273
4274         * lily/note-head.cc (get_stem_attachment): new function.
4275
4276         * scm/define-markup-commands.scm (note-by-number): read 'style
4277         property. 
4278
4279         * input/regression/markup-note.ly: show note-head style option.
4280
4281         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
4282         triangle head.
4283
4284 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
4285
4286         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
4287
4288         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
4289
4290         * lily/include/constrained-breaking.hh: GCC 4 fix.
4291
4292 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
4293
4294         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
4295         Replace it with functions get_line_forces and get_line_configuration.
4296         (class Simple_spacer): Make data private.
4297         Rewrite compression algorithm to be faster and simpler.
4298
4299         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
4300         * lily/gourlay-breaking.cc (solve):
4301         * lily/constrained_breaking.cc (space_line):
4302         Change it to the new simple-spacer code.
4303
4304         * lily/paper-score.cc (get_paper_systems):
4305         (Paper_score):
4306         (process):
4307         Delay breaking the systems until they are requested.
4308         (find_break_indices):
4309         Use vsize for indices.
4310         (calc_breaking):
4311         Move the "Calculating line breaks" message here.
4312
4313         * lily/system.cc (pre_processing):
4314         Move the "Calculating line breaks" message away from here.
4315         (break_into_pieces):
4316         Allow multiple calls to this function in sequence (with touching-but-
4317         not-overlapping breakpoints).
4318
4319         * lily/constrained-breaking.cc:
4320         Replace most of the get_XXXX functions with get_line_details.
4321         Only calculate the force for each line. Calculate configurations only
4322         for the lines we will actually use.
4323         Replace cols_ with lines_.
4324
4325 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4326
4327         * mf/GNUmakefile (depth): remove FC_FIND.
4328
4329         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4330
4331         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4332
4333         * scm/framework-ps.scm (write-preamble): new function.
4334         (write-preamble): load mac fonts via fondu, even if gs-font-load
4335         is set.
4336
4337 2006-05-03  Werner Lemberg  <wl@gnu.org>
4338
4339         * mf/GNUmakefile (FC_FIND): Fix typo.
4340
4341 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
4342
4343         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4344
4345 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4346
4347         * stepmake/aclocal.m4: run python-config for crosscompiling
4348         flags. 
4349
4350         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4351         -f png for HTML, TEXINFO formats. 
4352
4353         * input/tutorial/lbook-html-test.html: new file.
4354
4355         * lily/include/tie-formatting-problem.hh (class
4356         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4357         [column, direction]. This fixes laissez vibrer ties.
4358  
4359         * flower/include/tuple.hh (struct Tuple2): new file.
4360
4361         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4362         $(FCMATCH), only if $(NCSB_DIR) not set. 
4363
4364         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4365
4366         * config.make.in (DOCUMENTATION): set FCMATCH.  
4367
4368         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
4369
4370 2006-05-03  Graham Percival  <gpermus@gmail.com>
4371
4372         * Documentation/user/ various: final round of reorg.
4373
4374         * Documentation/user/instrument-notation.itely: some more
4375         fixes from Eduardo, thanks!
4376
4377 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
4378
4379         * VERSION (PACKAGE_NAME): release 2.9.3
4380
4381         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4382
4383         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4384
4385 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
4386
4387         * scm/define-grob-properties.scm (all-user-grob-properties):
4388         Correct typo, thanks to Eduardo.
4389
4390 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
4391
4392         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4393
4394         * buildscripts/lilypond-words.py (F): indent fix.
4395
4396         * input/regression/tie-arpeggio-collision.ly: new file.
4397
4398         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4399         function: store outlines per column rank.
4400
4401         * lily/include/tie-configuration.hh (class Tie_configuration): add
4402         column_ranks_ to specification and configuration, to distinguish
4403         between ties for different heads in arpegiated chords.
4404
4405         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4406
4407         * *.py: more 4 space indents.
4408
4409         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4410
4411 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
4412
4413         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4414
4415 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
4416
4417         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4418
4419         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
4420
4421         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4422
4423 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4424
4425         * python/convertrules.py (conv): indent 4 for python files.
4426
4427 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
4428
4429         * Documentation/user/changing-defaults.itely (Creating contexts):
4430         Clarify \new semantics.
4431
4432 2006-04-28  Graham Percival  <gpermus@gmail.com>
4433
4434         * Documentation/user/ various: major new sections in the
4435         Learning manual, slight reorg elsewhere.
4436
4437 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
4438
4439         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
4440
4441         * scm/framework-ps.scm (output-framework): remove PageMedia
4442
4443 2006-04-27  Graham Percival  <gpermus@gmail.com>
4444
4445         * Documentation/user/ tweaks.itely, working.itely: new
4446         files, being more advanced "learning manual" chapters.
4447
4448         * Documentation/user/ tutorial, putting, lilypond: reorg.
4449
4450 2006-04-26  Graham Percival  <gpermus@gmail.com>
4451
4452         * input/regression/lyric-combine-polyphonic.ly: fixed test
4453         (no more "can't find context `one'" error).
4454
4455 2006-04-25  Joe Neeman <joeneeman@gmail.com>
4456
4457         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4458
4459         * input/regression/stem-tremolo.ly: add 2 more whole note examples
4460         
4461 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4462
4463         * lily/relocate.cc (read_relocation_dir): new function.
4464
4465 2006-04-26  Graham Percival  <gpermus@gmail.com>
4466
4467         * Documentation/user/instrument-notation.itely: a few more fixes
4468         from Eduardo, thanks!
4469
4470         * Documentation/user/README.txt: new file; contains info on
4471         style that used to be in lilypond.tely.
4472
4473         * Documentation/user/ various: first round of doc reorg.
4474
4475         * Documentation/user/baer-flat-bw.png: remove alpha bit from
4476         graphic; this probably causes problems on some pdf
4477         viewers, notably Adobe Acrobat.
4478
4479 2006-04-24  Graham Percival  <gpermus@gmail.com>
4480
4481         * Documentation/user/instrument-notation.itely: many alterations
4482         to Vocal music, from Eduardo Viera.
4483
4484 2006-04-23  Graham Percival  <gpermus@gmail.com>
4485
4486         * Documentation/user/instrument-notation.itely: fix \new
4487         instead of \context problem.
4488
4489 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4490
4491         * lily/relocate.cc (expand_environment_variables): new function.
4492         (read_line): id.
4493         (read_relocation_file): id.
4494
4495         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
4496
4497 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
4498
4499         * ly/engraver-init.ly: remove old comments from TabVoice
4500
4501 2006-04-20  Graham Percival  <gpermus@gmail.com>
4502
4503         * Documentation/user/instrument-notation.itely: added Erlend's
4504         latest doc patch, thanks!
4505
4506 2006-04-19  Erlend Aasland <erlenda@gmail.com>
4507
4508         * lily/include/slur.hh:
4509         * lily/slur.cc:
4510         * lily/phrasing-slur-engraver.cc:
4511         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4512         acknowledge_extra_object () from Phrasing_slur_engraver:: and
4513         Slur_engraver:: and putting it in
4514         Slur::auxiliary_acknowledge_extra_object ().
4515
4516         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4517
4518         * lily/note-collision.cc: fix a comment
4519
4520 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4521
4522         * stepmake/bin/add-html-footer.py: fix footer position in
4523         generated html files: before </body> and </html> tags.
4524
4525 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4526
4527         * scripts/GNUmakefile: revert last "fix", which rather broke make.
4528         Earlier successive `make' commands finally compiled ok.
4529
4530         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4531
4532 2006-04-18  Erlend Aasland <erlenda@gmail.com>
4533
4534         * lily/include/stem-tremolo.hh:
4535         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4536         callers.
4537
4538         * lily/lookup.cc:
4539         * lily/include/lookup.hh: add rotated_box ()
4540
4541 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
4542
4543         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
4544         been generated. Fixes "can't get `--help'" bug after make clean.
4545
4546         * THANKS: alphabetize contributors.
4547
4548 2006-04-17  Graham Percival  <gpermus@gmail.com>
4549
4550         * Documentation/user/instrument-notation.itely: added Erlend's
4551         tabs and banjo doc patch.  Thanks!
4552
4553 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
4554
4555         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4556
4557         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4558
4559         * scm/output-lib.scm: add some more predefined string tunings.
4560
4561         * Documentation/user/instrument-notation.itely: and doc them.
4562
4563 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
4564
4565         * ly/engraver.ly: Remove obsolete comments.
4566
4567         * ly/gregorian-init.ly: Define default layout block.
4568
4569         * input/puer-fragment.ly: Updated and extended.
4570
4571 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4572
4573         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4574         pdf conversion behaviour.
4575
4576         * flower/file-name.cc (dir_name)
4577         (get_working_directory): Move from relocate.cc.
4578
4579         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4580         
4581         * lily/relocate.cc: Encapsulate sys/stat.h in
4582         HAVE_STAT_H.
4583
4584 2006-04-14  Graham Percival  <gpermus@gmail.com>
4585
4586         * Documentation/user/ various: small updates from Cameron
4587         and Juergen, thanks!
4588
4589         * Documentation/user/ various: small updates of my own.
4590
4591         * THANKS: 2.7 -> 2.8.
4592
4593 2006-04-11  Graham Percival  <gpermus@gmail.com>
4594
4595         * scm/define-context-properties.scm: typo.
4596
4597         * Documentation/user/ : many more small updates.
4598
4599 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
4600
4601         * scm/define-music-types.scm: disposed "docme".
4602
4603 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
4604
4605         * lily/hairpin.cc: make niente circles a bit smaller.
4606
4607 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
4608
4609         * mf/GNUmakefile: remove redundant mftrace check. Also remove
4610         get-pfa and get-*-fonts targets.
4611
4612 2006-04-10  Graham Percival  <gpermus@gmail.com>
4613
4614         * THANKS, Documentation/user/ basic-notation, advanced-notation,
4615         music-glossary, programming-interface: more minor fixes
4616         from mailist.
4617
4618         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4619
4620         * scm/define-context-properties.scm: another old \property update.
4621         This time tested for compiling!
4622
4623 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
4624
4625         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4626
4627 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4628
4629         * scm/define-context-properties.scm (all-user-translation-properties): 
4630         * Documentation/user/global.itely (Page formatting): Compile fix.
4631
4632 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
4633
4634         * Documentation/user/advanced-notation.itely (Polymetric
4635         notation): Update the example to use the "+" symbol and add link
4636         to input/test/compound-time.ly.
4637
4638 2006-04-08  Graham Percival  <gpermus@gmail.com>
4639
4640         * scm/define-grob-properties.scm: clarify docs for #'direction.
4641
4642         * scm/define-context-properties.scm: update old \property override.
4643
4644         * Documentation/user/ advanced-notation, global, lilypond-book:
4645         more minor doc updates.
4646
4647 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
4648
4649         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4650
4651         * scm/backend-library.scm (search-gs): oops.
4652
4653 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
4654
4655         * scripts/lilypond-book.py (output): use base, not filename for href.
4656
4657         * scm/backend-library.scm: only look for gs.
4658
4659         * scripts/lilypond-book.py (output): fix printfilename.
4660
4661         * lily/parser.yy (music_function_musicless_prefix): fold together
4662         definitions of signature (SCM*) (Music|post_event|chord_body_element)
4663
4664         * lily/slur.cc (print): only set font-size if not set yet.
4665
4666         * lily/slur-configuration.cc (add_score): improved layout of debug
4667         scoring output.
4668
4669 2006-04-05  David Feuer  <David.Feuer@gmail.com>
4670
4671         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4672         (draw_circle): Hopefully fixed regression.
4673         Improved documentation for several procedures.
4674         
4675 2006-03-04  Werner Lemberg  <wl@gnu.org>
4676
4677         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4678
4679 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
4680
4681         * scripts/musicxml2ly.py (bindir): add dynamic
4682         relocation. 
4683
4684 2006-04-04  Graham Percival  <gpermus@gmail.com>
4685
4686         * Documentation/user/ basic-notation, advanced-notation, putting,
4687         instrument-notation, invoking, lilypond, THANKS: another ream of small
4688         fixes from the Doc Helpers.
4689
4690 2006-04-03  David Feuer  <David.Feuer@gmail.com>
4691
4692         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4693
4694         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4695
4696         * Cleaned up interfaces between PostScript and Scheme, and moved
4697         computations from PostScript to Scheme:
4698
4699         * music-drawing-routines.ps
4700         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
4701         with stroke_and_fill throughout.
4702         (euclidean_length, print_letter, draw_box): Deleted unused
4703         procedures.  If someone needs draw_box, implement it using
4704         draw_round_box; don't duplicate code.
4705         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4706         Refactored/cleaned up interfaces.
4707         (mark_URI): Moved.
4708
4709         * output-ps.scm: reordered arguments to PostScript functions to
4710         match new interfaces
4711         (glyph-string): Rewrote glyph-string.
4712         (grob-cause): Replaced string-append with format.
4713         (repeat-slash): Rewrote to do computation here.
4714         (round-filled-box): Rewrote to do computation here.
4715
4716 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
4717
4718         * stepmake/stepmake/generic-targets.make: add cvs-clean target
4719
4720         * stepmake/stepmake/toplevel- targets.make: print help info about
4721         cvs-clean
4722
4723 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4724
4725         * input/regression/hairpin-circled.ly: new file
4726
4727 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
4728
4729         * lily/hairpin.cc (print): add support for circled tip
4730
4731         * scm/define-grob-properties.scm: add circled-tip parameter
4732
4733         * scm/define-grobs.scm: init circled-tip to false
4734         
4735 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
4736
4737         * scm/music-functions.scm (quote-substitute): set
4738         iterators-ctor. 
4739
4740 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4741
4742         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4743         BSTINPUTS. 
4744
4745         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4746
4747         * scm/output-ps.scm (glyph-string): revert cid selectfont.
4748
4749 2006-03-31  David Feuer  <david.feuer@gmail.com>
4750         
4751         * scm/framework-ps.scm:
4752         
4753         * scm/output-ps.scm: glyph-string now produces smaller, more
4754         readable, and probably faster PostScript.  Several findfont
4755         scalefont setfont instances changed to selectfont
4756         Hacked-up string-appends changed to formats.
4757
4758         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4759         
4760 2006-03-30  Graham Percival  <gpermus@gmail.com>
4761
4762         * scm/lily-library.scm: make "no version" warning message more polite.
4763
4764         * lily/music.cc: add double quotes to failed octave check.
4765
4766         * Documentation/user/ advanced-notation, changing-defaults,
4767         instrument-notation, invoking, music-glossary: whole bunch of minor
4768         fixes from mailist.
4769
4770 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
4771
4772         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4773         $(buildscriptdir) iso. depth.
4774
4775         * VERSION (PACKAGE_NAME): release 2.9.1
4776
4777 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4778
4779         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4780
4781         * VERSION (PATCH_LEVEL): bump version number.
4782
4783         * flower/include/guile-compatibility.hh (scm_from_uint32): add
4784         scm_from_uint32 ()
4785
4786         * lily/pango-font.cc (pango_item_string_stencil): use
4787         scm_from_uint32 ()
4788
4789         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4790         $(outdir)/emmentaler-%.svg): remove canary.
4791
4792         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4793         glyphnames if we have a ttf font.
4794
4795 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
4796
4797         * Documentation/user/advanced-notation.itely (Font selection):
4798         Corrected reference to the font-family-override.ly example.
4799
4800 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4801         
4802         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4803         stem-tremolo object in the stem (or else the stem might not be
4804         long enough).
4805
4806 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4807
4808         * lily/ttf.cc (print_trailer): only print existing glyphs.
4809
4810 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
4811
4812         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4813         position the tremolo based on the position of the notehead.
4814
4815         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4816         notes and update the texidoc line with the new positioning rules.
4817         
4818 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
4819
4820         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4821
4822         * scripts/lilypond-book.py (Module): set default for linewidth if
4823         preamble not found.
4824
4825 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4826
4827         * VERSION (PACKAGE_NAME): release 2.9.0.
4828
4829         * input/regression/stem-tremolo-position.ly: new file.
4830
4831         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4832
4833 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
4834
4835         * lily/stem-tremolo.cc (print): position
4836         the tremolo depending only on the end of the stem
4837         and not on the notehead
4838         (raw_stencil): center, on the middle staff line, the
4839         flag that is closest to the end of the stem (previously
4840         the bottom flag)
4841         (calc_width): add this callback to shorten a tremolo when
4842         it is beamed or it is stemup with a flag
4843         (style): add this callback to make a tremolo rectangular when
4844         it is beamed or it is stemup with a flag
4845         (rotated_box): this is like Lookup::beam but makes a rotated
4846         rectangle instead of a parallelogram
4847
4848         * lily/stem.cc (calc_stem_info): make sure the stem
4849         is long enough to fit the tremolo
4850         (calc-length): reduce the length of tremolo stems since the
4851         tremolo code is now capable of better positioning
4852
4853         * scm/define-grobs.scm: make calc_width the default beam-width
4854         callback for stem-tremolo and add the style callback
4855                 
4856 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4857
4858         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4859         case. 
4860
4861 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
4862
4863         * lily/ttf.cc (make_index_to_charcode_map): restore old
4864         cmap. 
4865
4866 2006-03-28  Werner Lemberg  <wl@gnu.org>
4867
4868         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4869
4870 2006-03-28  Graham Percival  <gpermus@gmail.com>
4871
4872         * THANKS: update for 2.9, add section for Documentation helpers.
4873
4874         * Documentation/topdocs/NEWS.tely: compile fix.
4875
4876         * Documentation/user/ basic-notation, global, advanced-notation,
4877         examples.itely: minor fixes from mailist.
4878
4879 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
4880
4881         * mf/feta-bolletjes.mf: match width of solfa notes with normal
4882         note heads. 
4883
4884         * lily/ttf.cc (print_trailer): use it.
4885
4886         * lily/pango-font.cc (get_unicode_name): new function.
4887
4888         * lily/ttf.cc (make_index_to_charcode_map): move function from
4889         open-type-font.cc
4890         (print_trailer): substitute uniXXXX name if applicable. 
4891
4892         * lily/pango-font.cc (get_index_to_charcode_map): new function.
4893         (pango_item_string_stencil): use it to generate uniXXXX names.
4894
4895         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4896         note heads, for uniform widths in shape note output.
4897         (overdone_heads): hmm. remove them again.
4898
4899         * scripts/lilypond-book.py (output): add links to filenames.
4900
4901         * Documentation/topdocs/INSTALL.texi (Top): update versions.
4902
4903         * lily/note-collision.cc (get_clash_groups): only consider when
4904         Note_column::dir <> CENTER. 
4905
4906         * scripts/lilypond-book.py (get_option_parser): init output_name
4907         to ''. 
4908
4909 2006-03-24  Graham Percival  <gpermus@gmail.com>
4910
4911         * Documentation/topdocs/NEWS.tely: add @end itemize
4912
4913         * Documentation/user/ global, advanced-notation: minor
4914         stuff from mailist.
4915
4916 2006-03-23  Graham Percival  <gpermus@gmail.com>
4917
4918         * Documentation/user/ lilypond.tely, music-glossary,
4919         preface: housekeeping; 2005->2006, remove "notes for 2.6"
4920
4921 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
4922
4923         * mf/GNUmakefile: don't install .enc files.
4924
4925         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4926
4927         * VERSION (PATCH_LEVEL): bump to 2.9.0
4928
4929 2006-03-22  Graham Percival  <gpermus@gmail.com>
4930
4931         * Documentation/user/advanced-notation.itely: minor fixes
4932         from mailist.
4933
4934 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
4935
4936         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4937
4938         * branch lilypond_2_8
4939
4940 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4941
4942         * scripts/lilypond-book.py (samefile): new function, for windoze
4943         compatibility.
4944
4945 2006-03-21  Graham Percival  <gpermus@gmail.com>
4946
4947         * ly/engraver-init.ly: add info about StaffGroup.
4948
4949 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
4950
4951         * input/regression/stem-direction-context.ly: idem.
4952
4953         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4954
4955         * THANKS: add Mats.
4956
4957         * input/regression/page-layout-twopass.ly: comment out \markup so
4958         tweak-file is left.
4959
4960         * lily/instrument-name-engraver.cc (finalize): add to instrument
4961         name global System. This also fixes chopped instrument names, but
4962         doesn't crash when there are slurs/beams.
4963
4964         * lily/slur-configuration.cc (add_score): disallow negative slur
4965         scores.
4966         
4967 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4968
4969         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4970
4971         * lily/instrument-name-engraver.cc (process_music): kludge: add
4972         InstrumentName spanner to axis group of left bound. Fixes chopped
4973         off instrument names in EPS images.
4974
4975         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4976
4977         * scripts/abc2ly.py (option_parser): update to 2.7.40
4978
4979 2006-03-20  Graham Percival  <gpermus@gmail.com>
4980
4981         * THANKS: move small doc contributors to SUGGESTIONS.
4982
4983         * Documentation/user/ basic-notation, advanced-notation,
4984         global: small changes from mailist.
4985
4986 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4987
4988         * Documentation/user/advanced-notation.itely (Text marks): update
4989         for new rehearsalMarkAlignSymbol convention.
4990
4991         * VERSION (PATCH_LEVEL): bump version.
4992
4993         * input/test/instrument-name-align.ly: new file.
4994
4995         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4996
4997         * input/test/instrument-name-align.ly: new file. Document how to
4998         align instrument names.
4999
5000         * lily/mark-engraver.cc: remove properties.
5001
5002         * scm/define-context-properties.scm
5003         (all-user-translation-properties): remove align symbol properties
5004         for barnumber/reh. mark.
5005
5006         * lily/break-align-interface.cc (self_align_callback): new
5007         interface, new function. Look at complete alignment. This handles
5008         tunable break alignments in case break-align-symbols are missing.
5009
5010         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
5011
5012         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
5013
5014         * python/convertrules.py (conv): mark/bar number alignment rule.
5015
5016         * lily/break-align-interface.cc (calc_positioning_done): also
5017         store offset from last visible break-alignment to its
5018         neighbor. This makes alignment on non-visible objects more reliable.
5019
5020         * po/lilypond.pot (Module): ran po-replace.
5021
5022         * input/regression/tie-single-manual.ly (Module): new file.
5023
5024         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
5025         look at has_manual_position_.
5026         (from_ties): set has_manual_position_ if tie has staff-position set.
5027
5028         * lily/tuplet-bracket.cc (calc_positions): idem.
5029
5030         * lily/tuplet-number.cc (print): don't print tupletnumber if it
5031         doesn't span time.
5032
5033 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5034
5035         * scm/define-markup-commands.scm (smallCaps): new markup command
5036         for turning a text to small caps using smaller font size and upper
5037         casing.
5038
5039 2006-03-17  Graham Percival  <gpermus@gmail.com>
5040
5041         * Documentation/user/ examples, instrument-notation,
5042         advnaced-notation: minor fixes from mailist.
5043
5044 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5045
5046         * Documentation/user/tutorial.itely (First steps): change example
5047         to verbatim.  
5048
5049 2006-03-17  Graham Percival  <gpermus@gmail.com>
5050
5051         * Documentation/user/ examples, advanced: minor changes from mailist.
5052
5053         * THANKS: add Geoff Horton, for documentation stuff.
5054
5055 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5056
5057         * python/lilylib.py (system): revert have_select kludge.
5058
5059         * Documentation/user/tutorial.itely (Commenting input files):
5060         update version numbers in doc. 
5061
5062         * scm/define-grob-interfaces.scm (multi-measure-interface): add
5063         bound-padding to multi-measure-interface
5064
5065 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5066
5067         * input/test/engraver-example.ily: update version number.
5068
5069         * VERSION (PACKAGE_NAME): release 2.7.39
5070
5071         * lily/note-spacing.cc (get_spacing): heighten threshold where
5072         accidentals/arpeggios influence previous spacing fully.
5073
5074         * lily/rest.cc (y_offset_callback): only use direction if
5075         staff-position wasn't set before.
5076
5077         * lily/bar-number-engraver.cc: add support for
5078         barNumberAlignSymbol. 
5079         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
5080
5081         * lily/pointer-group-interface.cc (set_ordered): new function. 
5082         (add_unordered_grob): new function.
5083
5084         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
5085         to ordered, unless the opposite has been proved.  This fixes
5086         random reordering of large object groups across linebreaks,
5087         eg. beams.
5088
5089         * lily/main.cc (do_chroot_jail): printf format fix.
5090
5091         * lily/tie-formatting-problem.cc (generate_configuration):
5092         multiply y-shift for dot with direction.
5093  
5094         * scm/define-markup-commands.scm (note-by-number): put (magstep
5095         size) in y-attach too.
5096
5097         * Documentation/topdocs/NEWS.tely (Top): show override.
5098
5099         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
5100         direction for stems.
5101         
5102 2006-03-15  Graham Percival  <gpermus@gmail.com>
5103
5104         * Documentation/user/ changing-defaults, global: minor
5105         fixes from mailist.
5106
5107 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5108
5109         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
5110
5111         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
5112         breakable items after uniformly stretched notes.
5113
5114         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
5115         outline with outer edge of note heads. This prevents infinity
5116         problems with tied whole notes.
5117
5118         * scripts/lilypond-book.py (do_file): use os.popen
5119
5120         * python/convertrules.py (conv): add rule for Stem #'beamed-*
5121
5122 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
5123
5124         * Documentation/user/invoking.itely: Add ragged-right to bug report
5125         guidelines.
5126
5127 2006-03-14  Graham Percival  <gpermus@gmail.com>
5128
5129         * Documentation/user/global.itely: small fix from mailist.
5130
5131 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
5132
5133         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
5134         file descriptor returned by tempfile.mkstemp() when writing
5135         to tmpfile and closing it. Solves problem with unlink(tmpfile)
5136         on mingw.
5137
5138 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5139
5140         * po/fi.po: newline bugfix.
5141
5142 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5143
5144         * scm/paper.scm (paper-alist): Rounding fixes.
5145
5146 2006-03-13  Graham Percival  <gpermus@gmail.com>
5147
5148         * Documentation/user/ changing-defaults, instrument-notation,
5149         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
5150
5151 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
5152
5153         * po/fi.po: update.
5154
5155 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
5158         mailto: to http:// 
5159
5160         * python/lilylib.py (print_environment): move ps_page_count to
5161         lilypond-book.py
5162
5163 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5164
5165         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
5166
5167         * scm/framework-ps.scm (embed-document): new function. Use to
5168         embed PFA files.
5169
5170         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
5171
5172 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
5173
5174         * Documentation/user/instrument-notation.itely (Setting simple
5175         songs): Added \book{...} around the full example, so the separate
5176         markups are included in the printed example. 
5177
5178 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5179
5180         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
5181         tmphandle.
5182
5183         * python/lilylib.py (system): rewrite system() using
5184         subprocess. Remove >& redirection trickery.
5185
5186 2006-03-11  Graham Percival  <gpermus@gmail.com>
5187
5188         * Documentation/user/ changing-defaults, global, scheme-tutorial,
5189         notation-appendices.itely: minor fixes from mailist.
5190
5191 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5192
5193         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
5194         unsplit man also needs images.
5195
5196         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
5197
5198         * VERSION (PACKAGE_NAME): 2.7.38 released.
5199
5200 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5201
5202         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
5203         log in output dir.
5204
5205 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
5206
5207         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
5208         respects the Score.skipTypesetting property.
5209         
5210 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5211
5212         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
5213         Prolog. No %%EOF after CFF file.
5214
5215 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
5216         
5217         * lily/constrained-breaking.cc (get_max_systems): used to return a
5218         much too big value
5219         (combine_demerits): use pointers to reduce copying data
5220         (calc_subproblem): idem
5221         (get_page_penalty): add page turn penalties
5222         
5223 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5224
5225         * Documentation/user/invoking.itely (Invoking lilypond): better
5226         explanation of -e usage.
5227
5228         * lily/main.cc (main_with_guile): don't append to
5229         init_scheme_code_string
5230
5231         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
5232
5233         * Documentation/user/invoking.itely: add note about MacOS X scripts.
5234
5235         * scripts/convert-ly.py (do_options): don't print help for
5236         --show-rules rule.
5237
5238         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
5239         @code and @example. Update from texinfo.tex from CVS.
5240
5241 2006-03-08  Graham Percival  <gpermus@gmail.com>
5242
5243         * Documentation/user/scheme-tutorial.itely: clarifies distances
5244         measured in staff-spaces.
5245
5246 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5247
5248         * lily/slur.cc (outside_slur_callback): only calculate offsets if
5249         consider[k] is true.
5250
5251         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
5252
5253         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
5254         consider columns that have originals.  Unifies spacing for mm
5255         rests around line breaks.
5256
5257         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
5258         (set_text_rods): idem.
5259         (calculate_spacing_rods): new function: share code between
5260         set_text_rods and set_spacing_rods.
5261         (set_text_rods): take extents of bounds into account.  
5262
5263 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5264
5265         * Documentation/user/basic-notation.itely (Writing music in
5266         parallel): don't use relative.
5267
5268 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5269
5270         * ly/music-functions-init.ly (Module): add shiftDurations
5271
5272         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
5273
5274         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
5275
5276         * ly/engraver-init.ly: init vocalName to nil.
5277
5278 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
5279
5280         * scm/music-functions.scm (music->make-music): bugfix,
5281         KeyChangeEvents are now handled correctly.
5282
5283         * scripts/lilypond-book.py: Add --debug option.
5284
5285 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5286
5287         * python/lilylib.py: add tempfile.
5288
5289 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5290
5291         * VERSION (PACKAGE_NAME): release 2.7.37
5292
5293         * python/lilylib.py (ps_page_count): remove make_ps_images().
5294         (ps_page_count): remove mkdir_p
5295         (system): remove cleanup_temp.
5296         (exit): remove lilypond_version_(check)
5297         (error_log): remove pseudo_filter_p
5298         remove read_pipe
5299         remove cp_to_dir
5300         remove identify
5301
5302         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
5303         use __main__
5304
5305         * lily/accidental-engraver.cc (make_standard_accidental): only add
5306         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
5307
5308         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
5309         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
5310         Make incompatibilities.
5311
5312         * scm/output-ps.scm (grob-cause): replace backslashes by /
5313         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
5314
5315 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5316
5317         * cygwin/GNUmakefile: Install fixes.
5318
5319         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5320
5321         * lily/note-head.cc (head::get_balltype): Compile fix.
5322
5323         * flower/file-name.cc (dos_to_posix): Flower string fix.
5324
5325 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5326
5327         * python/lilylib.py: pychecker cleanups.
5328
5329         * scripts/lilypond-book.py
5330         (Lilypond_snippet.output_print_filename): pychecker cleanups
5331
5332         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5333
5334         * python/lilylib.py (underscore): remove identify() , warranty()
5335
5336         * ps/music-drawing-routines.ps: change Border routine for GSView
5337         compatibility.
5338
5339         * lily/stem.cc (height): use quantize-positions.  This triggers
5340         set_stem_lengths, so scripts on beamed stems are handled correctly.
5341
5342         * lily/side-position-interface.cc (aligned_side): check if edges
5343         of script are inside staff. Fixes accent of edge of the staff.
5344
5345         * input/regression/staccato-pos.ly: more examples.
5346
5347         * stepmake/aclocal.m4 (depth): fix bashism.
5348
5349         * lily/lyric-combine-music-iterator.cc: move from
5350         new-lyric-combine-iterator.cc
5351         (process): add pending_grace_lyric_ member to delay lyrics on
5352         grace notes.
5353
5354         * lily/system-start-text.cc (print): suicide if we don't have any
5355         elements. Fixes hara kiri'd instrument names.
5356
5357         * scripts/mup2ly.py (Module): remove.
5358
5359 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5360
5361         * Documentation/user/global.itely (A single music expression):
5362         close @lilypond properly
5363
5364         * lily/volta-bracket.cc (modify_edge_height): change from
5365         after_line_breaking_callback. Suicide last bracket if appropriate.
5366  
5367         * python/lilylib.py: strip getopt support
5368
5369         * scripts/etf2ly.py (do_options): use optparse
5370
5371         * scripts/midi2ly.py: optparse, strip lilylib copy. 
5372
5373         * scripts/abc2ly.py (voices): use optparse.
5374
5375         * stepmake/stepmake/generic-vars.make: new function absdir.
5376
5377         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5378
5379         * scripts/lilypond-book.py (find_file): use global_options for
5380         include path
5381
5382         * scm/ps-to-png.scm (ps-page-count): prevent null characters
5383         entering C code.
5384
5385 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5386
5387         * python/lilylib.py (get_global_option): ughness for extracting
5388         global options from lilylib.
5389         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5390
5391         * scripts/lilypond-book.py (get_option_parser): use optparse for
5392         option handling.  Put options in global_options variable.
5393
5394 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
5395
5396         * Documentation/index.html.in: clarify.
5397
5398 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5399
5400         * scm/layout-page-layout.scm (write-page-breaks): add a
5401         music-system-heights property to the page layout output.
5402
5403         * scm/page.scm (make-page-stencil): take footer into account when
5404         computing the 'space-left page property
5405         (annotate-space-left): take footer into account when annonating
5406         space left.
5407
5408 2006-02-28  Graham Percival  <gpermus@gmail.com>
5409
5410         * Documentation/user/ advanced-notation, global: more (final)
5411         docs for music expressions, removed special fermatas.
5412
5413 2006-02-27  Graham Percival  <gpermus@gmail.com>
5414
5415         * Documentation/user/ basic-notation, global: minor changes
5416         from mailist.
5417
5418 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5419
5420         * scm/framework-ps.scm:         
5421         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5422         layer for inf? and nan? from framework-ps to lily-library.
5423
5424 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5425
5426         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5427         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5428
5429         * buildscripts/substitute-encoding.py (Module): remove file.
5430
5431         * mf/GNUmakefile: more PFA strippage.
5432
5433         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5434
5435         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5436         generation
5437
5438         * scm/framework-ps.scm: remove font name munging.
5439
5440         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5441
5442 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5443
5444         * scm/markup.scm (define-markup-command): change
5445         def-markup-command to define-markup-command
5446
5447         * scm/music-functions.scm (define-music-function): change
5448         def-music-function to define-music-function.
5449
5450         * python/convertrules.py (conv): rules for def-music-function
5451         and def-markup-commands
5452
5453         * Documentation/user/programming-interface.itely,
5454         input/no-notation/display-lily-tests.ly,
5455         input/regression/lily-in-scheme.ly,
5456         input/regression/markup-user.ly,
5457         input/regression/music-function.ly, input/regression/tie-chord.ly,
5458         scm/fret-diagrams.scm, ly/music-functions-init.ly,
5459         ly/gregorian-init.ly: use new macro names (define-music-function,
5460         define-markup-command).
5461
5462 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5463
5464         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
5465         (output): add comments to lp-book latex output.
5466
5467         * GNUmakefile.in (footifymail): use gmane address for webpage bug
5468         address.
5469
5470 2006-02-23  Graham Percival  <gpermus@gmail.com>
5471
5472         * Documentation/user/ tutorial, global: minor changes.
5473
5474 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5475
5476         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5477         blocks (for make 3.80)
5478
5479         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5480         \notemode so that user should not have to explicitely type it.
5481
5482         * scm/define-music-display-methods.scm: various
5483         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5484         constructs)
5485
5486         * input/no-notation/display-lily-tests.ly: new tests for
5487         \applyOutput and \applyContext
5488
5489 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5490
5491         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5492         changed it slightly so that the number of systems returned by
5493         solve () will be the same as the last value passed to resize
5494         (). I've also added more documentation, removed casts, fixed style
5495         problems and put in some recovery if constraints aren't satisfied."
5496
5497 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5498
5499         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5500         for emacs < 22 compatibility.
5501         (count-rexp): Use it.
5502         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5503         substring juggling (Milan Zamazal).
5504
5505 2006-02-23  Graham Percival  <gpermus@gmail.com>
5506
5507         * Documentation/user/ basic-notation, advanced-notation,
5508         global.itely, invoking.itely, tutorial,itely:
5509         minor fixes from mailist.
5510
5511         * scm/define-markup-commands.scm: improve docs of \filled-box.
5512
5513 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
5514
5515         * Documentation/index.html.in: changes concern the previous release.
5516
5517         * input/regression/+.ly: cultivate typographical terminology.
5518
5519 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5520
5521         * scm/define-grob-interfaces.scm (parentheses-interface): add
5522         padding to parentheses-interface.
5523
5524         * Documentation/user/GNUmakefile: remove $(CROSS) support from
5525         Documentation/user/GNUmakefile. Use --disable-documentation for that.
5526
5527         * VERSION (PATCH_LEVEL): release 2.7.36
5528
5529         * lily/slur.cc: add avoid-slur (ugh.)
5530         
5531         * lily/slur-configuration.cc (fit_factor): oops, skip point if
5532         intersection gets smaller. This fixes slurs over extreme points.
5533
5534         * lily/melody-engraver.cc (stop_translation_timestep): ignore
5535         stems with neutral-direction set.
5536
5537         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5538
5539         * lily/open-type-font.cc (load_table): format error.
5540
5541         * lily/change-iterator.cc (process): format fix.
5542
5543         * flower/include/international.hh (_f): idem.
5544
5545         * flower/include/std-string.hh: add format printf attribute.
5546
5547         * scm/define-grobs.scm (all-grob-descriptions): height of all
5548         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5549
5550         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5551         ambitus lines.
5552
5553         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5554
5555 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
5556
5557         * input/regression/: upgraded syntax for some files.
5558
5559         * THANKS: Add bughunters.
5560
5561 2006-02-22  Graham Percival  <gpermus@gmail.com>
5562
5563         * Documentation/user/ invoking.itely, advanced-notation.itely,
5564         global.itely: long-awaited "let's make chapter 10 not suck"
5565         update.  Rearrange chapter 10; now called "global issues",
5566         addresses file structure, etc.  Some info from other files
5567         moved into global.itely.
5568
5569 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5570
5571         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5572         catch trill-span-event notes.
5573
5574         * Documentation/user/examples.itely (Ancient notation templates): typo.
5575         (Jazz combo): typo.
5576
5577         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
5578
5579         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5580
5581         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5582
5583         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5584
5585         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5586         froum Laissez_vibrer_engraver.
5587
5588         * ly/declarations-init.ly (repeatTie): add \repeatTie
5589
5590         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5591
5592         * scm/define-grob-properties.scm (all-user-grob-properties): add
5593         head-direction property.
5594
5595         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5596         from_lv_ties. Take head direction argument.
5597
5598         * lily/semi-tie-column.cc: rename from
5599         laissez-vibrer-tie-column.cc. Rename class too.
5600
5601         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5602         class too.
5603
5604         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5605
5606         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5607         0 case.
5608         (find_breaks): idem.
5609
5610 2006-02-21  Graham Percival  <gpermus@gmail.com>
5611
5612         * Documentation/user/advanced-notation.itely: fixed make-moment]
5613         example.
5614
5615         * Documentation/user/basic-notation.itely: more clarification to
5616         transpose.
5617
5618 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5619
5620         * lily/include/constrained-breaking.hh (class
5621         Constrained_breaking): new file.
5622
5623         * lily/constrained-breaking.cc (resize): new file.
5624
5625         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5626
5627         * Documentation/user/advanced-notation.itely (Clusters): insert
5628         end ignore too.
5629
5630         * lily/tie-column.cc (calc_positioning_done): support for
5631         tie-score debugging
5632
5633         * lily/tie-formatting-problem.cc
5634         (generate_extremal_tie_variations): factor out.
5635         (score_ties_configuration): annotate all tie 
5636         (print_ties_configuration): new routine.
5637         (generate_configuration): nudge extremal ties outside of the head
5638         Y extents.
5639         (score_ties_configuration): oops. convert to staff-space before
5640         determining position symmetry.
5641
5642 2006-02-20  Graham Percival  <gpermus@gmail.com>
5643
5644         * Documentation/user/*-notation.itely: misc minor editing,
5645         shifting doc sections around.
5646
5647         * Documentation/user/*-notation-itely, global.itely,
5648         changing-defaults.itely: added new stuff from NEWS.
5649
5650 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
5651
5652         * po/fi.po: update.
5653
5654 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5655
5656         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5657         lilypond --verbose for lp-book.
5658
5659         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5660         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5661
5662         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5663         $(buildscript-dir) iso. absolute depth.
5664
5665         * buildscripts/genicon.py (dir): thinko.
5666
5667         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5668
5669 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
5670
5671         * scm/output-lib.scm: swap darkcyan/darkyellow
5672
5673         * THANKS: Add bughunters.
5674
5675 2006-02-19  Graham Percival  <gpermus@gmail.com>
5676
5677         * Documentation/user/programming-interfaces.itely: fixed example.
5678
5679         * Documentation/user/instrument-notation.itely: fix @{ @}.
5680
5681         * scm/script.scm: add avoid-slur for \open.
5682
5683 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5684
5685         * lily/tie-formatting-problem.cc (score_configuration): use
5686         sliding score for min-length. 
5687
5688         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5689         spaghetti for icons.
5690
5691         * buildscripts/genicon.py (program_name): new file.
5692
5693         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5694         in outline too.  
5695         (generate_configuration): for small ties, also look for collisions
5696         at Y + DIR*h + DELTA_Y.
5697         (get_variations): consider variation for dot positions too.
5698
5699         * lily/side-position-interface.cc (aligned_side): take abs for
5700         quantized rounded position. Fixes tenuto below staff.
5701
5702         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5703         markers when necessary.
5704
5705         * lily/program-option.cc (internal_set_option): add
5706         strict_infinity_checking option.
5707
5708         * scm/output-lib.scm (cyan): swap yellow and cyan.
5709
5710 2006-02-19  Graham Percival  <gpermus@gmail.com>
5711
5712         * darwin.patch: trivial linenumber update.
5713
5714         * Documentation/user/ {various}: `\context foo = named' changed
5715         to `\new foo = "name"' in docs.
5716
5717 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5718
5719         * scm/stencil.scm (annotate-y-interval): use it.
5720
5721         * scm/lily-library.scm (interval-sane?): new function.
5722
5723         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5724         tfm_checksum stuff.
5725
5726         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5727         common refpoint.
5728
5729         * flower/include/std-vector.hh (iterof): add iterof macro.
5730
5731         * lily/enclosing-bracket.cc (width): new function.
5732
5733         * lily/align-interface.cc (align_elements_to_extents): reinstate
5734         warning.
5735
5736 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
5737
5738         * Documentation/index.html.in: fix spelling: thankyous.
5739
5740 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5741
5742         * lily/lyric-hyphen.cc: typo.
5743
5744 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5745
5746         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5747         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5748         builds don't work. 
5749
5750         * VERSION: release 2.7.35
5751
5752         * lily/beam.cc (get_default_dir): oops. Take abs () for
5753         extremes[DOWN].
5754         (get_default_dir): use extreme position criterion only in absence
5755         of forced stem directions.
5756
5757         * VERSION (PATCH_LEVEL): bump VERSION.
5758
5759         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5760         dependencies. Necessary for -jX builds.  
5761
5762 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
5763
5764         * lily/relocate.cc (setup_paths): Yet another const fix.
5765
5766 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5767
5768         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5769
5770         * lily/relocate.cc (setup_paths): oops.
5771
5772 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
5773
5774         * Documentation/index.html.in: order links: html before PDF.
5775
5776 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5777
5778         * lily/tie-column-format.cc (Module): remove.
5779
5780         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5781
5782         * lily/text-spanner.cc (print): idem.
5783
5784         * lily/dynamic-text-spanner.cc (print): only print line if longer
5785         than dash-period.
5786
5787         * lily/auto-change-iterator.cc (change_to): formatting.
5788
5789         * lily/beam.cc (get_default_dir): take extreme note head as input
5790         for stem direction.
5791
5792         * lily/tie.cc (get_default_dir): only look directions for visible
5793         stems. 
5794
5795         * lily/side-position-interface.cc (aligned_side): oops. Don't
5796         mutiply with direction. This fixes quantized (staccato, tenuto)
5797         scripts below notes.
5798
5799         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5800         direction. Fixes c-lyrics-center-align.ly
5801
5802 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5803
5804         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5805         constructor.
5806
5807         * lily/std-string.cc:
5808         * lily/include/std-vector.hh (split_string): Move and rename from
5809         lily/include/misc.hh, lily/misc.cc.  Update callers.
5810
5811 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5812
5813         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5814
5815 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
5816
5817         * flower/test-file.cc: New file.
5818
5819         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5820         libraries.
5821
5822         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5823
5824 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5825
5826         * flower/include/file-storage.hh: remove file.
5827
5828         * lily/include/midi-item.hh (class Midi_track): idem.
5829
5830         * lily/include/source.hh (class Sources): idem.
5831
5832         * lily/include/performance.hh (class Performance): use vector
5833         iso. Cons<>
5834
5835         * flower/include/cons.hh (class Cons): remove file.
5836
5837         * flower/include/flower-proto.hh: remove template cruft.
5838
5839         * lily/include/font-metric.hh: use size_t not vsize for indices.
5840
5841         * flower/include/flower-proto.hh (Module): remove std-vector.hh
5842         from proto.
5843
5844         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5845
5846         * lily/include/paper-book.hh (class Paper_book):
5847         make get_system_specs() public.
5848
5849         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5850         the force=10000 case if we don't have a current-best. 
5851
5852         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5853         vsize 
5854
5855         * flower/include/flower-proto.hh: remove outdated templates.
5856
5857         * scm/page.scm: use annotate-spacing
5858
5859 2006-02-15  Graham Percival  <gpermus@gmail.com>
5860
5861         * scm/translation-functions.scm: circle patch from Erlend, thanks!
5862
5863         * THANKS: moved Erlend Aasland to contributors.
5864
5865 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5866
5867         * config.hh.in: remove HAVE_PANGO_16
5868
5869         * lily/tuplet-bracket.cc (calc_positions): multiply with
5870         staff-space for beam case. This fixes tuplets+beams on scaled
5871         staves.
5872
5873         * config.hh.in: remove all Kpathsea related defines.
5874
5875         * lily/dot-column.cc (side_position): reach stem via dots->
5876         head->stem. Inspect all stems for dot collisions. 
5877
5878         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5879         stem handling.
5880
5881         * lily/bar-number-engraver.cc (process_music): document function
5882         of whichBar.
5883
5884         * lily/score.cc (default_rendering): add pscore, not systems
5885         themselves.
5886
5887         * lily/paper-book.cc (get_system_specs): separate generation of
5888         titles and systems.
5889
5890         * flower/include/std-vector.hh: don't include config.hh
5891
5892 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5893
5894         * flower/include/std-vector.hh: Better wrapper compatibility with
5895         std::vector.
5896
5897         * flower/include/flower-proto.hh: Remove cheap forward declaration
5898         attempts.
5899
5900         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5901
5902 2006-02-14  Graham Percival  <gpermus@gmail.com>
5903
5904         * Documentation/user/invoking.itely: add warning about command line.
5905
5906 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5907
5908         * lily/include/lily-proto.hh: add Prob, rm Page.
5909
5910         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5911
5912         * VERSION: release 2.7.34
5913
5914         * lily/relocate.cc (framework_relocation): show canary if
5915         GHOSTSCRIPT_VERSION undefined.
5916
5917         * GNUmakefile.in: remove $(VERSION) symlink.
5918
5919         * lily/relocate.cc (setup_paths): add + 
5920
5921 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
5922
5923         * Documentation/index.html.in: specify sizes for all big HTML pages.
5924
5925 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5926
5927         * config.hh.in: remove @FRAMEWORKDIR@
5928
5929         * lily/system-start-text.cc (get_stencil): new file: separate out
5930         system-start-delimiter text support.
5931
5932         * input/**ly: replace \context with \new where appropriate.
5933         
5934         * THANKS: add Don.
5935
5936         * lily/slur-scoring.cc (get_base_attachments): use
5937         robust_relative_extent. This fixes problems with empty paper-columns. 
5938
5939 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5940
5941         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5942
5943         * scm/define-music-properties.scm (all-music-properties):
5944         create-new property.
5945
5946         * lily/context-specced-music-iterator.cc (construct_children):
5947         inspect 'create-new property iso. magical $uniqueContextId context
5948         id.
5949
5950         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5951
5952         * lily/context-key-manager.cc (Module): new file. Encapsulate
5953         object key generation.
5954
5955         * lily/include/context-key-manager.hh (Module): new file.
5956
5957 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5958
5959         * scm/define-grobs.scm (all-grob-descriptions): center instrument
5960         names vertically
5961
5962         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5963         options.
5964         (reloc_b): excise --enable-framework-dir
5965
5966         * lily/relocate.cc (framework_relocation): use getenv
5967         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5968
5969 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5970
5971         * flower/include/std-string.hh: 
5972         * flower/include/std-vector.hh: Finish std:: conversion; move
5973         flower extensions from std:: namespace.  Update users.
5974
5975         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5976         their expansion to vector<*>.  Update users.
5977
5978 2006-02-10  Graham Percival  <gpermus@gmail.com>
5979
5980         * Documentation/user/invoking.itely: add example to File structure.
5981
5982         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5983         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5984
5985 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5986
5987         * ly/paper-defaults.ly: typo.
5988
5989         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5990         set_parent() for parentheses. This will make it show up in bbox
5991         calculations.
5992
5993         * scm/output-lib.scm (parentheses-item::print): rewrite, using
5994         ly:grob-common* functions.
5995
5996         * lily/grob-scheme.cc (LY_DEFINE):
5997         ly:grob-common-refpoint-of-array: new function 
5998         ly:grob-common-refpoint: new function 
5999         ly:grob-relative-coordinate: new function 
6000
6001         * lily/instrument-name-engraver.cc (process_music): use
6002         Text_interface::is_markup(). This fixes \markup on instrument names.  
6003
6004         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
6005         for ties and slurs.
6006
6007         * lily/slur.cc (print): idem.
6008
6009         * lily/tie.cc: add line-thickness for ties. 
6010
6011 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6012
6013         * scm/output-svg.scm: Document diversion from GNU coding standards
6014         as a workaround for a bug in Microsoft Internet Explorer.
6015
6016 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6017
6018         * lily/instrument-name-engraver.cc (process_music): use
6019         is_markup() iso. is_string()
6020
6021         * Documentation/user/changing-defaults.itely (Module): add menu entry.
6022
6023         * lily/percent-repeat-engraver.cc (process_music): only look at
6024         main_part_ for % repeats.
6025
6026         * lily/stem-tremolo.cc (get_beam_translation): new function.
6027         (calc_slope): new function.
6028         (height): don't use real slope.
6029
6030 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
6031
6032         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
6033         new connect-to-neighbor, control-points and staff-padding
6034         properties to make ligature brackets showing up again.
6035
6036 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6037
6038         * VERSION: release 2.7.33
6039
6040         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
6041         too many.
6042
6043         * Documentation/user/changing-defaults.itely (Difficult tweaks):
6044         remove applyOutput example.
6045         (Objects connected to the input): document \tweak, \parenthesize
6046
6047         * lily/relocate.cc (prefix_relocation): allow "current"
6048         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
6049         changing VERSION in a lily tree less painful.
6050
6051         * input/regression/parenthesize.ly: new file. 
6052
6053         * scm/output-lib.scm (parenthesize-element): new function.
6054
6055         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
6056
6057         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
6058
6059         * lily/accidental-engraver.cc (make_standard_accidental): reroute
6060         cause: accidentals are caused by note heads, not note events. 
6061
6062 2006-02-08  Graham Percival  <gpermus@gmail.com>
6063
6064         * darwin.patch: small patch from Erlend, thanks!
6065
6066         * Documentation/user/basic-notation.itely: add stem-neutral example.
6067
6068         * Documentation/user/putting.itely: clarifications.
6069
6070 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6071
6072         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
6073         note, add more guidelines to what should go into NEWS.
6074
6075         * input/sakura-sakura.ly: document how to override font.
6076
6077         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
6078
6079 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6080
6081         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
6082
6083 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6084
6085         * scripts/convert-ly.py (lilypond_version_re_str): Move from
6086         convertrules.  Add explicit grouping, needed for python2.2.
6087
6088 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6089
6090         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
6091
6092 2006-02-07  Graham Percival  <gpermus@gmail.com>
6093
6094         * Documentation/user/global.itely: fix line-width in (text) docs.
6095
6096         * Documentation/user/lilypond-book.itely: same.
6097
6098 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6099
6100         * VERSION (PACKAGE_NAME): release 2.7.32
6101
6102         * Documentation/topdocs/NEWS.tely (Top): document new variable
6103         naming.
6104
6105         * flower/include/array.icc (Message): remove file.
6106
6107         * flower/include/std-vector.hh: make sure vsize and VPOS are
6108         defined for binary_search_bounds().
6109
6110         * flower/std-string.cc (std): add to_string(long unsigned).
6111
6112         * configure.in (gui_b): excise std_string option.
6113         (gui_b): excise std_vector option.
6114
6115         * flower/string.cc (Module): excise flower array & string
6116
6117         * flower/include/std-string.hh: excise flower string.
6118
6119         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
6120
6121         * python/convertrules.py (lilypond_version_re_str): require
6122         only numbers and dots in \version string.
6123
6124 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6125
6126         * lily/system-start-delimiter.cc (print): allow style = text too.
6127
6128         * lily/system-start-delimiter-engraver.cc
6129         (acknowledge_system_start_text): new function, also add add to
6130         support of system-start-text (instrument names). This fixes
6131         instrument names on piano staves.
6132
6133         * lily/instrument-name-engraver.cc: rewrite. Use
6134         system-start-delimiter approach. This save memory and cpu.
6135
6136         * scm/define-grobs.scm (all-grob-descriptions): remove
6137         instrument-name from break-alignment.
6138
6139         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
6140
6141 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6142
6143         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
6144         jobserver going.
6145
6146         * configure.in (std_vector): On by default.
6147
6148         * lily/include/font-metric.hh:
6149         * lily/include/tfm-reader.hh: 
6150         * lily/include/spanner.hh: Use unsigned for indices and sizes.
6151         Update users.
6152
6153         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
6154
6155 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6156
6157         * VERSION (PACKAGE_NAME): 2.7.31
6158
6159         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
6160         EPS edge at 0, but take minimum with left-overshoot. This fixes
6161         cut off system start delims. 
6162
6163         * lily/instrument-name-engraver.cc (stop_translation_timestep):
6164         hack: add to axis group if not added yet. This fixes hara kiri'd
6165         piano staves.
6166
6167         * lily/hara-kiri-group-spanner.cc
6168         (force_hara_kiri_in_y_parent_callback): fix signatures.
6169
6170         * lily/hairpin.cc (print): check next hairpin to see whether or
6171         not to be continuing.
6172
6173 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6174
6175         * Remove trailing whitespace from makefiles.
6176         
6177         * flower/include/std-vector.hh: Add binary_search_bounds workaround
6178         for earlier gcc.
6179
6180         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
6181
6182         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
6183
6184         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
6185
6186         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
6187
6188         * configure.in: Use it.
6189
6190 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6191
6192         * scm/music-functions.scm (pitch-of-note): new function.
6193
6194         * ly/music-functions-init.ly: add \octave and \addquote
6195
6196         * lily/parser.yy (music_function_chord_body): softcode \octave.
6197         (lilypond_header): softcode \addquote
6198
6199 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6200
6201         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
6202         array.hh, parray.hh at all.  Getting ready to flip the
6203         configure default.
6204
6205         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6206
6207         * lily/source-file.cc (file::get_line): Help binary_search_bounds
6208         a bit.
6209
6210         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
6211
6212 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6213
6214         * flower/include/array.hh: typo. 
6215
6216 2006-02-02  Graham Percival  <gpermus@gmail.com>
6217
6218         * Documentation/user/advanced-notation.itely: doc "\#" in text.
6219
6220 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6221
6222         * flower/include/pqueue.hh: Derive from std::vector.
6223
6224         * flower/include/parray.hh: Conform to std::vector interface.
6225         Update users.
6226
6227 2006-02-02  Graham Percival  <gpermus@gmail.com>
6228
6229         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
6230
6231 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6232
6233         * flower/file-path.cc (is_file): remove if 0 section.
6234
6235         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
6236         selecting afii61352.
6237
6238 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6239
6240         * flower/include/std-vector.hh (boundary): Oops, reverse.
6241
6242         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
6243         remove superfluous `d'.
6244
6245         * flower/include/std-vector.hh (boundary, top): Detach from class.
6246         Remove empty vector shell.
6247
6248         * flower/include/array.hh (reverse, swap): Detach from class.
6249         Update users.
6250         
6251         * flower/include/std-vector.hh
6252         * flower/include/array.hh (concat): Globally change to insert ().
6253
6254         * flower/include/std-vector.hh
6255         * flower/include/parray.hh
6256         * flower/include/array.hh (elem, elem_ref): Globally replace by
6257         at ().
6258
6259 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6260
6261         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
6262
6263         * python/convertrules.py (FatalConversionError.sub_cxx_id):
6264         anticipate on identifier substitutions.
6265
6266 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6267
6268         * flower/include/std-vector.hh (insert): Remove, replace by
6269         std::vector interface.  Update callers.
6270
6271         * flower/include/array.icc (insert): Change signature to
6272         match std::vector interface.
6273         
6274         * flower/include/array.icc (vector_sort): Bugfix.
6275
6276 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6277
6278         * lily/parser.yy (output_def_head_with_mode_switch): new
6279         production. Result: dashes and underscores may be used in the
6280         \paper block.
6281
6282         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
6283
6284         * python/convertrules.py (conv): oops. One slash too much.
6285
6286 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6287
6288         * flower/include/std-vector.hh (sort): Remove, replace by
6289         ::vector_sort.  Update callers.
6290
6291         * flower/include/std-vector.hh (slice): Remove.  Update callers.
6292         (sort): Bugfix.
6293
6294         * flower/test-std.cc (vector_sort): New test.
6295
6296 2006-02-01  Graham Percival  <gpermus@gmail.com>
6297
6298         * Documentation/user/putting.itely: fixes from Erik.
6299
6300 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6301
6302         * flower/test-std.cc: Add simple unit test for vector migration.
6303
6304         * stepmake/stepmake/test*: Unit test support.
6305
6306         * flower/include/std-vector.hh (del): Remove.  Use erase (),
6307         update callers.
6308
6309         * flower/include/array.hh (begin, end): Add.
6310         (del, get): Remove.
6311
6312 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6313
6314         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
6315         std::string not String. 
6316
6317         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6318         iso UINT_MAX.
6319
6320         * lily/prob.cc (Prob): copy type_ too.
6321
6322         * lily/lily-guile.cc (mangle_cxx_identifier): new
6323         function. Class_bla::foo_bar_[px] ->
6324         ly:class-bla::foo-bar[?!]. Changes throughout
6325
6326 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6327
6328         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6329
6330         * lily/beam.cc (calc_direction): take dir from visible stem in
6331         degenerate case.
6332
6333 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6334
6335         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6336         Fix -1, >=0 boundary checks for unsigned vsize.
6337
6338         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6339         loop for unsigned vsize.
6340
6341         * configure.in (--enable-std-vector): New option.
6342         (--enable-std-string): On by default.
6343
6344         * flower/include/std-vector.hh: New file.  Enable switch to
6345         std::vector, update client code.
6346
6347 2006-01-30  Graham Percival  <gpermus@gmail.com>
6348
6349         * scm/document-translation.scm: clarify "this context is also
6350         known as".  Thanks, Werner!
6351
6352         * Documentation/user/putting.itely: small fixes from Don Blaheta.
6353
6354         * Documentation/user/invoking.itely: small fix from Don.
6355
6356 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6357
6358         * scm/lily.scm (define-scheme-options): rename option
6359         preview-include-book-title to book-title-preview
6360         (define-scheme-options): move force-eps-font-include (from paper
6361         block) to eps-font-include -d option.
6362
6363         * VERSION (PATCH_LEVEL): release 2.7.30
6364
6365         * input/bach-schenker.ly (staffPiano): new file.
6366
6367         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6368
6369         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6370         credits to Nicolas.
6371
6372         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6373
6374         * ps/lilyponddefs.ps: remove start-system, stop-system,
6375         start-page fluff. This saves putting { } code on the stack, fixing
6376         stack overflows when including EPS files.
6377
6378 2006-01-29  Graham Percival  <gpermus@gmail.com>
6379
6380         * Documentation/user/putting.itely: minor fixes (comments on -devel).
6381
6382 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6383
6384         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6385
6386 2006-01-28  Graham Percival  <gpermus@gmail.com>
6387
6388         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6389
6390 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6391
6392         * input/mutopia/claop.py: Update.
6393
6394 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6395
6396         * input/regression/completion-heads.ly (texidoc): fix.
6397
6398         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6399
6400         * lily/tie-formatting-problem.cc
6401         (set_ties_config_standard_directions): use abs iso fabs for ints.
6402
6403         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6404
6405         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6406         little less than noteheight, to prevent overlaps in chords.
6407
6408         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6409         head, and fudge stem-attachment.
6410
6411         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6412
6413         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6414
6415 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6416
6417         * lily/main.cc (main): Debugging aid: catch exceptions.
6418
6419         * flower/std-string.cc (to_string): Robustification.  Fixes midi
6420         output with std::string.
6421
6422 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6423
6424         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6425
6426 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6427
6428         * Fix -DSTRING_UTILS_INLINED.
6429
6430 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6431
6432         * VERSION (PATCH_LEVEL): release 2.7.29
6433
6434         * lily/relocate.cc (setup_paths): mingw uses std string too.
6435
6436         * lily/*.cc: various fixes for substr(ARG).
6437
6438         * lily/sustain-pedal.cc (print): 
6439
6440         * flower/file-name.cc (slashify): use std strings.
6441
6442         * flower/string-convert.cc: remove publib.h
6443
6444         * scm/define-markup-commands.scm (verbatim-file): new markup
6445         command \verbatim-file
6446
6447         * Documentation/topdocs/NEWS.tely: fixup URLs
6448
6449         * input/regression/alignment-vertical-manual-setting.ly (Module):
6450         new file.
6451
6452         * lily/align-interface.cc (align_elements_to_extents): overwrite
6453         translations with numbers in alignment-offsets from left bound
6454
6455         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6456         (page-translate-systems): new function: take into account Y-offset.
6457
6458         * Documentation/topdocs/NEWS.tely (Top): document new features.
6459
6460         * input/regression/page-layout-manual-position.ly (Module): new
6461         file.
6462
6463 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
6464
6465         * flower/file-path.cc (path::parse_path): Oops.
6466
6467         * Finish std::string interface.  For now, use std:: marker
6468         throughout for easy s/r.
6469
6470 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6471
6472         * Documentation/user/putting.itely (Score is a single musical
6473         expression): typo.
6474         (Score is a single musical expression): more typos.
6475
6476         * scm/page.scm (annotate-space-left): thinko.
6477         (annotate-page): more thinkos.
6478
6479 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6480
6481         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6482         for different \score blocks separately.
6483         (post-process-pages): put write-page-layout into paper block.
6484
6485         * lily/output-def.cc (get_parser): new file.
6486
6487         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6488         file.
6489
6490         * lily/include/output-def.hh (class Output_def): add parser_ member.
6491
6492         * input/regression/page-layout-twopass.ly (Module): new file.
6493
6494         * scm/lily.scm: remove cpp hack.
6495
6496         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6497
6498 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6499
6500         * GNUmakefile.in (c-clean): New target.
6501
6502         * flower/include/std-string.hh: String/std::string compatibility:
6503         Use NPOS for `not found' (iso -1), use ssize for length () and pos
6504         type.
6505
6506         * flower/rational.cc: 
6507         * flower/include/rational.hh: 
6508
6509         * flower/offset.cc: 
6510         * flower/include/offset.hh: 
6511
6512         * flower/interval.cc: 
6513         * flower/include/interval.hh: 
6514
6515         * flower/string-convert.cc: 
6516         * flower/include/string-convert.hh: Use std::string [interface].
6517         Update callers.
6518
6519 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
6520
6521         * Documentation/index.html.in: clean up.
6522
6523 2006-01-25  Graham Percival  <gpermus@gmail.com>
6524
6525         * Documentation/user/putting.itely: another new untested doc section.
6526
6527 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6528
6529         * scm/layout-page-layout.scm (write-page-breaks): write
6530         \spacingTweaks #ALIST. Handle grace timing.
6531
6532         * scm/: more imports.
6533
6534         * scm/page.scm (make-page): add footer/header.
6535         (annotate-space-left): revise: only take page argument.
6536         (layout->page-init): new function.
6537
6538         * scm/layout-page-layout.scm (write-page-breaks): preliminary
6539         version of the system/spacing/linebreak hack writing to the output
6540
6541         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6542         ly:make-prob.
6543
6544         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6545         ly:spanner-bound
6546
6547 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6548
6549         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6550
6551         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6552
6553         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6554         handling to page.scm
6555
6556         * lily/prob-scheme.cc (LY_DEFINE): new file.
6557         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6558
6559         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6560         prob functions.
6561
6562         * lily/music.cc (derived_mark): derive Music from Prob.
6563
6564         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6565
6566         * lily/prob.cc (Module): Implement Prob (Property Object), object
6567         with shared and r/w property alists.  
6568
6569         * lily/include/prob.hh (Module): new file. Declare Prob.
6570
6571         * flower/string.cc: remove is_empty().
6572
6573         * flower/include/string.hh (class String): remove String:: qualifier.
6574
6575         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6576         substitute appropriate functions.
6577
6578         * flower/include/string.hh (class String): remove to_str0 and
6579         is_empty(). S&R everywhere.
6580
6581 2006-01-23  Graham Percival  <gpermus@gmail.com>
6582
6583         * Documentation/user/basic-notation.itely: add hairpin
6584         after-linebreak tweak to commonprop.
6585
6586         * Documentation/user/putting.itely: added two new sections.
6587
6588 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6589
6590         * flower/international.cc: 
6591         * flower/include/international.hh: 
6592
6593         * flower/getopt-long.cc: 
6594         * flower/include/getopt-long.hh: Use std::string [interface].
6595         Update callers.
6596
6597         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6598
6599         * stepmake/stepmake/executable-rules.make: Add dependency on
6600         module libraries.
6601
6602 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
6603
6604         * flower/file-path.cc: 
6605         * flower/include/file-path.hh: Use std::string [interface].
6606         Update callers.
6607
6608         * flower/direction.cc: 
6609         * flower/axis.cc: Unused.  Remove.
6610
6611         * configure.in (--enable-std-string): New option.
6612
6613         * flower/std-string.cc: 
6614         * flower/include/std-string.hh: New file.
6615
6616         * flower/file-name.cc[STD_STRING]:
6617         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
6618
6619 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6620
6621         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
6622
6623         * scm/define-markup-commands.scm (with-dimensions):
6624         with-dimensions markup command.
6625
6626         * input/test/font-table.ly: use it.
6627
6628         * lily/open-type-font.cc (glyph_list): new function.
6629
6630         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6631
6632         * lily/ttf.cc: remove ly:font-glyph-list scheme function
6633
6634 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6635
6636         * ly/music-functions-init.ly (parallelMusic): new music function
6637         for parallel music entry.
6638
6639         * scm/define-music-properties.scm (all-music-properties): new
6640         'void music property
6641
6642         * scm/music-functions.scm (ly:music-message): make public, to be
6643         used in music function definitions
6644
6645         * scm/lily-library.scm (collect-music-for-book): discard music
6646         when the 'void property is set.
6647
6648 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6649
6650         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6651
6652         * mf/GNUmakefile: idem.
6653
6654         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6655
6656         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6657
6658         * Documentation/user/notation-appendices.itely (The Feta font):
6659         use it.
6660
6661         * input/test/font-table.ly: new file. Generate font table within lily.
6662
6663         * Documentation/user/notation-appendices.itely (The Feta font):
6664         use new font-table.ly file. 
6665
6666         * stepmake/stepmake/install-out-targets.make
6667         (local-install-outfiles): only create directory if
6668         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6669
6670 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6671
6672         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6673
6674         * VERSION (PACKAGE_NAME): release 2.7.28
6675
6676         * scm/framework-ps.scm (write-preamble): use it to pick exactly
6677         the right font from a Mac dfont.
6678         (write-preamble): don't forget directory, only look at files.
6679
6680         This fixes problems with TTF files in dfonts that don't match
6681         their PostScript names.
6682          
6683         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6684         PS name from TTF font.
6685
6686         * input/regression/tie-manual.ly: document new feature.
6687
6688         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6689
6690         * VERSION (MY_PATCH_LEVEL): bump to .28
6691
6692         * Documentation/user/basic-notation.itely (Ties): add tie examples
6693         refs.
6694
6695         * lily/tie-formatting-problem.cc (score_ties_configuration):
6696         symmetry penalties for outer ties.
6697
6698 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * lily/tie-formatting-problem.cc (generate_configuration) 
6701         (set_manual_tie_configuration): skip non-pair manual
6702         tie-configuration, so you can set individual ties as
6703
6704           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6705
6706         * input/regression/tie-chord.ly: use generateTiePattern to
6707         simplify file.
6708
6709         * lily/tie-formatting-problem.cc (peak_around): new function.
6710         (score_configuration): use sliding criterion for staff line collisions. 
6711         (score_configuration): idem for dot collisions.
6712         (generate_configuration): use separate stem_gap for gap to stem.
6713
6714         * lily/include/tie-formatting-problem.hh (struct Tie_details):
6715         separate penalty factors for x and y distance.
6716         (struct Tie_details): separate penalties for tip and center line collisions.
6717
6718 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
6719
6720         * lily/tie-formatting-problem.cc (generate_configuration): make
6721         large ties avoid stafflines in the horizontal section.
6722         (score_configuration): use softcoded penalties
6723         (score_aptitude): idem.
6724
6725         * lily/tie-helper.cc (from_grob): softcode tie details
6726
6727         * lily/staff-symbol-referencer.cc (on_staff_line): new function
6728
6729         * lily/staff-symbol-referencer.cc (on_line): rename from
6730         on_staffline 
6731
6732 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6733
6734         * ly/music-functions-init.ly: remove duplicate tag.
6735
6736         * lily/include/*.hh: GCC 4.1 fixes.
6737
6738 006-01-16  Erlend Aasland  <erlenda@gmail.com>
6739
6740         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6741
6742         * scm/define-music-types.scm: fix bug in desc. string
6743         for OverrideProperty
6744
6745 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
6746
6747         * scripts/lilypond-book.py: bugfix
6748
6749         * scm/define-music-types.scm: fix typos.
6750
6751 2006-01-14  Graham Percival  <gpermus@gmail.com>
6752
6753         * Documentation/user/ basic-notation.itely, global.itely,
6754         advanced-notation.itely, instrument-notation.itely: small
6755         additions (bugs and commonly tweaked properties).
6756
6757 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6758
6759         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6760         detection of mingw build.
6761         (MINGW_BUILD): opps.
6762
6763 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
6764
6765         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6766         i686-mingw32.
6767
6768 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6769
6770         * scm/music-functions.scm (skip->rest): add skip->rest
6771
6772 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6773
6774         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6775         explicitly.
6776
6777         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6778         config dirs. Aids debugging. 
6779         (display_config): also display config files.
6780
6781 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6782
6783         * VERSION: release 2.7.27
6784
6785         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6786         for determining bar size.
6787
6788         * lily/staff-symbol.cc (print): place lines at distance line-positions
6789
6790         * scm/define-grob-properties.scm (all-user-grob-properties): add
6791         line-positions.
6792
6793         * lily/staff-symbol.cc (height): new function.
6794
6795         * input/regression/staff-line-positions.ly:  new file.
6796
6797 2006-01-06  Graham Percival  <gpermus@gmail.com>
6798
6799         * input/test/add-staccato.ly: remove reference to old file.
6800
6801 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6802
6803         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6804         lilypond binary too.
6805
6806 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6807
6808         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6809
6810 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6811
6812         * scripts/midi2ly.py: Bugfix: Declare datadir.
6813
6814         * make/ly-rules.make:
6815         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6816         that seems to be gone). Fixes make web.
6817
6818         * The grand 2005-2006 replace.
6819
6820         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6821
6822 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6823
6824         * make/lilypond-vars.make: set LILYPOND_BINARY variable
6825         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6826         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6827         like -dgs-font-load.
6828
6829         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6830         remove absolute path to lilypond binary.
6831         
6832 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
6833
6834         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6835
6836 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6837
6838         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6839
6840         * mf/GNUmakefile: remove broken dvips map symlink.
6841
6842 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
6843
6844         * lily/main.cc: 
6845         * configure.in: Cosmetic fixes.
6846
6847 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
6848
6849         * Documentation/user/music-glossary.tely (Pitch names): Added
6850         Spanish pitch names and durations, thanks to Ernesto Gancedo
6851
6852 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6853
6854         * scm/lily.scm (define-scheme-options): use quasi-quote for option
6855         init. Fixes verbose printing of .scm files.
6856
6857         * stepmake/aclocal.m4: add spaces before - options.
6858         
6859 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6860
6861         * lily/relocate.cc (setup_paths): Bugfix: do not store result
6862         of path search in local block variable.
6863
6864 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6865
6866         * configure.in (NCSB_DIR): --enable-ncsb-dir
6867         (LINK_GXX_STATICALLY): denko.
6868
6869         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
6870
6871         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
6872         use locate to find c059033l.pfb. 
6873         
6874 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6875
6876         * lily/tie-formatting-problem.cc
6877         (problem::generate_base_chord_configuration): Use my_round (was
6878         round).
6879
6880         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6881         do not invoke mbrtowc.
6882
6883         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6884
6885 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6886
6887         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6888
6889 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
6890
6891         * Documentation/user/invoking.itely (svg): revise.
6892
6893 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6894
6895         * lily/lexer.ll: use sourcefilename iso. renameinput.
6896
6897 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6898
6899         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6900         <PostScriptName>.ttf instead of c059XXXttf.
6901
6902         * lily/program-option.cc (LY_DEFINE): special support for
6903         --verbose, so it works before option init too.
6904  
6905         * mf/GNUmakefile (local-install): oops.
6906
6907         * lily/lyric-hyphen.cc (print): oops.
6908
6909         * buildscripts/pfx2ttf.fontforge: new file.
6910         
6911         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6912         ($(outdir)/%.ttf): new rule. 
6913
6914         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6915         to LyricHyphen.
6916
6917         * lily/lyric-hyphen.cc (print): multiply hyphen height by
6918         font-size
6919
6920 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6921
6922         * VERSION: release 2.7.26
6923         
6924         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6925
6926 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6927
6928         * lily/font-config.cc (init_fontconfig): verbosity.
6929
6930         * THANKS: add Muziekacademie Lede. 
6931
6932         * scripts/musicxml2ly.py (print_voice_definitions): new function 
6933         (print_score_setup): new function
6934         (convert): read part definition to output staves properly.
6935
6936         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6937         Music_xml notes.
6938
6939         * python/musicexp.py (Output_printer.__init__): use _ in data
6940         members.
6941         (Output_printer.unformatted_output): new function: no formatting,
6942         but count braces.
6943         (Duration.get_length): remove isinstance() checks for
6944         Output_printer everywhere.
6945
6946         * input/regression/lyrics-bar.ly (texidoc): add
6947         Separating_line_group_engraver.
6948
6949 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
6950
6951         * lily/relocate.cc (framework_relocation): New function,
6952         factored from set_relocation ().
6953         (prefix_relocation): Rename from set_relocation ().
6954         (setup_paths): Use it.
6955
6956 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6957
6958         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6959         numbers. Patch by Erlend Aasland.
6960
6961 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6962
6963         * lily/font-config.cc (init_fontconfig): print warning if cache
6964         file is not existant.
6965
6966         * lily/main.cc: don't use #ifdef but #if
6967
6968 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6969
6970         * lily/grob-property.cc (internal_set_property): don't abort on
6971         calculation-in-progress.
6972
6973         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6974
6975         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6976         connect-to-neighbor property not connect-to-other
6977
6978         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6979         (LY_DEFINE): oops. don't forget protection.
6980
6981         * flower/parse-afm.cc (Module): strip AFM handling completely.
6982
6983         * lily/stencil-expression.cc: idem.
6984
6985         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6986
6987         * lily/function-documentation.cc (ly_add_function_documentation):
6988         use static member iso. Protected_scm
6989
6990         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6991
6992         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6993
6994 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6995
6996         * lily/relocate.cc (set_env_dir): New function.
6997         (set_relocation): Use it to fix setting PANGO_PREFIX.
6998
6999 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7000
7001         * input/regression/stem-direction-context.ly: remove rest.
7002
7003         * lily/melody-engraver.cc (process_music): restart for bar lines.
7004         (acknowledge_slur): restart for slurs.
7005
7006 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
7007
7008         * Documentation/user/invoking.itely: describe how to view SVG 
7009         output using Inkscape which replace embedded fonts with OTF fonts.
7010
7011 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7012
7013         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
7014
7015 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7016
7017         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
7018         comment.
7019
7020 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7021
7022         * VERSION (PACKAGE_NAME): release 2.7.25
7023
7024         * Documentation/topdocs/NEWS.tely (Top): document new feature.
7025
7026         * input/regression/stem-direction-context.ly: new file.
7027
7028         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
7029
7030         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
7031         on rest.
7032
7033         * ly/engraver-init.ly: add Melody_engraver
7034
7035         * lily/beam.cc (calc_direction): use default-direction
7036         iso. get_default_direction()
7037
7038         * scm/define-grob-properties.scm (all-user-grob-properties): add
7039         default-direction property.
7040
7041         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
7042
7043         * lily/stem.cc (calc_default_direction): remove
7044         Stem::get_default_direction, use default-direction with callback
7045         instead.
7046
7047         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
7048
7049         * lily/melody-engraver.cc: new file. Acknowledge stems for
7050         interpolated stem directions. 
7051
7052         * lily/melody-spanner.cc: new file. Interpolate stem directions.
7053
7054         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
7055
7056         * lily/slur-configuration.cc (fit_factor): more robust check for
7057         point in curve X-extent.
7058
7059         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
7060         (outside_slur_callback): check for 'outside avoidance.
7061
7062         * lily/slur-configuration.cc (score_extra_encompass): don't use
7063         bound->column() == avoid->column() for checking extents, as this
7064         doesn't work for accidentals. 
7065
7066         * lily/slur-engraver.cc (acknowledge_extra_object): remove
7067         DynamicText hardcoding.
7068
7069         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
7070         crash if bound stem is NULL
7071
7072         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
7073         pedals.
7074
7075 2005-12-22  Graham Percival  <gpermus@gmail.com>
7076
7077         * scm/define-markup-commands.scm: typo.  @code{\raise}
7078         => @code{\\raise}.
7079
7080         * darwin.patch: now used again, includes a
7081         required patch from fink.
7082
7083 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
7084
7085         * po/TODO: mention gtranslator along with kbabel.
7086         * po/fi.po: update translations.
7087
7088 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7089
7090         * lily/relocate.cc (setup_paths): Bugfix.
7091
7092 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7093
7094         * lily/slur-configuration.cc (score_extra_encompass): don't use
7095         "avoid" choice for avoid-slur.
7096
7097         * stepmake/bin/install.py (dest): don't create existing dir.
7098
7099 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7100
7101         * stepmake/bin/install.py: Remove file before copying.
7102
7103         * config.make.in: 
7104         * stepmake/aclocal.m4: Do not substitute INSTALL.
7105
7106 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7107
7108         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7109         depend on link-tree.
7110
7111         * lily/relocate.cc (setup_paths): only check path for non-absolute
7112         dir without directory part.
7113
7114         * flower/file-name.cc (is_absolute):  new method.
7115         (is_absolute): check root_ too.
7116
7117 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7118
7119         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
7120         relocation code.  Oops, don't comment out too much.
7121
7122         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
7123         iso itself.
7124
7125         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
7126         compile.
7127
7128 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7129
7130         * .cvsignore: Add install-sh.
7131
7132         * autogen.sh (srcdir): Typo.
7133
7134 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7135
7136         * autogen.sh (srcdir): urg. Touch install-sh.
7137
7138         * stepmake/bin/install-sh (Module): remove.
7139
7140         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
7141
7142         * lily/include/relocate.hh: new file.
7143
7144         * lily/relocate.cc: new file. Contain relocation logic.
7145
7146         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
7147         (main): read LILYPOND_VERBOSE as the first thing.
7148
7149         * stepmake/aclocal.m4: remove INSTALL variable.
7150
7151         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
7152         separate target for making font symlinks.
7153         (documentation-dir): use $(if $(findstring )) for switching off
7154         Documentation.
7155
7156         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
7157         something if DOCUMENTATION is no.
7158
7159 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7160
7161         * VERSION: release 2.7.24
7162
7163         * lily/script-column-engraver.cc (stop_translation_timestep):
7164         delay adding to script-column.
7165
7166         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
7167
7168         * python/convertrules.py (conv): rule for number-visibility
7169
7170         * lily/slur-configuration.cc (score_extra_encompass): different
7171         distance measure for avoid and inside avoidance.
7172         (score_extra_encompass): use 1/(distance+eps) as penalty.
7173
7174         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
7175         encompass objects for generating slur curves.
7176
7177         * lily/slur.cc: use details iso. slur-details property.
7178
7179         * input/regression/slur-tuplet.ly: new file.
7180
7181         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
7182
7183         * flower/include/offset.hh (class Offset): new operator /=
7184
7185         * lily/tuplet-number.cc (print): new file, new interface.
7186
7187         * scm/define-grob-properties.scm (all-user-grob-properties):
7188         remove number-visibility property.
7189
7190         * lily/tuplet-bracket.cc (calc_control_points): new function
7191         (calc_connect_to_neighbors): new function.
7192         (print): remove text handling for tuplet numberdef.
7193
7194         * lily/tuplet-engraver.cc (struct Tuplet_description): create
7195         TupletNumbers too. 
7196
7197         * lily/lily-guile.cc (robust_scm2booldrul): new function
7198
7199         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
7200
7201         * lily/tuplet-bracket.cc (calc_position_and_height): use
7202         staff-padding to control whether tuplet brackets are over staves.
7203
7204         * lily/grob.cc (suicide): clear dim_caches_.
7205
7206         * lily/dimension-cache.cc (clear): new function.
7207
7208         * lily/grob.cc (extent): swap order of min-extent and extent
7209         calculations. This fixes hara kiri staves. 
7210
7211 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7212
7213         * lily/main.cc: Nitpick: relocation is not based on path, but on
7214         directory (location).
7215
7216 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7217
7218         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
7219
7220         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
7221
7222         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
7223
7224         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
7225
7226         * stepmake/stepmake/generic-vars.make (Module): idem.
7227
7228         * stepmake/stepmake/executable-targets.make (default): use it.
7229
7230         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
7231
7232         * make/GNUmakefile: don't install make rules.
7233
7234         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
7235         slashes.
7236         (prepend_env_path): more verbosity.
7237
7238 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7239
7240         * GNUmakefile.in: add dir argument for find command.
7241
7242         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
7243         fixes weird line numbers for point & click.
7244
7245         * lily/source-file.cc (get_counts): init line/column/char counts.
7246
7247 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7248
7249         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
7250
7251 2005-12-16  Graham Percival  <gpermus@gmail.com>
7252
7253         * Documentation/user/basic-notation.itely, advanced-notation.itely:
7254         minor fixes from Fredric.  Thanks!
7255
7256 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7257
7258         * ly/music-functions-init.ly: add \bar and \clef music function 
7259
7260         * lily/lily-lexer.cc: idem.
7261
7262         * lily/parser.yy (FIXME): remove BAR and CLEF.
7263
7264 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7265
7266         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
7267
7268         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
7269         function arguments too
7270
7271         * lily/main.cc (set_relocation): new function.
7272
7273         * scripts/musicxml2ly.py (convert): add \version
7274
7275         * lily/tie.cc: remove get_default_attachments()
7276
7277         * VERSION (PACKAGE_NAME): release 2.7.23
7278         
7279         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
7280         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
7281
7282         * Documentation/topdocs/NEWS.tely (Top): document new feature.
7283
7284         * lily/tie-formatting-problem.cc (score_ties): new function
7285         (get_variations): new function. Try flipping dirs for collisions.
7286         (generate_optimal_chord_configuration): new function. 1-opt search
7287         for better configuration.
7288
7289         * lily/tie-configuration.cc: new file.
7290
7291         * lily/tie.cc: junk Tie::get_configuration()
7292
7293         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
7294         (score_ties_configuration): new function.
7295         (generate_ties_configuration): new function.
7296         (generate_base_chord_configuration): new function.
7297         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
7298         (set_manual_tie_configuration): Move body from tie-column-format.cc 
7299
7300         * input/regression/tie-dot.ly: new file.
7301
7302         * lily/tie-formatting-problem.cc (score_configuration): score
7303         tie/dot collisions.
7304
7305         * lily/tie-helper.cc (get_transformed_bezier): new function
7306
7307         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
7308
7309         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
7310         -undefined suppress iso. -framework Python 
7311
7312         * scm/define-grobs.scm (all-grob-descriptions): set
7313         springs-and-rods (thanks Joe Neeman!)
7314
7315 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7316
7317         * input/no-notation/display-lily-tests.ly (test): 
7318         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
7319         changed from \tag #'(a b) to \tag #'a \tag #'b
7320
7321 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7322
7323         * Documentation/topdocs/NEWS.tely: strip out-www.
7324
7325         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7326
7327         * config.make.in (AR): add AR and RANLIB
7328
7329         * flower/libc-extension.cc: include cassert
7330
7331         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7332         darwin check.
7333
7334 2005-12-11  Graham Percival  <gpermus@gmail.com>
7335
7336         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7337
7338         * stepmake/stepmake/python-modules-vars.make: define
7339         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
7340
7341         * THANKS: added Johannes Schindelin.
7342
7343 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7344
7345         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7346
7347         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7348         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
7349
7350         * lily/parser.yy: reorganize file layout.
7351
7352         * ly/music-functions-init.ly: add tweak music function.
7353
7354         * lily/grob-info.cc (ultimate_music_cause): new function:
7355         recursively lookup causes. 
7356
7357         * lily/parser.yy (chord_body_element): allow music functions for
7358         post-events, allow music functions for chord elements. 
7359  
7360         * lily/font-config-scheme.cc (display_fontset): add cast.
7361
7362         * python/convertrules.py (FatalConversionError.sub_syms): \tag
7363         #'(a b) -> \tag #'a \tag #'b rule.
7364
7365         * python/musicexp.py (Output_printer.dump_version): new function
7366
7367 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7368
7369         * lily/parser.yy (FIXME): remove \tag
7370         (FIXME): remove tag_music() function.
7371
7372         * lily/lily-lexer.cc: remove \tag
7373
7374         * ly/music-functions-init.ly: define music-function "tag"
7375
7376         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7377
7378 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7379
7380         * VERSION (PATCH_LEVEL): release 2.7.22
7381
7382         * input/regression/lyric-hyphen-retain.ly: renew.
7383
7384         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7385         grob
7386
7387         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7388         iso. minimum-length property for rods.
7389
7390         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7391         LyricSpace item to keep lyrics spaced apart.
7392
7393         * ly/engraver-init.ly: remove Separating_line_group_engraver
7394
7395         * Documentation/user/music-glossary.tely: do setfilename before
7396         music-glossary.
7397
7398 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
7399
7400         * Documentation/user/lilypond-book.itely: use `,´ after xref:
7401         See xref documentation, for example.
7402
7403 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7404
7405         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7406         pending_skip iso. ly_voice[-1]
7407         (main): add if __main__ for debugging.
7408
7409         * python/musicxml.py (Accidental.__init__): new class.
7410
7411         * scripts/musicxml2ly.py (progress): new function
7412         (musicxml_key_to_lily): don't barf on modeless keys.
7413         (create_skip_music): new function.
7414         (musicxml_spanner_to_lily_event): new function. Handle beams too.
7415         (musicxml_note_to_lily_main_event): new function.
7416
7417         * python/musicexp.py (Music.__init__): add comment field.
7418         (NestedMusic.append): new routine.
7419         (SequentialMusic.print_ly): print comment.
7420         (ArpeggioEvent.ly_expression): new class
7421         (BeamEvent.ly_expression): new class
7422         (NoteEvent.__init__): support for cautionary/forced accs.
7423
7424         * lily/lookup.cc (slur): normal order for array loop.
7425
7426         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7427         to 0.0.
7428
7429         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7430         collapsed.
7431
7432 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
7433
7434         * scm/music-functions.scm: Make phrasing slurs follow voice direction
7435
7436         * scripts/lilypond-book.py: Introduce option
7437             --preserve-line-breaks, for usage with srcltx
7438
7439 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7440
7441         * scm/output-lib.scm (print-circled-text-callback): draw circle
7442         around text using make-circle-markup.
7443
7444         * Documentation/user/*: strip out-www from file names.
7445
7446 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
7447
7448         * Documentation/user/lilypond.tely (direntry): remove empty lines;
7449         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7450
7451 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7452
7453         * Documentation/user/GNUmakefile: idem.
7454
7455         * Documentation/user/macros.itexi: strip out-www
7456
7457         * python/rational.py: python 2.3 compat.
7458
7459         * VERSION (PATCH_LEVEL): release 2.7.21
7460
7461         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7462         option formatting, lilypond style.
7463
7464         * python/musicexp.py: grab from Ikebana: a library for composing
7465         ly music expressions. 
7466         (Output_printer): class for advanced .ly printing.
7467         (eg. tupletting) 
7468
7469         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7470         convert to pythonesque structure.
7471
7472         * python/rational.py: PD rational number class.
7473
7474         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
7475
7476 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
7477
7478         * lily/part-combine-iterator.cc: Minor bugfix
7479         
7480         * THANKS: Update bughunters
7481
7482 2005-12-02  Werner Lemberg  <wl@gnu.org>
7483
7484         * mf/README: Document process for proper mf2pt1 conversion.
7485
7486         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7487         overlapping.
7488
7489         * mf/feta-harmonica.mf: Removed.  Unused.
7490
7491 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7492
7493         * scripts/lilypond-book.py (do_file): fix thinkos.
7494
7495 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
7496
7497         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7498         ($(outdir)/parser.cc): 
7499         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7500
7501 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
7502
7503         * ly/titling-init.ly (tagline): it should be a space between
7504         "Music engraving by LilyPond" and the version number.
7505
7506 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7507
7508         * VERSION (PACKAGE_NAME): release 2.7.20
7509
7510 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7511
7512         * scm/define-markup-commands.scm (pad-to-box): new markup command.
7513
7514         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7515         1.0.
7516         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7517
7518 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7519
7520         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7521
7522         * kpath-guile/: remove directory
7523
7524         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7525         file. Encapsulate kpathsea using commandline tools.
7526
7527         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7528         kpathsea) module.
7529
7530 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
7531
7532         * Documentation/user/advanced-notation.itely (Setting automatic
7533         beam behavior): Correct a few typos. Thanks to David Bobroff.
7534
7535         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7536         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7537
7538 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7539
7540         * scripts/*.py: gmane address for bugs.
7541
7542 2005-11-28 Pal Benko <benkop@freestart.hu>
7543         
7544         * make/ly-rules.make: add -f switch to mv
7545
7546         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7547
7548         * lily/bar-line.cc: interpret it
7549
7550 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7551
7552         * configure.in (--disable-documentation): New switch.
7553
7554         * GNUmakefile.in: Use it.
7555
7556         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7557
7558 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7559
7560         * scripts/lilypond-book.py (do_file): search chunks for
7561         \\begin{document}
7562
7563         * GNUmakefile.in: add copy step in between so we can lose the
7564         out-www directories.
7565
7566 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7567
7568         * lily/pango-font.cc (pango_item_string_stencil): put
7569         geometry.width into glyph-string too.
7570
7571 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7572
7573         * scm/define-music-display-methods.scm (RevertProperty):
7574         (OverrideProperty): Use grob-property-path property, a list of
7575         symbols, instead of grob-property, which used to be a single
7576         symbol.
7577         (BassFigureEvent): a figure can be a plain number, not necessarily a
7578         markup.
7579
7580 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7581
7582         * VERSION: release 2.7.19
7583         
7584         * lily/figured-bass-engraver.cc (process_music): check
7585         figuredBassCenterContinuations first.
7586
7587         * scm/translation-functions.scm (format-bass-figure): make double
7588         sharp larger. 
7589
7590         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7591         determine X-parent.
7592
7593         * lily/system-start-delimiter-engraver.cc: move from
7594         Nested_system_start_delimiter_engraver, rename
7595         Nested_system_start_delimiter_engraver ->
7596         System_start_delimiter_engraver.
7597
7598         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7599         bracket type from hierarchy.
7600
7601 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7602
7603         * lily/rest.cc (y_offset_callback): read staff-position.
7604
7605         * scm/define-grob-properties.scm (all-user-grob-properties): don't
7606         mark after-line-breaking-callback as internal.
7607
7608         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7609
7610 2005-11-25  Werner Lemberg  <wl@gnu.org>
7611
7612         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7613
7614 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7615
7616         * stepmake/bin/add-html-footer.py (do_file): add google
7617
7618         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7619         staff if first_start_ is true.
7620
7621 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7622
7623         * scripts/midi2ly.py (split_track): add __repr__ members.
7624         (track_first_item): only return Item if not None. This fixes a
7625         problem when dumping a track that starts with an empty channel.
7626
7627         * python/midi.c: doc module.
7628
7629 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
7630
7631         * Documentation/user/global.itely (Creating MIDI files): Fix
7632         compilation problem.
7633
7634 2005-11-22  Graham Percival  <gpermus@gmail.com>
7635
7636         * Documentation/user/basic-notation.itely: clarify dynamic
7637         padding text.
7638
7639         * Documentation/user/advanced-notation.itely: add unicode
7640         escape control example, whatever that is.  :)
7641
7642         * Documentation/user/global.itely: added "removing dynamics
7643         from MIDI" code.
7644
7645 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7646
7647         * VERSION (PATCH_LEVEL): release 2.7.18
7648
7649         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7650         System_start_delimiter_engraver by
7651         Nested_system_start_delimiter_engraver.
7652
7653         * lily/nested-system-start-delimiter-engraver.cc (struct
7654         Bracket_nesting_node): new class.
7655         (struct Bracket_nesting_group): new class
7656         (struct Bracket_nesting_staff): new class.
7657         (process_music): create hierarchy of grobs. This allows separate
7658         tuning of different SSDs. 
7659
7660         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7661         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7662
7663 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7664
7665         * lily/side-position-interface.cc (aligned_side): multiply
7666         staff_radius by 2.
7667
7668         * lily/script-engraver.cc (make_script_from_event): allow setting
7669         values to '()
7670
7671 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7672
7673         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7674
7675         * scm/define-grobs.scm (all-grob-descriptions): new grob
7676         NestedSystemStartDelimiter.
7677
7678         * input/regression/system-start-heavy-bar.ly: new file.
7679
7680         * lily/nested-system-start-delimiter-engraver.cc: new file.
7681
7682         * lily/nested-system-start-delimiter.cc: new file.
7683
7684         * input/regression/system-start-nesting.ly: new file.
7685
7686         * scm/define-grobs.scm (all-grob-descriptions): use X side
7687         positioning for positioning braces for nested contexts.
7688
7689         * lily/system-start-delimiter.cc (print): don't divide extent by
7690         staff_space.
7691         (print): use style iso. glyph.
7692         (staff_bracket): translate glyph inside routine already.
7693
7694 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
7695
7696         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7697         names.
7698
7699 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * scm/define-context-properties.scm
7702         (all-user-translation-properties): rename figuredBassFormatter
7703         from newFiguredBassFormatter.
7704
7705         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7706
7707         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7708
7709         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7710
7711         * lily/beam.cc (calc_beaming): new function.
7712         (calc_shorten): new function.
7713
7714         * THANKS: add Edward Neeman.
7715
7716         * input/regression/accidental-clef-change.ly: new file.
7717
7718         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7719
7720         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7721
7722         * lily/clef-engraver.cc (inspect_clef_properties): reset
7723         localKeySignature for clef changes.
7724
7725 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
7726
7727         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
7728         add dummy definition that works in Linux and add information in
7729         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7730
7731         * Documentation/user/changing-defaults.itely (Modifying context
7732         plug-ins): Add index for \with.
7733
7734         * Documentation/user/music-glossary.tely (dal segno): Updated
7735         example to version >=2.6.
7736
7737 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
7738
7739         * Documentation/user/instrument-notation.itely (Printing chord
7740         names): Reorder \chordmode and \repeat in one example.
7741
7742 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7743
7744         * VERSION: release 2.7.17
7745         
7746         * Documentation/topdocs/NEWS.tely (Top): add note about
7747         refactoring.
7748
7749         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7750         new function. Search region of 3 positions for best tie.
7751         (score_configuration): new function.
7752         (score_aptitude): new function.
7753         (generate_configuration): new function.
7754         (get_configuration): new function.
7755         (Tie_formatting_problem): new function
7756
7757         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
7758
7759         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7760
7761         * THANKS: add Eduardo Vieira & Ralph Little
7762
7763         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7764         narrower.
7765
7766         * lily/include/tie-formatting-problem.hh (class
7767         Tie_formatting_problem): add Tie_details to
7768         Tie_formatting_problem. Update calling conventions.
7769
7770         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7771         config.make.
7772
7773         * Documentation/user/lilypond.tely: remove musedata2ly entry.
7774
7775 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
7776
7777         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7778         scm/define-context-properties.scm: Maintenance bugfix: make
7779         ligature brackets work again by removing obsolete ligature
7780         primitive callback push/pop.
7781
7782         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7783         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
7784         value.
7785
7786 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7787
7788         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7789         used and do not call it a path.
7790         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7791
7792 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7793
7794         * lily/include/tie-formatting-problem.hh (class
7795         Tie_formatting_problem): new file.
7796
7797         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7798
7799         * Documentation/misc/ChangeLog-2.3:  new file.
7800
7801         * lily/audio-staff.cc (output): degarianize.
7802
7803 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7804
7805         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7806         Unset PYTHONOPTIMIZE.  Fixes install if set.
7807
7808 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7809
7810         * python/convertrules.py (conv): add warning about drums. 
7811
7812         * make/stepmake.make: include toplevel-version.make after config.make.
7813
7814         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7815         also allow python2.4
7816
7817         * config.make.in (configure-srcdir): remove GXX GCC vars.
7818
7819         * stepmake/aclocal.m4: don't do non-srcdir build with
7820         symlinks. Use inclusion, so the src directory name can be changed.
7821
7822 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7823
7824         * make/mutopia-vars.make:
7825         * make/ly-vars.make: Use src-wildcard iso wildcard for source
7826         files.
7827
7828 2005-11-13  Werner Lemberg  <wl@gnu.org>
7829
7830         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7831         but the affected path.  This ensures that the (overlapping) outlines
7832         have the same direction, which is a necessary prerequisite for
7833         FontForge's algorithm to remove overlaps.
7834         Formatting.
7835
7836         * mf/feta-haak.mf: Formatting.
7837         (draw_bracket): Slightly modify outline to avoid an unnecessary
7838         corner.
7839         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7840         them from the affected paths.
7841
7842 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7843
7844         * mf/README: remove xpm / accordion notes.
7845
7846         * lily/tie-column-format.cc (set_chord_outline): add dots into
7847         skyline extents. This fixes tie formatting if the left head has dots.
7848
7849         * lily/tie.cc (get_configuration): only shift tie by a whole staff
7850         space inside the staff.
7851         (get_configuration): shift another position if necessary in case
7852         of left head tie  
7853
7854 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7855
7856         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7857         buildscript-dir iso. $(depth)/buildscripts.
7858
7859         * tex/GNUmakefile (local-uninstall): remove
7860         music-drawing-routines.ps juggling.
7861
7862         * stepmake/stepmake/install-targets.make (local-install-files):
7863         prepend src-dir to install targets.
7864
7865         * lily/system-start-delimiter-engraver.cc
7866         (acknowledge_system_start_delimiter): use
7867         add_offset_callback(). This fixes translation of nested
7868         staffgroups.
7869
7870         * lily/grob-closure.cc (add_offset_callback): only encaps in
7871         simple_closure if it's a procedure.
7872         
7873         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7874         from bar-line.
7875
7876         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7877         remove-empty where pertinent.
7878
7879 2005-11-12  Graham Percival  <gpermus@gmail.com>
7880
7881         * Documentation/user/instrument-notation.itely: added
7882         Cameron Horsburgh's multiple stanzas docs.  Thanks!
7883
7884 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7885
7886         * lily/GNUmakefile
7887         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7888         make picture in builddir, not srcdir.
7889
7890 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7891
7892         * VERSION: release 2.7.16
7893         
7894         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7895         shell arguments. 
7896
7897 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
7898
7899         * Documentation/user/examples.itely (Piano templates): Minor
7900         modification to the Piano centered lyrics example.
7901
7902 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7903
7904         * scripts/lilypond-invoke-editor.scm (run-browser): look at
7905         $BROWSER.
7906
7907         * Documentation/user/point-and-click.itely: simplify p&c
7908         instruction: don't configure firefox. Put lilypond-invoke-editor
7909         in front of the browser.
7910
7911         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7912         (run-browser): new function.
7913
7914         * lily/parser.yy (Lily_lexer): recognize Book
7915
7916         * lily/book.cc (clone): new function
7917
7918         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7919
7920 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
7921
7922         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7923         Maintenance bugfix: reduce number of font related warnings by
7924         updating naming conventions for glyph-name.
7925
7926 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * scm/define-grobs.scm (all-grob-descriptions): add
7929         rhythmic-grob-interface to TabNoteHead.
7930
7931         * scm/layout-beam.scm (check-quant-callbacks): remove
7932         set_stem_lengths()
7933
7934 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
7935
7936         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7937         alignment of centered divisiones.
7938
7939         * scm/scripts.scm (articulations): Maintenance bugfix:
7940         follow-into-staff -> quantize-position.
7941
7942         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7943         plica head in porrectus deminutus.
7944
7945 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7946
7947         * make/lilypond.fedora.spec.in (Group): add %clean section.
7948
7949         * lily/tuplet-bracket.cc (print): change check: remove bracket if
7950         less then 1/5th of total length.  
7951         (print): use gap too.  Fixes tupletUp-single-bracket.ly
7952
7953         * scm/music-functions.scm (glue-mm-rest-texts): also put other
7954         events into EventChord. This fixes textspanners on mm rests. Fixes
7955         spanner-rest.ly
7956
7957         * lily/side-position-interface.cc (get_axis): read side-axis
7958         (set_axis): set side-axis.
7959
7960         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7961         properties everywhere.
7962
7963         * lily/spacing-spanner.cc (breakable_column_spacing): add
7964         average-spacing-wishes. Take maximum if not set.
7965         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7966
7967         * scm/define-grobs.scm (all-grob-descriptions): add
7968         average-spacing-wishes.
7969
7970         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7971         offset callbacks. This fixes alignment for Fingering objects.
7972
7973         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7974         space for key - timesig combination. 
7975
7976         * input/regression/script-stem-tremolo.ly (Module): new file.
7977
7978         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7979         to key sig.
7980
7981         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7982         Fixes: c-tremolo-script.ly.
7983         
7984         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7985
7986         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7987         
7988         * scm/define-grobs.scm (all-grob-descriptions): remove
7989         self-X-offset. Fixes alignment of octavate-8.
7990
7991         * scripts/lilypond-book.py (datadir): look in
7992         LILYPONDPREFIX/share/lilypond/current/
7993
7994         * GNUmakefile.in: symlink current to <VERSION>. 
7995
7996 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
7997
7998         * lily/main.cc: eps listed as a backend.
7999
8000 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8001
8002         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
8003
8004 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8005
8006         * lily/include/score.hh (class Score): remove texts_ member.
8007
8008         * lily/beam.cc (set_stem_lengths): force direction callback.
8009         (print): read quantized-positions, so we can force
8010         Beam::set_stem_lengths to occur.
8011         (rest_collision_callback): use common X parent. 
8012
8013 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8014
8015         * flower/file-path.cc (find): Bugfix: Return name of file found.
8016
8017         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
8018         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
8019         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
8020
8021 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8022
8023         * flower/offset.cc: idem.
8024
8025         * mf/*.mf: update email address.
8026
8027         * lily/font-config-scheme.cc:  new file.
8028
8029         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
8030
8031         * lily/*:  cs.uu.nl -> xs4all.nl
8032
8033         * VERSION (PATCH_LEVEL): release 2.7.15
8034
8035         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
8036         spec files.
8037
8038         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
8039
8040 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8041
8042         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
8043
8044         * lily/staff-performer.cc (process_music): add audio
8045         elements. This makes MIDI instrument changes work once again.
8046
8047         * lily/main.cc (LY_DEFINE): add gmane address.
8048
8049         * lily/beam.cc: remove calc_positions()
8050
8051         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
8052         original_ in private scope.
8053         (class Grob): drop pscore_ pointer, change to output_def pointer.
8054         (class Grob): cleanup class definition.
8055
8056         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
8057
8058 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8059
8060         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
8061         absolute.  Better diagnostics.
8062
8063         * GNUmakefile.in: Add bin/ to tree and populate with some links.
8064         This makes lilypond run from the build directory using argv0
8065         relocation (without any --prefix or LILYPONDPREFIX setting).
8066
8067 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8068
8069         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
8070
8071         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
8072         with simple-closure.
8073
8074         * lily/self-aligment-interface.cc (set_align_self): new function
8075         (set_center_parent): new function.
8076
8077         * lily/side-position-interface.cc (set_axis): new function.
8078
8079         * lily/new-fingering-engraver.cc (position_scripts): use drul for
8080         generic code. 
8081
8082         * scm/define-grob-properties.scm (all-user-grob-properties):
8083         remove [XY]-offset-callbacks add [YX]-offset
8084         
8085 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
8086
8087         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
8088         entry for time signatures after breathing signs. Bug report by
8089         Scott Russell.
8090
8091 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8092
8093         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
8094         not absolute, make it absolute using PATH.
8095
8096 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8097
8098         * python/midi.c (initmidi): Fix type for mingw.
8099
8100 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
8101
8102         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
8103
8104         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
8105         cross compiling.
8106
8107         * stepmake/aclocal.m4: Support python cross compiling.
8108
8109         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
8110         Add mingw section.
8111
8112 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8113
8114         * scm/output-lib.scm (chain-grob-member-functions): replace
8115         chained-callback.cc
8116
8117         * lily/chained-callback.cc (Module): remove file.
8118
8119         * lily/rest-collision.cc (force_shift_callback_rest): change to
8120         chained callback.
8121
8122         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
8123
8124         * lily/grob.cc (y_parent_positioning): remove axis argument from
8125         parent_positioning callbacks.
8126         (Grob): junk init code
8127         (get_offset): use generic property callbacks for
8128         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
8129         (axis_parent_positioning): new function
8130         (axis_offset_symbol): new function
8131         (chain_offset_callback): new function
8132         (add_offset_callback): new function
8133
8134         * lily/beam.cc (rest_collision_callback): change signature; this
8135         is now a chained callback.
8136
8137         * lily/include/dimension-cache.hh (class Dimension_cache): remove
8138         callback administration.
8139
8140         * lily/simple-closure.cc: new file. Smob type that allows "grob
8141         member functions",
8142
8143             (ly:make-simple-closure FUNC A B)
8144
8145         is evaluated as (FUNC grob A B). This allows chaining of callbacks
8146         in various ways.
8147
8148         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
8149         callbacks.
8150
8151         * lily/slur.cc (outside_slur_callback): take 2 arguments.
8152
8153         * lily/rest.cc (polyphonic_offset_callback): remove.
8154
8155         * lily/script-engraver.cc (try_music): remove bool* argument.
8156
8157         * scm/script.scm (default-script-alist): set quantize-position
8158         appropriately.
8159
8160         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
8161
8162         * lily/side-position-interface.cc (aligned_side): move staff
8163         position quantization from
8164         Side_position_interface::quantised_position().
8165         (quantised_position): remove
8166         
8167 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8168
8169         * input/regression/beam-quant-standard.ly: reindent, set
8170         debug-beam-quanting to #t.
8171
8172         * lily/beam-concave.cc (calc_concaveness): set concaveness to
8173         10000 if this is a "hard" concave beam.
8174
8175         * lily/beam.cc (calc_least_squares_positions): change from
8176         calc_least_squares_dy
8177         (set_stem_lengths): this is now a chained callback.
8178
8179         * lily/context-property.cc (execute_general_pushpop_property):
8180         bugfix override with procedure should have effect.
8181
8182         * scm/define-grob-properties.scm (all-internal-grob-properties):
8183         remove position-callbacks.
8184
8185         * scm/define-grobs.scm (all-grob-descriptions): use
8186         ly:make-callback-chain for positions property.
8187
8188         * scm/layout-beam.scm (check-quant-callbacks): return list of
8189         chained callbacks.
8190
8191         * scm/lily.scm (type-p-name-alist): add callback-chain
8192
8193         * lily/lily-guile.cc (type_check_assignment): type check failure
8194         is warning not message.
8195
8196         * lily/grob-property.cc (try_callback): walk callback chain if
8197         appropriate.
8198
8199         * lily/chained-callback.cc: new file. new smob type.
8200
8201         * lily/lily-guile.cc (procedure_arity): new function.
8202
8203 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8204
8205         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
8206
8207 2005-10-25  John Mandereau  <john.mandereau@free.fr>
8208  
8209         * Documentation/user/instrument-notation.itely (Figured bass):
8210         describe new features
8211
8212 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8213
8214         * lily/beam.cc (calc_least_squares_dy): use property callback.
8215
8216         * lily/beam-concave.cc (calc_concaveness): use property callback.
8217
8218         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
8219
8220 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8221
8222         * HACKING: Update.
8223
8224 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8225
8226         * scm/layout-page-layout.scm (page-headfoot): annotate
8227         pagetopspace too.
8228
8229         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
8230
8231         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
8232         doesn't take y-space.
8233
8234         * scm/paper.scm (paper-alist): fix A7 dimensions. 
8235
8236 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
8237
8238         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
8239         src-wildcard, remove $(wildcard).
8240
8241         * po/GNUmakefile (PO_FILES): 
8242         * ps/GNUmakefile (PS_FILES): 
8243         * tex/GNUmakefile (TEX_FILES): 
8244         * cygwin/GNUmakefile (POSTINSTALLS):
8245         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
8246         some wildcard calls.
8247
8248 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8249
8250         * THANKS: add Thomas Bushnell.
8251
8252 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
8253
8254         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
8255         (lilypond-main): Redirect to gui-main if 'gui is set.
8256
8257         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
8258         for alternative installations kludging s/share/lib/g
8259         LILYPONDPREFIX. 
8260
8261         * SConstruct (libdir_package_version): Define.
8262
8263         * python/SConscript: 
8264         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
8265         module in libdir.  
8266
8267 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8268
8269         * lily/main.cc: clarify --safe.
8270
8271 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8272
8273         * VERSION: release 2.7.14
8274         
8275         * Documentation/user/*.itely: remove minimumVerticalExtent.
8276
8277         * scm/define-grobs.scm (all-grob-descriptions): remove
8278         RemoveEmptyVerticalGroup
8279
8280         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
8281
8282         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
8283         compile on MOSX
8284
8285         * python/convertrules.py (conv): add rules.
8286
8287         * lily/grob.cc: remove is_empty()
8288
8289         * lily/grob-property.cc: remove add_to_list_property().
8290
8291         * scripts/convert-ly.py (datadir): add prefix switching hack to
8292         .py too.
8293
8294         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
8295         space-function tweak.
8296
8297         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
8298
8299         * scm/define-grob-properties.scm (all-user-grob-properties):
8300         remove callback property.
8301
8302         * lily/include/grob.hh (class Grob): remove property_callbacks_
8303         member. Properties of procedure type are assumed to be callbacks.
8304
8305         * lily/ligature-engraver.cc (override_stencil_callback):
8306         rewrite. Use noteHeadLigaturePrimitive as source.
8307
8308         * scm/define-grob-properties.scm (all-internal-grob-properties):
8309         remove ligature-primitive-callback
8310
8311         * lily/include/dimension-cache.hh (class Dimension_cache): make
8312         class, with Grob as friend.
8313
8314         * lily/grob.cc: remove set_extent_callback(), set_extent() and
8315         has_extent_callback()
8316
8317         * scm/translation-functions.scm (format-new-bass-figure): read
8318         figuredBassPlusDirection
8319
8320         * scm/define-context-properties.scm
8321         (all-user-translation-properties): add figuredBassPlusDirection.
8322
8323         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8324
8325         * lily/align-interface.cc (set_ordered): new function.
8326
8327         * lily/grob.cc (flush_extent_cache): rewrite.
8328
8329         * lily/dimension-cache.cc (Dimension_cache): cache extent as
8330         Interval pointer directly.
8331
8332         * lily/main.cc (setup_paths): insert extra / .
8333         (setup_paths): junk cff entry.
8334
8335         * lily/font-config.cc (init_fontconfig): only add type1 / otf
8336         directories.
8337
8338         * lily/axis-group-engraver.cc (finalize): remove
8339         extraVerticalExtent, minimumVerticalExtent verticalExtent.
8340
8341         * lily/grob.cc (Grob): don't set extent from ctor.
8342         (extent): use property callbacks. 
8343
8344         * lily/axis-group-interface.cc: remove set_axes() function.
8345
8346         * lily/grob-property.cc (del_property): new function.
8347
8348 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8349
8350         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8351         
8352 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8353
8354         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
8355
8356 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8357
8358         * mf/SConscript: Updates.
8359
8360         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8361
8362         * stepmake/stepmake/*:
8363         * */GNUmakefile:
8364         * config.make.in:
8365         * GNUmakefile.in:
8366         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8367         from any directory in build-dir.  Cleanups.
8368
8369         * make/srcdir.make.in: Remove.
8370
8371         * lily/main.cc (setup_paths): Fix and document build-dir hack.
8372
8373         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8374         main).
8375
8376         * lily/SConscript: Remove ttftools.
8377
8378         * SConstruct: Resurrect.
8379
8380 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8381
8382         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8383         Y coordinate. 
8384
8385         * lily/paper-book.cc (add_score_title): put Paper_score title into
8386         systems_ list.
8387
8388         * scm/translation-functions.scm (format-new-bass-figure): also
8389         allow plus in combination with _
8390
8391 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8392
8393         * VERSION: 2.7.13 released.
8394
8395         * lily/note-collision.cc (check_meshing_chords): don't wipe
8396         stencil, merely set transparent.
8397
8398         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
8399         (Top): document #'callbacks.
8400         (Top): document nested \override.
8401
8402         * input/regression/figured-bass.ly: update for slash and pluses.
8403
8404         * input/regression/figured-bass-continuation-forbid.ly (Module):
8405         new file.
8406
8407         * scm/translation-functions.scm (format-new-bass-figure): use
8408         slashed-digit if diminished is set.
8409         (format-new-bass-figure): add + if 'augmented is set.
8410
8411         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8412
8413         * input/test/piano-staff-distance.ly: remove file.
8414
8415         * Documentation/user/advanced-notation.itely (Formatting cue
8416         notes): use length-fraction for making stems/beams smaller.
8417
8418         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8419         modifications.
8420
8421         * lily/new-figured-bass-engraver.cc: new property
8422         centerFiguredBassContinuations
8423
8424         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8425         use callbacks.
8426
8427         * lily/context-property.cc (execute_general_pushpop_property):
8428         robustness checks.
8429
8430         * input/regression/override-nest.ly: new file.
8431
8432         * python/convertrules.py (FatalConversionError.subber): conversion
8433         rule for #'callbacks
8434
8435         * input/regression/override-nest.ly: new function.
8436
8437         * lily/parser.yy (music_property_def): allow \override #'a #'b =
8438         #c too. 
8439
8440         * lily/context-property.cc (lookup_nested_property): new function.
8441         (evict_from_alist): new function.
8442         (general_pushpop_property): new function.
8443         (execute_general_pushpop_property): rewrite. Support nested
8444         properties too.
8445
8446 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8447
8448         * lily/beam.cc: use length-fraction too.
8449
8450         * scm/define-grob-properties.scm (all-user-grob-properties):
8451         remove property flag-width-function
8452         (all-user-grob-properties): remove space-function.
8453
8454         * scm/layout-beam.scm: remove flag-width-function.
8455
8456         * lily/beam.cc: remove flag-width-function
8457
8458         * scm/layout-beam.scm: remove beam dir functions.
8459
8460         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8461
8462         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8463         for easier grace tweaks.
8464
8465         * lily/beam.cc: remove dir-function.
8466
8467         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8468
8469         * lily/grob.cc: remove spacing-procedure.
8470
8471         * lily/note-head.cc (calc_stem_attachment): new function.
8472         (internal_print): use callback to get glyph-name.
8473
8474         * lily/grob-property.cc (get_interfaces): new function.
8475
8476         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8477
8478         * lily/stem.cc (calc_stem_end_position): new function.
8479         (calc_length): new function.
8480         document details for stem.
8481         remove Stem::get_direction()
8482
8483         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
8484
8485         * lily/grob-property.cc (set_callback): new function.
8486
8487         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8488
8489         * lily/item-scheme.cc: new file.
8490
8491         * lily/bar-line.cc (before_line_breaking): remove function.
8492         remove bar-size-procedure, break-glyph-function
8493
8494         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8495
8496         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8497
8498         * lily/system-start-delimiter.cc (print): suicide from
8499         here. Remove after_line_breaking_callback.
8500
8501         * lily/script-interface.cc (calc_direction): use callback for direction.
8502
8503         * lily/side-position-interface.cc (aligned_side): don't use
8504         Side_position_interface::get_direction directly. Use callback. 
8505
8506         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8507         calculate stencil.
8508         (get_print_stencil): rename from get_stencil: create stencil with
8509         transparency, color and cause. 
8510
8511         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8512
8513         * python/convertrules.py (conv): insert temporary warning rule.
8514
8515         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8516
8517         * lily/grob-property.cc (try_callback): remove marker if applicable.
8518
8519         * lily/grob.cc: elucidate doc about after/before-line-breaking
8520
8521         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8522
8523         * lily/stem.cc (height): idem.
8524
8525         * lily/stem-tremolo.cc: idem.
8526
8527         * lily/slur.cc (height): don't use get_uncached_stencil()
8528
8529         * lily/rest.cc (y_offset_callback): use offset callback
8530         iso. after-line-breaking callback.
8531
8532         * lily/grob.cc: change after/before-line-breaking-callback to
8533         after/before-line-breaking dummy properties.
8534
8535         * lily/include/grob.hh: remove Grob_status.
8536
8537         * scm/define-context-properties.scm
8538         (all-user-translation-properties): remove verticalAlignmentChildCallback
8539
8540         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8541         (calc_direction): use callback
8542         (calc_positions): use callback.
8543
8544         * lily/tie.cc (calc_direction): use callback. Only call parent
8545         positioning for more than one tie.
8546
8547         * lily/tie-column.cc (calc_positioning_done): use callback
8548
8549         * lily/slur-scoring.cc (calc_control_points): use callback
8550
8551         * lily/slur.cc (calc_direction): use callback.
8552
8553         * lily/note-collision.cc (force_shift_callback): remove.
8554
8555         * lily/dot-column.cc (force_shift_callback): remove. Use
8556         other_axis_parent_positioning.
8557
8558         * lily/grob.cc (other_axis_parent_positioning): new function.
8559         (same_axis_parent_positioning): new function
8560
8561         * lily/align-interface.cc (alignment_callback): remove function.
8562
8563         * lily/note-collision.cc (calc_positioning_done): use callback.
8564
8565         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8566         (calc_direction): idem.
8567         remove print function.
8568
8569         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8570
8571         * lily/dot-column.cc (calc_positioning_done): use callback.
8572
8573         * lily/break-align-interface.cc (calc_positioning_done): use callback.
8574
8575         * lily/beam.cc (calc_direction): use pseudo-property for beam
8576         direction callback.
8577         (calc_positions): use callback 
8578
8579         * lily/align-interface.cc (calc_positioning_done): use
8580         callback. Fold fixed  distance and normal alignment in one function.
8581
8582         * lily/stem.cc (calc_stem_end_position): use callback.
8583         (calc_positioning_done): idem.
8584         (calc_direction): idem.
8585         (calc_stem_end_position): idem
8586         (calc_stem_info): idem.
8587
8588         * lily/grob-property.cc (get_property_data): new function: 
8589         (try_callback): new function.
8590
8591         * scm/define-grob-properties.scm (all-user-grob-properties): doc
8592         callbacks property.
8593
8594         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8595
8596 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8597
8598         * lily/tie.cc (get_position): robustness fix. Don't crash if a
8599         tie
8600         has no heads.
8601         
8602         * lily/include/*.hh (Module): compile fixes.
8603
8604 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
8605
8606         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
8607         as an argument for char-syntax: use (char-syntax (or nil 0)) 
8608         instead of (char-syntax nil), thanks to Milan Zamazal.
8609
8610 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8611
8612         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8613         dist.
8614
8615         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8616         themselves.
8617
8618 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8619
8620         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8621         add class_name() method.
8622
8623         * lily/music-scheme.cc: remove ly:music-name.
8624
8625 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8626
8627         * cygwin/postinstall-lilypond.sh: Remove cruft.
8628
8629         * cygwin/postremove-lilypond.sh: Remove.
8630
8631         * cygwin/GNUmakefile (default): Remove postremove rules.
8632
8633 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8634
8635         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8636         even header too.
8637         
8638         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8639         MacOS 9 users.
8640
8641         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8642         consider break index for broken spanner.
8643
8644         * scm/define-markup-commands.scm (wordwrap-string): remove \r
8645         characters from string before splitting.
8646
8647 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8648
8649         * scm/framework-ps.scm (output-preview-framework): use
8650         is-book-title to determine whether to chop off the booktitle.
8651
8652         * lily/paper-book.cc (systems): init from book-title-properties
8653         (add_score_title): init score-title-properties.
8654
8655         * ly/paper-defaults.ly: add {score,book}-title-properties.
8656
8657         * scm/document-backend.scm (lookup-interface): error message if
8658         using unknown interface.
8659
8660         * lily/volta-bracket.cc (after_line_breaking): new function. Set
8661         edge-height.
8662
8663         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8664         make_bracket.
8665         (make_bracket): new function.
8666
8667         * scm/lily.scm (define-scheme-options): add paper-size option.
8668
8669         * ly/declarations-init.ly (laissezVibrer): get paper size from
8670         -dpaper-size
8671
8672         * scm/translation-functions.scm: use \fontsize for changing the
8673         fontsize.
8674
8675         * scm/define-grobs.scm (all-grob-descriptions): set
8676         between-length-limit to 1.0
8677
8678         * lily/tie-helper.cc: add between_length_limit_ detail property.
8679
8680         * mf/feta-bolletjes.mf: typos.
8681
8682         * lily/note-head.cc (internal_print): don't shadow idx
8683         parameter. This fixes wrong attachment for do shape heads.
8684
8685 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8686
8687         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8688
8689         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8690
8691         * scm/layout-slur.scm: rename from slur.scm
8692
8693         * scm/layout-page-layout.scm: rename from page-layout.scm
8694
8695         * scm/layout-beam.scm: rename from beam.scm
8696
8697         * scm/define-grob-interfaces.scm (bass-figure-interface): add
8698         bass-figure-interface
8699
8700         * lily/new-figured-bass-engraver.cc (process_music): add
8701         implicitBassFigures property.
8702         
8703         * scm/define-markup-commands.scm (pad-x): new markup.
8704
8705         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8706         minimumVerticalExtent on FiguredBass context.
8707
8708         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8709         case the continuation crosses a line break.
8710
8711 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8712
8713         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8714         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
8715         absolute file name bug.  
8716
8717 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8718
8719         * VERSION (PACKAGE_NAME): release 2.7.12
8720
8721         * input/regression/figured-bass-continuation-center.ly: new file.
8722
8723         * input/regression/beam-outside-beamlets.ly: new file.
8724
8725         * lily/beam.cc (set_beaming): don't clip edges.
8726         (connect_beams): don't clip edges.
8727
8728         * lily/beaming-info.cc (clip_edges): new function.
8729
8730         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8731
8732         * Documentation/user/instrument-notation.itely (Figured bass):
8733         demonstrate extenders, update seealso links.
8734
8735         * scm/titling.scm (marked-up-headfoot): change tagline
8736         handling. tagline = ##f will blank the tagline as well.
8737
8738 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8739
8740         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8741
8742         * lily/new-figured-bass-engraver.cc (struct
8743         New_figured_bass_engraver): add new_music_found_ member.
8744
8745         * lily/lilypond-version.cc (Lilypond_version): deal with
8746         incorrectly formatted version strings. 
8747
8748         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8749         New_figured_bass_engraver by default.
8750
8751         * lily/ttf.cc (print_trailer): only define glyph names when
8752         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8753
8754 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8755
8756         * lily/horizontal-bracket.cc (make_bracket): new function.
8757
8758         * scm/define-grobs.scm (all-grob-descriptions): new grobs
8759         NewBassFigure, BassFigureBracket, BassFigureContinuation,
8760         BassFigureLine, BassFigureAlignment
8761
8762         * lily/new-figured-bass-engraver.cc (process_music): new file.
8763
8764         * lily/figured-bass-continuation.cc: new file.
8765
8766         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8767         new file.
8768
8769 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
8770
8771         * scripts/lilypond-book.py: Bug fix, put the quote around the
8772         actual score for LaTeX documents.
8773
8774         * scm/define-grobs.scm (all-grob-descriptions): Change
8775         collapse-height of the SystemStartBracket grob to 5.0, 
8776         so the bracket disappears for single stave score lines (similarly
8777         to SystemStartBraces). 
8778
8779         * Documentation/user/advanced-notation.itely (Polymetric
8780         notation): Clarify the use of compressMusic.
8781
8782         * Documentation/user/basic-notation.itely (Grace notes): Clarify
8783         that the grace spacer note in other staves need the same duration
8784         and document the stroke-style property.
8785
8786 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8787
8788         * Documentation/user/global.itely (Vertical spacing): document
8789         alignment-extra-space and fixed-alignment-extra-space.
8790
8791         * Documentation/topdocs/NEWS.tely (Top): add entry.
8792
8793         * input/regression/alignment-vertical-spacing.ly: new file.
8794
8795         * python/convertrules.py (conv): add rule.
8796
8797         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8798
8799         * lily/align-interface.cc (stretch_after_break): new
8800         function. Read fixed-alignment-extra-space property.
8801         (align_elements_to_extents): read alignment-extra-space property.
8802
8803         * lily/lily-guile.cc (robust_scm2dir): new function.
8804
8805         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8806         (annotate-space-left): new function. Annotate space left on page. 
8807         (annotate-y-interval): new function.
8808         (paper-system-annotate-last): new function. Annotate bottom-space.
8809
8810         * mf/feta-beugel.mf (y): 
8811
8812 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8813
8814         * VERSION (PACKAGE_NAME):  release 2.7.11
8815
8816         * scm/lily-library.scm (interval-translate): new function
8817         (interval-center): new function. 
8818
8819         * scm/page-layout.scm (paper-system-annotate): new function. Add
8820         arrows for dimensions.
8821  
8822         * scm/stencil.scm (dimension-arrows): new function.
8823
8824         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8825
8826         * input/regression/page-spacing.ly: add annotatespacing
8827
8828         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8829         (LY_DEFINE): new function ly:paper-system-set-property!
8830
8831         * Documentation/user/global.itely (Paper size): explain how to add
8832         sizes.
8833
8834         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8835         correspond to GS's definition.
8836
8837         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8838         tuplet bracket.
8839         (print): only connect to next bracket if the next one is alive.
8840         (print): set padding to 0.0 if the bound is a breakable
8841         column. This makes tupletFullLength brackets reach up to the staff
8842         line if it doesn't connect to the next line.
8843
8844 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8845
8846         * lily/bar-number-engraver.cc: correct docs.
8847
8848         * scm/output-lib.scm (first-bar-number-invisible): rename from
8849         default-bar-number-visibility
8850
8851 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8852
8853         * scm/define-music-properties.scm (all-music-properties): remove
8854         predicate property.
8855
8856 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
8857
8858         * po/fi.po: refresh.
8859
8860 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8861
8862         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8863         superfluous s1.
8864         (disappear): bugfix.
8865
8866         * lily/stem-tremolo.cc (raw_stencil): read slope property.
8867
8868         * lily/include/paper-system.hh (class Paper_system): remove
8869         staff_extents_ member.
8870
8871         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8872
8873         * lily/include/paper-system.hh (class Paper_system): remove
8874         number_ variable. Remove is_title_. Remove break_before_penalty_
8875
8876         * lily/paper-book.cc (systems): use 'number property iso. number_
8877         member.
8878
8879         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8880         remove ly:paper-system-number.
8881
8882         * scm/lily-library.scm (paper-system-title?): new function.
8883
8884         * lily/book.cc (process): bugfix: flip ?: cases. 
8885
8886         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8887         add outputProperty.
8888
8889         * ly/music-functions-init.ly: add outputProperty music function.
8890
8891         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8892
8893         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8894         and next-padding.
8895         (optimal-page-breaks): rename from ly:optimal-page-breaks.
8896
8897         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8898
8899         * lily/paper-system.cc (internal_get_property): new function.
8900
8901         * Documentation/user/global.itely (Vertical spacing): refer to
8902         page-spacing.ly
8903
8904         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8905         pagetopspace
8906
8907         * input/regression/page-spacing.ly: new file.
8908
8909         * input/regression/page-top-space.ly: new file.
8910
8911         * lily/spacing-spanner.cc: cmath -> math.h
8912
8913         * lily/paper-system.cc (read_left_bound): new function. Read
8914         line-break-system-details from left bound to determine extents.
8915  
8916         * Documentation/user/programming-interface.itely (Using LilyPond
8917         syntax inside Scheme): change applyxxx -> applyXxx.
8918
8919         * ly/music-functions-init.ly: add outputProperty music function.
8920
8921         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8922
8923         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8924
8925         * python/convertrules.py (conv): rule
8926
8927         * ly/music-functions-init.ly: applyxxx -> applyXxx
8928
8929         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8930         TabVoice to Voice.
8931
8932 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8933
8934         * flower/include/real.hh: include <math.h> iso. <cmath>
8935
8936         * flower/include/offset.hh: include real.hh
8937
8938 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8939
8940         * Documentation/user/changing-defaults.itely (Difficult tweaks):
8941         fix example, now that 'interfaces is no longer directly available.
8942
8943         * lily/book.cc (process): don't crash if paper == NULL.
8944
8945         * po/fr.po: update.
8946
8947 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8948
8949         * scm/define-music-types.scm (music-descriptions): set length and
8950         start-callback for QuoteMusic
8951
8952 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
8953
8954         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8955         arguments. Fixes compilation error with gcc 3.3.
8956
8957 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8958
8959         * VERSION: release 2.7.10
8960
8961         * stepmake/stepmake/python-module-rules.make
8962         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
8963
8964         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8965         real.hh
8966
8967 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8968
8969         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8970         -Werror. Otherwise GCC barfs over various optimizations.
8971
8972         * scm/define-grob-properties.scm (all-internal-grob-properties):
8973         add note-head property
8974
8975         * Documentation/user/instrument-notation.itely (Laissez vibrer
8976         ties): new node.
8977
8978         * input/regression/laissez-vibrer-ties.ly: new file.
8979
8980         * lily/laissez-vibrer-engraver.cc: new file.    
8981
8982         * lily/include/tie-column-format.hh: new file.
8983
8984         * lily/tie-column-format.cc: new file. 
8985
8986         * lily/tie-column.cc (set_manual_tie_configuration): new function.
8987
8988         * lily/laissez-vibrer-tie.cc: new file.
8989
8990         * lily/include/laissez-vibrer-tie.hh: new file.
8991
8992         * ly/engraver-init.ly: add Laissez_vibrer_engraver
8993
8994         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8995
8996         * scm/define-grobs.scm (all-grob-descriptions): add
8997         LaissezVibrerTie, LaissezVibrerTieColumn
8998
8999         * lily/tie-column.cc (set_tie_config_directions): new function
9000         (final_shape_adjustment): new function.
9001         (shift_small_ties): new function.
9002
9003         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
9004
9005         * lily/include/tie.hh (struct Tie_details): add x_gap_
9006         (struct Tie_configuration): add head_position_
9007
9008         * lily/tie-column.cc (set_chord_outline): new function.
9009
9010         * mf/cmr.enc.in:  remove file.
9011
9012 2005-09-11  Graham Percival  <gpermus@gmail.com>
9013
9014         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
9015
9016 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9017
9018         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
9019         reduce aliasing effects.
9020
9021         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
9022         box in skyline.
9023
9024 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9025
9026         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
9027
9028         * flower/include/real.hh: std::fabs too.
9029
9030 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9031
9032         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
9033
9034         * lily, flower: Include C++ iso C headers.  Import namespace std
9035         throughout.
9036
9037         * lily/side-position-interface.cc: 
9038         * lily/scm-hash.cc: 
9039         * lily/note-head.cc: 
9040         * lily/include/includable-lexer.hh: 
9041         * flower/include/string-data.icc: Remove using std::*.
9042
9043         * lily, flower: Include C++ iso C headers.  Import namespace std
9044         throughout.
9045
9046         * lily/side-position-interface.cc: 
9047         * lily/scm-hash.cc: 
9048         * lily/note-head.cc: 
9049         * lily/include/includable-lexer.hh: 
9050         * flower/include/string-data.icc: Remove using std::*.
9051
9052         * Documentation/user/instrument-notation.itely (Entering lyrics):
9053         Multiple latin-1->utf-8 conversion fix.
9054
9055         * Documentation/user/*tely: Update Emacs cookie to utf-8.
9056
9057 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9058
9059         * lily/tie.cc (get_configuration): also avoid dots for non-space
9060         situations.
9061
9062 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9063
9064         * Documentation/user/instrument-notation.itely: Bugfix.
9065
9066 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9067
9068         * tex/GNUmakefile: don't install texinfo.tex
9069
9070         * tex/ : cleanup: remove unused files.
9071
9072         * lily/general-scheme.cc: remove my_{isinf,isnan}.
9073
9074         * flower/include/real.hh: using std::{isnan,isinf}
9075         
9076         * VERSION (PATCH_LEVEL): release 2.7.9
9077
9078 2005-09-05  Graham Percival  <gpermus@gmail.com>
9079
9080         * Documentation/user/ instrument-notation.itely,
9081         advanced-notation.itely: minor tweaks.
9082
9083         * input/test/script-chart.ly: add item padding.
9084
9085 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9086
9087         * flower/offset.cc: use math.h iso. <cmath>
9088
9089         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
9090         of IE users.
9091
9092         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
9093         (widen-left-stencil-edges): new function. Fix alignment problems
9094         with LaTeX includegraphics.
9095
9096         * lily/text-interface.cc (interpret_markup): use abort().
9097
9098 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9099
9100         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
9101
9102         * lily/tie.cc (get_configuration): update bezier shape as we
9103         change Y positions.
9104         (get_configuration): don't move large ties if we're outside of the
9105         staff.
9106
9107 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9108
9109         * scm/define-markup-commands.scm (strut): swap X and Y dims.
9110         
9111 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
9112
9113         * .cvsignore: Add auto-generated configure files and then some.
9114
9115 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9116
9117         * scm/define-grobs.scm (DynamicLineSpanner): Add
9118         X-extent-callback.  Fixes hairpin-slur collision.
9119
9120 2005-08-31  Graham Percival  <gpermus@gmail.com>
9121
9122         * Documentation/user/advanced-notation.itely,
9123         basic-notation.itely: minor changes.
9124
9125 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
9126
9127         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
9128         \linebreak between each .eps file if \betweenLilyPondSystem is
9129         undefined. 
9130
9131         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
9132         music): Document the \linebreak
9133
9134         * Documentation/user/lilypond-book.itely,
9135         input/tutorial/lbook-latex-test.tex,
9136         Documentation/user/examples.itely: Remove \usepackage{graphics}
9137
9138 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9139
9140         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
9141
9142         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
9143         compat bugfix.
9144
9145         * scripts/lilypond-book.py (PREAMBLE_LY): define
9146         inside-lilypond-book
9147         (modify_preamble): new function. Insert \RequirePackage{graphics}
9148         when no {graphics found in preamble.  
9149
9150 2005-08030  Graham Percival  <gpermus@gmail.com>
9151
9152         * Documentation/user/basic-notation.itely, global.itely,
9153         tutorial.itely: misc small changes.
9154
9155 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9156
9157         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
9158         VERSION.
9159
9160 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9161
9162         * lily/tie-column.cc (new_directions): put Tie down on center
9163         staff line. 
9164
9165         * lily/script-interface.cc (before_line_breaking): use
9166         Grob::programming_error
9167
9168         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
9169
9170         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
9171         of splitext.
9172
9173 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9174
9175         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
9176
9177 2005-08-29  Werner Lemberg  <wl@gnu.org>
9178
9179         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
9180         the `*.scale.pfa' files to avoid warnings.
9181
9182 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9183
9184         * lily/tempo-performer.cc (process_music): idem.
9185
9186         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
9187
9188 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9189
9190         * Documentation/user/advanced-notation.itely (Text markup): not a
9191         fragment.
9192
9193         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
9194
9195         * lily/staff-performer.cc (initialize): add tempo/name to
9196         audio_staff_
9197
9198 2005-08-26  Graham Percival  <gpermus@gmail.com>
9199
9200         * Documentation/user/advanced.itely: add text-only example.
9201
9202         * Documentation/user/invoking.itely: add index entries for
9203         convert-ly.
9204
9205         * Documentation/user/ tutorial.itely, basic-notation.itely:
9206         small fixes suggested by Steve D.  Thanks!
9207
9208 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9209
9210         * input/regression/markup-bidi-pango.ly: new file.
9211
9212         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
9213         standard. Remove #ifdef. Remove memleak.
9214         (text_stencil): use text_dir to decide how to composite items.
9215         (text_stencil): determine uniform text direction for the entire
9216         string.
9217
9218         * scripts/lilypond-book.py (output_name): remove
9219         latex_filter_cmd. Non-portable to non-Unix systems. 
9220         (get_latex_textwidth): use File.write and os.unlink() instead.
9221
9222         * THANKS: add Vicente & Trevor.
9223
9224         * lily/grob.cc (discretionary_processing): look up origin for
9225         programming_error too. 
9226
9227         * input/regression/tie-broken.ly: new file.
9228
9229         * lily/tie-column.cc (set_chord_outlines): set outline for line
9230         break case too.
9231         
9232 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9233
9234         * lily/pango-font.cc (text_stencil): don't translate glyphs in
9235         unscaled transform, just translate stencils.
9236
9237         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
9238         MIDI.
9239
9240         * scm/define-markup-commands.scm (wordwrap-string): use
9241         text-direction
9242         (wordwrap-stencils): idem.
9243         (line): idem.
9244         (fill-line): idem.
9245         (wordwrap-stencils): translate last line to right for
9246         text-direction = LEFT.
9247
9248         * scm/define-grob-properties.scm (all-user-grob-properties): add
9249         text-direction.
9250
9251 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9252
9253         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
9254         when copying a Lily_parser object.
9255
9256 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9257
9258         * scm/define-markup-commands.scm (null): add null markup.
9259
9260 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
9261
9262         * lily/item.cc: Add documentation of center-invisible
9263
9264 2005-08-24  Graham Percival  <gpermus@gmail.com>
9265
9266         * Documentation/user/advanced-notation.itely: add info about
9267         raising text.
9268
9269         * Documentation/user/programming-interface.itely: fix example
9270         involving raised text.
9271
9272 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9273
9274         * lily/beam.cc (print): fix X start/end points of isolated
9275         beamlets.
9276
9277         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
9278
9279         * lily/multi-measure-rest.cc (set_text_rods): new function.
9280
9281         * lily/vertical-align-engraver.cc (process_music): call
9282         Align_interface::set_axis(). This forces #'elements to be ordered,
9283         preventing random vertical reordering of staves.
9284
9285         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
9286         add avoid-slur property. 
9287
9288         * Documentation/user/basic-notation.itely (Measure repeats): add
9289         countPercentRepeats example.
9290
9291         * Documentation/user/advanced-notation.itely (Other text markup
9292         issues): remove remark about normal-font.  We have \normal-text
9293
9294         * input/regression/tie-chord.ly: add note about remaining bugs.
9295
9296         * lily/tie.cc (print): try Tie_column::set_directions () if
9297         control-points not yet defined.
9298
9299 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9300
9301         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
9302         extent. This fixes braces falling out of the EPS bbox.
9303
9304         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
9305         exactly to bbox.
9306
9307 2005-08-23  Graham Percival  <gpermus@gmail.com>
9308
9309         * {various} : change #up->#UP and #down->#DOWN.
9310
9311         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
9312
9313         * Documentation/user/advanced-notation.itely: clarify
9314         what objects handles text on a multimeasure rest.
9315
9316 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9317
9318         * VERSION (PATCH_LEVEL): release 2.7.7
9319
9320 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9321
9322         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
9323
9324         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9325
9326         * input/regression/*.ly: formatting clean-up. Default layout
9327         before music expression.
9328
9329         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9330         romanze28-2 example.
9331
9332         * scm/ps-to-png.scm: remove dir-re function.
9333         (make-ps-images): generate page names, instead of globbing them.
9334         This brings down LilyPond memory usage for make web by a factor
9335         10. 
9336
9337         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9338         don't use glob. With 3000 files, globbing
9339         Documentation/user/out-www/ can take too much time. 
9340         
9341         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9342
9343         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9344
9345         * input/regression/tie-manual.ly: new file
9346
9347         * input/regression/tie-chord.ly: update.
9348
9349         * flower/include/interval.hh (struct Interval_t): 
9350
9351         * lily/tie.cc (distance): new function 
9352         (height): new function.
9353         (init): new function
9354         (Tie_details): new struct.
9355
9356         * lily/skyline.cc (skyline_height): new function.
9357
9358         * lily/tie-column.cc (set_chord_outlines): new function.
9359         (new_directions): read tie-configuration
9360
9361         * lily/skyline.cc: fix ASCII art.
9362         
9363 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
9364
9365         * python/convertrules.py (string_or_scheme): Fix spelling error
9366
9367 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9368         
9369         * lily/tie-column.cc (set_directions): set directions only once.
9370         (add_configuration): new function.
9371
9372         * lily/tie.cc (set_control_points): new function
9373
9374         * lily/tie-column.cc (new_directions): new function.
9375
9376         * ly/music-functions-init.ly: set 'pitch property
9377         iso. trill-pitch. This makes \relative work with \pitchedTrill
9378
9379         * lily/tie.cc (get_configuration): new function. Don't generate
9380         control points, rather, generate configuration.
9381         remove head-pair property.
9382
9383         * lily/include/tie.hh (struct Tie_configuration): new struct.
9384
9385 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
9386
9387         * Documentation/topdocs/NEWS.tely: clarify.
9388
9389 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9390
9391         * lily/tie.cc: remove minimum-length
9392
9393         * scm/define-grob-properties.scm (all-user-grob-properties):
9394         remove staffline-clearance, y-offset 
9395
9396         * input/regression/tie-dots.ly (Module): remove.
9397
9398         * lily/tie.cc (get_control_points): rewrite. Put short ties in
9399         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9400
9401         * input/regression/tie-single.ly: new file.
9402
9403 2005-08-21  Graham Percival  <gpermus@gmail.com>
9404
9405         * ly/bagpipe.ly: fix compile problem.
9406
9407 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9408
9409         * lily/midi-item.cc (name): new method.
9410
9411         * lily/staff-performer.cc (acknowledge_audio_element): use
9412         signature of baseclass.
9413
9414         * lily/engraver-group.cc (do_announces): move recursion call out
9415         of while loop. 
9416
9417         * lily/drum-note-performer.cc (class Drum_note_performer): use
9418         process_music everywhere.
9419
9420         * ly/performer-init.ly: add default children everywhere.
9421
9422         * lily/paper-book.cc (output): call paper-book-write-midis
9423         directly: always write MIDI, even if no \layout {} block. 
9424
9425 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9426
9427         * VERSION (PACKAGE_NAME): release 2.7.6
9428
9429         * lily/percent-repeat-engraver.cc (try_music): don't print warning
9430         about not being able to handle repeat.
9431
9432 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9433
9434         * Documentation/user/examples.itely (Piano templates):
9435         * lily/include/performer-group.hh: Remove last traces of
9436         Performer_group_performer.  Fixes make web.
9437
9438 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9439
9440         * Documentation/user/examples.itely (Piano templates): change
9441         Engraver_group_engraver -> Engraver_group
9442
9443         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9444         scm_stand_in_procs is not weak_any.
9445
9446         * lily/volta-bracket.cc (print): don't use strcmp().
9447
9448         * lily/volta-engraver.cc (process_music): use
9449         Text_interface::is_markup() for setting the 'text property of the
9450         volta bracket.
9451
9452         * input/mutopia/claop.py (accents): update syntax to 2.6
9453
9454         * scm/define-context-properties.scm
9455         (all-user-translation-properties): add countPercentRepeats.
9456
9457         * Documentation/user/basic-notation.itely (Measure repeats): add
9458         isolated percent example.
9459
9460 2005-08-18  Graham Percival  <gpermus@gmail.com>
9461
9462         * input/ {various}: change direction #1, #-1 to
9463         #up/#down or \fooUp, \fooDown.
9464
9465         * Documentation/user/music-glossary.tely: #-1 to #down.
9466
9467         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9468         to #up, #-1 to #down.
9469
9470 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9471
9472         * lily/include/engraver-group.hh: rename.
9473
9474         * lily/include/performer-group.hh: rename.
9475
9476 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
9477
9478         * input/test/script-abbreviations.ly: Removed some old LaTeX
9479         left overs.
9480
9481 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9482
9483         * python/convertrules.py (conv): inside-slur -> avoid-slur.
9484         Remove functions.  Remove if 1: constructs, reindent.
9485
9486         * scripts/convert-ly.py (add_version): Add functions from
9487         convertrules.py
9488
9489         * scm/script.scm (default-script-alist):
9490         s/priority/script-priority.  Fixes script stacking.  Backportme.
9491         (Fermata): Very low priority.
9492
9493 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9494
9495         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9496
9497         * input/regression/slur-script.ly: remove padding tweaks. Add
9498         comment strings.
9499
9500         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9501         time sigs and related stuff.
9502
9503         * scm/define-grob-properties.scm (all-user-grob-properties): add
9504         @c