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