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