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