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