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