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