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