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