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