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