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