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