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