*** empty log message ***
[lilypond.git] / ChangeLog
blob177d049170a449ff1d6a90448367fb589ac42ed9
1 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3         * scripts/lilypond-book.py (output): use base, not filename for href.
5         * scm/backend-library.scm: only look for gs.
7         * scripts/lilypond-book.py (output): fix printfilename.
9         * lily/parser.yy (music_function_musicless_prefix): fold together
10         definitions of signature (SCM*) (Music|post_event|chord_body_element)
12         * lily/slur.cc (print): only set font-size if not set yet.
14         * lily/slur-configuration.cc (add_score): improved layout of debug
15         scoring output.
17 2006-04-05  David Feuer  <David.Feuer@gmail.com>
19         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
20         (draw_circle): Hopefully fixed regression.
21         Improved documentation for several procedures.
22         
23 2006-03-04  Werner Lemberg  <wl@gnu.org>
25         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
27 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
29         * scripts/musicxml2ly.py (bindir): add dynamic
30         relocation. 
32 2006-04-04  Graham Percival  <gpermus@gmail.com>
34         * Documentation/user/ basic-notation, advanced-notation, putting,
35         instrument-notation, invoking, lilypond, THANKS: another ream of small
36         fixes from the Doc Helpers.
38 2006-04-03  David Feuer  <David.Feuer@gmail.com>
40         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
42         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
44         * Cleaned up interfaces between PostScript and Scheme, and moved
45         computations from PostScript to Scheme:
47         * music-drawing-routines.ps
48         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
49         with stroke_and_fill throughout.
50         (euclidean_length, print_letter, draw_box): Deleted unused
51         procedures.  If someone needs draw_box, implement it using
52         draw_round_box; don't duplicate code.
53         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
54         Refactored/cleaned up interfaces.
55         (mark_URI): Moved.
57         * output-ps.scm: reordered arguments to PostScript functions to
58         match new interfaces
59         (glyph-string): Rewrote glyph-string.
60         (grob-cause): Replaced string-append with format.
61         (repeat-slash): Rewrote to do computation here.
62         (round-filled-box): Rewrote to do computation here.
64 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
66         * stepmake/stepmake/generic-targets.make: add cvs-clean target
68         * stepmake/stepmake/toplevel- targets.make: print help info about
69         cvs-clean
71 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
73         * input/regression/hairpin-circled.ly: new file
75 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
77         * lily/hairpin.cc (print): add support for circled tip
79         * scm/define-grob-properties.scm: add circled-tip parameter
81         * scm/define-grobs.scm: init circled-tip to false
82         
83 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
85         * scm/music-functions.scm (quote-substitute): set
86         iterators-ctor. 
88 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
90         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
91         BSTINPUTS. 
93         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
95         * scm/output-ps.scm (glyph-string): revert cid selectfont.
97 2006-03-31  David Feuer  <david.feuer@gmail.com>
98         
99         * scm/framework-ps.scm:
100         
101         * scm/output-ps.scm: glyph-string now produces smaller, more
102         readable, and probably faster PostScript.  Several findfont
103         scalefont setfont instances changed to selectfont
104         Hacked-up string-appends changed to formats.
106         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
107         
108 2006-03-30  Graham Percival  <gpermus@gmail.com>
110         * scm/lily-library.scm: make "no version" warning message more polite.
112         * lily/music.cc: add double quotes to failed octave check.
114         * Documentation/user/ advanced-notation, changing-defaults,
115         instrument-notation, invoking, music-glossary: whole bunch of minor
116         fixes from mailist.
118 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
120         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
121         $(buildscriptdir) iso. depth.
123         * VERSION (PACKAGE_NAME): release 2.9.1
125 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
127         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
129         * VERSION (PATCH_LEVEL): bump version number.
131         * flower/include/guile-compatibility.hh (scm_from_uint32): add
132         scm_from_uint32 ()
134         * lily/pango-font.cc (pango_item_string_stencil): use
135         scm_from_uint32 ()
137         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
138         $(outdir)/emmentaler-%.svg): remove canary.
140         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
141         glyphnames if we have a ttf font.
143 2006-03-30  Mats Bengtsson  <mabe@drongo.s3.kth.se>
145         * Documentation/user/advanced-notation.itely (Font selection):
146         Corrected reference to the font-family-override.ly example.
148 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
149         
150         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
151         stem-tremolo object in the stem (or else the stem might not be
152         long enough).
154 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
156         * lily/ttf.cc (print_trailer): only print existing glyphs.
158 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
160         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
161         position the tremolo based on the position of the notehead.
163         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
164         notes and update the texidoc line with the new positioning rules.
165         
166 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
168         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
170         * scripts/lilypond-book.py (Module): set default for linewidth if
171         preamble not found.
173 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
175         * VERSION (PACKAGE_NAME): release 2.9.0.
177         * input/regression/stem-tremolo-position.ly: new file.
179         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
181 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
183         * lily/stem-tremolo.cc (print): position
184         the tremolo depending only on the end of the stem
185         and not on the notehead
186         (raw_stencil): center, on the middle staff line, the
187         flag that is closest to the end of the stem (previously
188         the bottom flag)
189         (calc_width): add this callback to shorten a tremolo when
190         it is beamed or it is stemup with a flag
191         (style): add this callback to make a tremolo rectangular when
192         it is beamed or it is stemup with a flag
193         (rotated_box): this is like Lookup::beam but makes a rotated
194         rectangle instead of a parallelogram
196         * lily/stem.cc (calc_stem_info): make sure the stem
197         is long enough to fit the tremolo
198         (calc-length): reduce the length of tremolo stems since the
199         tremolo code is now capable of better positioning
201         * scm/define-grobs.scm: make calc_width the default beam-width
202         callback for stem-tremolo and add the style callback
203                 
204 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
206         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
207         case. 
209 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
211         * lily/ttf.cc (make_index_to_charcode_map): restore old
212         cmap. 
214 2006-03-28  Werner Lemberg  <wl@gnu.org>
216         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
218 2006-03-28  Graham Percival  <gpermus@gmail.com>
220         * THANKS: update for 2.9, add section for Documentation helpers.
222         * Documentation/topdocs/NEWS.tely: compile fix.
224         * Documentation/user/ basic-notation, global, advanced-notation,
225         examples.itely: minor fixes from mailist.
227 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
229         * mf/feta-bolletjes.mf: match width of solfa notes with normal
230         note heads. 
232         * lily/ttf.cc (print_trailer): use it.
234         * lily/pango-font.cc (get_unicode_name): new function.
236         * lily/ttf.cc (make_index_to_charcode_map): move function from
237         open-type-font.cc
238         (print_trailer): substitute uniXXXX name if applicable. 
240         * lily/pango-font.cc (get_index_to_charcode_map): new function.
241         (pango_item_string_stencil): use it to generate uniXXXX names.
243         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
244         note heads, for uniform widths in shape note output.
245         (overdone_heads): hmm. remove them again.
247         * scripts/lilypond-book.py (output): add links to filenames.
249         * Documentation/topdocs/INSTALL.texi (Top): update versions.
251         * lily/note-collision.cc (get_clash_groups): only consider when
252         Note_column::dir <> CENTER. 
254         * scripts/lilypond-book.py (get_option_parser): init output_name
255         to ''. 
257 2006-03-24  Graham Percival  <gpermus@gmail.com>
259         * Documentation/topdocs/NEWS.tely: add @end itemize
261         * Documentation/user/ global, advanced-notation: minor
262         stuff from mailist.
264 2006-03-23  Graham Percival  <gpermus@gmail.com>
266         * Documentation/user/ lilypond.tely, music-glossary,
267         preface: housekeeping; 2005->2006, remove "notes for 2.6"
269 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
271         * mf/GNUmakefile: don't install .enc files.
273         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
275         * VERSION (PATCH_LEVEL): bump to 2.9.0
277 2006-03-22  Graham Percival  <gpermus@gmail.com>
279         * Documentation/user/advanced-notation.itely: minor fixes
280         from mailist.
282 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
284         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
286         * branch lilypond_2_8
288 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
290         * scripts/lilypond-book.py (samefile): new function, for windoze
291         compatibility.
293 2006-03-21  Graham Percival  <gpermus@gmail.com>
295         * ly/engraver-init.ly: add info about StaffGroup.
297 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
299         * input/regression/stem-direction-context.ly: idem.
301         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
303         * THANKS: add Mats.
305         * input/regression/page-layout-twopass.ly: comment out \markup so
306         tweak-file is left.
308         * lily/instrument-name-engraver.cc (finalize): add to instrument
309         name global System. This also fixes chopped instrument names, but
310         doesn't crash when there are slurs/beams.
312         * lily/slur-configuration.cc (add_score): disallow negative slur
313         scores.
314         
315 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
317         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
319         * lily/instrument-name-engraver.cc (process_music): kludge: add
320         InstrumentName spanner to axis group of left bound. Fixes chopped
321         off instrument names in EPS images.
323         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
325         * scripts/abc2ly.py (option_parser): update to 2.7.40
327 2006-03-20  Graham Percival  <gpermus@gmail.com>
329         * THANKS: move small doc contributors to SUGGESTIONS.
331         * Documentation/user/ basic-notation, advanced-notation,
332         global: small changes from mailist.
334 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
336         * Documentation/user/advanced-notation.itely (Text marks): update
337         for new rehearsalMarkAlignSymbol convention.
339         * VERSION (PATCH_LEVEL): bump version.
341         * input/test/instrument-name-align.ly: new file.
343         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
345         * input/test/instrument-name-align.ly: new file. Document how to
346         align instrument names.
348         * lily/mark-engraver.cc: remove properties.
350         * scm/define-context-properties.scm
351         (all-user-translation-properties): remove align symbol properties
352         for barnumber/reh. mark.
354         * lily/break-align-interface.cc (self_align_callback): new
355         interface, new function. Look at complete alignment. This handles
356         tunable break alignments in case break-align-symbols are missing.
358         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
360         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
362         * python/convertrules.py (conv): mark/bar number alignment rule.
364         * lily/break-align-interface.cc (calc_positioning_done): also
365         store offset from last visible break-alignment to its
366         neighbor. This makes alignment on non-visible objects more reliable.
368         * po/lilypond.pot (Module): ran po-replace.
370         * input/regression/tie-single-manual.ly (Module): new file.
372         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
373         look at has_manual_position_.
374         (from_ties): set has_manual_position_ if tie has staff-position set.
376         * lily/tuplet-bracket.cc (calc_positions): idem.
378         * lily/tuplet-number.cc (print): don't print tupletnumber if it
379         doesn't span time.
381 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
383         * scm/define-markup-commands.scm (smallCaps): new markup command
384         for turning a text to small caps using smaller font size and upper
385         casing.
387 2006-03-17  Graham Percival  <gpermus@gmail.com>
389         * Documentation/user/ examples, instrument-notation,
390         advnaced-notation: minor fixes from mailist.
392 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
394         * Documentation/user/tutorial.itely (First steps): change example
395         to verbatim.  
397 2006-03-17  Graham Percival  <gpermus@gmail.com>
399         * Documentation/user/ examples, advanced: minor changes from mailist.
401         * THANKS: add Geoff Horton, for documentation stuff.
403 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
405         * python/lilylib.py (system): revert have_select kludge.
407         * Documentation/user/tutorial.itely (Commenting input files):
408         update version numbers in doc. 
410         * scm/define-grob-interfaces.scm (multi-measure-interface): add
411         bound-padding to multi-measure-interface
413 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
415         * input/test/engraver-example.ily: update version number.
417         * VERSION (PACKAGE_NAME): release 2.7.39
419         * lily/note-spacing.cc (get_spacing): heighten threshold where
420         accidentals/arpeggios influence previous spacing fully.
422         * lily/rest.cc (y_offset_callback): only use direction if
423         staff-position wasn't set before.
425         * lily/bar-number-engraver.cc: add support for
426         barNumberAlignSymbol. 
427         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
429         * lily/pointer-group-interface.cc (set_ordered): new function. 
430         (add_unordered_grob): new function.
432         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
433         to ordered, unless the opposite has been proved.  This fixes
434         random reordering of large object groups across linebreaks,
435         eg. beams.
437         * lily/main.cc (do_chroot_jail): printf format fix.
439         * lily/tie-formatting-problem.cc (generate_configuration):
440         multiply y-shift for dot with direction.
442         * scm/define-markup-commands.scm (note-by-number): put (magstep
443         size) in y-attach too.
445         * Documentation/topdocs/NEWS.tely (Top): show override.
447         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
448         direction for stems.
449         
450 2006-03-15  Graham Percival  <gpermus@gmail.com>
452         * Documentation/user/ changing-defaults, global: minor
453         fixes from mailist.
455 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
457         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
459         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
460         breakable items after uniformly stretched notes.
462         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
463         outline with outer edge of note heads. This prevents infinity
464         problems with tied whole notes.
466         * scripts/lilypond-book.py (do_file): use os.popen
468         * python/convertrules.py (conv): add rule for Stem #'beamed-*
470 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
472         * Documentation/user/invoking.itely: Add ragged-right to bug report
473         guidelines.
475 2006-03-14  Graham Percival  <gpermus@gmail.com>
477         * Documentation/user/global.itely: small fix from mailist.
479 2006-03-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
481         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
482         file descriptor returned by tempfile.mkstemp() when writing
483         to tmpfile and closing it. Solves problem with unlink(tmpfile)
484         on mingw.
486 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
488         * po/fi.po: newline bugfix.
490 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
492         * scm/paper.scm (paper-alist): Rounding fixes.
494 2006-03-13  Graham Percival  <gpermus@gmail.com>
496         * Documentation/user/ changing-defaults, instrument-notation,
497         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
499 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
501         * po/fi.po: update.
503 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
505         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
506         mailto: to http:// 
508         * python/lilylib.py (print_environment): move ps_page_count to
509         lilypond-book.py
511 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
513         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
515         * scm/framework-ps.scm (embed-document): new function. Use to
516         embed PFA files.
518         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
520 2006-03-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
522         * Documentation/user/instrument-notation.itely (Setting simple
523         songs): Added \book{...} around the full example, so the separate
524         markups are included in the printed example. 
526 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
528         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
529         tmphandle.
531         * python/lilylib.py (system): rewrite system() using
532         subprocess. Remove >& redirection trickery.
534 2006-03-11  Graham Percival  <gpermus@gmail.com>
536         * Documentation/user/ changing-defaults, global, scheme-tutorial,
537         notation-appendices.itely: minor fixes from mailist.
539 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
541         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
542         unsplit man also needs images.
544         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
546         * VERSION (PACKAGE_NAME): 2.7.38 released.
548 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
550         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
551         log in output dir.
553 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
555         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
556         respects the Score.skipTypesetting property.
557         
558 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
560         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
561         Prolog. No %%EOF after CFF file.
563 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
564         
565         * lily/constrained-breaking.cc (get_max_systems): used to return a
566         much too big value
567         (combine_demerits): use pointers to reduce copying data
568         (calc_subproblem): idem
569         (get_page_penalty): add page turn penalties
570         
571 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
573         * Documentation/user/invoking.itely (Invoking lilypond): better
574         explanation of -e usage.
576         * lily/main.cc (main_with_guile): don't append to
577         init_scheme_code_string
579         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
581         * Documentation/user/invoking.itely: add note about MacOS X scripts.
583         * scripts/convert-ly.py (do_options): don't print help for
584         --show-rules rule.
586         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
587         @code and @example. Update from texinfo.tex from CVS.
589 2006-03-08  Graham Percival  <gpermus@gmail.com>
591         * Documentation/user/scheme-tutorial.itely: clarifies distances
592         measured in staff-spaces.
594 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
596         * lily/slur.cc (outside_slur_callback): only calculate offsets if
597         consider[k] is true.
599         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
601         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
602         consider columns that have originals.  Unifies spacing for mm
603         rests around line breaks.
605         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
606         (set_text_rods): idem.
607         (calculate_spacing_rods): new function: share code between
608         set_text_rods and set_spacing_rods.
609         (set_text_rods): take extents of bounds into account.  
611 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
613         * Documentation/user/basic-notation.itely (Writing music in
614         parallel): don't use relative.
616 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
618         * ly/music-functions-init.ly (Module): add shiftDurations
620         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
622         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
624         * ly/engraver-init.ly: init vocalName to nil.
626 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
628         * scm/music-functions.scm (music->make-music): bugfix,
629         KeyChangeEvents are now handled correctly.
631         * scripts/lilypond-book.py: Add --debug option.
633 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
635         * python/lilylib.py: add tempfile.
637 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
639         * VERSION (PACKAGE_NAME): release 2.7.37
641         * python/lilylib.py (ps_page_count): remove make_ps_images().
642         (ps_page_count): remove mkdir_p
643         (system): remove cleanup_temp.
644         (exit): remove lilypond_version_(check)
645         (error_log): remove pseudo_filter_p
646         remove read_pipe
647         remove cp_to_dir
648         remove identify
650         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
651         use __main__
653         * lily/accidental-engraver.cc (make_standard_accidental): only add
654         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
656         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
657         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
658         Make incompatibilities.
660         * scm/output-ps.scm (grob-cause): replace backslashes by /
661         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
663 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
665         * cygwin/GNUmakefile: Install fixes.
667         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
669         * lily/note-head.cc (head::get_balltype): Compile fix.
671         * flower/file-name.cc (dos_to_posix): Flower string fix.
673 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
675         * python/lilylib.py: pychecker cleanups.
677         * scripts/lilypond-book.py
678         (Lilypond_snippet.output_print_filename): pychecker cleanups
680         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
682         * python/lilylib.py (underscore): remove identify() , warranty()
684         * ps/music-drawing-routines.ps: change Border routine for GSView
685         compatibility.
687         * lily/stem.cc (height): use quantize-positions.  This triggers
688         set_stem_lengths, so scripts on beamed stems are handled correctly.
690         * lily/side-position-interface.cc (aligned_side): check if edges
691         of script are inside staff. Fixes accent of edge of the staff.
693         * input/regression/staccato-pos.ly: more examples.
695         * stepmake/aclocal.m4 (depth): fix bashism.
697         * lily/lyric-combine-music-iterator.cc: move from
698         new-lyric-combine-iterator.cc
699         (process): add pending_grace_lyric_ member to delay lyrics on
700         grace notes.
702         * lily/system-start-text.cc (print): suicide if we don't have any
703         elements. Fixes hara kiri'd instrument names.
705         * scripts/mup2ly.py (Module): remove.
707 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
709         * Documentation/user/global.itely (A single music expression):
710         close @lilypond properly
712         * lily/volta-bracket.cc (modify_edge_height): change from
713         after_line_breaking_callback. Suicide last bracket if appropriate.
715         * python/lilylib.py: strip getopt support
717         * scripts/etf2ly.py (do_options): use optparse
719         * scripts/midi2ly.py: optparse, strip lilylib copy. 
721         * scripts/abc2ly.py (voices): use optparse.
723         * stepmake/stepmake/generic-vars.make: new function absdir.
725         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
727         * scripts/lilypond-book.py (find_file): use global_options for
728         include path
730         * scm/ps-to-png.scm (ps-page-count): prevent null characters
731         entering C code.
733 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
735         * python/lilylib.py (get_global_option): ughness for extracting
736         global options from lilylib.
737         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
739         * scripts/lilypond-book.py (get_option_parser): use optparse for
740         option handling.  Put options in global_options variable.
742 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
744         * Documentation/index.html.in: clarify.
746 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
748         * scm/layout-page-layout.scm (write-page-breaks): add a
749         music-system-heights property to the page layout output.
751         * scm/page.scm (make-page-stencil): take footer into account when
752         computing the 'space-left page property
753         (annotate-space-left): take footer into account when annonating
754         space left.
756 2006-02-28  Graham Percival  <gpermus@gmail.com>
758         * Documentation/user/ advanced-notation, global: more (final)
759         docs for music expressions, removed special fermatas.
761 2006-02-27  Graham Percival  <gpermus@gmail.com>
763         * Documentation/user/ basic-notation, global: minor changes
764         from mailist.
766 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
768         * scm/framework-ps.scm:         
769         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
770         layer for inf? and nan? from framework-ps to lily-library.
772 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
774         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
775         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
777         * buildscripts/substitute-encoding.py (Module): remove file.
779         * mf/GNUmakefile: more PFA strippage.
781         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
783         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
784         generation
786         * scm/framework-ps.scm: remove font name munging.
788         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
790 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
792         * scm/markup.scm (define-markup-command): change
793         def-markup-command to define-markup-command
795         * scm/music-functions.scm (define-music-function): change
796         def-music-function to define-music-function.
798         * python/convertrules.py (conv): rules for def-music-function
799         and def-markup-commands
801         * Documentation/user/programming-interface.itely,
802         input/no-notation/display-lily-tests.ly,
803         input/regression/lily-in-scheme.ly,
804         input/regression/markup-user.ly,
805         input/regression/music-function.ly, input/regression/tie-chord.ly,
806         scm/fret-diagrams.scm, ly/music-functions-init.ly,
807         ly/gregorian-init.ly: use new macro names (define-music-function,
808         define-markup-command).
810 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
812         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
813         (output): add comments to lp-book latex output.
815         * GNUmakefile.in (footifymail): use gmane address for webpage bug
816         address.
818 2006-02-23  Graham Percival  <gpermus@gmail.com>
820         * Documentation/user/ tutorial, global: minor changes.
822 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
824         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
825         blocks (for make 3.80)
827         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
828         \notemode so that user should not have to explicitely type it.
830         * scm/define-music-display-methods.scm: various
831         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
832         constructs)
834         * input/no-notation/display-lily-tests.ly: new tests for
835         \applyOutput and \applyContext
837 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
839         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
840         changed it slightly so that the number of systems returned by
841         solve () will be the same as the last value passed to resize
842         (). I've also added more documentation, removed casts, fixed style
843         problems and put in some recovery if constraints aren't satisfied."
845 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
847         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
848         for emacs < 22 compatibility.
849         (count-rexp): Use it.
850         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
851         substring juggling (Milan Zamazal).
853 2006-02-23  Graham Percival  <gpermus@gmail.com>
855         * Documentation/user/ basic-notation, advanced-notation,
856         global.itely, invoking.itely, tutorial,itely:
857         minor fixes from mailist.
859         * scm/define-markup-commands.scm: improve docs of \filled-box.
861 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
863         * Documentation/index.html.in: changes concern the previous release.
865         * input/regression/+.ly: cultivate typographical terminology.
867 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
869         * scm/define-grob-interfaces.scm (parentheses-interface): add
870         padding to parentheses-interface.
872         * Documentation/user/GNUmakefile: remove $(CROSS) support from
873         Documentation/user/GNUmakefile. Use --disable-documentation for that.
875         * VERSION (PATCH_LEVEL): release 2.7.36
877         * lily/slur.cc: add avoid-slur (ugh.)
878         
879         * lily/slur-configuration.cc (fit_factor): oops, skip point if
880         intersection gets smaller. This fixes slurs over extreme points.
882         * lily/melody-engraver.cc (stop_translation_timestep): ignore
883         stems with neutral-direction set.
885         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
887         * lily/open-type-font.cc (load_table): format error.
889         * lily/change-iterator.cc (process): format fix.
891         * flower/include/international.hh (_f): idem.
893         * flower/include/std-string.hh: add format printf attribute.
895         * scm/define-grobs.scm (all-grob-descriptions): height of all
896         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
898         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
899         ambitus lines.
901         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
903 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
905         * input/regression/: upgraded syntax for some files.
907         * THANKS: Add bughunters.
909 2006-02-22  Graham Percival  <gpermus@gmail.com>
911         * Documentation/user/ invoking.itely, advanced-notation.itely,
912         global.itely: long-awaited "let's make chapter 10 not suck"
913         update.  Rearrange chapter 10; now called "global issues",
914         addresses file structure, etc.  Some info from other files
915         moved into global.itely.
917 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
919         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
920         catch trill-span-event notes.
922         * Documentation/user/examples.itely (Ancient notation templates): typo.
923         (Jazz combo): typo.
925         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
927         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
929         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
931         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
933         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
934         froum Laissez_vibrer_engraver.
936         * ly/declarations-init.ly (repeatTie): add \repeatTie
938         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
940         * scm/define-grob-properties.scm (all-user-grob-properties): add
941         head-direction property.
943         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
944         from_lv_ties. Take head direction argument.
946         * lily/semi-tie-column.cc: rename from
947         laissez-vibrer-tie-column.cc. Rename class too.
949         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
950         class too.
952         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
954         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
955         0 case.
956         (find_breaks): idem.
958 2006-02-21  Graham Percival  <gpermus@gmail.com>
960         * Documentation/user/advanced-notation.itely: fixed make-moment]
961         example.
963         * Documentation/user/basic-notation.itely: more clarification to
964         transpose.
966 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
968         * lily/include/constrained-breaking.hh (class
969         Constrained_breaking): new file.
971         * lily/constrained-breaking.cc (resize): new file.
973         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
975         * Documentation/user/advanced-notation.itely (Clusters): insert
976         end ignore too.
978         * lily/tie-column.cc (calc_positioning_done): support for
979         tie-score debugging
981         * lily/tie-formatting-problem.cc
982         (generate_extremal_tie_variations): factor out.
983         (score_ties_configuration): annotate all tie 
984         (print_ties_configuration): new routine.
985         (generate_configuration): nudge extremal ties outside of the head
986         Y extents.
987         (score_ties_configuration): oops. convert to staff-space before
988         determining position symmetry.
990 2006-02-20  Graham Percival  <gpermus@gmail.com>
992         * Documentation/user/*-notation.itely: misc minor editing,
993         shifting doc sections around.
995         * Documentation/user/*-notation-itely, global.itely,
996         changing-defaults.itely: added new stuff from NEWS.
998 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
1000         * po/fi.po: update.
1002 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1004         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
1005         lilypond --verbose for lp-book.
1007         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
1008         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
1010         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
1011         $(buildscript-dir) iso. absolute depth.
1013         * buildscripts/genicon.py (dir): thinko.
1015         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
1017 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
1019         * scm/output-lib.scm: swap darkcyan/darkyellow
1021         * THANKS: Add bughunters.
1023 2006-02-19  Graham Percival  <gpermus@gmail.com>
1025         * Documentation/user/programming-interfaces.itely: fixed example.
1027         * Documentation/user/instrument-notation.itely: fix @{ @}.
1029         * scm/script.scm: add avoid-slur for \open.
1031 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1033         * lily/tie-formatting-problem.cc (score_configuration): use
1034         sliding score for min-length. 
1036         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
1037         spaghetti for icons.
1039         * buildscripts/genicon.py (program_name): new file.
1041         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
1042         in outline too.  
1043         (generate_configuration): for small ties, also look for collisions
1044         at Y + DIR*h + DELTA_Y.
1045         (get_variations): consider variation for dot positions too.
1047         * lily/side-position-interface.cc (aligned_side): take abs for
1048         quantized rounded position. Fixes tenuto below staff.
1050         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
1051         markers when necessary.
1053         * lily/program-option.cc (internal_set_option): add
1054         strict_infinity_checking option.
1056         * scm/output-lib.scm (cyan): swap yellow and cyan.
1058 2006-02-19  Graham Percival  <gpermus@gmail.com>
1060         * darwin.patch: trivial linenumber update.
1062         * Documentation/user/ {various}: `\context foo = named' changed
1063         to `\new foo = "name"' in docs.
1065 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1067         * scm/stencil.scm (annotate-y-interval): use it.
1069         * scm/lily-library.scm (interval-sane?): new function.
1071         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
1072         tfm_checksum stuff.
1074         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
1075         common refpoint.
1077         * flower/include/std-vector.hh (iterof): add iterof macro.
1079         * lily/enclosing-bracket.cc (width): new function.
1081         * lily/align-interface.cc (align_elements_to_extents): reinstate
1082         warning.
1084 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
1086         * Documentation/index.html.in: fix spelling: thankyous.
1088 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1090         * lily/lyric-hyphen.cc: typo.
1092 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1094         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
1095         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
1096         builds don't work. 
1098         * VERSION: release 2.7.35
1100         * lily/beam.cc (get_default_dir): oops. Take abs () for
1101         extremes[DOWN].
1102         (get_default_dir): use extreme position criterion only in absence
1103         of forced stem directions.
1105         * VERSION (PATCH_LEVEL): bump VERSION.
1107         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
1108         dependencies. Necessary for -jX builds.  
1110 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1112         * lily/relocate.cc (setup_paths): Yet another const fix.
1114 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1116         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
1118         * lily/relocate.cc (setup_paths): oops.
1120 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
1122         * Documentation/index.html.in: order links: html before PDF.
1124 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1126         * lily/tie-column-format.cc (Module): remove.
1128         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
1130         * lily/text-spanner.cc (print): idem.
1132         * lily/dynamic-text-spanner.cc (print): only print line if longer
1133         than dash-period.
1135         * lily/auto-change-iterator.cc (change_to): formatting.
1137         * lily/beam.cc (get_default_dir): take extreme note head as input
1138         for stem direction.
1140         * lily/tie.cc (get_default_dir): only look directions for visible
1141         stems. 
1143         * lily/side-position-interface.cc (aligned_side): oops. Don't
1144         mutiply with direction. This fixes quantized (staccato, tenuto)
1145         scripts below notes.
1147         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
1148         direction. Fixes c-lyrics-center-align.ly
1150 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1152         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
1153         constructor.
1155         * lily/std-string.cc:
1156         * lily/include/std-vector.hh (split_string): Move and rename from
1157         lily/include/misc.hh, lily/misc.cc.  Update callers.
1159 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1161         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
1163 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1165         * flower/test-file.cc: New file.
1167         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
1168         libraries.
1170         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
1172 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1174         * flower/include/file-storage.hh: remove file.
1176         * lily/include/midi-item.hh (class Midi_track): idem.
1178         * lily/include/source.hh (class Sources): idem.
1180         * lily/include/performance.hh (class Performance): use vector
1181         iso. Cons<>
1183         * flower/include/cons.hh (class Cons): remove file.
1185         * flower/include/flower-proto.hh: remove template cruft.
1187         * lily/include/font-metric.hh: use size_t not vsize for indices.
1189         * flower/include/flower-proto.hh (Module): remove std-vector.hh
1190         from proto.
1192         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
1194         * lily/include/paper-book.hh (class Paper_book):
1195         make get_system_specs() public.
1197         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
1198         the force=10000 case if we don't have a current-best. 
1200         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
1201         vsize 
1203         * flower/include/flower-proto.hh: remove outdated templates.
1205         * scm/page.scm: use annotate-spacing
1207 2006-02-15  Graham Percival  <gpermus@gmail.com>
1209         * scm/translation-functions.scm: circle patch from Erlend, thanks!
1211         * THANKS: moved Erlend Aasland to contributors.
1213 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1215         * config.hh.in: remove HAVE_PANGO_16
1217         * lily/tuplet-bracket.cc (calc_positions): multiply with
1218         staff-space for beam case. This fixes tuplets+beams on scaled
1219         staves.
1221         * config.hh.in: remove all Kpathsea related defines.
1223         * lily/dot-column.cc (side_position): reach stem via dots->
1224         head->stem. Inspect all stems for dot collisions. 
1226         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
1227         stem handling.
1229         * lily/bar-number-engraver.cc (process_music): document function
1230         of whichBar.
1232         * lily/score.cc (default_rendering): add pscore, not systems
1233         themselves.
1235         * lily/paper-book.cc (get_system_specs): separate generation of
1236         titles and systems.
1238         * flower/include/std-vector.hh: don't include config.hh
1240 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1242         * flower/include/std-vector.hh: Better wrapper compatibility with
1243         std::vector.
1245         * flower/include/flower-proto.hh: Remove cheap forward declaration
1246         attempts.
1248         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
1250 2006-02-14  Graham Percival  <gpermus@gmail.com>
1252         * Documentation/user/invoking.itely: add warning about command line.
1254 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1256         * lily/include/lily-proto.hh: add Prob, rm Page.
1258         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
1260         * VERSION: release 2.7.34
1262         * lily/relocate.cc (framework_relocation): show canary if
1263         GHOSTSCRIPT_VERSION undefined.
1265         * GNUmakefile.in: remove $(VERSION) symlink.
1267         * lily/relocate.cc (setup_paths): add + 
1269 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
1271         * Documentation/index.html.in: specify sizes for all big HTML pages.
1273 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1275         * config.hh.in: remove @FRAMEWORKDIR@
1277         * lily/system-start-text.cc (get_stencil): new file: separate out
1278         system-start-delimiter text support.
1280         * input/**ly: replace \context with \new where appropriate.
1281         
1282         * THANKS: add Don.
1284         * lily/slur-scoring.cc (get_base_attachments): use
1285         robust_relative_extent. This fixes problems with empty paper-columns. 
1287 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1289         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
1291         * scm/define-music-properties.scm (all-music-properties):
1292         create-new property.
1294         * lily/context-specced-music-iterator.cc (construct_children):
1295         inspect 'create-new property iso. magical $uniqueContextId context
1296         id.
1298         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
1300         * lily/context-key-manager.cc (Module): new file. Encapsulate
1301         object key generation.
1303         * lily/include/context-key-manager.hh (Module): new file.
1305 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1307         * scm/define-grobs.scm (all-grob-descriptions): center instrument
1308         names vertically
1310         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
1311         options.
1312         (reloc_b): excise --enable-framework-dir
1314         * lily/relocate.cc (framework_relocation): use getenv
1315         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
1317 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1319         * flower/include/std-string.hh: 
1320         * flower/include/std-vector.hh: Finish std:: conversion; move
1321         flower extensions from std:: namespace.  Update users.
1323         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
1324         their expansion to vector<*>.  Update users.
1326 2006-02-10  Graham Percival  <gpermus@gmail.com>
1328         * Documentation/user/invoking.itely: add example to File structure.
1330         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
1331         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
1333 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1335         * ly/paper-defaults.ly: typo.
1337         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
1338         set_parent() for parentheses. This will make it show up in bbox
1339         calculations.
1341         * scm/output-lib.scm (parentheses-item::print): rewrite, using
1342         ly:grob-common* functions.
1344         * lily/grob-scheme.cc (LY_DEFINE):
1345         ly:grob-common-refpoint-of-array: new function 
1346         ly:grob-common-refpoint: new function 
1347         ly:grob-relative-coordinate: new function 
1349         * lily/instrument-name-engraver.cc (process_music): use
1350         Text_interface::is_markup(). This fixes \markup on instrument names.  
1352         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
1353         for ties and slurs.
1355         * lily/slur.cc (print): idem.
1357         * lily/tie.cc: add line-thickness for ties. 
1359 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
1361         * scm/output-svg.scm: Document diversion from GNU coding standards
1362         as a workaround for a bug in Microsoft Internet Explorer.
1364 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1366         * lily/instrument-name-engraver.cc (process_music): use
1367         is_markup() iso. is_string()
1369         * Documentation/user/changing-defaults.itely (Module): add menu entry.
1371         * lily/percent-repeat-engraver.cc (process_music): only look at
1372         main_part_ for % repeats.
1374         * lily/stem-tremolo.cc (get_beam_translation): new function.
1375         (calc_slope): new function.
1376         (height): don't use real slope.
1378 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
1380         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
1381         new connect-to-neighbor, control-points and staff-padding
1382         properties to make ligature brackets showing up again.
1384 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1386         * VERSION: release 2.7.33
1388         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
1389         too many.
1391         * Documentation/user/changing-defaults.itely (Difficult tweaks):
1392         remove applyOutput example.
1393         (Objects connected to the input): document \tweak, \parenthesize
1395         * lily/relocate.cc (prefix_relocation): allow "current"
1396         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
1397         changing VERSION in a lily tree less painful.
1399         * input/regression/parenthesize.ly: new file. 
1401         * scm/output-lib.scm (parenthesize-element): new function.
1403         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
1405         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
1407         * lily/accidental-engraver.cc (make_standard_accidental): reroute
1408         cause: accidentals are caused by note heads, not note events. 
1410 2006-02-08  Graham Percival  <gpermus@gmail.com>
1412         * darwin.patch: small patch from Erlend, thanks!
1414         * Documentation/user/basic-notation.itely: add stem-neutral example.
1416         * Documentation/user/putting.itely: clarifications.
1418 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1420         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
1421         note, add more guidelines to what should go into NEWS.
1423         * input/sakura-sakura.ly: document how to override font.
1425         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
1427 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1429         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
1431 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
1433         * scripts/convert-ly.py (lilypond_version_re_str): Move from
1434         convertrules.  Add explicit grouping, needed for python2.2.
1436 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1438         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
1440 2006-02-07  Graham Percival  <gpermus@gmail.com>
1442         * Documentation/user/global.itely: fix line-width in (text) docs.
1444         * Documentation/user/lilypond-book.itely: same.
1446 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1448         * VERSION (PACKAGE_NAME): release 2.7.32
1450         * Documentation/topdocs/NEWS.tely (Top): document new variable
1451         naming.
1453         * flower/include/array.icc (Message): remove file.
1455         * flower/include/std-vector.hh: make sure vsize and VPOS are
1456         defined for binary_search_bounds().
1458         * flower/std-string.cc (std): add to_string(long unsigned).
1460         * configure.in (gui_b): excise std_string option.
1461         (gui_b): excise std_vector option.
1463         * flower/string.cc (Module): excise flower array & string
1465         * flower/include/std-string.hh: excise flower string.
1467         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
1469         * python/convertrules.py (lilypond_version_re_str): require
1470         only numbers and dots in \version string.
1472 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1474         * lily/system-start-delimiter.cc (print): allow style = text too.
1476         * lily/system-start-delimiter-engraver.cc
1477         (acknowledge_system_start_text): new function, also add add to
1478         support of system-start-text (instrument names). This fixes
1479         instrument names on piano staves.
1481         * lily/instrument-name-engraver.cc: rewrite. Use
1482         system-start-delimiter approach. This save memory and cpu.
1484         * scm/define-grobs.scm (all-grob-descriptions): remove
1485         instrument-name from break-alignment.
1487         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
1489 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
1491         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
1492         jobserver going.
1494         * configure.in (std_vector): On by default.
1496         * lily/include/font-metric.hh:
1497         * lily/include/tfm-reader.hh: 
1498         * lily/include/spanner.hh: Use unsigned for indices and sizes.
1499         Update users.
1501         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
1503 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1505         * VERSION (PACKAGE_NAME): 2.7.31
1507         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
1508         EPS edge at 0, but take minimum with left-overshoot. This fixes
1509         cut off system start delims. 
1511         * lily/instrument-name-engraver.cc (stop_translation_timestep):
1512         hack: add to axis group if not added yet. This fixes hara kiri'd
1513         piano staves.
1515         * lily/hara-kiri-group-spanner.cc
1516         (force_hara_kiri_in_y_parent_callback): fix signatures.
1518         * lily/hairpin.cc (print): check next hairpin to see whether or
1519         not to be continuing.
1521 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
1523         * Remove trailing whitespace from makefiles.
1524         
1525         * flower/include/std-vector.hh: Add binary_search_bounds workaround
1526         for earlier gcc.
1528         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
1530         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
1532         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
1534         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
1536         * configure.in: Use it.
1538 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1540         * scm/music-functions.scm (pitch-of-note): new function.
1542         * ly/music-functions-init.ly: add \octave and \addquote
1544         * lily/parser.yy (music_function_chord_body): softcode \octave.
1545         (lilypond_header): softcode \addquote
1547 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1549         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
1550         array.hh, parray.hh at all.  Getting ready to flip the
1551         configure default.
1553         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
1555         * lily/source-file.cc (file::get_line): Help binary_search_bounds
1556         a bit.
1558         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
1560 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1562         * flower/include/array.hh: typo. 
1564 2006-02-02  Graham Percival  <gpermus@gmail.com>
1566         * Documentation/user/advanced-notation.itely: doc "\#" in text.
1568 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1570         * flower/include/pqueue.hh: Derive from std::vector.
1572         * flower/include/parray.hh: Conform to std::vector interface.
1573         Update users.
1575 2006-02-02  Graham Percival  <gpermus@gmail.com>
1577         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
1579 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1581         * flower/file-path.cc (is_file): remove if 0 section.
1583         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
1584         selecting afii61352.
1586 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1588         * flower/include/std-vector.hh (boundary): Oops, reverse.
1590         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
1591         remove superfluous `d'.
1593         * flower/include/std-vector.hh (boundary, top): Detach from class.
1594         Remove empty vector shell.
1596         * flower/include/array.hh (reverse, swap): Detach from class.
1597         Update users.
1598         
1599         * flower/include/std-vector.hh
1600         * flower/include/array.hh (concat): Globally change to insert ().
1602         
1603         * flower/include/std-vector.hh
1604         * flower/include/parray.hh
1605         * flower/include/array.hh (elem, elem_ref): Globally replace by
1606         at ().
1608 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1610         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
1612         * python/convertrules.py (FatalConversionError.sub_cxx_id):
1613         anticipate on identifier substitutions.
1615 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1617         * flower/include/std-vector.hh (insert): Remove, replace by
1618         std::vector interface.  Update callers.
1620         * flower/include/array.icc (insert): Change signature to
1621         match std::vector interface.
1622         
1623         * flower/include/array.icc (vector_sort): Bugfix.
1625 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1627         * lily/parser.yy (output_def_head_with_mode_switch): new
1628         production. Result: dashes and underscores may be used in the
1629         \paper block.
1631         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
1633         * python/convertrules.py (conv): oops. One slash too much.
1635 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
1637         * flower/include/std-vector.hh (sort): Remove, replace by
1638         ::vector_sort.  Update callers.
1640         * flower/include/std-vector.hh (slice): Remove.  Update callers.
1641         (sort): Bugfix.
1643         * flower/test-std.cc (vector_sort): New test.
1645 2006-02-01  Graham Percival  <gpermus@gmail.com>
1647         * Documentation/user/putting.itely: fixes from Erik.
1649 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1651         * flower/test-std.cc: Add simple unit test for vector migration.
1653         * stepmake/stepmake/test*: Unit test support.
1655         * flower/include/std-vector.hh (del): Remove.  Use erase (),
1656         update callers.
1658         * flower/include/array.hh (begin, end): Add.
1659         (del, get): Remove.
1661 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1663         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
1664         std::string not String. 
1666         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
1667         iso UINT_MAX.
1669         * lily/prob.cc (Prob): copy type_ too.
1671         * lily/lily-guile.cc (mangle_cxx_identifier): new
1672         function. Class_bla::foo_bar_[px] ->
1673         ly:class-bla::foo-bar[?!]. Changes throughout
1675 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1677         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
1679         * lily/beam.cc (calc_direction): take dir from visible stem in
1680         degenerate case.
1682 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
1684         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
1685         Fix -1, >=0 boundary checks for unsigned vsize.
1687         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
1688         loop for unsigned vsize.
1690         * configure.in (--enable-std-vector): New option.
1691         (--enable-std-string): On by default.
1693         * flower/include/std-vector.hh: New file.  Enable switch to
1694         std::vector, update client code.
1696 2006-01-30  Graham Percival  <gpermus@gmail.com>
1698         * scm/document-translation.scm: clarify "this context is also
1699         known as".  Thanks, Werner!
1701         * Documentation/user/putting.itely: small fixes from Don Blaheta.
1703         * Documentation/user/invoking.itely: small fix from Don.
1705 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1707         * scm/lily.scm (define-scheme-options): rename option
1708         preview-include-book-title to book-title-preview
1709         (define-scheme-options): move force-eps-font-include (from paper
1710         block) to eps-font-include -d option.
1712         * VERSION (PATCH_LEVEL): release 2.7.30
1714         * input/bach-schenker.ly (staffPiano): new file.
1716         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
1718         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
1719         credits to Nicolas.
1721         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
1723         * ps/lilyponddefs.ps: remove start-system, stop-system,
1724         start-page fluff. This saves putting { } code on the stack, fixing
1725         stack overflows when including EPS files.
1727 2006-01-29  Graham Percival  <gpermus@gmail.com>
1729         * Documentation/user/putting.itely: minor fixes (comments on -devel).
1731 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1733         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
1735 2006-01-28  Graham Percival  <gpermus@gmail.com>
1737         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
1739 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1741         * input/mutopia/claop.py: Update.
1743 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1745         * input/regression/completion-heads.ly (texidoc): fix.
1747         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
1749         * lily/tie-formatting-problem.cc
1750         (set_ties_config_standard_directions): use abs iso fabs for ints.
1752         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
1754         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
1755         little less than noteheight, to prevent overlaps in chords.
1757         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
1758         head, and fudge stem-attachment.
1760         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
1762         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
1764 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1766         * lily/main.cc (main): Debugging aid: catch exceptions.
1768         * flower/std-string.cc (to_string): Robustification.  Fixes midi
1769         output with std::string.
1771 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1773         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
1775 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1777         * Fix -DSTRING_UTILS_INLINED.
1779 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1781         * VERSION (PATCH_LEVEL): release 2.7.29
1783         * lily/relocate.cc (setup_paths): mingw uses std string too.
1785         * lily/*.cc: various fixes for substr(ARG).
1787         * lily/sustain-pedal.cc (print): 
1789         * flower/file-name.cc (slashify): use std strings.
1791         * flower/string-convert.cc: remove publib.h
1793         * scm/define-markup-commands.scm (verbatim-file): new markup
1794         command \verbatim-file
1796         * Documentation/topdocs/NEWS.tely: fixup URLs
1798         * input/regression/alignment-vertical-manual-setting.ly (Module):
1799         new file.
1801         * lily/align-interface.cc (align_elements_to_extents): overwrite
1802         translations with numbers in alignment-offsets from left bound
1804         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
1805         (page-translate-systems): new function: take into account Y-offset.
1807         * Documentation/topdocs/NEWS.tely (Top): document new features.
1809         * input/regression/page-layout-manual-position.ly (Module): new
1810         file.
1812 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
1814         * flower/file-path.cc (path::parse_path): Oops.
1816         * Finish std::string interface.  For now, use std:: marker
1817         throughout for easy s/r.
1819 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1821         * Documentation/user/putting.itely (Score is a single musical
1822         expression): typo.
1823         (Score is a single musical expression): more typos.
1825         * scm/page.scm (annotate-space-left): thinko.
1826         (annotate-page): more thinkos.
1828 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1830         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
1831         for different \score blocks separately.
1832         (post-process-pages): put write-page-layout into paper block.
1834         * lily/output-def.cc (get_parser): new file.
1836         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
1837         file.
1839         * lily/include/output-def.hh (class Output_def): add parser_ member.
1841         * input/regression/page-layout-twopass.ly (Module): new file.
1843         * scm/lily.scm: remove cpp hack.
1845         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
1847 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1849         * GNUmakefile.in (c-clean): New target.
1851         * flower/include/std-string.hh: String/std::string compatibility:
1852         Use NPOS for `not found' (iso -1), use ssize for length () and pos
1853         type.
1855         * flower/rational.cc: 
1856         * flower/include/rational.hh: 
1858         * flower/offset.cc: 
1859         * flower/include/offset.hh: 
1861         * flower/interval.cc: 
1862         * flower/include/interval.hh: 
1864         * flower/string-convert.cc: 
1865         * flower/include/string-convert.hh: Use std::string [interface].
1866         Update callers.
1868 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
1870         * Documentation/index.html.in: clean up.
1872 2006-01-25  Graham Percival  <gpermus@gmail.com>
1874         * Documentation/user/putting.itely: another new untested doc section.
1876 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1878         * scm/layout-page-layout.scm (write-page-breaks): write
1879         \spacingTweaks #ALIST. Handle grace timing.
1881         * scm/: more imports.
1883         * scm/page.scm (make-page): add footer/header.
1884         (annotate-space-left): revise: only take page argument.
1885         (layout->page-init): new function.
1887         * scm/layout-page-layout.scm (write-page-breaks): preliminary
1888         version of the system/spacing/linebreak hack writing to the output
1890         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
1891         ly:make-prob.
1893         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
1894         ly:spanner-bound
1896 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1898         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
1900         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
1902         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
1903         handling to page.scm
1905         * lily/prob-scheme.cc (LY_DEFINE): new file.
1906         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
1908         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
1909         prob functions.
1911         * lily/music.cc (derived_mark): derive Music from Prob.
1913         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
1915         * lily/prob.cc (Module): Implement Prob (Property Object), object
1916         with shared and r/w property alists.  
1918         * lily/include/prob.hh (Module): new file. Declare Prob.
1920         * flower/string.cc: remove is_empty().
1922         * flower/include/string.hh (class String): remove String:: qualifier.
1924         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
1925         substitute appropriate functions.
1927         * flower/include/string.hh (class String): remove to_str0 and
1928         is_empty(). S&R everywhere.
1930 2006-01-23  Graham Percival  <gpermus@gmail.com>
1932         * Documentation/user/basic-notation.itely: add hairpin
1933         after-linebreak tweak to commonprop.
1935         * Documentation/user/putting.itely: added two new sections.
1937 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
1939         * flower/international.cc: 
1940         * flower/include/international.hh: 
1942         * flower/getopt-long.cc: 
1943         * flower/include/getopt-long.hh: Use std::string [interface].
1944         Update callers.
1946         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
1948         * stepmake/stepmake/executable-rules.make: Add dependency on
1949         module libraries.
1951 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1953         * flower/file-path.cc: 
1954         * flower/include/file-path.hh: Use std::string [interface].
1955         Update callers.
1957         * flower/direction.cc: 
1958         * flower/axis.cc: Unused.  Remove.
1960         * configure.in (--enable-std-string): New option.
1962         * flower/std-string.cc: 
1963         * flower/include/std-string.hh: New file.
1965         * flower/file-name.cc[STD_STRING]:
1966         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
1968 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1970         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
1972         * scm/define-markup-commands.scm (with-dimensions):
1973         with-dimensions markup command.
1975         * input/test/font-table.ly: use it.
1977         * lily/open-type-font.cc (glyph_list): new function.
1979         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
1981         * lily/ttf.cc: remove ly:font-glyph-list scheme function
1983 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1985         * ly/music-functions-init.ly (parallelMusic): new music function
1986         for parallel music entry.
1988         * scm/define-music-properties.scm (all-music-properties): new
1989         'void music property
1991         * scm/music-functions.scm (ly:music-message): make public, to be
1992         used in music function definitions
1994         * scm/lily-library.scm (collect-music-for-book): discard music
1995         when the 'void property is set.
1997 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
1999         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
2001         * mf/GNUmakefile: idem.
2003         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
2005         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
2007         * Documentation/user/notation-appendices.itely (The Feta font):
2008         use it.
2010         * input/test/font-table.ly: new file. Generate font table within lily.
2012         * Documentation/user/notation-appendices.itely (The Feta font):
2013         use new font-table.ly file. 
2015         * stepmake/stepmake/install-out-targets.make
2016         (local-install-outfiles): only create directory if
2017         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
2019 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2021         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
2023         * VERSION (PACKAGE_NAME): release 2.7.28
2025         * scm/framework-ps.scm (write-preamble): use it to pick exactly
2026         the right font from a Mac dfont.
2027         (write-preamble): don't forget directory, only look at files.
2029         This fixes problems with TTF files in dfonts that don't match
2030         their PostScript names.
2031          
2032         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
2033         PS name from TTF font.
2035         * input/regression/tie-manual.ly: document new feature.
2037         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
2039         * VERSION (MY_PATCH_LEVEL): bump to .28
2041         * Documentation/user/basic-notation.itely (Ties): add tie examples
2042         refs.
2044         * lily/tie-formatting-problem.cc (score_ties_configuration):
2045         symmetry penalties for outer ties.
2047 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2049         * lily/tie-formatting-problem.cc (generate_configuration) 
2050         (set_manual_tie_configuration): skip non-pair manual
2051         tie-configuration, so you can set individual ties as
2053           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
2055         * input/regression/tie-chord.ly: use generateTiePattern to
2056         simplify file.
2058         * lily/tie-formatting-problem.cc (peak_around): new function.
2059         (score_configuration): use sliding criterion for staff line collisions. 
2060         (score_configuration): idem for dot collisions.
2061         (generate_configuration): use separate stem_gap for gap to stem.
2063         * lily/include/tie-formatting-problem.hh (struct Tie_details):
2064         separate penalty factors for x and y distance.
2065         (struct Tie_details): separate penalties for tip and center line collisions.
2067 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
2069         * lily/tie-formatting-problem.cc (generate_configuration): make
2070         large ties avoid stafflines in the horizontal section.
2071         (score_configuration): use softcoded penalties
2072         (score_aptitude): idem.
2074         * lily/tie-helper.cc (from_grob): softcode tie details
2076         * lily/staff-symbol-referencer.cc (on_staff_line): new function
2078         * lily/staff-symbol-referencer.cc (on_line): rename from
2079         on_staffline 
2081 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2083         * ly/music-functions-init.ly: remove duplicate tag.
2085         * lily/include/*.hh: GCC 4.1 fixes.
2087 006-01-16  Erlend Aasland  <erlenda@gmail.com>
2089         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
2091         * scm/define-music-types.scm: fix bug in desc. string
2092         for OverrideProperty
2094 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
2096         * scripts/lilypond-book.py: bugfix
2098         * scm/define-music-types.scm: fix typos.
2100 2006-01-14  Graham Percival  <gpermus@gmail.com>
2102         * Documentation/user/ basic-notation.itely, global.itely,
2103         advanced-notation.itely, instrument-notation.itely: small
2104         additions (bugs and commonly tweaked properties).
2106 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2108         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
2109         detection of mingw build.
2110         (MINGW_BUILD): opps.
2112 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
2114         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
2115         i686-mingw32.
2117 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2119         * scm/music-functions.scm (skip->rest): add skip->rest
2121 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2123         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
2124         explicitly.
2126         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
2127         config dirs. Aids debugging. 
2128         (display_config): also display config files.
2130 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2132         * VERSION: release 2.7.27
2134         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
2135         for determining bar size.
2137         * lily/staff-symbol.cc (print): place lines at distance line-positions
2139         * scm/define-grob-properties.scm (all-user-grob-properties): add
2140         line-positions.
2142         * lily/staff-symbol.cc (height): new function.
2144         * input/regression/staff-line-positions.ly:  new file.
2146 2006-01-06  Graham Percival  <gpermus@gmail.com>
2148         * input/test/add-staccato.ly: remove reference to old file.
2150 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2152         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
2153         lilypond binary too.
2155 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2157         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
2159 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2161         * scripts/midi2ly.py: Bugfix: Declare datadir.
2163         * make/ly-rules.make:
2164         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
2165         that seems to be gone). Fixes make web.
2167         * The grand 2005-2006 replace.
2169         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
2171 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2173         * make/lilypond-vars.make: set LILYPOND_BINARY variable
2174         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
2175         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
2176         like -dgs-font-load.
2178         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
2179         remove absolute path to lilypond binary.
2180         
2181 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
2183         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
2185 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2187         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
2189         * mf/GNUmakefile: remove broken dvips map symlink.
2191 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
2193         * lily/main.cc: 
2194         * configure.in: Cosmetic fixes.
2196 2006-01-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2198         * Documentation/user/music-glossary.tely (Pitch names): Added
2199         Spanish pitch names and durations, thanks to Ernesto Gancedo
2201 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2203         * scm/lily.scm (define-scheme-options): use quasi-quote for option
2204         init. Fixes verbose printing of .scm files.
2206         * stepmake/aclocal.m4: add spaces before - options.
2207         
2208 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2210         * lily/relocate.cc (setup_paths): Bugfix: do not store result
2211         of path search in local block variable.
2213 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2215         * configure.in (NCSB_DIR): --enable-ncsb-dir
2216         (LINK_GXX_STATICALLY): denko.
2218         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
2220         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
2221         use locate to find c059033l.pfb. 
2222         
2223 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
2225         * lily/tie-formatting-problem.cc
2226         (problem::generate_base_chord_configuration): Use my_round (was
2227         round).
2229         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
2230         do not invoke mbrtowc.
2232         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
2234 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2236         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
2238 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
2240         * Documentation/user/invoking.itely (svg): revise.
2242 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2244         * lily/lexer.ll: use sourcefilename iso. renameinput.
2246 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2248         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
2249         <PostScriptName>.ttf instead of c059XXXttf.
2251         * lily/program-option.cc (LY_DEFINE): special support for
2252         --verbose, so it works before option init too.
2254         * mf/GNUmakefile (local-install): oops.
2256         * lily/lyric-hyphen.cc (print): oops.
2258         * buildscripts/pfx2ttf.fontforge: new file.
2259         
2260         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
2261         ($(outdir)/%.ttf): new rule. 
2263         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
2264         to LyricHyphen.
2266         * lily/lyric-hyphen.cc (print): multiply hyphen height by
2267         font-size
2269 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2271         * VERSION: release 2.7.26
2272         
2273         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
2275 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2277         * lily/font-config.cc (init_fontconfig): verbosity.
2279         * THANKS: add Muziekacademie Lede. 
2281         * scripts/musicxml2ly.py (print_voice_definitions): new function 
2282         (print_score_setup): new function
2283         (convert): read part definition to output staves properly.
2285         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
2286         Music_xml notes.
2288         * python/musicexp.py (Output_printer.__init__): use _ in data
2289         members.
2290         (Output_printer.unformatted_output): new function: no formatting,
2291         but count braces.
2292         (Duration.get_length): remove isinstance() checks for
2293         Output_printer everywhere.
2295         * input/regression/lyrics-bar.ly (texidoc): add
2296         Separating_line_group_engraver.
2298 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2300         * lily/relocate.cc (framework_relocation): New function,
2301         factored from set_relocation ().
2302         (prefix_relocation): Rename from set_relocation ().
2303         (setup_paths): Use it.
2305 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2307         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
2308         numbers. Patch by Erlend Aasland.
2310 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2312         * lily/font-config.cc (init_fontconfig): print warning if cache
2313         file is not existant.
2315         * lily/main.cc: don't use #ifdef but #if
2317 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2319         * lily/grob-property.cc (internal_set_property): don't abort on
2320         calculation-in-progress.
2322         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
2324         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
2325         connect-to-neighbor property not connect-to-other
2327         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
2328         (LY_DEFINE): oops. don't forget protection.
2330         * flower/parse-afm.cc (Module): strip AFM handling completely.
2332         * lily/stencil-expression.cc: idem.
2334         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
2336         * lily/function-documentation.cc (ly_add_function_documentation):
2337         use static member iso. Protected_scm
2339         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
2341         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
2343 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2345         * lily/relocate.cc (set_env_dir): New function.
2346         (set_relocation): Use it to fix setting PANGO_PREFIX.
2348 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2350         * input/regression/stem-direction-context.ly: remove rest.
2352         * lily/melody-engraver.cc (process_music): restart for bar lines.
2353         (acknowledge_slur): restart for slurs.
2355 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
2357         * Documentation/user/invoking.itely: describe how to view SVG 
2358         output using Inkscape which replace embedded fonts with OTF fonts.
2360 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2362         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
2364 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
2366         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
2367         comment.
2369 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2371         * VERSION (PACKAGE_NAME): release 2.7.25
2373         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2375         * input/regression/stem-direction-context.ly: new file.
2377         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
2379         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
2380         on rest.
2382         * ly/engraver-init.ly: add Melody_engraver
2384         * lily/beam.cc (calc_direction): use default-direction
2385         iso. get_default_direction()
2387         * scm/define-grob-properties.scm (all-user-grob-properties): add
2388         default-direction property.
2390         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
2392         * lily/stem.cc (calc_default_direction): remove
2393         Stem::get_default_direction, use default-direction with callback
2394         instead.
2396         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
2398         * lily/melody-engraver.cc: new file. Acknowledge stems for
2399         interpolated stem directions. 
2401         * lily/melody-spanner.cc: new file. Interpolate stem directions.
2403         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
2405         * lily/slur-configuration.cc (fit_factor): more robust check for
2406         point in curve X-extent.
2408         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
2409         (outside_slur_callback): check for 'outside avoidance.
2411         * lily/slur-configuration.cc (score_extra_encompass): don't use
2412         bound->column() == avoid->column() for checking extents, as this
2413         doesn't work for accidentals. 
2415         * lily/slur-engraver.cc (acknowledge_extra_object): remove
2416         DynamicText hardcoding.
2418         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
2419         crash if bound stem is NULL
2421         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
2422         pedals.
2424 2005-12-22  Graham Percival  <gpermus@gmail.com>
2426         * scm/define-markup-commands.scm: typo.  @code{\raise}
2427         => @code{\\raise}.
2429         * darwin.patch: now used again, includes a
2430         required patch from fink.
2432 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
2434         * po/TODO: mention gtranslator along with kbabel.
2435         * po/fi.po: update translations.
2437 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2439         * lily/relocate.cc (setup_paths): Bugfix.
2441 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2443         * lily/slur-configuration.cc (score_extra_encompass): don't use
2444         "avoid" choice for avoid-slur.
2446         * stepmake/bin/install.py (dest): don't create existing dir.
2448 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2450         * stepmake/bin/install.py: Remove file before copying.
2452         * config.make.in: 
2453         * stepmake/aclocal.m4: Do not substitute INSTALL.
2455 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2457         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
2458         depend on link-tree.
2460         * lily/relocate.cc (setup_paths): only check path for non-absolute
2461         dir without directory part.
2463         * flower/file-name.cc (is_absolute):  new method.
2464         (is_absolute): check root_ too.
2466 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
2468         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
2469         relocation code.  Oops, don't comment out too much.
2471         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
2472         iso itself.
2474         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
2475         compile.
2477 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
2479         * .cvsignore: Add install-sh.
2481         * autogen.sh (srcdir): Typo.
2483 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2485         * autogen.sh (srcdir): urg. Touch install-sh.
2487         * stepmake/bin/install-sh (Module): remove.
2489         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
2491         * lily/include/relocate.hh: new file.
2493         * lily/relocate.cc: new file. Contain relocation logic.
2495         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
2496         (main): read LILYPOND_VERBOSE as the first thing.
2498         * stepmake/aclocal.m4: remove INSTALL variable.
2500         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
2501         separate target for making font symlinks.
2502         (documentation-dir): use $(if $(findstring )) for switching off
2503         Documentation.
2505         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
2506         something if DOCUMENTATION is no.
2508 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2510         * VERSION: release 2.7.24
2512         * lily/script-column-engraver.cc (stop_translation_timestep):
2513         delay adding to script-column.
2515         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
2517         * python/convertrules.py (conv): rule for number-visibility
2519         * lily/slur-configuration.cc (score_extra_encompass): different
2520         distance measure for avoid and inside avoidance.
2521         (score_extra_encompass): use 1/(distance+eps) as penalty.
2523         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
2524         encompass objects for generating slur curves.
2526         * lily/slur.cc: use details iso. slur-details property.
2528         * input/regression/slur-tuplet.ly: new file.
2530         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
2532         * flower/include/offset.hh (class Offset): new operator /=
2534         * lily/tuplet-number.cc (print): new file, new interface.
2536         * scm/define-grob-properties.scm (all-user-grob-properties):
2537         remove number-visibility property.
2539         * lily/tuplet-bracket.cc (calc_control_points): new function
2540         (calc_connect_to_neighbors): new function.
2541         (print): remove text handling for tuplet numberdef.
2543         * lily/tuplet-engraver.cc (struct Tuplet_description): create
2544         TupletNumbers too. 
2546         * lily/lily-guile.cc (robust_scm2booldrul): new function
2548         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
2550         * lily/tuplet-bracket.cc (calc_position_and_height): use
2551         staff-padding to control whether tuplet brackets are over staves.
2553         * lily/grob.cc (suicide): clear dim_caches_.
2555         * lily/dimension-cache.cc (clear): new function.
2557         * lily/grob.cc (extent): swap order of min-extent and extent
2558         calculations. This fixes hara kiri staves. 
2560 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
2562         * lily/main.cc: Nitpick: relocation is not based on path, but on
2563         directory (location).
2565 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2567         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
2569         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
2571         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
2573         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
2575         * stepmake/stepmake/generic-vars.make (Module): idem.
2577         * stepmake/stepmake/executable-targets.make (default): use it.
2579         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
2581         * make/GNUmakefile: don't install make rules.
2583         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
2584         slashes.
2585         (prepend_env_path): more verbosity.
2587 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2589         * GNUmakefile.in: add dir argument for find command.
2591         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
2592         fixes weird line numbers for point & click.
2594         * lily/source-file.cc (get_counts): init line/column/char counts.
2596 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2598         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
2600 2005-12-16  Graham Percival  <gpermus@gmail.com>
2602         * Documentation/user/basic-notation.itely, advanced-notation.itely:
2603         minor fixes from Fredric.  Thanks!
2605 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2607         * ly/music-functions-init.ly: add \bar and \clef music function 
2609         * lily/lily-lexer.cc: idem.
2611         * lily/parser.yy (FIXME): remove BAR and CLEF.
2613 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2615         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
2617         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
2618         function arguments too
2620         * lily/main.cc (set_relocation): new function.
2622         * scripts/musicxml2ly.py (convert): add \version
2624         * lily/tie.cc: remove get_default_attachments()
2626         * VERSION (PACKAGE_NAME): release 2.7.23
2627         
2628         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
2629         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
2631         * Documentation/topdocs/NEWS.tely (Top): document new feature.
2633         * lily/tie-formatting-problem.cc (score_ties): new function
2634         (get_variations): new function. Try flipping dirs for collisions.
2635         (generate_optimal_chord_configuration): new function. 1-opt search
2636         for better configuration.
2638         * lily/tie-configuration.cc: new file.
2640         * lily/tie.cc: junk Tie::get_configuration()
2642         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
2643         (score_ties_configuration): new function.
2644         (generate_ties_configuration): new function.
2645         (generate_base_chord_configuration): new function.
2646         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
2647         (set_manual_tie_configuration): Move body from tie-column-format.cc 
2649         * input/regression/tie-dot.ly: new file.
2651         * lily/tie-formatting-problem.cc (score_configuration): score
2652         tie/dot collisions.
2654         * lily/tie-helper.cc (get_transformed_bezier): new function
2656         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
2658         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
2659         -undefined suppress iso. -framework Python 
2661         * scm/define-grobs.scm (all-grob-descriptions): set
2662         springs-and-rods (thanks Joe Neeman!)
2664 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2666         * input/no-notation/display-lily-tests.ly (test): 
2667         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
2668         changed from \tag #'(a b) to \tag #'a \tag #'b
2670 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2672         * Documentation/topdocs/NEWS.tely: strip out-www.
2674         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
2676         * config.make.in (AR): add AR and RANLIB
2678         * flower/libc-extension.cc: include cassert
2680         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
2681         darwin check.
2683 2005-12-11  Graham Percival  <gpermus@gmail.com>
2685         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
2687         * stepmake/stepmake/python-modules-vars.make: define
2688         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
2690         * THANKS: added Johannes Schindelin.
2692 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2694         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
2696         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2697         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
2699         * lily/parser.yy: reorganize file layout.
2701         * ly/music-functions-init.ly: add tweak music function.
2703         * lily/grob-info.cc (ultimate_music_cause): new function:
2704         recursively lookup causes. 
2706         * lily/parser.yy (chord_body_element): allow music functions for
2707         post-events, allow music functions for chord elements. 
2709         * lily/font-config-scheme.cc (display_fontset): add cast.
2711         * python/convertrules.py (FatalConversionError.sub_syms): \tag
2712         #'(a b) -> \tag #'a \tag #'b rule.
2714         * python/musicexp.py (Output_printer.dump_version): new function
2716 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2718         * lily/parser.yy (FIXME): remove \tag
2719         (FIXME): remove tag_music() function.
2721         * lily/lily-lexer.cc: remove \tag
2723         * ly/music-functions-init.ly: define music-function "tag"
2725         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
2727 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2729         * VERSION (PATCH_LEVEL): release 2.7.22
2731         * input/regression/lyric-hyphen-retain.ly: renew.
2733         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
2734         grob
2736         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
2737         iso. minimum-length property for rods.
2739         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
2740         LyricSpace item to keep lyrics spaced apart.
2742         * ly/engraver-init.ly: remove Separating_line_group_engraver
2744         * Documentation/user/music-glossary.tely: do setfilename before
2745         music-glossary.
2747 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
2749         * Documentation/user/lilypond-book.itely: use `,´ after xref:
2750         See xref documentation, for example.
2752 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2754         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
2755         pending_skip iso. ly_voice[-1]
2756         (main): add if __main__ for debugging.
2758         * python/musicxml.py (Accidental.__init__): new class.
2760         * scripts/musicxml2ly.py (progress): new function
2761         (musicxml_key_to_lily): don't barf on modeless keys.
2762         (create_skip_music): new function.
2763         (musicxml_spanner_to_lily_event): new function. Handle beams too.
2764         (musicxml_note_to_lily_main_event): new function.
2766         * python/musicexp.py (Music.__init__): add comment field.
2767         (NestedMusic.append): new routine.
2768         (SequentialMusic.print_ly): print comment.
2769         (ArpeggioEvent.ly_expression): new class
2770         (BeamEvent.ly_expression): new class
2771         (NoteEvent.__init__): support for cautionary/forced accs.
2773         * lily/lookup.cc (slur): normal order for array loop.
2775         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
2776         to 0.0.
2778         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
2779         collapsed.
2781 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
2783         * scm/music-functions.scm: Make phrasing slurs follow voice direction
2785         * scripts/lilypond-book.py: Introduce option
2786             --preserve-line-breaks, for usage with srcltx
2788 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2790         * scm/output-lib.scm (print-circled-text-callback): draw circle
2791         around text using make-circle-markup.
2793         * Documentation/user/*: strip out-www from file names.
2795 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
2797         * Documentation/user/lilypond.tely (direntry): remove empty lines;
2798         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
2800 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2802         * Documentation/user/GNUmakefile: idem.
2804         * Documentation/user/macros.itexi: strip out-www
2806         * python/rational.py: python 2.3 compat.
2808         * VERSION (PATCH_LEVEL): release 2.7.21
2810         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
2811         option formatting, lilypond style.
2813         * python/musicexp.py: grab from Ikebana: a library for composing
2814         ly music expressions. 
2815         (Output_printer): class for advanced .ly printing.
2816         (eg. tupletting) 
2818         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
2819         convert to pythonesque structure.
2821         * python/rational.py: PD rational number class.
2823         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
2825 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
2827         * lily/part-combine-iterator.cc: Minor bugfix
2828         
2829         * THANKS: Update bughunters
2831 2005-12-02  Werner Lemberg  <wl@gnu.org>
2833         * mf/README: Document process for proper mf2pt1 conversion.
2835         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
2836         overlapping.
2838         * mf/feta-harmonica.mf: Removed.  Unused.
2840 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2842         * scripts/lilypond-book.py (do_file): fix thinkos.
2844 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2846         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
2847         ($(outdir)/parser.cc): 
2848         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
2850 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
2852         * ly/titling-init.ly (tagline): it should be a space between
2853         "Music engraving by LilyPond" and the version number.
2855 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2857         * VERSION (PACKAGE_NAME): release 2.7.20
2859 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2861         * scm/define-markup-commands.scm (pad-to-box): new markup command.
2863         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
2864         1.0.
2865         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
2867 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2869         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
2871         * kpath-guile/: remove directory
2873         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
2874         file. Encapsulate kpathsea using commandline tools.
2876         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
2877         kpathsea) module.
2879 2005-11-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2881         * Documentation/user/advanced-notation.itely (Setting automatic
2882         beam behavior): Correct a few typos. Thanks to David Bobroff.
2884         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
2885         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
2887 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2889         * scripts/*.py: gmane address for bugs.
2891 2005-11-28 Pal Benko <benkop@freestart.hu>
2892         
2893         * make/ly-rules.make: add -f switch to mv
2895         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
2897         * lily/bar-line.cc: interpret it
2899 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
2901         * configure.in (--disable-documentation): New switch.
2903         * GNUmakefile.in: Use it.
2905         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
2907 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2909         * scripts/lilypond-book.py (do_file): search chunks for
2910         \\begin{document}
2912         * GNUmakefile.in: add copy step in between so we can lose the
2913         out-www directories.
2915 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2917         * lily/pango-font.cc (pango_item_string_stencil): put
2918         geometry.width into glyph-string too.
2920 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2922         * scm/define-music-display-methods.scm (RevertProperty):
2923         (OverrideProperty): Use grob-property-path property, a list of
2924         symbols, instead of grob-property, which used to be a single
2925         symbol.
2926         (BassFigureEvent): a figure can be a plain number, not necessarily a
2927         markup.
2929 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2931         * VERSION: release 2.7.19
2932         
2933         * lily/figured-bass-engraver.cc (process_music): check
2934         figuredBassCenterContinuations first.
2936         * scm/translation-functions.scm (format-bass-figure): make double
2937         sharp larger. 
2939         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
2940         determine X-parent.
2942         * lily/system-start-delimiter-engraver.cc: move from
2943         Nested_system_start_delimiter_engraver, rename
2944         Nested_system_start_delimiter_engraver ->
2945         System_start_delimiter_engraver.
2947         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
2948         bracket type from hierarchy.
2950 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2952         * lily/rest.cc (y_offset_callback): read staff-position.
2954         * scm/define-grob-properties.scm (all-user-grob-properties): don't
2955         mark after-line-breaking-callback as internal.
2957         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
2959 2005-11-25  Werner Lemberg  <wl@gnu.org>
2961         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
2963 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2965         * stepmake/bin/add-html-footer.py (do_file): add google
2967         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
2968         staff if first_start_ is true.
2970 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2972         * scripts/midi2ly.py (split_track): add __repr__ members.
2973         (track_first_item): only return Item if not None. This fixes a
2974         problem when dumping a track that starts with an empty channel.
2976         * python/midi.c: doc module.
2978 2005-11-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2980         * Documentation/user/global.itely (Creating MIDI files): Fix
2981         compilation problem.
2983 2005-11-22  Graham Percival  <gpermus@gmail.com>
2985         * Documentation/user/basic-notation.itely: clarify dynamic
2986         padding text.
2988         * Documentation/user/advanced-notation.itely: add unicode
2989         escape control example, whatever that is.  :)
2991         * Documentation/user/global.itely: added "removing dynamics
2992         from MIDI" code.
2994 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2996         * VERSION (PATCH_LEVEL): release 2.7.18
2998         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
2999         System_start_delimiter_engraver by
3000         Nested_system_start_delimiter_engraver.
3002         * lily/nested-system-start-delimiter-engraver.cc (struct
3003         Bracket_nesting_node): new class.
3004         (struct Bracket_nesting_group): new class
3005         (struct Bracket_nesting_staff): new class.
3006         (process_music): create hierarchy of grobs. This allows separate
3007         tuning of different SSDs. 
3009         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
3010         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
3012 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3014         * lily/side-position-interface.cc (aligned_side): multiply
3015         staff_radius by 2.
3017         * lily/script-engraver.cc (make_script_from_event): allow setting
3018         values to '()
3020 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3022         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
3024         * scm/define-grobs.scm (all-grob-descriptions): new grob
3025         NestedSystemStartDelimiter.
3027         * input/regression/system-start-heavy-bar.ly: new file.
3029         * lily/nested-system-start-delimiter-engraver.cc: new file.
3031         * lily/nested-system-start-delimiter.cc: new file.
3033         * input/regression/system-start-nesting.ly: new file.
3035         * scm/define-grobs.scm (all-grob-descriptions): use X side
3036         positioning for positioning braces for nested contexts.
3038         * lily/system-start-delimiter.cc (print): don't divide extent by
3039         staff_space.
3040         (print): use style iso. glyph.
3041         (staff_bracket): translate glyph inside routine already.
3043 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
3045         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
3046         names.
3048 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3050         * scm/define-context-properties.scm
3051         (all-user-translation-properties): rename figuredBassFormatter
3052         from newFiguredBassFormatter.
3054         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
3056         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
3058         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
3060         * lily/beam.cc (calc_beaming): new function.
3061         (calc_shorten): new function.
3063         * THANKS: add Edward Neeman.
3065         * input/regression/accidental-clef-change.ly: new file.
3067         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
3069         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
3071         * lily/clef-engraver.cc (inspect_clef_properties): reset
3072         localKeySignature for clef changes.
3074 2005-11-17  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3076         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
3077         add dummy definition that works in Linux and add information in
3078         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
3080         * Documentation/user/changing-defaults.itely (Modifying context
3081         plug-ins): Add index for \with.
3083         * Documentation/user/music-glossary.tely (dal segno): Updated
3084         example to version >=2.6.
3086 2005-11-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3088         * Documentation/user/instrument-notation.itely (Printing chord
3089         names): Reorder \chordmode and \repeat in one example.
3091 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3093         * VERSION: release 2.7.17
3094         
3095         * Documentation/topdocs/NEWS.tely (Top): add note about
3096         refactoring.
3098         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3099         new function. Search region of 3 positions for best tie.
3100         (score_configuration): new function.
3101         (score_aptitude): new function.
3102         (generate_configuration): new function.
3103         (get_configuration): new function.
3104         (Tie_formatting_problem): new function
3106         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
3108         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
3110         * THANKS: add Eduardo Vieira & Ralph Little
3112         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
3113         narrower.
3115         * lily/include/tie-formatting-problem.hh (class
3116         Tie_formatting_problem): add Tie_details to
3117         Tie_formatting_problem. Update calling conventions.
3119         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
3120         config.make.
3122         * Documentation/user/lilypond.tely: remove musedata2ly entry.
3124 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
3126         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
3127         scm/define-context-properties.scm: Maintenance bugfix: make
3128         ligature brackets work again by removing obsolete ligature
3129         primitive callback push/pop.
3131         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
3132         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
3133         value.
3135 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3137         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
3138         used and do not call it a path.
3139         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
3141 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3143         * lily/include/tie-formatting-problem.hh (class
3144         Tie_formatting_problem): new file.
3146         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
3148         * Documentation/misc/ChangeLog-2.3:  new file.
3150         * lily/audio-staff.cc (output): degarianize.
3152 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3154         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
3155         Unset PYTHONOPTIMIZE.  Fixes install if set.
3157 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3159         * python/convertrules.py (conv): add warning about drums. 
3161         * make/stepmake.make: include toplevel-version.make after config.make.
3163         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
3164         also allow python2.4
3166         * config.make.in (configure-srcdir): remove GXX GCC vars.
3168         * stepmake/aclocal.m4: don't do non-srcdir build with
3169         symlinks. Use inclusion, so the src directory name can be changed.
3171 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
3173         * make/mutopia-vars.make:
3174         * make/ly-vars.make: Use src-wildcard iso wildcard for source
3175         files.
3177 2005-11-13  Werner Lemberg  <wl@gnu.org>
3179         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
3180         but the affected path.  This ensures that the (overlapping) outlines
3181         have the same direction, which is a necessary prerequisite for
3182         FontForge's algorithm to remove overlaps.
3183         Formatting.
3185         * mf/feta-haak.mf: Formatting.
3186         (draw_bracket): Slightly modify outline to avoid an unnecessary
3187         corner.
3188         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
3189         them from the affected paths.
3191 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3193         * mf/README: remove xpm / accordion notes.
3195         * lily/tie-column-format.cc (set_chord_outline): add dots into
3196         skyline extents. This fixes tie formatting if the left head has dots.
3198         * lily/tie.cc (get_configuration): only shift tie by a whole staff
3199         space inside the staff.
3200         (get_configuration): shift another position if necessary in case
3201         of left head tie  
3203 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3205         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
3206         buildscript-dir iso. $(depth)/buildscripts.
3208         * tex/GNUmakefile (local-uninstall): remove
3209         music-drawing-routines.ps juggling.
3211         * stepmake/stepmake/install-targets.make (local-install-files):
3212         prepend src-dir to install targets.
3214         * lily/system-start-delimiter-engraver.cc
3215         (acknowledge_system_start_delimiter): use
3216         add_offset_callback(). This fixes translation of nested
3217         staffgroups.
3219         * lily/grob-closure.cc (add_offset_callback): only encaps in
3220         simple_closure if it's a procedure.
3221         
3222         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
3223         from bar-line.
3225         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
3226         remove-empty where pertinent.
3228 2005-11-12  Graham Percival  <gpermus@gmail.com>
3230         * Documentation/user/instrument-notation.itely: added
3231         Cameron Horsburgh's multiple stanzas docs.  Thanks!
3233 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3235         * lily/GNUmakefile
3236         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
3237         make picture in builddir, not srcdir.
3239 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3241         * VERSION: release 2.7.16
3242         
3243         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
3244         shell arguments. 
3246 2005-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3248         * Documentation/user/examples.itely (Piano templates): Minor
3249         modification to the Piano centered lyrics example.
3251 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3253         * scripts/lilypond-invoke-editor.scm (run-browser): look at
3254         $BROWSER.
3256         * Documentation/user/point-and-click.itely: simplify p&c
3257         instruction: don't configure firefox. Put lilypond-invoke-editor
3258         in front of the browser.
3260         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
3261         (run-browser): new function.
3263         * lily/parser.yy (Lily_lexer): recognize Book
3265         * lily/book.cc (clone): new function
3267         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
3269 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
3271         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
3272         Maintenance bugfix: reduce number of font related warnings by
3273         updating naming conventions for glyph-name.
3275 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3277         * scm/define-grobs.scm (all-grob-descriptions): add
3278         rhythmic-grob-interface to TabNoteHead.
3280         * scm/layout-beam.scm (check-quant-callbacks): remove
3281         set_stem_lengths()
3283 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
3285         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
3286         alignment of centered divisiones.
3288         * scm/scripts.scm (articulations): Maintenance bugfix:
3289         follow-into-staff -> quantize-position.
3291         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
3292         plica head in porrectus deminutus.
3294 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3296         * make/lilypond.fedora.spec.in (Group): add %clean section.
3298         * lily/tuplet-bracket.cc (print): change check: remove bracket if
3299         less then 1/5th of total length.  
3300         (print): use gap too.  Fixes tupletUp-single-bracket.ly
3302         * scm/music-functions.scm (glue-mm-rest-texts): also put other
3303         events into EventChord. This fixes textspanners on mm rests. Fixes
3304         spanner-rest.ly
3306         * lily/side-position-interface.cc (get_axis): read side-axis
3307         (set_axis): set side-axis.
3309         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
3310         properties everywhere.
3312         * lily/spacing-spanner.cc (breakable_column_spacing): add
3313         average-spacing-wishes. Take maximum if not set.
3314         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
3316         * scm/define-grobs.scm (all-grob-descriptions): add
3317         average-spacing-wishes.
3319         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
3320         offset callbacks. This fixes alignment for Fingering objects.
3322         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
3323         space for key - timesig combination. 
3325         * input/regression/script-stem-tremolo.ly (Module): new file.
3327         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
3328         to key sig.
3330         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
3331         Fixes: c-tremolo-script.ly.
3332         
3333         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
3335         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
3336         
3337         * scm/define-grobs.scm (all-grob-descriptions): remove
3338         self-X-offset. Fixes alignment of octavate-8.
3340         * scripts/lilypond-book.py (datadir): look in
3341         LILYPONDPREFIX/share/lilypond/current/
3343         * GNUmakefile.in: symlink current to <VERSION>. 
3345 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
3347         * lily/main.cc: eps listed as a backend.
3349 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3351         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
3353 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3355         * lily/include/score.hh (class Score): remove texts_ member.
3357         * lily/beam.cc (set_stem_lengths): force direction callback.
3358         (print): read quantized-positions, so we can force
3359         Beam::set_stem_lengths to occur.
3360         (rest_collision_callback): use common X parent. 
3362 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
3364         * flower/file-path.cc (find): Bugfix: Return name of file found.
3366         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
3367         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
3368         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
3370 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3372         * flower/offset.cc: idem.
3374         * mf/*.mf: update email address.
3376         * lily/font-config-scheme.cc:  new file.
3378         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
3380         * lily/*:  cs.uu.nl -> xs4all.nl
3382         * VERSION (PATCH_LEVEL): release 2.7.15
3384         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
3385         spec files.
3387         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
3389 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3391         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
3393         * lily/staff-performer.cc (process_music): add audio
3394         elements. This makes MIDI instrument changes work once again.
3396         * lily/main.cc (LY_DEFINE): add gmane address.
3398         * lily/beam.cc: remove calc_positions()
3400         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
3401         original_ in private scope.
3402         (class Grob): drop pscore_ pointer, change to output_def pointer.
3403         (class Grob): cleanup class definition.
3405         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
3407 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3409         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
3410         absolute.  Better diagnostics.
3412         * GNUmakefile.in: Add bin/ to tree and populate with some links.
3413         This makes lilypond run from the build directory using argv0
3414         relocation (without any --prefix or LILYPONDPREFIX setting).
3416 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3418         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
3420         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
3421         with simple-closure.
3423         * lily/self-aligment-interface.cc (set_align_self): new function
3424         (set_center_parent): new function.
3426         * lily/side-position-interface.cc (set_axis): new function.
3428         * lily/new-fingering-engraver.cc (position_scripts): use drul for
3429         generic code. 
3431         * scm/define-grob-properties.scm (all-user-grob-properties):
3432         remove [XY]-offset-callbacks add [YX]-offset
3433         
3434 2005-11-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
3436         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
3437         entry for time signatures after breathing signs. Bug report by
3438         Scott Russell.
3440 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3442         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
3443         not absolute, make it absolute using PATH.
3445 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
3447         * python/midi.c (initmidi): Fix type for mingw.
3449 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
3451         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
3453         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
3454         cross compiling.
3456         * stepmake/aclocal.m4: Support python cross compiling.
3458         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
3459         Add mingw section.
3461 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3463         * scm/output-lib.scm (chain-grob-member-functions): replace
3464         chained-callback.cc
3466         * lily/chained-callback.cc (Module): remove file.
3468         * lily/rest-collision.cc (force_shift_callback_rest): change to
3469         chained callback.
3471         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
3473         * lily/grob.cc (y_parent_positioning): remove axis argument from
3474         parent_positioning callbacks.
3475         (Grob): junk init code
3476         (get_offset): use generic property callbacks for
3477         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
3478         (axis_parent_positioning): new function
3479         (axis_offset_symbol): new function
3480         (chain_offset_callback): new function
3481         (add_offset_callback): new function
3483         * lily/beam.cc (rest_collision_callback): change signature; this
3484         is now a chained callback.
3486         * lily/include/dimension-cache.hh (class Dimension_cache): remove
3487         callback administration.
3489         * lily/simple-closure.cc: new file. Smob type that allows "grob
3490         member functions",
3492             (ly:make-simple-closure FUNC A B)
3494         is evaluated as (FUNC grob A B). This allows chaining of callbacks
3495         in various ways.
3497         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
3498         callbacks.
3500         * lily/slur.cc (outside_slur_callback): take 2 arguments.
3502         * lily/rest.cc (polyphonic_offset_callback): remove.
3504         * lily/script-engraver.cc (try_music): remove bool* argument.
3506         * scm/script.scm (default-script-alist): set quantize-position
3507         appropriately.
3509         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
3511         * lily/side-position-interface.cc (aligned_side): move staff
3512         position quantization from
3513         Side_position_interface::quantised_position().
3514         (quantised_position): remove
3515         
3516 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3518         * input/regression/beam-quant-standard.ly: reindent, set
3519         debug-beam-quanting to #t.
3521         * lily/beam-concave.cc (calc_concaveness): set concaveness to
3522         10000 if this is a "hard" concave beam.
3524         * lily/beam.cc (calc_least_squares_positions): change from
3525         calc_least_squares_dy
3526         (set_stem_lengths): this is now a chained callback.
3528         * lily/context-property.cc (execute_general_pushpop_property):
3529         bugfix override with procedure should have effect.
3531         * scm/define-grob-properties.scm (all-internal-grob-properties):
3532         remove position-callbacks.
3534         * scm/define-grobs.scm (all-grob-descriptions): use
3535         ly:make-callback-chain for positions property.
3537         * scm/layout-beam.scm (check-quant-callbacks): return list of
3538         chained callbacks.
3540         * scm/lily.scm (type-p-name-alist): add callback-chain
3542         * lily/lily-guile.cc (type_check_assignment): type check failure
3543         is warning not message.
3545         * lily/grob-property.cc (try_callback): walk callback chain if
3546         appropriate.
3548         * lily/chained-callback.cc: new file. new smob type.
3550         * lily/lily-guile.cc (procedure_arity): new function.
3552 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3554         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
3556 2005-10-25  John Mandereau  <john.mandereau@free.fr>
3558         * Documentation/user/instrument-notation.itely (Figured bass):
3559         describe new features
3561 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3563         * lily/beam.cc (calc_least_squares_dy): use property callback.
3565         * lily/beam-concave.cc (calc_concaveness): use property callback.
3567         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
3569 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
3571         * HACKING: Update.
3573 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3575         * scm/layout-page-layout.scm (page-headfoot): annotate
3576         pagetopspace too.
3578         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
3580         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
3581         doesn't take y-space.
3583         * scm/paper.scm (paper-alist): fix A7 dimensions. 
3585 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
3587         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
3588         src-wildcard, remove $(wildcard).
3590         * po/GNUmakefile (PO_FILES): 
3591         * ps/GNUmakefile (PS_FILES): 
3592         * tex/GNUmakefile (TEX_FILES): 
3593         * cygwin/GNUmakefile (POSTINSTALLS):
3594         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
3595         some wildcard calls.
3597 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3599         * THANKS: add Thomas Bushnell.
3601 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
3603         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
3604         (lilypond-main): Redirect to gui-main if 'gui is set.
3605         Backportme.
3607         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
3608         for alternative installations kludging s/share/lib/g
3609         LILYPONDPREFIX. Backportme.
3611         * SConstruct (libdir_package_version): Define.
3613         * python/SConscript: 
3614         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
3615         module in libdir.  Backportme.
3617 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3619         * lily/main.cc: clarify --safe.
3621 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3623         * VERSION: release 2.7.14
3624         
3625         * Documentation/user/*.itely: remove minimumVerticalExtent.
3627         * scm/define-grobs.scm (all-grob-descriptions): remove
3628         RemoveEmptyVerticalGroup
3630         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
3632         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
3633         compile on MOSX
3635         * python/convertrules.py (conv): add rules.
3637         * lily/grob.cc: remove is_empty()
3639         * lily/grob-property.cc: remove add_to_list_property().
3641         * scripts/convert-ly.py (datadir): add prefix switching hack to
3642         .py too.
3644         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
3645         space-function tweak.
3647         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
3649         * scm/define-grob-properties.scm (all-user-grob-properties):
3650         remove callback property.
3652         * lily/include/grob.hh (class Grob): remove property_callbacks_
3653         member. Properties of procedure type are assumed to be callbacks.
3655         * lily/ligature-engraver.cc (override_stencil_callback):
3656         rewrite. Use noteHeadLigaturePrimitive as source.
3658         * scm/define-grob-properties.scm (all-internal-grob-properties):
3659         remove ligature-primitive-callback
3661         * lily/include/dimension-cache.hh (class Dimension_cache): make
3662         class, with Grob as friend.
3664         * lily/grob.cc: remove set_extent_callback(), set_extent() and
3665         has_extent_callback()
3667         * scm/translation-functions.scm (format-new-bass-figure): read
3668         figuredBassPlusDirection
3670         * scm/define-context-properties.scm
3671         (all-user-translation-properties): add figuredBassPlusDirection.
3673         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
3675         * lily/align-interface.cc (set_ordered): new function.
3677         * lily/grob.cc (flush_extent_cache): rewrite.
3679         * lily/dimension-cache.cc (Dimension_cache): cache extent as
3680         Interval pointer directly.
3682         * lily/main.cc (setup_paths): insert extra / .
3683         (setup_paths): junk cff entry.
3685         * lily/font-config.cc (init_fontconfig): only add type1 / otf
3686         directories.
3688         * lily/axis-group-engraver.cc (finalize): remove
3689         extraVerticalExtent, minimumVerticalExtent verticalExtent.
3691         * lily/grob.cc (Grob): don't set extent from ctor.
3692         (extent): use property callbacks. 
3694         * lily/axis-group-interface.cc: remove set_axes() function.
3696         * lily/grob-property.cc (del_property): new function.
3698 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3700         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
3701         
3702 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
3704         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
3706 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
3708         * mf/SConscript: Updates.
3710         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
3712         * stepmake/stepmake/*:
3713         * */GNUmakefile:
3714         * config.make.in:
3715         * GNUmakefile.in:
3716         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
3717         from any directory in build-dir.  Cleanups.
3719         * make/srcdir.make.in: Remove.
3721         * lily/main.cc (setup_paths): Fix and document build-dir hack.
3723         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
3724         main).
3726         * lily/SConscript: Remove ttftools.
3728         * SConstruct: Resurrect.
3730 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3732         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
3733         Y coordinate. 
3735         * lily/paper-book.cc (add_score_title): put Paper_score title into
3736         systems_ list.
3738         * scm/translation-functions.scm (format-new-bass-figure): also
3739         allow plus in combination with _
3741 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3743         * VERSION: 2.7.13 released.
3745         * lily/note-collision.cc (check_meshing_chords): don't wipe
3746         stencil, merely set transparent.
3748         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
3749         (Top): document #'callbacks.
3750         (Top): document nested \override.
3752         * input/regression/figured-bass.ly: update for slash and pluses.
3754         * input/regression/figured-bass-continuation-forbid.ly (Module):
3755         new file.
3757         * scm/translation-functions.scm (format-new-bass-figure): use
3758         slashed-digit if diminished is set.
3759         (format-new-bass-figure): add + if 'augmented is set.
3761         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
3763         * input/test/piano-staff-distance.ly: remove file.
3765         * Documentation/user/advanced-notation.itely (Formatting cue
3766         notes): use length-fraction for making stems/beams smaller.
3768         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
3769         modifications.
3771         * lily/new-figured-bass-engraver.cc: new property
3772         centerFiguredBassContinuations
3774         * Documentation/user/changing-defaults.itely (Difficult tweaks):
3775         use callbacks.
3777         * lily/context-property.cc (execute_general_pushpop_property):
3778         robustness checks.
3780         * input/regression/override-nest.ly: new file.
3782         * python/convertrules.py (FatalConversionError.subber): conversion
3783         rule for #'callbacks
3785         * input/regression/override-nest.ly: new function.
3787         * lily/parser.yy (music_property_def): allow \override #'a #'b =
3788         #c too. 
3790         * lily/context-property.cc (lookup_nested_property): new function.
3791         (evict_from_alist): new function.
3792         (general_pushpop_property): new function.
3793         (execute_general_pushpop_property): rewrite. Support nested
3794         properties too.
3796 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3798         * lily/beam.cc: use length-fraction too.
3800         * scm/define-grob-properties.scm (all-user-grob-properties):
3801         remove property flag-width-function
3802         (all-user-grob-properties): remove space-function.
3804         * scm/layout-beam.scm: remove flag-width-function.
3806         * lily/beam.cc: remove flag-width-function
3808         * scm/layout-beam.scm: remove beam dir functions.
3810         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
3812         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
3813         for easier grace tweaks.
3815         * lily/beam.cc: remove dir-function.
3817         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
3819         * lily/grob.cc: remove spacing-procedure.
3821         * lily/note-head.cc (calc_stem_attachment): new function.
3822         (internal_print): use callback to get glyph-name.
3824         * lily/grob-property.cc (get_interfaces): new function.
3826         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
3828         * lily/stem.cc (calc_stem_end_position): new function.
3829         (calc_length): new function.
3830         document details for stem.
3831         remove Stem::get_direction()
3833         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
3835         * lily/grob-property.cc (set_callback): new function.
3837         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
3839         * lily/item-scheme.cc: new file.
3841         * lily/bar-line.cc (before_line_breaking): remove function.
3842         remove bar-size-procedure, break-glyph-function
3844         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
3846         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
3848         * lily/system-start-delimiter.cc (print): suicide from
3849         here. Remove after_line_breaking_callback.
3851         * lily/script-interface.cc (calc_direction): use callback for direction.
3853         * lily/side-position-interface.cc (aligned_side): don't use
3854         Side_position_interface::get_direction directly. Use callback. 
3856         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
3857         calculate stencil.
3858         (get_print_stencil): rename from get_stencil: create stencil with
3859         transparency, color and cause. 
3861         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
3863         * python/convertrules.py (conv): insert temporary warning rule.
3865         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
3867         * lily/grob-property.cc (try_callback): remove marker if applicable.
3869         * lily/grob.cc: elucidate doc about after/before-line-breaking
3871         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
3873         * lily/stem.cc (height): idem.
3875         * lily/stem-tremolo.cc: idem.
3877         * lily/slur.cc (height): don't use get_uncached_stencil()
3879         * lily/rest.cc (y_offset_callback): use offset callback
3880         iso. after-line-breaking callback.
3882         * lily/grob.cc: change after/before-line-breaking-callback to
3883         after/before-line-breaking dummy properties.
3885         * lily/include/grob.hh: remove Grob_status.
3887         * scm/define-context-properties.scm
3888         (all-user-translation-properties): remove verticalAlignmentChildCallback
3890         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
3891         (calc_direction): use callback
3892         (calc_positions): use callback.
3894         * lily/tie.cc (calc_direction): use callback. Only call parent
3895         positioning for more than one tie.
3897         * lily/tie-column.cc (calc_positioning_done): use callback
3899         * lily/slur-scoring.cc (calc_control_points): use callback
3901         * lily/slur.cc (calc_direction): use callback.
3903         * lily/note-collision.cc (force_shift_callback): remove.
3905         * lily/dot-column.cc (force_shift_callback): remove. Use
3906         other_axis_parent_positioning.
3908         * lily/grob.cc (other_axis_parent_positioning): new function.
3909         (same_axis_parent_positioning): new function
3911         * lily/align-interface.cc (alignment_callback): remove function.
3913         * lily/note-collision.cc (calc_positioning_done): use callback.
3915         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
3916         (calc_direction): idem.
3917         remove print function.
3919         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
3921         * lily/dot-column.cc (calc_positioning_done): use callback.
3923         * lily/break-align-interface.cc (calc_positioning_done): use callback.
3925         * lily/beam.cc (calc_direction): use pseudo-property for beam
3926         direction callback.
3927         (calc_positions): use callback 
3929         * lily/align-interface.cc (calc_positioning_done): use
3930         callback. Fold fixed  distance and normal alignment in one function.
3932         * lily/stem.cc (calc_stem_end_position): use callback.
3933         (calc_positioning_done): idem.
3934         (calc_direction): idem.
3935         (calc_stem_end_position): idem
3936         (calc_stem_info): idem.
3938         * lily/grob-property.cc (get_property_data): new function: 
3939         (try_callback): new function.
3941         * scm/define-grob-properties.scm (all-user-grob-properties): doc
3942         callbacks property.
3944         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
3946 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3948         * lily/tie.cc (get_position): robustness fix. Don't crash if a
3949         tie
3950         has no heads.
3951         
3952         * lily/include/*.hh (Module): compile fixes.
3954 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
3956         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
3957         as an argument for char-syntax: use (char-syntax (or nil 0)) 
3958         instead of (char-syntax nil), thanks to Milan Zamazal.
3960 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3962         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
3963         dist.
3965         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
3966         themselves.
3968 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3970         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
3971         add class_name() method.
3973         * lily/music-scheme.cc: remove ly:music-name.
3975 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
3977         * cygwin/postinstall-lilypond.sh: Remove cruft.
3979         * cygwin/postremove-lilypond.sh: Remove.
3981         * cygwin/GNUmakefile (default): Remove postremove rules.
3983 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3985         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
3986         even header too.
3987         
3988         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
3989         MacOS 9 users.
3991         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
3992         consider break index for broken spanner.
3994         * scm/define-markup-commands.scm (wordwrap-string): remove \r
3995         characters from string before splitting.
3997 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3999         * scm/framework-ps.scm (output-preview-framework): use
4000         is-book-title to determine whether to chop off the booktitle.
4002         * lily/paper-book.cc (systems): init from book-title-properties
4003         (add_score_title): init score-title-properties.
4005         * ly/paper-defaults.ly: add {score,book}-title-properties.
4007         * scm/document-backend.scm (lookup-interface): error message if
4008         using unknown interface.
4010         * lily/volta-bracket.cc (after_line_breaking): new function. Set
4011         edge-height.
4013         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
4014         make_bracket.
4015         (make_bracket): new function.
4017         * scm/lily.scm (define-scheme-options): add paper-size option.
4019         * ly/declarations-init.ly (laissezVibrer): get paper size from
4020         -dpaper-size
4022         * scm/translation-functions.scm: use \fontsize for changing the
4023         fontsize.
4025         * scm/define-grobs.scm (all-grob-descriptions): set
4026         between-length-limit to 1.0
4028         * lily/tie-helper.cc: add between_length_limit_ detail property.
4030         * mf/feta-bolletjes.mf: typos.
4032         * lily/note-head.cc (internal_print): don't shadow idx
4033         parameter. This fixes wrong attachment for do shape heads.
4035 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4037         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
4039         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
4041         * scm/layout-slur.scm: rename from slur.scm
4043         * scm/layout-page-layout.scm: rename from page-layout.scm
4045         * scm/layout-beam.scm: rename from beam.scm
4047         * scm/define-grob-interfaces.scm (bass-figure-interface): add
4048         bass-figure-interface
4050         * lily/new-figured-bass-engraver.cc (process_music): add
4051         implicitBassFigures property.
4052         
4053         * scm/define-markup-commands.scm (pad-x): new markup.
4055         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
4056         minimumVerticalExtent on FiguredBass context.
4058         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
4059         case the continuation crosses a line break.
4061 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
4063         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
4064         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
4065         absolute file name bug.  Backportme.
4067 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4069         * VERSION (PACKAGE_NAME): release 2.7.12
4071         * input/regression/figured-bass-continuation-center.ly: new file.
4073         * input/regression/beam-outside-beamlets.ly: new file.
4075         * lily/beam.cc (set_beaming): don't clip edges.
4076         (connect_beams): don't clip edges.
4078         * lily/beaming-info.cc (clip_edges): new function.
4080         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
4082         * Documentation/user/instrument-notation.itely (Figured bass):
4083         demonstrate extenders, update seealso links.
4085         * scm/titling.scm (marked-up-headfoot): change tagline
4086         handling. tagline = ##f will blank the tagline as well.
4088 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4090         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
4092         * lily/new-figured-bass-engraver.cc (struct
4093         New_figured_bass_engraver): add new_music_found_ member.
4095         * lily/lilypond-version.cc (Lilypond_version): deal with
4096         incorrectly formatted version strings. 
4098         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
4099         New_figured_bass_engraver by default.
4101         * lily/ttf.cc (print_trailer): only define glyph names when
4102         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
4104 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4106         * lily/horizontal-bracket.cc (make_bracket): new function.
4108         * scm/define-grobs.scm (all-grob-descriptions): new grobs
4109         NewBassFigure, BassFigureBracket, BassFigureContinuation,
4110         BassFigureLine, BassFigureAlignment
4112         * lily/new-figured-bass-engraver.cc (process_music): new file.
4114         * lily/figured-bass-continuation.cc: new file.
4116         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
4117         new file.
4119 2005-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4121         * scripts/lilypond-book.py: Bug fix, put the quote around the
4122         actual score for LaTeX documents.
4124         * scm/define-grobs.scm (all-grob-descriptions): Change
4125         collapse-height of the SystemStartBracket grob to 5.0, 
4126         so the bracket disappears for single stave score lines (similarly
4127         to SystemStartBraces). 
4129         * Documentation/user/advanced-notation.itely (Polymetric
4130         notation): Clarify the use of compressMusic.
4132         * Documentation/user/basic-notation.itely (Grace notes): Clarify
4133         that the grace spacer note in other staves need the same duration
4134         and document the stroke-style property.
4136 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4138         * Documentation/user/global.itely (Vertical spacing): document
4139         alignment-extra-space and fixed-alignment-extra-space.
4141         * Documentation/topdocs/NEWS.tely (Top): add entry.
4143         * input/regression/alignment-vertical-spacing.ly: new file.
4145         * python/convertrules.py (conv): add rule.
4147         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
4149         * lily/align-interface.cc (stretch_after_break): new
4150         function. Read fixed-alignment-extra-space property.
4151         (align_elements_to_extents): read alignment-extra-space property.
4153         * lily/lily-guile.cc (robust_scm2dir): new function.
4155         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
4156         (annotate-space-left): new function. Annotate space left on page. 
4157         (annotate-y-interval): new function.
4158         (paper-system-annotate-last): new function. Annotate bottom-space.
4160         * mf/feta-beugel.mf (y): 
4162 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4164         * VERSION (PACKAGE_NAME):  release 2.7.11
4166         * scm/lily-library.scm (interval-translate): new function
4167         (interval-center): new function. 
4169         * scm/page-layout.scm (paper-system-annotate): new function. Add
4170         arrows for dimensions.
4172         * scm/stencil.scm (dimension-arrows): new function.
4174         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
4176         * input/regression/page-spacing.ly: add annotatespacing
4178         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
4179         (LY_DEFINE): new function ly:paper-system-set-property!
4181         * Documentation/user/global.itely (Paper size): explain how to add
4182         sizes.
4184         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
4185         correspond to GS's definition.
4187         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
4188         tuplet bracket.
4189         (print): only connect to next bracket if the next one is alive.
4190         (print): set padding to 0.0 if the bound is a breakable
4191         column. This makes tupletFullLength brackets reach up to the staff
4192         line if it doesn't connect to the next line.
4194 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4196         * lily/bar-number-engraver.cc: correct docs.
4198         * scm/output-lib.scm (first-bar-number-invisible): rename from
4199         default-bar-number-visibility
4201 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4203         * scm/define-music-properties.scm (all-music-properties): remove
4204         predicate property.
4206 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
4208         * po/fi.po: refresh.
4210 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4212         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
4213         superfluous s1.
4214         (disappear): bugfix.
4216         * lily/stem-tremolo.cc (raw_stencil): read slope property.
4218         * lily/include/paper-system.hh (class Paper_system): remove
4219         staff_extents_ member.
4221         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
4223         * lily/include/paper-system.hh (class Paper_system): remove
4224         number_ variable. Remove is_title_. Remove break_before_penalty_
4226         * lily/paper-book.cc (systems): use 'number property iso. number_
4227         member.
4229         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
4230         remove ly:paper-system-number.
4232         * scm/lily-library.scm (paper-system-title?): new function.
4234         * lily/book.cc (process): bugfix: flip ?: cases. 
4236         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4237         add outputProperty.
4239         * ly/music-functions-init.ly: add outputProperty music function.
4241         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
4243         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
4244         and next-padding.
4245         (optimal-page-breaks): rename from ly:optimal-page-breaks.
4247         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
4249         * lily/paper-system.cc (internal_get_property): new function.
4251         * Documentation/user/global.itely (Vertical spacing): refer to
4252         page-spacing.ly
4254         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
4255         pagetopspace
4257         * input/regression/page-spacing.ly: new file.
4259         * input/regression/page-top-space.ly: new file.
4261         * lily/spacing-spanner.cc: cmath -> math.h
4263         * lily/paper-system.cc (read_left_bound): new function. Read
4264         line-break-system-details from left bound to determine extents.
4266         * Documentation/user/programming-interface.itely (Using LilyPond
4267         syntax inside Scheme): change applyxxx -> applyXxx.
4269         * ly/music-functions-init.ly: add outputProperty music function.
4271         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
4273         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
4275         * python/convertrules.py (conv): rule
4277         * ly/music-functions-init.ly: applyxxx -> applyXxx
4279         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
4280         TabVoice to Voice.
4282 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4284         * flower/include/real.hh: include <math.h> iso. <cmath>
4286         * flower/include/offset.hh: include real.hh
4288 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4290         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4291         fix example, now that 'interfaces is no longer directly available.
4293         * lily/book.cc (process): don't crash if paper == NULL.
4295         * po/fr.po: update.
4297 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4299         * scm/define-music-types.scm (music-descriptions): set length and
4300         start-callback for QuoteMusic
4302 2005-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4304         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
4305         arguments. Fixes compilation error with gcc 3.3.
4307 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4309         * VERSION: release 2.7.10
4311         * stepmake/stepmake/python-module-rules.make
4312         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
4314         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
4315         real.hh
4317 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4319         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
4320         -Werror. Otherwise GCC barfs over various optimizations.
4322         * scm/define-grob-properties.scm (all-internal-grob-properties):
4323         add note-head property
4325         * Documentation/user/instrument-notation.itely (Laissez vibrer
4326         ties): new node.
4328         * input/regression/laissez-vibrer-ties.ly: new file.
4330         * lily/laissez-vibrer-engraver.cc: new file.    
4332         * lily/include/tie-column-format.hh: new file.
4334         * lily/tie-column-format.cc: new file. 
4336         * lily/tie-column.cc (set_manual_tie_configuration): new function.
4338         * lily/laissez-vibrer-tie.cc: new file.
4340         * lily/include/laissez-vibrer-tie.hh: new file.
4342         * ly/engraver-init.ly: add Laissez_vibrer_engraver
4344         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
4346         * scm/define-grobs.scm (all-grob-descriptions): add
4347         LaissezVibrerTie, LaissezVibrerTieColumn
4349         * lily/tie-column.cc (set_tie_config_directions): new function
4350         (final_shape_adjustment): new function.
4351         (shift_small_ties): new function.
4353         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
4355         * lily/include/tie.hh (struct Tie_details): add x_gap_
4356         (struct Tie_configuration): add head_position_
4358         * lily/tie-column.cc (set_chord_outline): new function.
4360         * mf/cmr.enc.in:  remove file.
4362 2005-09-11  Graham Percival  <gpermus@gmail.com>
4364         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
4366 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4368         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
4369         reduce aliasing effects.
4371         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
4372         box in skyline.
4374 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4376         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
4378         * flower/include/real.hh: std::fabs too.
4380 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4382         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
4384         * lily, flower: Include C++ iso C headers.  Import namespace std
4385         throughout.
4387         * lily/side-position-interface.cc: 
4388         * lily/scm-hash.cc: 
4389         * lily/note-head.cc: 
4390         * lily/include/includable-lexer.hh: 
4391         * flower/include/string-data.icc: Remove using std::*.
4393         * lily, flower: Include C++ iso C headers.  Import namespace std
4394         throughout.
4396         * lily/side-position-interface.cc: 
4397         * lily/scm-hash.cc: 
4398         * lily/note-head.cc: 
4399         * lily/include/includable-lexer.hh: 
4400         * flower/include/string-data.icc: Remove using std::*.
4402         * Documentation/user/instrument-notation.itely (Entering lyrics):
4403         Multiple latin-1->utf-8 conversion fix.
4405         * Documentation/user/*tely: Update Emacs cookie to utf-8.
4407 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4409         * lily/tie.cc (get_configuration): also avoid dots for non-space
4410         situations.
4412 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4414         * Documentation/user/instrument-notation.itely: Bugfix.
4416 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4418         * tex/GNUmakefile: don't install texinfo.tex
4420         * tex/ : cleanup: remove unused files.
4422         * lily/general-scheme.cc: remove my_{isinf,isnan}.
4424         * flower/include/real.hh: using std::{isnan,isinf}
4425         
4426         * VERSION (PATCH_LEVEL): release 2.7.9
4428 2005-09-05  Graham Percival  <gpermus@gmail.com>
4430         * Documentation/user/ instrument-notation.itely,
4431         advanced-notation.itely: minor tweaks.
4433         * input/test/script-chart.ly: add item padding.
4435 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4437         * flower/offset.cc: use math.h iso. <cmath>
4439         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
4440         of IE users.
4442         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
4443         (widen-left-stencil-edges): new function. Fix alignment problems
4444         with LaTeX includegraphics.
4446         * lily/text-interface.cc (interpret_markup): use abort().
4448 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4450         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
4452         * lily/tie.cc (get_configuration): update bezier shape as we
4453         change Y positions.
4454         (get_configuration): don't move large ties if we're outside of the
4455         staff.
4457 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4459         * scm/define-markup-commands.scm (strut): swap X and Y dims.
4460         
4461 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4463         * .cvsignore: Add auto-generated configure files and then some.
4465 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4467         * scm/define-grobs.scm (DynamicLineSpanner): Add
4468         X-extent-callback.  Fixes hairpin-slur collision.
4470 2005-08-31  Graham Percival  <gpermus@gmail.com>
4472         * Documentation/user/advanced-notation.itely,
4473         basic-notation.itely: minor changes.
4475 2005-08-31  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4477         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
4478         \linebreak between each .eps file if \betweenLilyPondSystem is
4479         undefined. 
4481         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
4482         music): Document the \linebreak
4484         * Documentation/user/lilypond-book.itely,
4485         input/tutorial/lbook-latex-test.tex,
4486         Documentation/user/examples.itely: Remove \usepackage{graphics}
4488 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4490         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
4492         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
4493         compat bugfix.
4495         * scripts/lilypond-book.py (PREAMBLE_LY): define
4496         inside-lilypond-book
4497         (modify_preamble): new function. Insert \RequirePackage{graphics}
4498         when no {graphics found in preamble.  
4500 2005-08030  Graham Percival  <gpermus@gmail.com>
4502         * Documentation/user/basic-notation.itely, global.itely,
4503         tutorial.itely: misc small changes.
4505 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
4507         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
4508         VERSION.
4510 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4512         * lily/tie-column.cc (new_directions): put Tie down on center
4513         staff line. 
4515         * lily/script-interface.cc (before_line_breaking): use
4516         Grob::programming_error
4518         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
4520         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
4521         of splitext.
4523 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4525         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
4527 2005-08-29  Werner Lemberg  <wl@gnu.org>
4529         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
4530         the `*.scale.pfa' files to avoid warnings.
4532 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4534         * lily/tempo-performer.cc (process_music): idem.
4536         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
4538 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4540         * Documentation/user/advanced-notation.itely (Text markup): not a
4541         fragment.
4543         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
4545         * lily/staff-performer.cc (initialize): add tempo/name to
4546         audio_staff_
4549 2005-08-26  Graham Percival  <gpermus@gmail.com>
4551         * Documentation/user/advanced.itely: add text-only example.
4553         * Documentation/user/invoking.itely: add index entries for
4554         convert-ly.
4556         * Documentation/user/ tutorial.itely, basic-notation.itely:
4557         small fixes suggested by Steve D.  Thanks!
4559 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4561         * input/regression/markup-bidi-pango.ly: new file.
4563         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
4564         standard. Remove #ifdef. Remove memleak.
4565         (text_stencil): use text_dir to decide how to composite items.
4566         (text_stencil): determine uniform text direction for the entire
4567         string.
4569         * scripts/lilypond-book.py (output_name): remove
4570         latex_filter_cmd. Non-portable to non-Unix systems. 
4571         (get_latex_textwidth): use File.write and os.unlink() instead.
4573         * THANKS: add Vicente & Trevor.
4575         * lily/grob.cc (discretionary_processing): look up origin for
4576         programming_error too. 
4578         * input/regression/tie-broken.ly: new file.
4580         * lily/tie-column.cc (set_chord_outlines): set outline for line
4581         break case too.
4582         
4583 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4585         * lily/pango-font.cc (text_stencil): don't translate glyphs in
4586         unscaled transform, just translate stencils.
4588         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
4589         MIDI.
4591         * scm/define-markup-commands.scm (wordwrap-string): use
4592         text-direction
4593         (wordwrap-stencils): idem.
4594         (line): idem.
4595         (fill-line): idem.
4596         (wordwrap-stencils): translate last line to right for
4597         text-direction = LEFT.
4599         * scm/define-grob-properties.scm (all-user-grob-properties): add
4600         text-direction.
4602 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4604         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
4605         when copying a Lily_parser object.
4607 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4609         * scm/define-markup-commands.scm (null): add null markup.
4611 2005-08-25  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4613         * lily/item.cc: Add documentation of center-invisible
4615 2005-08-24  Graham Percival  <gpermus@gmail.com>
4617         * Documentation/user/advanced-notation.itely: add info about
4618         raising text.
4620         * Documentation/user/programming-interface.itely: fix example
4621         involving raised text.
4623 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4625         * lily/beam.cc (print): fix X start/end points of isolated
4626         beamlets.
4628         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
4630         * lily/multi-measure-rest.cc (set_text_rods): new function.
4632         * lily/vertical-align-engraver.cc (process_music): call
4633         Align_interface::set_axis(). This forces #'elements to be ordered,
4634         preventing random vertical reordering of staves.
4636         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
4637         add avoid-slur property. 
4639         * Documentation/user/basic-notation.itely (Measure repeats): add
4640         countPercentRepeats example.
4642         * Documentation/user/advanced-notation.itely (Other text markup
4643         issues): remove remark about normal-font.  We have \normal-text
4645         * input/regression/tie-chord.ly: add note about remaining bugs.
4647         * lily/tie.cc (print): try Tie_column::set_directions () if
4648         control-points not yet defined.
4650 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4652         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
4653         extent. This fixes braces falling out of the EPS bbox.
4655         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
4656         exactly to bbox.
4658 2005-08-23  Graham Percival  <gpermus@gmail.com>
4660         * {various} : change #up->#UP and #down->#DOWN.
4662         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
4664         * Documentation/user/advanced-notation.itely: clarify
4665         what objects handles text on a multimeasure rest.
4667 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4669         * VERSION (PATCH_LEVEL): release 2.7.7
4671 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4673         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
4675         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
4677         * input/regression/*.ly: formatting clean-up. Default layout
4678         before music expression.
4680         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
4681         romanze28-2 example.
4683         * scm/ps-to-png.scm: remove dir-re function.
4684         (make-ps-images): generate page names, instead of globbing them.
4685         This brings down LilyPond memory usage for make web by a factor
4686         10. (backportme?) 
4688         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
4689         don't use glob. With 3000 files, globbing
4690         Documentation/user/out-www/ can take too much time. (backportme?)
4691         
4692         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
4694         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
4696         * input/regression/tie-manual.ly: new file
4698         * input/regression/tie-chord.ly: update.
4700         * flower/include/interval.hh (struct Interval_t): 
4702         * lily/tie.cc (distance): new function 
4703         (height): new function.
4704         (init): new function
4705         (Tie_details): new struct.
4707         * lily/skyline.cc (skyline_height): new function.
4709         * lily/tie-column.cc (set_chord_outlines): new function.
4710         (new_directions): read tie-configuration
4712         * lily/skyline.cc: fix ASCII art.
4713         
4714 2005-08-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4716         * python/convertrules.py (string_or_scheme): Fix spelling error
4718 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4719         
4720         * lily/tie-column.cc (set_directions): set directions only once.
4721         (add_configuration): new function.
4723         * lily/tie.cc (set_control_points): new function
4725         * lily/tie-column.cc (new_directions): new function.
4727         * ly/music-functions-init.ly: set 'pitch property
4728         iso. trill-pitch. This makes \relative work with \pitchedTrill
4730         * lily/tie.cc (get_configuration): new function. Don't generate
4731         control points, rather, generate configuration.
4732         remove head-pair property.
4734         * lily/include/tie.hh (struct Tie_configuration): new struct.
4736 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
4738         * Documentation/topdocs/NEWS.tely: clarify.
4740 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4742         * lily/tie.cc: remove minimum-length
4744         * scm/define-grob-properties.scm (all-user-grob-properties):
4745         remove staffline-clearance, y-offset 
4747         * input/regression/tie-dots.ly (Module): remove.
4749         * lily/tie.cc (get_control_points): rewrite. Put short ties in
4750         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
4752         * input/regression/tie-single.ly: new file.
4754 2005-08-21  Graham Percival  <gpermus@gmail.com>
4756         * ly/bagpipe.ly: fix compile problem.
4758 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4760         * lily/midi-item.cc (name): new method.
4762         * lily/staff-performer.cc (acknowledge_audio_element): use
4763         signature of baseclass.
4765         * lily/engraver-group.cc (do_announces): move recursion call out
4766         of while loop. 
4768         * lily/drum-note-performer.cc (class Drum_note_performer): use
4769         process_music everywhere.
4771         * ly/performer-init.ly: add default children everywhere.
4773         * lily/paper-book.cc (output): call paper-book-write-midis
4774         directly: always write MIDI, even if no \layout {} block. 
4776 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4778         * VERSION (PACKAGE_NAME): release 2.7.6
4780         * lily/percent-repeat-engraver.cc (try_music): don't print warning
4781         about not being able to handle repeat.
4783 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
4785         * Documentation/user/examples.itely (Piano templates):
4786         * lily/include/performer-group.hh: Remove last traces of
4787         Performer_group_performer.  Fixes make web.
4789 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4791         * Documentation/user/examples.itely (Piano templates): change
4792         Engraver_group_engraver -> Engraver_group
4794         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
4795         scm_stand_in_procs is not weak_any.
4797         * lily/volta-bracket.cc (print): don't use strcmp().
4799         * lily/volta-engraver.cc (process_music): use
4800         Text_interface::is_markup() for setting the 'text property of the
4801         volta bracket.
4803         * input/mutopia/claop.py (accents): update syntax to 2.6
4805         * scm/define-context-properties.scm
4806         (all-user-translation-properties): add countPercentRepeats.
4808         * Documentation/user/basic-notation.itely (Measure repeats): add
4809         isolated percent example.
4811 2005-08-18  Graham Percival  <gpermus@gmail.com>
4813         * input/ {various}: change direction #1, #-1 to
4814         #up/#down or \fooUp, \fooDown.
4816         * Documentation/user/music-glossary.tely: #-1 to #down.
4818         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
4819         to #up, #-1 to #down.
4821 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4823         * lily/include/engraver-group.hh: rename.
4825         * lily/include/performer-group.hh: rename.
4827 2005-08-18  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4829         * input/test/script-abbreviations.ly: Removed some old LaTeX
4830         left overs.
4832 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4834         * python/convertrules.py (conv): inside-slur -> avoid-slur.
4835         Remove functions.  Remove if 1: constructs, reindent.
4837         * scripts/convert-ly.py (add_version): Add functions from
4838         convertrules.py
4840         * scm/script.scm (default-script-alist):
4841         s/priority/script-priority.  Fixes script stacking.  Backportme.
4842         (Fermata): Very low priority.
4844 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4846         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
4848         * input/regression/slur-script.ly: remove padding tweaks. Add
4849         comment strings.
4851         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
4852         time sigs and related stuff.
4854         * scm/define-grob-properties.scm (all-user-grob-properties): add
4855         @code{} tags to property description.
4857         * lily/include/line-group-group-engraver.hh (Module): remove file.
4859         * python/convertrules.py (conv): add rule for
4860         Engraver_group_engraver -> Engraver_group.
4862         * lily/include/performer-group-performer.hh: analogous.
4864         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
4866         * lily/context-def.cc (instantiate): check for
4867         Engraver_group_engraver and Performer_group_performer not
4868         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
4870 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
4872         * input/les-nereides.ly: Remove three fingering tweaks, update
4873         remaining one.
4875         * input/regression/slur-script-inside.ly: Update, fix doc.
4877         * scm/script.scm: Update to avoid-slur.
4879         * scm/define-grob-properties.scm (avoid-slur): New property.
4881         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
4882         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
4883         outside_slur_callback if avoid-slur != #'inside.
4885         * scm/define-grobs.scm (Fingering, Textscript): No
4886         inside-slur/outside-slur preference.
4887         (DynamicLineSpanner): Always outside slur.
4889         * input/regression/slur-script.ly: More tests.
4891 2005-08-17  Graham Percival  <gpermus@gmail.com>
4893         * Documentation/user/lilypond-book: fix notime entry.
4895         * Documentation/user/advanced-notation.itely: add info on
4896         getting an I rehearsal mark.
4898         * Documentation/user/putting.itely: reinstate "I", re-enforce
4899         the fact that \override numbers are the result of
4900         experimentation and personal taste.
4902         * Documentation/user/invoking.itely: update convert-ly bugs.
4904 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4906         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
4907         to #t.
4909         * lily/timing-translator.cc (initialize): don't initialize timing.
4911         * input/regression/stem-spacing.ly (Module): remove file.
4913         * input/regression/spacing-stick-out.ly: specify Score context for
4914         \override
4916         * input/regression/clefs.ly: remove spurious {}s 
4918 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
4920         * Documentation/topdocs/NEWS.tely,
4921         input/regression/repeat-percent-count.ly: clarify a bit.
4923 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4925         * input/no-notation/display-lily-tests.ly: delete
4926         display-lily-init call.
4928         * ly/music-functions-init.ly (displayLilyMusic): move
4929         display-lily-init call at top level, so that the user should not
4930         have to call it.
4932         * scm/define-music-display-methods.scm (note-name->lily-string):
4933         retrieve note names directly from pitchnames using new function `rassoc'.
4934         (display-lily-init): note names list construction removed.
4936 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4938         * THANKS: spello.
4940         * lily/lily-parser.cc (get_header): copy module, instead of
4941         returning it.
4943         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
4944         counters.
4946         * Documentation/user/basic-notation.itely (Measure repeats): add
4947         links to Counter grobs.
4949         * scm/define-grobs.scm (all-grob-descriptions): add
4950         DoublePercentRepeatCounter
4951         (all-grob-descriptions): add PercentRepeatCounter
4953         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
4954         also create counter grobs.
4956         * lily/separation-item.cc (extremal_break_aligned_grob): don't
4957         return grob without space-alist.
4959         * input/proportional.ly: tune staff-padding.
4961         * input/regression/repeat-percent-count.ly: new file. 
4963 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4965         * input/no-notation/display-lily-tests.ly: moved from
4966         input/regression/ to input/no-notation. Be sure to call
4967         `display-lily-init' before trying to use the display function.
4969 2005-08-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
4971         * scripts/lilypond-book.py (option_definitions): Don't localize
4972         the empty string. Fixes bug when --psfonts was used with
4973         non-English locale.
4975 2005-08-15  Graham Percival  <gpermus@gmail.com>
4977         * lily/tuplet-bracket.cc: simple build fix.
4979         * Documentation/user/putting.itely: use "we" instead of "I".
4981         * Documentation/user/basic-notation.itely: cautionary accidentals
4982         work with naturals, too.
4984 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4986         * lily/tuplet-bracket.cc (calc_position_and_height): add
4987         staff-padding support.
4989         * input/proportional.ly: set staff-padding.
4990         
4991         * VERSION (PATCH_LEVEL): release 2.7.5
4993         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
4994         fixes. Remove tweaks.
4996         * input/regression/tuplet-slope.ly: add a test case.
4998         * lily/tuplet-bracket.cc (calc_position_and_height): revert
4999         erroneous fix. Add spanner bounds to offset array with relative X
5000         positions.
5002         * ly/engraver-init.ly: add Rest_engraver only once.
5004         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
5005         (*parser*) lookup if (*parser*) != #f.
5007 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
5009         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
5010         Cut-and paste update.
5012         * input/regression/slur-script.ly: Add example of reverting
5013         inside-slur for fingering.
5015         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
5016         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
5018         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
5019         outside_slur_callback if inside-slur == #f (as opposed to unset).
5021 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
5023         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
5024         encoding files are already removed.
5026 2005-08-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5028         * Documentation/user/advanced-notation.itely (Instrument names):
5029         Document a workaround for instrument names that collide with
5030         system start braces/brackets.
5032 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5034         * lily/rest-collision.cc (do_shift): spello.
5036         * input/proportional.ly: use #'used property. Set break-overshoot
5037         property.
5039         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
5041         * lily/paper-column.cc: add #'used property
5043         * lily/mark-engraver.cc (stop_translation_timestep): set grob
5044         array for staves found.
5046         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
5047         array for stavesFound.
5049         * lily/staff-spacing.cc (next_note_correction): add fixed and
5050         space to calling convention. This fixes spacing of accidentals
5051         after barlines.
5053         * input/regression/spacing-accidental-stretch.ly: add barline -
5054         accidental case.
5056         * scm/framework-ps.scm (page-header): add version number to
5057         creator
5058         (eps-header): idem.
5060         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
5061         
5062 2005-08-13  Graham Percival  <gpermus@gmail.com>
5064         * Documentation/user/global.itely: add "fit as much as
5065         possible onto this page" example (Vertical spacing).
5067 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
5069         * *: Nitpick run.
5071         * buildscripts/fixcc.py: Fixes.
5073 2005-08-12  Graham Percival  <gpermus@gmail.com>
5075         * Documentation/user/advanced-notation.itely: add markup
5076         example to Text spanners.
5078 2005-08-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5080         * Documentation/user/basic-notation.itely (Ties): Add example of
5081         tying a tremolo to a chord. Thanks to Steve Doonan. 
5083         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
5084         properties and move tieMelismaBusy to the list of written
5085         properties. 
5087 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
5089         * po/TODO: suggest to use a dedicated tool like kbabel.
5091         * po/fi.po: update using kbabel.
5093 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5095         * *: Remove obsolete files.  Nitpick run.
5097         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
5099 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
5101         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
5102         too.
5104         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
5106         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
5107         whitespace as symbol separator.
5109         * lily/side-position-interface.cc: Add slur-padding.
5111         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
5112         quite a large fix, and it never worked in a stable release; so not
5113         really a regression.
5115         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
5116         Update cut and paste code from Slur_engraver.
5118         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
5119         Add.
5121         * scm/define-grobs.scm (DynamicLineSpanner): Add
5122         dynamic-line-spanner-interface.
5123         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
5125 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
5127         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
5128         to_boolean () so that non-set 'inside-slur means false.
5130         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
5131         slur has control-points.  Skip script without direction.  Always
5132         do_shift if script inside slur, even if slur not contained in
5133         script y-extent.  Increment k in loop.
5135 2005-08-11  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5137         * scm/define-markup-commands.scm: Improved regexp to search for
5138         EPS bounding boxes and corrected call to ly:warning.
5140 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5142         * Documentation/user/programming-interface.itely (Displaying music
5143         expressions): doc for \displayLilyMusic. Also some precisions in
5144         "Markup construction in Scheme"
5146 2005-08-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5148         * scm/define-markup-commands.scm (normal-text): Added 2 new
5149         markup commands, \normal-text and \medium (the latter thanks to
5150         Bruce Fairchild). 
5152 2005-08-08  Graham Percival  <gpermus@gmail.com>
5154         * Documentation/user/programming-interface.itely: fix @{ @}.
5156         * scm/define-markup-commands.scm: add linewidth info to
5157         \justify and \wordwrap, add "upright is the opposite of italic".
5159         * Documentation/user/advanced-notation.itely: shaped->shape,
5160         add (cons (markup "foo")) type of example to text markup,
5161         reword multi-measure rests section.
5163         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
5164         comment.  No actual code was touched.
5166         * Documentation/user/invoking.itely: add more info about
5167         \include.  Thanks, Bruce!
5169         * THANKS: add Bruce Fairchild, alphabetise.
5171         * Documentation/user/global.itely: document \score{\header{}}
5172         behavior.
5174         * Documentation/user/basic-notation.itely: reword multi-measure
5175         rest discussion in Rests.
5177 2005-08-08  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5179         * Documentation/user/programming-interface.itely (Markup
5180         construction in Scheme): Corrected example and tried to clarify
5181         the implicit \line in the table.
5183 2005-08-07  Graham Percival  <gpermus@gmail.com>
5185         * Documentation/user/instrument-notation.itely: moved
5186         some bagpipe info back into the bagpipe section.  Somehow
5187         it ended up in the "other vocal issues" section?!  :o_O
5189 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
5191         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
5192         directories, not paths).
5194 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5196         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
5197         plain emmentaler/aybabtu.  Backportme.
5199         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
5200         missing dir correction.
5202 2005-08-05  Graham Percival  <gperlist@shaw.ca>
5204         * scm/define-markup-commands: fix reversed justify/wordwrap
5205         doc strings.
5207 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
5209         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
5210         lily/gregorian-ligature-engaver.cc,
5211         lily/include/ligature-engraver.hh,
5212         lily/include/coherent-ligature-engraver.hh,
5213         lily/include/gregorian-ligature-engraver.hh: make these classes
5214         truely abstract.  This should fix some internal oddities such as
5215         duplicate as well as dead translator/property declarations, and
5216         also some dead code.
5218         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
5219         bugfix: avoid message "junking empty ligature" on ligature
5220         brackets by collecting dummy grobs.
5222 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5224         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
5226         * input/proportional.ly (staffKind): bugfix.
5227         (staffKind): updates by Trevor Baca.
5229         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
5230         default layout. 
5232         * lily/tuplet-bracket.cc (print): check whether edge-text is a
5233         pair.
5235         * lily/beam.cc (rest_collision_callback): call position_beam() if
5236         necessary.
5238         * VERSION: release 2.7.4
5240         * input/regression/spacing-uniform-stretching.ly: new file.
5242         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
5244         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
5245         contributor.
5247         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
5249         * input/proportional.ly: new file.
5251         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
5252         columns is empty
5254         * lily/tuplet-engraver.cc (finalize): new function. Reset right
5255         bounds to currentCommandColumn for the last step.
5256         (start_translation_timestep): if tupletFullLength is set, set
5257         bound to Paper Column
5259         * input/regression/tuplet-full-length.ly (indent): new file.
5261         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
5262         clique of loose columns, eg. a set of grace notes in strict
5263         notespacing.
5265         * input/regression/spacing-strict-spacing-grace.ly: new file.
5267         * lily/key-signature-interface.cc: change property name to
5268         alteration-alist
5270         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
5271         keyAccidentalOrder
5273         * python/convertrules.py (conv): keyAccidentalOrder ->
5274         keyAlterationOrder
5276         * lily/key-engraver.cc (create_key): always print a cancellation
5277         for going to C-major/A-minor, regardless of printKeyCancellation.
5278         (create_key): remove typecheck for visibility. This fixes key
5279         signature not being printed.
5281         * lily/spacing-determine-loose-columns.cc: new file.
5283         * input/regression/spacing-strict-notespacing.ly: new file.
5285         * lily/spacing-spanner.cc (generate_springs): rename from
5286         do_measure. 
5287         (generate_pair_spacing): new function.
5288         (init, generate_pair_spacing): set between-cols for floating
5289         nonmusical columns.
5291         * lily/spaceable-grob.cc (get_spring): new function. 
5293         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
5294         relative to the right edge of the prefatory matter.
5296         * lily/beam.cc (print): read break-overshoot to determine where to
5297         stop/start broken beams.
5299         * input/regression/spanner-break-overshoot.ly: new file.
5301 2005-08-04  Graham Percival  <gperlist@shaw.ca>
5303         * ly/bagpipe.ly: updated.
5305         * Documentat/user/instrument.itely: un-comment out bagpipe example.
5307 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5309         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
5310         support: now (de)crescs avoid slurs as well.
5312         * Documentation/user/instrument-notation.itely (Bagpipe example):
5313         comment out non-functioning bagpipe example.
5314         (Bagpipe definitions): idem.
5316         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
5317         (Top): add proportionalNotationDuration example.
5319         * input/regression/spacing-proportional.ly: new file.
5321         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
5322         synched to a beam.
5324         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
5325         fixes beams with a single stem (eg. beams across linebreaks.)
5327         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
5329         * flower/rational.cc (operator +): prevent overflow. This fixes
5330         heavily nested tuplets.
5332         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
5333         have to protect even those unlikely to be corrupted data members.  
5335 2005-08-04  Graham Percival  <gperlist@shaw.ca>
5337         * ly/bagpipe.ly: new file.
5339         * THANKS: added Sven Axelsson.
5341 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5343         * lily/spacing-engraver.cc (stop_translation_timestep): directly
5344         copy proportionalNotationDuration into currentMusicalColumn if
5345         set.
5347         * lily/spacing-spanner.cc (musical_column_spacing): if
5348         uniform-stretching set, fixed space is 0.0
5350         * input/regression/spacing-multi-tuplet.ly: show
5351         uniform-stretching property.
5353         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
5355         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
5356         (struct Spacing_options): new struct.
5358         * lily/spacing-basic.cc: new file.
5360         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
5361         delta_t doesn't have to be smaller than shortest_playing_len
5363 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5365         * input/regression/markup-arrows.ly:  new file.
5367         * lily/tuplet-bracket.cc: document new behavior.
5369         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
5370         with line breaks.
5372         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
5374         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
5375         default 
5377         * lily/tuplet-bracket.cc: add edge-text property.
5378         add break-overshoot.
5379         (print): read break-overshoot.
5380         (print): read edge-text, add stencils.
5382         * mf/feta-arrow.mf: new file.
5384         * mf/feta-generic.mf: add feta-arrow.
5386 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5388         * Documentation/user/lilypond-book.itely (An example of a
5389         musicological document): Added flag -o to dvips for people who use
5390         the default setting in teTeX where output is sent to the printer. 
5392         * Documentation/user/global.itely (Vertical spacing): Added
5393         reference to the Axis_group_engraver which documents the *Extent
5394         properties.
5396 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5398         * Documentation/user/basic-notation.itely (Tuplets): add note
5399         about nested tuplets. Remove BUG. 
5401         * input/regression/tuplet-nest.ly: update: remove manual hack. 
5403         * lily/tuplet-bracket.cc (print): use robust_scm2drul
5404         (print): manually call print() for subtuplets.
5405         (calc_position_and_height): add subtuplets to the
5406         support. Vertically shift outer tuplet 
5408         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
5409         remove-first for Lyrics, ChordNames and FiguredBass
5411         * scm/define-grob-properties.scm (all-internal-grob-properties):
5412         use ly:grob-array? iso. grob-list?
5413         (all-internal-grob-properties): add tuplets grob-array.
5415         * lily/tuplet-bracket.cc (add_tuplet_bracket):
5416         new function
5418 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5420         * input/test/time-signature-staff.ly: new file.
5422         * ly/declarations-init.ly (center): escape to Scheme. Fixes
5423         spurious #<Music FingerEvent> errors. Backportme.
5425 2005-08-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
5427         * Documentation/user/programming-interface.itely (Markup
5428         construction in Scheme): Corrected markup syntax in the
5429         translation table.
5431 2005-08-03  Graham Percival  <gperlist@shaw.ca>
5433         * Documentation/user/instrument-notation.itely: small update
5434         to bagpipe notation docs; thanks Sven!
5436         * Documentation/user/basic-notation.itely: add link about trills.
5438 2005-08-02  Graham Percival  <gperlist@shaw.ca>
5440         * Documentation/user/music-glossary: remove accidentally committed
5441         fink patch.
5443 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5445         * lily/lily-parser.cc (get_header): new function. Enable multiple
5446         \header definitions.
5448         * lily/parser.yy (lilypond_header_body): use get_header.
5450         * ly/init.ly:
5451         * scm/lily-library.scm (print-score-with-defaults): renamed
5452         $globalheader to $defaultheader
5453             
5454         * Documentation/user/global.itely (Creating titles): added short
5455         explanation that multiple headers are useable.
5458 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5460         * lily/module-scheme.cc (LY_DEFINE): new file. 
5462         * Documentation/user/advanced-notation.itely (Font selection): add
5463         doco for make-pango-font-tree.
5465 2005-07-31  Graham Percival  <gperlist@shaw.ca>
5467         * Documentation/user/music-glossary: more languages
5468         for tenuto.
5470         * Docuemntation/user/instrument-notation.itely: minor
5471         update for bagpipe example.
5473 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5475         * input/regression/+.ly (TODO): add some text.
5477 2005-07-28  Graham Percival  <gperlist@shaw.ca>
5479         * Documentation/user/invoking.itely: \score begins with music.
5481         * Documentation/user/ basic-notation.itely,
5482         instrument-notation.itely: minor changes.
5484         * Documentation/user/music-glossary.itely: began tenuto entry.
5486 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5488         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
5490         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
5492 2005-07-27  Graham Percival  <gperlist@shaw.ca>
5494         * Documentation/user/examples.itely: remove bagpipe template.
5496         * Documentation/user/instrument-notation.itely: add bagpipe
5497         section, maybe fix quotes in lyrics.  I hate text encoding.
5498         Clarify chord durations, more bagpipe stuff.
5500 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5502         * lily/accidental-engraver.cc: formatting fixes.
5504         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
5505         grob-array.
5507         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
5509         * lily/note-column.cc (arpeggio): new function.
5511         * lily/note-spacing.cc (get_spacing): also take arpeggio into
5512         account for spacing.
5514 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5516         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
5517         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
5518         mingw build.
5519         
5520 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5522         * scm/lily.scm (lilypond-all): clear anonymous modules after
5523         processing files.
5525 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5527         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
5528         SCM_I_CONSP
5530         * VERSION: 2.7.3 released
5532         * Documentation/user/invoking.itely (Invoking lilypond): add
5533         LILYPOND_GC_YIELD documentation.
5535         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
5536         scm_from_real / scm_make_real.
5538         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
5539         higher. This increases memory footprint, but provides overall
5540         speedup of 15 to 20%. 
5542         * lily/include/translator.hh (class Translator): remove
5543         PRECOMPUTED_VIRTUAL everywhere.
5545         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
5547         * lily/context.cc (now_mom): non-recursive now_mom() 
5549         * lily/include/profile.hh: new file.
5551         * lily/profile.cc: new file.
5553         * lily/grob.cc (Grob::Grob): look properties up directly.
5555         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
5556         lookups.
5558         * lily/include/box.hh (class Box): smob Box type.
5560         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
5562         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
5563         protect() and unprotect(). Use throughout.
5565 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5567         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
5569         * scm/define-music-display-methods.scm (markup->lily-string):
5570         markup elements can also be strings (without simple-markup
5571         appended)
5573 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5575         * lily/context.cc (where_defined): also assign value in
5576         where_defined().
5578         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
5579         (curve_coordinate): new function
5581         * lily/simple-spacer.cc (add_columns): only add rods between
5582         column i and begin/end if keep-inside-line is set (this repleces
5583         allow-outside-line as default)
5585 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5587         * lily/tuplet-engraver.cc (start_translation_timestep): only read
5588         tupletSpannerDuration if applicable.
5590         * lily/font-size-engraver.cc (process_music): read fontSize only
5591         once per timestep.
5593         * lily/engraver*cc: use throughout.
5594         
5595         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
5597         * lily/translator.cc (add_acknowledger): new file. Directly jump
5598         into an Engraver::acknowledge_xxx () method based on a grobs
5599         interface-list.
5601         * lily/include/translator-dispatch-list.hh (class
5602         Engraver_dispatch_list): new struct, new file.
5604         * scm/define-context-properties.scm
5605         (all-internal-translation-properties): remove acceptHashTable,
5606         acknowledgeHashTable
5608         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
5610         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
5611         change acknowledgeHashTable to C++ member. 
5613         * lily/rest-collision.cc (do_shift): use extract_grob_set().
5615 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5617         * scm/display-lily.scm: new file. Define a `display-lily-music'
5618         function, that displays the music expression given as an argument,
5619         using LilyPond notation.
5621         * scm/define-music-display-methods.scm: new file. Implementation
5622         of display methods for each music type.
5624         * ly/music-functions-init.ly (displayLilyMusic): new function for
5625         displaying music with LilyPond notation.
5627         * input/regression/display-lily-tests.ly: new regression test file
5628         for `display-lily-music'.
5630         * scm/markup.scm: remove obsolete debugging code (for printing
5631         markups with LilyPond notation).
5633         * scm/define-music-types.scm (music-name-to-property-table):
5634         * scm/clef.scm (supported-clefs): export, in order to be accessible
5635         from the (scm display-lily) module.
5637 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5639         * Documentation/topdocs/NEWS.tely (Top): Typo.
5641 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
5643         * Documentation/index.html.in, Documentation/texinfo.css,
5644           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
5645           Documentation/bibliography/index.html.in,
5646           Documentation/bibliography/html-long.bst: revert css-width patch,
5647           it does not work with IE6.
5649 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5651         * Documentation/texinfo.css: revert 760px hack. 
5653         * VERSION: release 2.7.2
5655         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
5657         * Documentation/user/basic-notation.itely (Barnumber check): add
5658         section.
5660         * scm/music-functions.scm (skip-to-last): new function. Show only
5661         last showLastLength part of the \score.
5663         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
5665         * python/convertrules.py (conv): add ly:x-moment rule
5667         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
5669         * Documentation/topdocs/NEWS.tely (Top): add new feature.
5671         * Documentation/user/instrument-notation.itely (Flexibility in
5672         alignment): options in subsections.
5674         * lily/lyric-engraver.cc (process_music): don't typeset text for _
5675         syllable text. Instead, assume that the previous lyric text is a
5676         melismated text.
5678         * Documentation/index.html.in: revert 800x600 change.
5680 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5682         * lily/main.cc (main): Remove invalid handle kludge.
5684         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
5685         (lambda): add gui define.
5687 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5689         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
5691         * Documentation/user/instrument-notation.itely (Musica ficta
5692         accidentals): add section Musica ficta accidentals
5694         * lily/accidental-engraver.cc (make_suggested_accidental): new
5695         function.
5696         (make_standard_accidental): move into new function.
5697         (create_accidental): new function.
5699         * scm/define-grobs.scm (all-grob-descriptions): new Grob
5700         AccidentalSuggestion
5702         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
5704         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
5705         undefined.
5707         * Documentation/user/global.itely (Page formatting): document
5708         horizontalshift.
5710         * scm/page-layout.scm (default-page-music-height):
5711         horizontalshift: new variable, shift all systems by
5712         horizontalshift to the right, to make space for instrument names.
5714         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
5716         * lily/input-scheme.cc (LY_DEFINE): take format commands.
5718 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5720         * lily/note-column.cc (dir): idem.
5722         * lily/spacing-spanner.cc (Module): idem.
5724         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
5726         * lily/include/paper-column.hh (class Paper_column): add
5727         non-static get_rank() member.
5729         * VERSION: release 2.7.1
5730         
5731         * scm/framework-null.scm: new file, used for benchmarking.
5733 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
5735         * Documentation/topdocs/INSTALL.texi, configure.in: fix
5736         version dependencies for fontforge and gs.
5738         * Documentation/index.html.in, Documentation/texinfo.css,
5739         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
5740         Documentation/bibliography/index.html.in, 
5741         Documentation/bibliography/html-long.bst: optimize width of
5742         html for a 800x600 screen (width:760), increases printability
5743         when 'fit to page' is not set and readability in wide screens.
5745         * stepmake/bin/add-html-footer.py: add missing </p>.
5747 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5749         * scm/define-markup-commands.scm (beam): use polygon in beam
5750         command.
5752         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
5753         all acknowledged grobs, and do potentially expensive merge and
5754         write in one go.
5756         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
5758         * configure.in (reloc_b): add --enable-static-gxx to statically
5759         link to libstdc++
5761         * lily/GNUmakefile (static-gxx-libs): new target
5762         static-gxx-libs. Create symlink to libstdc++.a
5764         * lily/new-lyric-combine-music-iterator.cc: rename to
5765         Lyric_combine_music_iterator
5767         * lily/lyric-combine-music-iterator.cc
5768         (Old_lyric_combine_music_iterator): rename to
5769         Old_lyric_combine_music_iterator
5771         * lily/*-engraver.cc (various): remove double use of
5772         PRECOMPUTED_VIRTUAL function: only use
5773         start_translation_timestep() and stop_translation_timestep(), not
5774         both.
5776         * lily/break-substitution.cc (fast_substitute_grob_array): do
5777         fast_substitute_grob_array for all unordered grob_arrays.
5778         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
5779         (substitute_grob_array): optimize.
5781         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
5783         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
5785         * lily/parser.yy: revert $globalheader patch.
5786         
5787         * lily/include/translator.icc
5788         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
5789         Translator methods, without _static helper.
5791         * lily/grob-smob.cc (derived_mark): rename from
5792         do_derived_mark(). Return void.
5794         * scm/define-context-properties.scm
5795         (all-internal-translation-properties): remove tweakCount/tweakRank.
5797         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
5798         predefined break-visibilities.
5800         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
5801         booleans for break-visibility.
5803         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
5805         * python/convertrules.py (conv): rule for Timing_translator. 
5807         * lily/include/translator.icc: new file. 
5809         * lily/paper-column-engraver.cc (process_music): new
5810         file. Separate Paper_column factory from Score_engraver.
5812         * lily/vertically-spaced-context-engraver.cc: administer
5813         spaceable-staves property of System.
5815         * lily/translator-group-ctors.cc: new file.
5817         * lily/context-property.cc (make_grob_from_properties): construct
5818         the right Grob class programmatically, looking at the class entry
5819         for the meta property.
5821         * lily/break-align-engraver.cc (stop_translation_timestep): call
5822         Break_align_interface::add_element() directly.
5824         * lily/context.cc (measure_position): measure_position() is now a
5825         normal function.
5827         * lily/include/translator.hh (class Translator): rename
5828         process_acknowledged_grobs() to process_acknowledged() and move to
5829         Translator.
5831         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
5832         field for each grob description.
5834         * lily/include/translator-group.hh (class Translator_group):
5835         change to base class. Separate class from Translator. This gets
5836         rid of virtual inheritance for Engravers/Performers.
5838         * lily/staff-performer.cc (class Staff_performer): derive
5839         Staff_performer from Performer, not Performer_group_performer 
5841         * Lily/translator-group.cc (precomputed_recurse_over_translators):
5842         new function.
5843         (precompute_method_bindings): new function. Precompute lists of
5844         Translators, so we only call methods (process_music,
5845         start_translation_timestep, etc.) for Translators needing
5846         it. Also: dispose of pointer-to-member-function calls.
5848         * lily/engraver-group-engraver.cc: remove engraver_each,
5849         recurse_down_engravers ()
5851         * lily/note-head.cc (internal_print): only call
5852         glyph-name-procedure if style != default. 
5854 2005-07-16  Graham Percival  <gperlist@shaw.ca>
5856         * ly/titling-init.ly: add printallheaders option.
5858         * Documentation/user/global.itely: document printallheaders.
5860 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5862         * lily/system.cc (do_derived_mark): don't mark from object_alist_
5863         anymore, but do it centrally.  
5865         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5866         hammer hack.
5868         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
5870         * scm/output-lib.scm: remove hammer-print-function.
5872         * lily/include/pointer-group-interface.hh (extract_grob_set): new
5873         macro. Declare a Link_array<Grob> and fill it from a grob.
5874         (extract_item_set): idem for item.
5876         * lily/break-substitution.cc: add header.
5877         (fast_substitute_grob_array): rewrite for Grob_arrays.
5878         (substitute_grob_array): idem.
5880         * lily/group-interface.cc (add_thing): remove file.
5882         * flower/include/parray.hh (class Link_array): slice() is const.
5884         * lily/include/grob-array.hh: new file.
5886         * lily/grob-array.cc (spanner): new file.
5888         * lily/beam-quanting.cc (fill): read details property from beam.
5890         * lily/beam.cc: support details property.
5892         * total speedups below: approx 10%.
5894         * lily/include/beam.hh: new struct, softcode beam quanting parameters
5896         * lily/include/grob.hh (class Grob): add interfaces_ member.
5898         * lily/bezier.cc (init_polynomial_cache): new function: cache
5899         binom(3,j) t^j (1-t)^{3-j}
5900         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
5902         * lily/*.cc: substitution throughout.
5904         * lily/grob-property.cc (internal_get_object): new routine.
5905         (internal_set_object): idem. Store grob refrences in separate
5906         alist. This saves processing time, since properties aren't
5907         break-substituted, and the per grob namespace is smaller, both for
5908         grobs and non-grob properties.
5910         * scm/define-grob-properties.scm (all-internal-grob-properties):
5911         remove center-element.
5913         * lily/grob.cc: remove tweak-count, tweak-rank.
5915 2005-07-15  Graham Percival  <gperlist@shaw.ca>
5917         * Documentation/user/lilypond-book.itely: fixes example.
5919 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5921         * Documentation/user/global.itely (Creating titles):    
5922         * Documentation/user/examples.itely (All headers): change the
5923         place of \header in \score blocks (after music block) to make
5924         examples compile (cf. changes on parser.yy on 2005-07-10)
5926 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5928         * python/convertrules.py: add exc -> ecc rule.
5930         * scripts/convert-ly.py: add location of convertrules.py
5931         in a comment.
5933         * Documentation/user/changing-defaults.itely: fix language.
5935 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5937         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
5939 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5941         * scm/output-socket.scm (grob-bbox): don't use inf? 
5943         * flower/include/rational.hh: add operator bool() 
5945         * scm/define-music-types.scm (music-descriptions): remove
5946         internal-class-name properties.
5948         * lily/include/event.hh: remove file.
5950         * lily/include/music-constructor.hh: remove file.
5952         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
5953         in 'types property.
5955         * lily/music.cc (duration_length_callback): new function.
5957         * lily/event.cc: remove file.
5959         * lily/music-constructor.cc: remove file.
5961         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
5963         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
5964         (get_context_key): idem.
5966         * scm/lily.scm (lambda): new option object-keys (default to #f)
5968         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
5970         * scm/output-gnome.scm: remove beam routine.
5972         * scm/output-ps.scm (scm): idem.
5974         * scm/output-svg.scm: remove beam.
5976         * ps/music-drawing-routines.ps: remove draw_beam.
5978         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
5980         * flower/include/guile-compatibility.hh (scm_from_locale_string):
5981         add scm_from_locale_string compatibility glue. 
5983 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
5985         * scripts/lilypond-book.py: Prevent occuring error when
5986         'lilypond-book --output=foo/ somefile.ly' is executed multiple
5987         times and target file shoud be overwritten.  (Error message said
5988         'input file and output file is same'.)
5990 2005-07-13  Graham Percival  <gperlist@shaw.ca>
5992         * input/regression/slur-extreme.ly,
5993         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
5994         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
5995         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
5996         "excentricity" to "eccentricity".
5998         * Documentation/user/converters.itely: fix URL for Noteedit and
5999         Rosegarden.
6001         * THANKS: added Yoshinobu Ishizaki.
6003 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6005         * scm/define-markup-commands.scm (justify-field): add. 
6007         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
6009 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6011         * lily/lookup.cc (filled_box): express filled_box with
6012         round_filled_box
6014         * scm/midi.scm (paper-book-write-midis): new function. Write all
6015         performances in numbered MIDI files.
6017         * lily/performance-scheme.cc (LY_DEFINE): new file.
6018         (LY_DEFINE): new function ly:performance-write.
6020         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
6021         new function.
6022         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
6024         * scm/framework-*.scm: use port arguments throughout.
6026         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
6028         * lily/paper-outputter.cc (Paper_outputter): take port argument.
6030         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
6032         * scm/framework-texstr.scm (output-framework): 
6034         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
6036         * scm/output-lib.scm (tablature-stem-attachment-function):
6037         tablature stem attachment fix. 
6039 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6041         * lily/bezier.cc: hardcode binomial coefficients of order 3.
6043         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
6045         * scm/define-music-types.scm (music-descriptions): don't use
6046         Music_wrapper type.
6048         * lily/paper-column.cc (print): print moment too.
6050         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
6051         remove compatibility cruft.
6053         * lily/parser.yy (score_body): \score can only begin with Music. 
6055         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
6056         make-score. Take music argument only. Move parser interaction to
6057         Scheme.
6059         * scm/lily-library.scm (scorify-music): new function.
6061         * python/lilylib.py (datadir): remove 2.1 compat kludge.
6062         (datadir): remove resource import.
6063         (print_environment): remove get_bbox()
6064         (cp_to_dir): remove pre 1.5.2 compat glue.
6066 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6068         * lily/include/simple-spacer.hh (Module): idem.
6070         * lily/include/spring.hh (struct Spring): store inverse
6071         strength. This prevents division by zero.
6073         * VERSION: release 2.7.0
6074         
6075         * lily/include/music.hh (class Music): remove Music::duration_log()
6077         * lily/stem-engraver.cc (make_stem): take duration log from event.
6079         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
6081 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6083         * scm/lily.scm (ly:load): load autochange.scm
6085         * Documentation/user/tutorial.itely (Running LilyPond for the
6086         first time): remove reference to DVI/TeX
6088         * scm/define-markup-commands.scm (text): add \text markup command.
6090         * configure.in (reloc_b): bump requirement to Python 2.2.
6092         * lily/include/dots.hh (class Dots): make has_interface() static.
6094         * python/convertrules.py (conv): add rule for ly:grob-default-font
6096         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
6097         alphabetical order.
6099         * input/regression/trill-spanner-pitched.ly: new file.
6101         * lily/font-interface-scheme.cc (LY_DEFINE): function
6102         ly:grob-default-font (changed from get-default-font).
6104         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
6106         * lily/note-head.cc (internal_print): if style is not a symbol,
6107         set style to 'default. 
6108         (internal_print): no style suffix if glyph-name-procedure not
6109         set. Default to quarter head.
6111         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
6113         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
6115         * ly/music-functions-init.ly: \pitchedTrill
6117         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
6119         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
6121         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
6123         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
6125         * po/fr.po: update
6127         * po/de.po: update.
6129 2005-07-06  Graham Percival  <gperlist@shaw.ca>
6131         * Documentation/user/changing-defaults.itely: add link
6132         to grob-iterface.
6134         * Documentation/user/advanced-notation.itely: add material
6135         to Setting automatic beam behaviour.  Thanks, Joe!
6137         * Documentation/user/lilypond.itely: change encoding to utf-8.
6139 2005-07-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6141         * Documentation/user/advanced-notation.itely (Setting automatic
6142         beam behavior): Correct the documentation of
6143         revert-auto-beam-setting (backportme)
6145 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6147         * lily/ly-module.cc (ly_make_anonymous_module): define
6148         %module-public-interface of module. 
6150         * lily/lily-parser.cc (print_smob): allow printing of parser smob
6151         without lexer.
6153 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6155         * input/regression/fret-diagrams.ly: stretch example.
6157 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
6159         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
6160         Fodor).
6162 2005-06-30  Graham Percival  <gperlist@shaw.ca>
6164         * Documentation/topdocs/AUTHORS.texi: update personal web address.
6166         * Documentation/user/examples.itely, lilypond-book.itely:
6167         change \RequirePackage to \usepackage.
6169         * Documentation/user/global.itely: document copyright and tagline.
6171 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6173         * Documentation/user/basic-notation.itely (Transpose): remove link
6174         to nonexistent UntransposableMusic.
6176         * scm/output-svg.scm: remove old definitions.
6178         * scripts/lilypond-book.py (do_file): search for kpsewhich before
6179         invoking.
6181         * python/lilylib.py (search_exe_path): new function.
6183 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6185         * python/lilylib.py (mkdir_p): remove setup_environment()
6186         (backportme)
6188         * buildscripts/mutopia-index.py (headertext): trim text.
6190         * Documentation/topdocs/NEWS.tely (Top): refresh.
6192         * scm/define-markup-commands.scm (wordwrap-string): new function:
6193         split string in paras and words.
6194         (wordwrap-markups): new function.
6195         (wordwrap-stencils): new function. 
6196         (justify): use it.
6197         (wordwrap): use it.
6198         (wordwrap-string): use it
6199         (justify-string): use it.
6201         * scm/lily-library.scm (regexp-split): new function.
6203         * scm/define-markup-commands.scm: remove encoded-simple. 
6204         remove font-markup.
6205         (fontsize): remove old version  of fontsize.
6206         (wordwrap): new markup function. Wrap into paragraphs.
6208         * VERSION: Branch lilypond_2_6
6209         (MINOR_VERSION): go to 2.7.0
6211 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6213         * po/zh_TW.po: update from translation project.
6215 2005-06-28  Graham Percival  <gperlist@shaw.ca>
6217         * scm/midi.scm: compile fix.
6219 2005-06-28  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6221         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
6222         patch. Now, the tempfile module is loaded too, not only used.
6224 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
6226         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
6227         0.05 - 1.00 to 0.25 - 1.00
6229         * scm/midi.scm: moved the default-instrument-equalizer procedure
6230         to just under the insturment-equalizer-alist it takes as an
6231         argument.
6233 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6235         * Documentation/user/advanced-notation.itely (Font selection):
6236         remove CMR note.
6238         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
6240 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6242         * THANKS: Add UTF-8 marker.
6244         * Documentation/user/point-and-click.itely (http): Update: use
6245         lilypond-invoke-editor.  Fix: instruct to use user.js.
6247 2005-06-27  Graham Percival  <gperlist@shaw.ca>
6249         * ly/titling-init.ly: implements printpagenumber, increases
6250         space between dedication and title (to avoid collisions with
6251         "g" and "q" in dedication), and nicer logic about copyright
6252         and instrument fields being printed on the first page.
6253         Thanks Vincent!
6255         * Documentation/user/global.itely: document printpagenumber.
6257 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6259         * Documentation/topdocs/NEWS.tely: Update to 2.6.
6261 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6263         * THANKS: update to 2.6
6265         * VERSION: 2.6.0 released.
6267 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6269         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
6270         rule, errorneously removed probably because of misleading comment.
6272 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6274         * python/lilylib.py (datadir): py2exe comments.
6276         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
6278         * configure.in (reloc_b): make fontconfig REQUIRED.
6280 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
6282         * po/fi.po: add latest translations.
6284 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6286         * ChangeLog: recode utf-8
6288         * Documentation/pictures/lilypond.xpm (Module): edited photo as
6289         logo.
6291         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
6293         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
6295         * python/convertrules.py (do_conversion): don't print program_name
6296         from within a module
6298         * configure.in (reloc_b): bump fontforge requirement to 20050624.
6300         * python/convertrules.py (conv): add 2.6.0 dummy rule.
6302 2005-06-23  Graham Percival  <gperlist@shaw.ca>
6304         * Documentation/user/lilypond-book.itely,
6305         Documentation/user/examples.itely: add \RequirePackage{graphics}.
6307         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
6308         fixes baseline-skip.  Thanks Vincent!
6310         * Documentation/user/advanced-notation.itely, global.itely:
6311         moved "Selecting font sizes" to global, since it deals with
6312         notation font size, not text fonts.
6314 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6316         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
6317         to fonts.
6319 2005-06-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6321         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
6322         workaround since /dev/stdin doesn't work on Cygwin. Using a
6323         temporary file in the current directory since latex doesn't
6324         understand the path name to the default TMP in Cygwin (at least on
6325         win XP).
6326         
6327         * Documentation/user/global.itely (Creating titles): Correct
6328         misprint in example. Thanks to Rob Vlasaty.
6330 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6332         * VERSION (PATCH_LEVEL): release 2.5.32
6334         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
6335         variable in lily module
6337         * scm/framework-ps.scm (output-classic-framework): error message
6338         regarding the classic framework.
6340         * Documentation/user/henle-flat-gray.png (Module): new file.
6342         * Documentation/user/baer-flat-gray.png (Module): new file.
6344         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
6345         whiteout for markups.
6347         * buildscripts/substitute-encoding.py (note_glyph): include _ in
6348         regex too. This fixes change clef appearance in PDF. 
6350         * ttftool/include/*: remove.
6352         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
6354         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
6356         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
6358         * ttftool/*: remove ttftool subdirectory.
6360         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
6362         * lily/ttf.cc (print_header): new file. Convert to type42, using
6363         FreeType to parse the TTF. 
6365         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
6366         and post table may differ. Pass around post_nglyphs as well.
6368 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6370         * ly/music-functions-init.ly (musicMap): new music function
6371         musicMap. 
6372         
6373 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6375         * make/mutopia-rules.make: anti-alias-factor = 2
6377         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
6378         page switch.
6380         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
6381         anti-alias-factor for lilypond-book runs.
6383         * scm/ps-to-png.scm (scale-down-image): new function.
6384         (my-system): new function.
6385         (make-ps-images): blow up GS resolution by anti-alias-factor,
6386         scale down image by anti-alias-factor.  This improves appearance
6387         of bitmaps
6388         (make-ps-images): remove showpage. Fixes spurious empty png at
6389         end.
6391         * scm/framework-ps.scm (write-preamble): downcase filename before
6392         string-matching. Should fix .TTF files (as opposed to ttf files)  
6394         * Documentation/user/tutorial.itely (Running LilyPond for the
6395         first time): separate subsections for windows, macos and unix.  
6397         * Documentation/user/invoking.itely (Updating files with
6398         convert-ly): add MacOS X note.
6400 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6402         * Documentation/user/introduction.itely (Engraving): don't include
6403         file optical-spacing, add directly.
6405         * lily/paper-outputter.cc (file): open file in binary mode. This
6406         fixes OTF embedding on windows.
6408 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6410         * scm/framework-ps.scm (write-preamble): remove debugging output.
6412         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
6414         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
6415         outdir.
6416         (install-fc-cache): install font cache in installation directories.
6418 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
6420         * scm/editor.scm (editor-command-template-alist): Use char iso
6421         column, except for Emacs.
6422         (get-editor-command): Substitute char too (Bertalan Fodor).
6424 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6426         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
6427         quoted ~s.  This should fix PNG output on Windows; single quotes
6428         are regular characters on Windows.
6430 2005-06-16  Graham Percival  <gperlist@shaw.ca>
6432         * Documentation/user/basic-notation.itely: include ChoirStaff
6433         in System start delimiters.
6435         * Documentation/user/putting.itely: new doc section on
6436         fixing overlapping notation.
6438 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6440         * Documentation/user/global.itely (Paper size): \paper is in
6441         \book, not \score.
6443         * make/mutopia-rules.make: -ddelete-intermediate-files
6445         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
6447 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
6449         * ChangeLog: Recode utf-8.
6451         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
6452         datadir with .py modules.
6454 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
6456         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
6458 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6460         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
6461         
6462         * scm/framework-ps.scm (write-preamble): remove status check.
6464         * Documentation/user/invoking.itely (Updating files with
6465         convert-ly): remove -o option.
6467         * VERSION (PACKAGE_NAME): release 2.5.31
6469         * scm/framework-ps.scm (write-preamble): use ly:system.
6470         (write-preamble): verbosity.
6472         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
6474         * python/convertrules.py: new file. Store conversion rules
6475         separately.
6477 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6479         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
6481 2005-06-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6483         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
6484         \musicDisplay 
6486         * Documentation/user/instrument-notation.itely (More stanzas): Add
6487         reference to StanzaNumber.
6489 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6491         * THANKS: separate section for website translators.
6493 2005-06-14  Graham Percival  <gperlist@shaw.ca>
6495         * Documentation/topdocs/INSTALL.texi: update vim info;
6496         thanks Simon Bailey!
6498         * Documentation/user/advanced-notation.itely: included
6499         color names.
6501         * Documentation/user/advanced-notation.itely,
6502         Documentation/usr/notation-appendices.itely: moved
6503         color names into an appendix.
6505 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6506         
6507         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
6509         * scm/lily.scm (lambda): initialize program options from here.
6511         * scm/framework-*.scm: add header info.
6513         * lily/main.cc (parse_argv): only set output format to pdf if no
6514         other format specified.
6516         * scm/backend-library.scm (postprocess-output): process
6517         'delete-intermediate-files after running convert-to-*. This fixes
6518         PNG generation when 'delete-intermediate-files is set.
6519         
6520 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6522         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
6523         links on website. 
6525 2005-06-13  Graham Percival  <gperlist@shaw.ca>
6527         * Documentation/topdocs/INSTALL.texi,
6528         Documentation/user/lilypond-book.itely: typos.
6530 2005-06-12  Pal Benko  <benkop@freestart.hu>
6532         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
6533         added between program name and switch; -b changed to -f not
6534         to generate pdf
6536 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6538         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
6539         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
6541         * input/sakura-sakura.ly: add \midi.
6543         * buildscripts/mutopia-index.py (find): use /usr/bin/find
6544         iso. python find. 
6546         * ttftool/test.c (main): cosmetics.
6548         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
6550         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
6551         create a ttf2ps binary.
6553         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
6555         * scm/backend-library.scm (postscript->png): set rename-page-1 to
6556         true.
6558 2005-06-11  Graham Percival <gperlist@shaw.ca>
6560         * Documentation/user/lilypond-book.itely: add warning about
6561         the font warnings in dvips.
6563 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6565         * THANKS: typo
6567         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
6569         * GNUmakefile.in: remove links for .map, .enc
6570         don't fail if out/ doesn't exist yet.
6572 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6574         * ttftool/util.c (surely_read): return nbytes
6576         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
6578         * VERSION (PACKAGE_NAME): release 2.5.30
6580         * flower/string-convert.cc (precision_string): >? fix.
6582         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
6583         (make-ps-images): add verbose -q too.
6585         * lily/default-actions.cc (Module): new file. default
6586         {book,score}-print functions.
6588         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
6589         pass results via parseStringResult, lookup via ly:parser-lookup.  
6591         * lily/lily-parser.cc (Lily_parser): only clone lexer in
6592         constructors.
6593         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
6594         (parse_string): idem.
6596         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
6598         * lily/main.cc (main_with_guile): copy be_verbose_global into
6599         ly_set_option()
6601 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
6603         * scm/backend-library.scm (postscript->pdf):
6604         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
6605         verbose mode.  Search for several names of gs executable.
6607 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6609         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
6610         directly. This fixes a massive memory leak, provided you use CVS
6611         GUILE.
6613 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
6615         * ly/property-init.ly: Added tieDashed.
6617         * THANKS: Added some bughunters for 2.5.
6619 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6621         * lily/program-option.cc: add debug-gc option.
6623         * lily/include/lily-guile-macros.hh: don't protect exported module
6624         objects.
6626         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
6628         * scm/backend-library.scm (postscript->pdf): use
6629         delete-intermediate-files iso. running-from-gui? 
6631         * ttftool/util.c (surely_read): robustness. Allow read() to return
6632         less bytes than requested, as per posix standards.
6634         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
6635         program option.
6637         * ttftool/include/ttftool.h ("C"): rename verbosity to
6638         ttf_verbosity. Add to public interface.
6640         * scm/music-functions.scm (unfold-repeats): remove debugging display.
6642         * lily/program-option.cc: rename from scm-option.cc
6644         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
6645         (get_help_string): Print pretty help string.
6647         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
6648         to snippet preamble.
6650         * lily/scm-option.cc: remove command-line-settings option. Fold
6651         all command-line options plus default settings in a generic
6652         interface. 
6654         * flower/getopt-long.cc (table_string): indent 2nd lines of help
6655         texts too.
6657 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
6659         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
6660         or EXT_ components non-empty.
6662 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6664         * scm/lily.scm (running-from-gui?): Export.
6666         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
6667         output in .ly source directory.
6669 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6671         * ttftool/util.c (surely_lseek): more verbosity.
6673         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
6674         compile.
6676         * lily/parser.yy (Repeated_music): remove >? 
6678         * scm/backend-library.scm (postscript->pdf): Support for
6679         -dgs-font-load=1
6681         * scm/framework-ps.scm (write-preamble): make font loading
6682         switchable to GS via --define-default gs-font-load=1
6684 2005-06-09  Graham Percival  <gperlist@shaw.ca>
6686         * Documentation/user/global.itely: added \layout docs.
6688 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6690         * lily/lily-parser-scheme.cc: add unistd.h
6692 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6694         * scm/editor.scm: add char argument.
6696         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
6698         * ttftool/util.c (syserror): use errno for better error reporting.
6700         * lily/source-file.cc (get_counts): new function. Calc column,
6701         line and char count in one go.
6703         * lily/binary-source-file.cc (quote_input): rename to quote_input
6705         * lily/input.cc (set): new function.
6707 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
6709         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
6710         directory part of file name to search directory.
6712         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
6713         search path and chdir to DIR if --outname=DIR used.
6715         * lily/main.cc (prepend_env_path): Bugfix: Check directory
6716         existence before appending original path.
6718 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6720         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
6721         file" massage.
6723         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
6724         texinfo.tex is always used.
6725         
6726 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6728         * flower/include/axis.hh: rename from axes.hh
6730         * lily/include/text-interface.hh (Module): rename from text-item.hh
6732         * VERSION (PATCH_LEVEL): release 2.5.29
6734         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
6736         * scm/framework-ps.scm (font-file-as-ps-string): new function.
6737         (handle-macfont): new function. Call fondu for Native mac fonts.
6739         * scm/define-markup-commands.scm (fill-line): handle text-widths =
6740         '() case.
6742 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6744         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
6745         multi-page.  Fix .eps regular expression.
6747 2005-06-07  Graham Percival  <gperlist@shaw.ca>
6749         * Documentation/user/putting.itely: add info on modifying templates.
6751         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
6752         misc small changes.
6754 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6756         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
6758         * scripts/lilypond-ps2png.scm
6760         * VERSION (PACKAGE_NAME): release 2.5.28
6762 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
6764         * lily/main.cc (prepend_env_path): Do not append /, that does not
6765         work.  Localedir lives in datadir, not in prefix.
6767         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
6768         hack for windows.
6770         * flower/include/file-cookie.hh: Compile fix.
6772 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6774         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
6776         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
6777         system primitives.
6778         (gulp-port): using read-string!/partial. We don't want to read an
6779         entire PS file  (GUILE 1.6 limits strings to 16M) 
6781         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
6782         properties. Add font-interface. 
6784         * scm/define-grob-properties.scm (all-user-grob-properties):
6785         remove old bracket properties.
6787         * scm/x11-color.scm: reformat. 
6789         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
6790         LedgerLineSpanner if new StaffSymbol is found. 
6792         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
6793         staff-symbol for finishing staff. 
6795         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
6797         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
6798         change black to currentColor everywhere. This fixes color support
6799         in SVG.
6801 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
6803         * input/regression/fret-diagrams.ly: new file to test fret diagram
6804         capability
6806         * scm/output-tex.scm: remove white-dot and white-text
6808         * scm/output-ps.scm: remove white-dot and white-text
6810         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
6811         using ly:stencil-in-color instead
6812         (draw-dots) : remove call to white-dot
6814 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6816         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
6817         support.
6819         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
6821         * flower/include/file-cookie.hh: new file. lily_cookie extension 
6823         * flower/file-cookie.cc: new file. lily_cookie extension.
6824         
6825 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
6827         * scm/editor.scm (editor-command-template-alist): Add syn
6828         editor (Jaap [de Vos]).
6830 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
6832         * scripts/lilypond-ps2png.scm:
6833         * scm/ps-to-png.scm: New file.
6835         * scm/backend-library.scm (postscript->png): Use it.
6837         * scripts/lilypond-ps-to-png.py: Remove file.
6839         * python/lilylib.py (get_bbox, make_ps_images): Remove.
6841 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6843         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
6845         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
6846         start on grace moment. Fixes autobeam-grace.ly.
6848         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
6849         process anything unless we're at the end of a pending beam. Fixes
6850         syncopated 8ths beamed across a beat.
6852 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6854         * scm/editor.scm (editor-command-template-alist): Start emacs if
6855         emacslient fails.
6857         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
6859         * flower/file-path.cc (is_file, is_dir): Export.
6861         * lily/main.cc (prepend_env_path, set_env_file): Use them.
6863 2005-06-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6865         * lily/easy-notation.cc: Added include cctype to correct
6866         compilation error.
6868 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6870         * scm/backend-library.scm (postscript->pdf): set resolution to
6871         1200, so bitmap fonts aren't that ugly. 
6873         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
6875         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
6876         parent if we have a notehead. Fixes incorrect offsets when
6877         Paper_column is very wide in the X direction.
6879         * input/regression/font-family-override.ly (Module): new file.
6881         * scm/font.scm (make-pango-font-tree): new function.
6883         * lily/beam.cc (before_line_breaking): remove warning about less
6884         than 2 visible stems. We still get a warning when there is only
6885         one stem.
6887 2005-06-01  Werner Lemberg  <wl@gnu.org>
6889         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
6890         correctly.
6892 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6894         * lily/slur-scoring.cc (generate_avoid_offsets): new
6895         function. Generate avoid offsets once per slur.
6897         * lily/slur.cc (add_extra_encompass): add dependency to
6898         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
6900         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
6901         too. Fixes inf error with added bass notes.
6903         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
6904         argument anymore.
6906         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
6908         * input/tutorial/lbook-latex-test.tex: add line length test.
6910         * scripts/lilypond-book.py (set_default_options): new
6911         function. Call this before dissecting snippets, so linewidth
6912         settings reach the snippets.
6914 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6916         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
6918 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6920         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
6922 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6924         * stepmake/aclocal.m4: More autopackage friendliness.
6926 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6928         * Documentation/index.html.in: remove link to LSR.
6930         * Documentation/user/global.itely: remove duplicate
6931         "dedication" \header{} section.
6933 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6935         * VERSION (PACKAGE_NAME): release 2.5.27.
6937         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
6938         too. Plugs memory leak.
6940         * make/lilypond.fedora.spec.in (Group): remove
6941         lilypond-pdfpc-helper.
6943         * scripts/GNUmakefile (SEXECUTABLES): remove
6944         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
6946         * scm/font.scm (make-century-schoolbook-tree): add Mono as
6947         'typewriter family.
6949         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
6950         memory leak.
6952         * lily/parser.yy (score_body): don't clone Score, that's done in
6953         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
6955         * lily/score-engraver.cc (derived_mark): new function.
6956         (initialize): unprotect Paper_score. This fixes a memory leak.
6958         * lily/score-performer.cc (derived_mark): new function.
6960         * lily/score-translator.cc (get_output): use SCM for get_output() call.
6962         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
6963         spurious warning.
6965         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
6966         serif.
6968 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
6970         * configure.in (reloc_b): Add --enable-relocation.
6972 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6974         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
6976         * input/regression/alignment-order.ly: add Staff example.
6978 2005-05-31  John Mandereau   <john.mandereau@free.fr>
6980         * po/fr.po: update.
6982 2005-05-31  Graham Percival  <gperlist@shaw.ca>
6984         * Documentation/index.html.in: add link to LSR.
6986 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6988         * scm/define-stencil-commands.scm (Module): new file. Register all
6989         allowed stencil expression heads in a central place.
6991         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
6992         ly:make-stencil
6994         * lily/stencil-expression.cc (all_stencil_heads): registering
6995         stencil expressions.
6997         * lily/stencil-interpret.cc: new file. Stencil expression
6998         interpreting.
7000         * input/xiao-haizi-guai-guai.ly: move file back.
7002 2005-05-30  Graham Percival  <gperlist@shaw.ca>
7004         * Documentation/user/advanced.itely, converters.itely,
7005         instrument-notation.itely, lilypond-book.itely: misc small
7006         changes.
7008 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7010         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
7012         * make/lilypond.fedora.spec.in: Fix source url.
7014         * cygwin: Update from mingw patches.
7016         * scm/editor.scm (editor-command-template-alist): Use jedit
7017         -reuseview (Bertalan), add uedit (Patrick Huberts).
7019         * input/xiao-hai-zi-guai-guai.ly: Rename from
7020         xiao-haizi-guai-guai.ly.
7022         * input/*: Reindent, do not use TAB.
7024         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
7025         white background.
7027 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
7029         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
7030         numerical overflow error.
7032 2005-05-29 Laura Conrad <lconrad@laymusic.org>
7033         
7034         * abc2ly.py: fix to syntax error in multi-part output.
7036 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7038         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
7039         with disappearing span bars when alignAboveContext is active
7041         * lily/property-iterator.cc (check_grob): use is-grob?
7042         object-property. Fixes crash-key-sig-font-size.ly. 
7044 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7046         * lily/bar-line.cc (print): don't round barlines; this produces
7047         odd aliasing effects in Acroread.
7049         * lily/timing-engraver.cc (process_music): robustness fix.
7051         * lily/context-def.cc (filter_engravers): bugfix.
7053 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
7055         * lily/lilypond.rc.in: Add ly-icon.
7057         * lily/GNUmakefile: 
7058         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
7059         rules.
7061 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7063         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
7065         * ps/music-drawing-routines.ps: 
7067         * scm/output-ps.scm: remove draw ez_ball.
7069         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7070         EasyNotation context definition.
7072         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
7073         Text_interface and color for making easy note heads.
7075         * lily/stencil.cc (with_color): new function.
7077         * ps/music-drawing-routines.ps: remove draw_zigzag_line
7079         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
7080         output routine. Zigzag now works in SVG too.
7082         * scm/output-tex.scm (filledbox): idem.
7084         * scm/output-svg.scm (filledbox): idem.
7086         * scm/output-ps.scm (lily-def): remove horizontal-line. 
7088         * lily/lookup.cc (horizontal_line): use draw-line. 
7090         * lily/system-start-delimiter.cc: remove old staff bracket code.
7092         * mf/feta-haak.mf: further tweaks.
7094         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
7096         * mf/feta-generic.mf: include feta-haak.
7098         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
7100         * scm/framework-ps.scm (write-preamble): only load fonts if their
7101         filename is a string. 
7103 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7105         * scm/output-svg.scm (circle): support circle.
7106         (bracket): stub for bracket.
7108         * scripts/lilypond-book.py (main): make sure --psfonts warning is
7109         correct.
7111 2005-05-26  Graham Percival  <gperlist@shaw.ca>
7113         * Documentation/user/lilypond.tely, advanced-notation.itely,
7114         basic-notation.itely, instrument-notation.itely, global.itely,
7115         introduction.itely, tutorial.itely: rearranging, editing,
7116         clean-up.
7118         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
7119         for compiling on FreeBSD.
7121 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7123         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
7124         otf files.
7126         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
7127         bugfixes.
7129         * VERSION: 2.5.26 released.
7131         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
7133 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
7135         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
7136         if printpagenumber is false.
7138 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7140         * lily/font-config.cc (init_fontconfig): comment out FontConfig
7141         cache warning.
7143         * lily/tie.cc (print): support dotted ties.
7144         
7145 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7147         * scm/define-grobs.scm (all-grob-descriptions): switch off
7148         debugging
7149         (all-grob-descriptions): Arpeggio has Y-extent.
7151         * scm/define-music-properties.scm (all-music-properties): document
7152         length-callback and start-callback as "read-only".
7154         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
7155         length-callback after creation. 
7157         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
7158         compressmusic -> compressMusic.
7160         * ly/music-functions-init.ly (oldaddlyrics): idem.
7162         * lily/parser.yy: NewLyricCombineMusic ->
7163         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
7165 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
7167         * ly/Welcome_to_LilyPond.ly: typo.
7169 2005-05-24  Graham Percival  <gperlist@shaw.ca>
7171         * Documentation/user/lilypond.tely: move changing-defaults to be
7172         before global issues.
7174         * Documentation/user/basic-notation.itely: move Transpose section
7175         here from advanced/Other.
7177         * Documentation/user/changing-defaults.itely,
7178         advanced-notation.itely: move Fonts to advanced, edit.
7180 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7182         * lily/parser.yy (bare_int): remove rule.  From now on, we require
7183         # before negative integers.
7185 2005-05-23  Graham Percival  <gperlist@shaw.ca>
7187         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
7189         * Documentation/user/lilypond.tely: change Unified index to
7190         LilyPond index.
7192         * Documentation/user/advanced-notation.itely,
7193         instrument-notation.itely: editing.
7195 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7197         * scm/lily.scm (lilypond-all): Bugfix: return failed.
7199         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
7201 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
7203         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
7204         ly:port-move.  Needs to be stderr-specific on mingw.
7205         Run fixcc.
7207 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7209         * lily/general-scheme.cc (ly:port-move): Remove.
7211         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
7212         windows.
7214         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
7215         variables.  This eliminates the need for a gs.bat wrapper, which
7216         opens a console.
7218         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
7219         * scm/lily.scm (running-from-gui?): 
7220         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
7221         artifact of not compiling with -mwindows.
7223         * scm/editor.scm: Define PLATFORM.
7225 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7227         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
7228         can start to cut & paste lilypond-book fragments.  
7230         * scm/define-music-types.scm (music-descriptions): remove
7231         UntransposableMusic
7233 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7235         * scm/output-ps.scm (glyph-string): remove / before CIDs.
7237 2005-05-20  Graham Percival  <gperlist@shaw.ca>
7239         * Documentation/user/instrument-notation.itely: remove *Engraver.
7241         * Documentation/user/advanced-notation.itely: edit, rearrange.
7243 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7245         * scm/output-ps.scm (glyph-string): take cid? argument. Use
7246         findresource iso. findfont for CID CFF fonts.
7248         * VERSION (PACKAGE_NAME): release 2.5.25
7250         * ly/Welcome_to_LilyPond.ly: add  \version
7252 2005-05-20  Graham Percival  <gperlist@shaw.ca>
7254         * Documentation/user/programming-interface.itely: move
7255         \displayMusic into its own section.
7257         * Documentation/user/basic-notation.itely: finish editing.
7259 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7261         * flower/file-path.cc (find): don't throw away file_name.dir, but
7262         append to it. Fixes \include with directories.
7264         * flower/include/file-path.hh (class File_path): don't derive from
7265         Array<String>.
7267         * flower/include/file-name.hh (class File_name): remove to_str0()
7269         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
7270         Hara_kiri_engraver in separate file.
7272         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
7273         translation went wrong. Fixes vertically translated slurs.
7275 2005-05-19  Graham Percival  <gperlist@shaw.ca>
7277         * Documentation/user/basic-notaton.itely: editing.
7279 2005-05-18  Graham Percival  <gperlist@shaw.ca>
7281         * Documentation/user/macros.itexi, basic-notation.itely:
7282         add @commonprop (commonly used properties) macro.
7284 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7286         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
7288         * scripts/lilypond-book.py (invokes_lilypond): new function
7289         (main): only run fontextract if invokes_lilypond() is true.
7291         * lily/function-documentation.cc (ly_add_function_documentation):
7292         duh, use !=
7294         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
7296         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
7298         * scm/lily.scm (running-from-gui?): lowercase Darwin.
7300         * lily/function-documentation.cc (ly_add_function_documentation):
7301         use scm_hash_table_p() for checking.
7303 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
7305         * Documentation/user/advanced-notation.itely (Text scripts):
7306         Change nonexisting @internalsref{Text markup} to @ref{Text
7307         markup}.  Change @internalsref{Text script} to
7308         @internalsref{TextScript}.
7310         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
7312 2005-05-17  Graham Percival  <gperlist@shaw.ca>
7314         * Documentation/user/tutorial.itely, basic-notation.itely,
7315         changing-defaults.itely: remove duplicate cindex entries
7316         that appear on the same page.
7318         * scm/define-grobs.scm: change default padding for TextSpanner.
7320         * Documentation/topdocs/AUTHORS.texi: update email address.
7322         * Documentation/user/global.itely: add info about \include.
7324 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
7326         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
7327         when running-from-gui.
7329         * scm/editor.scm (get-editor): Add platform defaults.
7331         * scm/backend-library.scm (postscript->pdf): Typo.
7333 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
7337         * lily/font-config.cc (init_fontconfig): add warning about cache.
7339 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7341         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
7343 2005-05-16  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7345         * lily/horizontal-bracket.cc (print): Take care of the direction
7346         property so brackets above the stave point downwards. 
7348         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
7349         for HorizontalBracket so it doesn't end up within the stave.
7351 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
7353         * lily/GNUmakefile (default): Typo.
7355         * scm/lily.scm (PLATFORM): Export.
7357         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
7358         load-font-via-GS, ttftool or fopencookie is broken on windows.
7359         
7360         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
7361         -dSAFER, that is broken on windows.
7363 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7365         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
7366         for FlexLexer.h
7368         * scripts/lilypond-invoke-editor.scm: remove stray -
7370 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
7372         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
7373         Fixes deprecation warning.
7375         * flower/include/string.icc (to_string): Only inline if
7376         -DSTRING_UTILS_INLINED.
7378         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
7379         name.  Remove windows comment.
7381         * scm/editor.scm (slashify): New function.
7382         (get-editor-command): Use it.
7383         (get-command-template): Do not alter editor command if
7384         environment value includes `%(file)s' magic.
7386         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
7387         (dissect-uri): Use it.
7388         (unquote-uri): Bugfix.
7390 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7392         * scm/framework-ps.scm (write-preamble): add TTF rule.
7394         * Documentation/topdocs/README.texi (Top): remove note about
7395         xdelta.
7397         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
7398         requirement.
7400         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
7401         function. Figure out where FlexLexer.h lives
7403         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
7404         
7405 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
7407         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
7408         with Windows root in file name.
7410         * scm/backend-library.scm (ly:system): Only redirect output (using
7411         system and shell, ugh) if /dev/null is writable.
7413         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
7414         windows icon.
7416         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
7417         on Mingw.
7419         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
7420         click.
7422         * flower/file-path.cc (is_dir, is_file): New function.  Actually
7423         use result of stat when available.
7425         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
7426         absolute file name and root.
7428         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
7430         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
7432         * flower/file-name.cc (slashify): Bugfix, do substitute if no
7433         slashes in file name.
7435 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
7437         * Documentation/user/preface.itely (Preface): Run
7438         texinfo-all-menus-update.
7440         * scm/editor.scm (get-editor-command): Bugfix: allow full
7441         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
7443         * Documentation/pictures/lilypond-48.xpm: New file.
7445         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
7447         * ly/Welcome_to_LilyPond.ly: New file.
7449         * lily/main.cc (main): Only identify if we have a terminal.
7451         * scm/backend-library.scm (postscript->png)
7452         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
7453         non-/bin/sh).
7455 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
7457         * Documentation/topdocs/AUTHORS.texi: polish, update.
7459 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7461         * Documentation/user/preface.itely (Notes for version 2.6): new
7462         notes for 2.6
7464         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
7465         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
7466         is not fully contained" warnings.
7468         * lily/slur-scoring.cc (get_bound_info): remove warning.
7470         * lily/staff-symbol-engraver.cc (process_music): start initial
7471         spanner in process_music(). This fixes overrides of StaffSymbol
7472         properties.
7474         * scm/framework-pdf.scm (Module): remove.
7476         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
7478         * lily/ambitus-engraver.cc: formatting cleanups.
7480         * mf/feta-solfa.mf (Module): remove.
7482         * ChangeLog: more details about contributions.
7484 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7486         * lily/align-interface.cc (align_elements_to_extents): warn if
7487         called too early. Fixes: disappearing-staff-lines.ly
7489         * VERSION (PACKAGE_NAME): release 2.5.24
7491 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
7493         * stepmake/aclocal.m4: Typo.
7495         * flower/string.cc (substitute): Take two strings or two
7496         characters.  Update callers.
7498 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7500         * flower/file-name.cc (File_name): Slashify.
7502         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
7504         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
7506         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
7508         * configure.in (gui_b): Use it.
7510         * lily/lilypond.rc.in: New file.
7512         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
7514 2005-05-12  Graham Percival  <gperlist@shaw.ca>
7516         * Documentation/user/advanced-notation.itely: edit of Text
7517         section; clarify text scripts vs. text markup.
7519 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7521         * lily/multi-measure-rest-engraver.cc
7522         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
7523         separation items on start. Fixes mm rests in start of score.
7525         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
7526         don't access StaffSymbol if not there.
7527         Fixes: crash-staff-symbol-engraver.ly.
7529         * lily/instrument-name-engraver.cc (class
7530         Instrument_name_engraver): data member first_. Create
7531         InstrumentName on start. 
7533 2005-05-12  Graham Percival  <gperlist@shaw.ca>
7535         * Documentation/user/instrument-notation.itely: add guitar
7536         position.
7538         * Documentation/user/introduction.itely,
7539         Documentation/user/lilypond.tely,
7540         Documentation/user/tutorial.itely: begin pruning
7541         unused (duplicated) cindex entries and misc cleanup.
7543 2005-05-12  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7545         * input/test/volta-chord-names.ly: Bring the explanation up to
7546         date.
7548 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
7550         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
7551         Specify `@documentencoding utf-8' for html, ignore warnings.
7553 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
7555         * THANKS: Added bughunters.
7557 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
7559         * lily/main.cc: update help string for `lilypond -H'.
7561         * po/fi.po: update.
7562         
7563 2005-05-10  Graham Percival  <gperlist@shaw.ca>
7565         * Documentation/user/advanced-notation.itely: minor fixes.
7567 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
7569         * scm/editor.scm: New module.
7571         * scm/lily.scm (gui-main): Use it.
7573         * scm/framework-gnome.scm (spawn-editor): Use it.
7575         * scripts/lilypond-invoke-editor.scm: Use it in new script.
7577 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7579         * scm/framework-ps.scm (load-font-via-GS):  new function.
7581         * lily/pango-font.cc (pango_item_string_stencil): add support for
7582         CID keyed font.
7584         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
7586 2005-05-10  Graham Percival  <gperlist@shaw.ca>
7588         * Documentation/user/basic-notation.itely: add @ref.
7590         * Documentation/user/advanced-notation.itely: add example
7591         of 5/8 beaming.
7593 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7595         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
7597         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
7598         going through ps2pdf wrappers.
7600 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
7602         * Documentation/user/instrument-notation.itely: petrucci note
7603         heads: updated docu
7605         * input/regression/note-head-style.ly: updated regression test;
7606         indentation fixes
7608         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
7609         heads as default
7611         * mf/parmesan-heads.mf: minor editing; use musicological names
7612         (rather than optical description) as note head names
7614         * scm/output-lib.scm: complete petrucci heads
7616 2005-05-09  Pal Benko  <benkop@freestart.hu>
7618         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
7619         heads, but bigger)
7621 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7623         * lily/main.cc (main_with_guile): Remove no files check.
7625         * lily/main.cc (ly:usage): Export to Scheme.
7627         * scm/lily.scm (no-files-handler): New function.
7629         * scm/lily.scm (lilypond-main): Use it.
7631         * configure.in (gui_b): Add mbrtowc checking.
7632         Resurrect [utf8/]wchar.h checking.
7634 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7636         * Documentation/user/advanced-notation.itely (Metronome marks):
7637         Add link to the program reference for MetronomeMark
7639         * Documentation/user/lilypond-book.itely (An example of a
7640         musicological document): Correct the example using psfonts 
7642 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
7644         * po/fi.po: update after a lesson how to update entries against
7645         source.
7646         
7647         * po/TODO: document the lesson.
7649 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7651         * configure.in (gui_b): remove wcrtomb checking.
7653         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
7654         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
7656 2005-05-09  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7658         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
7659         keep Scheme expressions and strings unmodified when doing the
7660         conversion to postfix notation for slurs and beams. Should
7661         hopefully solve most related conversion problems. 
7663         * Documentation/user/lilypond-book.itely : Clarify and correct how
7664         to call dvips with -h psfonts.
7666 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7668         * Documentation/user/instrument-notation.itely (Entering lyrics):
7669         Typo.  Fixes build.
7671 2005-05-09  Graham Percival  <gperlist@shaw.ca>
7673         * Documentation/user/lilypond-book.itely: document PSFONTS file.
7675         * Documentation/user/lilypond.tely, lilypond-book.itely,
7676         tutorial.itely: change references to 2.5.x to 2.6.x.
7678         * Documentation/user/instrument-notation.itely: clarified \addlyrics
7679         vs \lyricmode.
7681         * Documentation/user/invoking.itely: remove old info about
7682         lilypond-profile.
7684         * Documentation/topdocs/INSTALL.texi: remove old info about
7685         lilypond-profile, add warning about needing international fonts
7686         to build docs.
7688 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7690         * lily/include/grob-info.hh (class Grob_info): make data member
7691         private. Changes throughout.
7693         * input/regression/alignment-order.ly: new file. 
7695         * lily/vertical-align-engraver.cc (acknowledge_grob): read
7696         alignAboveContext and alignBelowContext
7698 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700         * lily/pfb.cc (LY_DEFINE): add cast.
7702         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
7703         matches .otf
7704         (write-preamble): warn about unknown fonts.
7706         * lily/pfb.cc (Module): new function ly:otf->cff
7708         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
7709         (get_otf_table): new function.
7711 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7713         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
7714         iso. ps2png.
7716 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
7718         * po/fi.po: apply second round of update.
7720 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7722         * scm/x11-color.scm (make-x11-color-handler): don't use
7723         #\sp. Apparently doesn't work on all platforms. 
7725 2005-05-06  Graham Percival  <gperlist@shaw.ca>
7727         * Documentation/user/advanced-notation.itely, putting.itely,
7728         tutorial.itely, global.itely, introduction.itely: really minor fixes.
7730 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7732         * VERSION (PACKAGE_NAME): release 2.5.23
7734 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
7736         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
7737         convert to utf-8.
7739         * THANKS: Add translators for this release, convert to utf-8.
7741         * mf/GNUmakefile (MFTRACE_FLAGS):
7742         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
7743         outdir as option (WAS: hardcoded).
7745 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7747         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
7748         finished_span_
7750         * THANKS: add Hans Forbrich.
7752         * Documentation/topdocs/NEWS.tely (Top): document new feature.
7754         * Documentation/user/basic-notation.itely (Staff symbol): document
7755         start/stop staff. Reference to ossia.ly
7757         * input/test/ossia.ly: new example using stop and startStaff.
7759         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
7760         in other words, don't create "|" barline at start of the score.
7761         (start_translation_timestep): don't set whichBar for start of score.
7763         * input/regression/staff-halfway.ly: use new functionality.
7765         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
7766         start and stop staff based on events.
7768         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
7770         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
7772 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7774         * Documentation/user/programming-interface.itely (How markups work
7775         internally ): remove \encoding reference.
7777 2005-05-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7779         * scripts/convert-ly.py: Attempt to do a smarter update of 
7780         text markups from versions < 1.9.0 with arbitrary nesting.
7782 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
7784         * po/fi.po: convert to utf-8, and update.
7786 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7788         * make/lilypond.suse.spec.in: update from suse 2.4 package.
7790         * lily/*.cc: more <? >? to min/max changes
7792         * lily/include/interpretation-context-handle.hh: rename
7793         Interpretation_context_handle to Context_handle.
7795 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
7797         * input/regression/GNUmakefile (local_delete): use `find` together 
7798         with `xargs` to avoid too long argument-lists in cmd line.
7800 2005-05-04  Graham Percival  <gperlist@shaw.ca>
7802         * Documentation/user/introduction.itely: updates "About this manual".
7804         * Documentation/user/advanced-notation.itely,
7805         invoking.itely: minor fixes.
7807 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7809         * COPYING: add font exception. Update FSF address. 
7811         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
7812         should be taken without child context.
7814         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
7816         * scm/define-markup-commands.scm (triangle): new command, as
7817         robust replacement for unicode Delta/Triangle.
7819 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7821         * ps/music-drawing-routines.ps: add fillp argument.
7823         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
7825         * lily/font-config.cc (init_fontconfig): don't add cff/
7827         * VERSION (PACKAGE_NAME): release 2.5.22
7829         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
7831         * lily/grace-engraver.cc (consider_change_grace_settings): use
7832         is_alias(). Fixes problem with CueVoice grace notes. 
7834         * lily/simultaneous-music-iterator.cc (construct_children): call
7835         Music_iterator::quit() for iterators that start out invalid. This
7836         fixes indefinitely continuing contexts.
7838         * buildscripts/substitute-encoding.py: new file
7840         * Documentation/user/basic-notation.itely (Basic polyphony): fix
7841         missing @end 
7843         * scripts/lilypond-book.py (write_if_updated): print file name.
7845         * Documentation/user/basic-notation.itely (Explicitly
7846         instantiating voices): idem.
7848         * Documentation/user/advanced-notation.itely (Text spanners):
7849         remove stray { } 
7851         * lily/context.cc (default_child_context_name): the default child
7852         is now first in accepts_list_.
7854         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7855         \defaultchild to all relevant contexts.  This fixes:
7856         drums-pitch.ly.
7858         (Probably also fixes similar problems with ancient
7859         transcriptions getting CueVoices instead of the desired voices.)
7861         * lily/context-def.cc (get_default_child): new function.
7862         (get_accepted): place default child in front of list.
7864         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
7866         * lily/include/context-def.hh (struct Context_def): add
7867         default_accept_
7869 2005-05-03  Graham Percival  <gperlist@shaw.ca>
7871         * scm/define-grobs.scm: remove "remove-first" line, since
7872         the absent property is set to #f anyway.
7874         * Documentation/user/basic-notation.itely,
7875         advanced-notation.itely, instrument-notation.itely: minor
7876         fixes.
7878         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
7880         * Documentation/user/advanced-notation.itely,
7881         changing-defaults.itely: consolidate Text stuff in
7882         advanced notation.
7884         * Documentation/user/global.itely: better docs for \header.
7886         * Documentation/user/putting.itely: new chapter; placeholder
7887         for future expansion.
7889         * Documentation/user/examples.itely: moved "suggestions for
7890         writing LP files" section into putting.itely.
7892         * Documentation/user/lilypond.itely: added new chapter,
7893         fixed the short table of contents.
7895 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7897         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
7898         infinity for unfeasible beams.
7900         * make/lilypond.fedora.spec.in (Group): idem.
7902         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
7904         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
7906         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
7907         fonts directly.
7909         * buildscripts/gen-emmentaler-scripts.py (i): idem.
7911         * mf/GNUmakefile: remove all CFF rules.
7913         * scm/framework-ps.scm (ps-embed-cff): reinstate.
7915         * lily/open-type-font-scheme.cc (LY_DEFINE):
7916         new function ly:otf-font-table-data.
7917         (LY_DEFINE): new function otf-font?
7919 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7921         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
7922         ($(outdir)/Fontmap.lily): idem.
7924         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
7925         for PFAEmmentaler-XXX.pfa. 
7927         * Documentation/user/music-glossary.tely (accidental): NL
7928         translation of accidental.
7930 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7932         * flower/include/international.hh: Bugfix: include "string.hh".
7934         * lily/include/mingw-compatibility.hh: New file.
7936         * flower/include/libc-extension.hh (memrev): Rename from strrev.
7938         * configure.in: Search for mingw wcrtomb library.
7940 2005-05-02  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7942         * scripts/convert-ly.py: Bug fix
7944         * Documentation/user/changing-defaults.itely (Common tweaks):
7945         Added example where the context has to be specified explicitly
7946         (MetronomeMark). 
7948 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7950         * scripts/lilypond-book.py (ly_options): set timing to #f for
7951         notime option.
7953         * scripts/convert-ly.py (conv): typo.
7955         * flower/*.cc: remove <? and >?
7956         
7957         * lily/*.cc: remove <? and >?
7959         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
7960         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
7961         editor.
7963 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7965         * lily/part-combine-engraver.cc: add space to variable list.
7967 2005-04-30  Graham Percival  <gperlist@shaw.ca>
7969         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
7970         remove-first to false (matches docs)
7972         * Documentation/user/advanced-notation.itely: corrected docs
7973         concerning remove-first.
7975 2005-04-29  Mats Bengtsson  <mabe@drongo.s3.kth.se>
7977         * lily/part-combine-engraver.cc: make sure that the relevant
7978         properties are included in the documentation.
7980 2005-04-28  Graham Percival  <gperlist@shaw.ca>
7982         * Documentation/user/lilypond-book.itely: Bernard's docs
7983         for \betweenLilyPondSystem.
7985 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7987         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
7988         remarks.
7990 2005-04-28  Pal Benko  <benkop@freestart.hu>
7992         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
7993         only on vertical lines of flexa shape, and use a constant
7994         thickness value for horizontal lines (patch slightly modified by
7995         Jürgen Reuter)
7997         * lily/include/mensural-ligature.hh: make 2 comments clearer
7999 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
8001         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
8002         to need_extra_horizontal_space; bugfix: use class scope to avoid
8003         global namespace pollution
8005         * Documentation/user/instrument-notation.itely (ligatures): added
8006         comment on possible future syntax change and how to work around
8008         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
8009         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
8010         intervals (fixes agnus dei example)
8012         * Documentation/user/instrument-notation.itely (white mensural
8013         ligatures): selected a more illustrative example
8015 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
8017         * Documentation/index.html.in: specify utf-8 charset in meta content.
8019 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8021         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
8022         empty 2nd page for single page.
8024         * scm/lily.scm: remove p&c definitions.
8026         * po/zh_TW.po (Module): new translation.
8028         * lily/lily-guile.cc (ly_chain_assoc): remove.
8030         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
8031         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
8033 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8035         * lily/beaming-info.cc: remove infinity_i
8037         * scripts/abc2ly.py (out_filename): fix thinko with \version.
8039 2005-04-26  Graham Percival  <gperlist@shaw.ca>
8041         * Documentation/user/basic-notation.itely,
8042         instrument-notation.itely, advanced-notation.itely,
8043         changing-defaults.itely: minor fixes.  Added docs
8044         for colors to advanced-notation.itely.
8046         * Documentation/user/advanced-notation.itely: fixed compile
8047         problem and added Bernard's x11-color doc patch.
8049 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8051         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
8052         alright this time round.
8054 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8056         * Documentation/topdocs/INSTALL.texi (Top): idem.
8058         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
8060         * VERSION (MAJOR_VERSION): release 2.5.21
8062         * scm/output-ps.scm (grob-cause): bugfix.
8064 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8066         * cygwin/*: Update.
8068         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
8069         stuff.
8071         * scm/output-ps.scm (grob-cause): Bugfix.
8073         * scm/lily.scm (ly:load): Remove x11-color.
8075         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
8076         quote executable, fixes getting version from program --with
8077         --options.
8078         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
8079         $ac_exeect.
8081         * Documentation/user/GNUmakefile: Only build music-glossary with
8082         rendered lilypond snippets during web.
8084 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8086         * po/de.po: update.
8088         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
8090 2005-04-22  Laura Conrad <lconrad@laymusic.org>
8092         * scripts/abc2ly:
8093         second title line append with punctuation dash character;
8094         encode abc2ly python strings in utf-8
8095        
8096 2005-04-21  Laura Conrad <lconrad@laymusic.org>
8098         * scripts/abc2ly fix chords (again)
8100 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
8102         * scm/x11-color.scm: new file
8103         All x11 color names can be accessed with:
8104         #(x11-color 'ColorName),
8105         #(x11-color "ColorName") or:
8106         #(x11-color "color name")
8107         If the x11 color name is not recognised then it defaults
8108         to black
8110         * scm/lily.scm: amended to call scm/x11-color.scm
8112 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8114         * Documentation/user/invoking.itely (Reporting bugs): comment out
8115         reference to online PNG bug repository.
8117 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8119         * lily/translator-scheme.cc (ly:translator-property): Remove.
8120         Update callers.
8122         * lily/context-scheme.cc (ly:context-now): Move from translator.
8123         Update callers.
8125 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8127         * input/regression/grid-lines.ly (skips): refine example.
8129         * scm/define-context-properties.scm
8130         (all-user-translation-properties): doc autoBeamCheck
8132         * input/regression/grid-lines.ly (Module): new file.
8134         * lily/grid-point-engraver.cc (Module): new file.
8136         * lily/grid-line.cc (Module): new file.
8138         * lily/grid-line-span-engraver.cc (Module): new file.
8140         * lily/grid-line-interface.cc (Module): new file.
8142 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
8144         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
8145         missing parameter, actualy cdr through list.  Actually return a
8146         list with ENTRY removed (was '()).
8148         * scripts/convert-ly.py: Update.  Print warning if file cannot be
8149         opened.
8150         (do_conversion): Fix printing of continuation comma.
8152         * Documentation/user/advanced-notation.itely (Beam formatting):
8153         Remove refbugs about compound time and mixed duration.
8155         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
8156         modulo moments explicitely.
8158         * lily/moment.cc (operator %): New function.
8160         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
8162         * lily/translator-scheme.cc (ly:translator-now,
8163         ly:translator-property): New function.
8165         * scm/auto-beam.scm (default-auto-beam-check): New function.
8167         * lily/auto-beam-engraver.cc (test_moment): Use it.
8169         * flower/rational.cc (operator %): Bugfix.
8171 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
8173         * scripts/abc2ly: Bugfix
8175 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8177         * python/fontextract.py (write_extracted_fonts): bugfix, too many
8178         %'s on EndFont comment.
8180         * lily/ledger-line-spanner.cc: some more words of explanation.
8182 2005-04-20  John Williams <williams@tni.com>  
8183         
8184         * scripts/lilypond-book.py: htmlquote bugfix.
8185         Allow snippets to be given distinct filenames.
8186         Allow the default alt text to be overridden.
8188 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
8190         * ly/performer-init.ly: Bugfix
8192         * THANKS: Added bughunters.
8194 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
8196         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
8198         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
8199         position (was: use modulo measure length).
8201         * configure.in (no gui_b): Remove optional gtk+ requirement.
8203 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8205         * Documentation/user/basic-notation.itely (Pitches): add
8206         LedgerLineSpanner.
8208         * lily/dynamic-engraver.cc (process_music): set right bound to
8209         script if present. Else, do not set.
8210         (acknowledge_grob): only set right bound of finished spanner to
8211         note column if no other bound is set.
8213         * python/lilylib.py (make_ps_images): switch back to png16m.
8214         
8215 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8217         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
8218         writing up to date file.  Add dvips usage suggestion.
8220         * scripts/convert-ly.py: Fix error message.
8221         Print usage if no files on command line.
8222         (usage): Add example usage.
8224         * input/test/compound-time.ly: New file.
8226         * input/test/circle.ly: New file.
8228         * Documentation/topdocs/NEWS.tely: Use them.
8230         * input/test/boxed-stencil.ly: Remove \score.
8232         * buildscripts/mf-to-table.py (base): Add .log dependency.
8234         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
8235         pfa's.  Add .log dependency
8237         * scm/define-markup-commands.scm (lower): New command.
8239         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
8240         make it default.
8242 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8244         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
8245         also to finished cresc as right bound. This fixes:
8246         skip-string-decresc.ly
8248         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
8249         relative_coordinate if extent is empty.
8251         * lily/stem.cc (width_callback): determine correct extent if flag
8252         is not there. This fixes slur-no-flag.ly
8254         * lily/grace-engraver.cc (consider_change_grace_settings): new
8255         function.
8256         (initialize): also consider_change_grace_settings() on
8257         initialization. Fixes large grace notes at start of score.
8259         * lily/break-align-interface.cc (do_alignment): don't translate if
8260         total_extent is empty.
8262         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
8264 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8266         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
8267         with slash.
8269 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8271         * stepmake/aclocal.m4: Remove tfm_path.
8273 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8275         * scm/music-functions.scm (markup-expression->make-markup): fix
8276         bug with cons arguments of markup commands.
8277         (music->make-music): fix music expression property list building
8279 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8281         * aclocal.m4: Massage package names.
8283         * SCons updates.
8285 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8287         * VERSION (PACKAGE_NAME): release 2.5.20
8289         * lily/stem.cc (calc_stem_info): add minimum Y extent of
8290         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
8292         * lily/percent-repeat-engraver.cc (try_music): add measure before
8293         next_moment to future processing moment. Fixes:
8294         percent-repeat-mm-rest.ly
8295         (process_music): don't add moment for 2nd time.
8297         * input/regression/repeat-percent.ly: add mmrests as extra test.
8299         * lily/axis-group-engraver.cc (acknowledge_grob): read
8300         keepAliveInterfaces to decide what to kill.
8302         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
8303         percent-repeat-interface to keepAliveInterfaces. This fixes
8304         percent-repeat-harakiri.
8306 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8308         * SCons updates.
8310 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8312         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
8314         * aclocal.m4: remove --enable-tfm-path configure option
8316         * input/test/ancient-font.ly (lowerStaff): clef name errors.
8318         * scm/backend-library.scm (postscript->png): newline after
8319         finishing command.
8321         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
8322         (LY_DEFINE): ly:paper-score-paper-systems: new function 
8324         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
8326         * lily/score.cc (default_rendering): use Music_output too.
8328         * input/test/chord-names-languages.ly (Module): rename file.
8330         * lily/text-spanner.cc: add bound-padding.
8332         * lily/paper-book.cc (systems): accept Paper_score
8333         iso. Paper_system vector. 
8335         * input/regression/line-arrows.ly: new file.
8337         * lily/paper-score.cc (process): run get_paper_systems() only once.
8339         * lily/line-spanner.cc (line_stencil): add arrows.
8341 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
8343         * lily/line-interface.cc (make_arrow): new function. 
8344         (arrows): idem.
8346 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
8348         * input/test/chord-names-german.ly: update for italian/french
8349         chords.
8350         
8351         * Documentation/user/instrument-notation.itely (Printing chord
8352         names): update.
8354 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8356         * lily/include/paper-score.hh (class Paper_score): remove unused
8357         prototypes.
8359         * lily/book.cc (process): add -COUNT to midi output.
8361         * lily/score.cc (book_rendering): remove outname argument
8362         (book_rendering): return list of Music_outputs. 
8364         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
8366         * lily/book.cc (process): loop over Music_outputs returned from
8367         Score::book_rendering().
8369         * lily/*.cc (width_callback): remove spurious "unused" warnings
8370         for assert (axis==[XY]_AXIS); 
8372         * lily/include/music-output.hh (class Music_output): smobify class.
8374         * lily/include/paper-score.hh (class Paper_score): make members
8375         private.
8377         * lily/performance.cc (process): return #f iso. #<undefined>. This
8378         prevents #<undefined> leaking into GUILE-userspace.
8380 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8382         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
8384 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
8386         * scm/chord-name.scm : support for italian and french
8387         chords names.
8389         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
8390         a space defined by chordPrefixSpacer when the root name is
8391         direclty followed by a prefix.
8393         * ly/engraver-init.ly : chordPrefixSpacer       
8394         * scm/define-context-properties.scm : chordPrefixSpacer
8395         * ly/property-init.ly : italianChords, frenchChords 
8397 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
8399         * mf/feta-din.mf: Remove.
8401         * mf/GNUmakefile (fontdir): Bugfix.
8403         * mf/SConstruct: Some updates.
8405         * SConstruct: Require pkg-config.
8406         (test_program): Bugfix for double digit version compares, use
8407         integer (not string-) compare.
8408         Optionally require gs 8.14.
8410         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
8412         * lily/*: s/ifdef HAVE_*/if have/.
8414         * SConstruct (test_lib): New function.  Update pkg-config and some
8415         other requirements.
8417         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
8418         freetype, pangof2t.
8420 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8422         * po/lilypond.pot, ...: Update using bison-CVS.
8424         * python/lilylib.py (make_ps_images): Fixo.
8426 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8428         * python/lilylib.py (make_ps_images): typo.
8430         * configure.in (gui_b): make bison optional.
8432         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
8434 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
8436         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
8437         with one parameter can be defined in a LaTeX file when processed
8438         by lilypond-book this will be evaluated between the systems of
8439         a multi-system score. The parameter is the number of systems processed.
8441 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
8443         * python/lilylib.py (make_ps_images): Escape newline.
8445         * Documentation/user/music-glossary.tely: Run
8446         texinfo-all-menus-update.
8448 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8450         * scm/lily-library.scm (old-relative-not-used-message)
8451         (version-not-seen-message): Add input-file-name-location to message.
8453         * lily/parser.yy (lilypond): Add token aliases.
8455         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
8456         not confuse with alteration.
8457         (alteration): Add.
8459 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8461         * python/lilylib.py (make_ps_images): use -dEPSCrop
8463         * VERSION (PACKAGE_NAME): release 2.5.19 
8465         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
8466         only put xrefs in info documentation.
8468         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
8469         .pdf rule to tex-rules.make.
8471         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
8472         from -systems.* output.
8474         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
8475         directly, remove -$(PAGESIZE) target.
8477         * input/test/embedded-postscript.ly: update.
8479 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8481         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
8483         * Documentation/user/changing-defaults.itely (Font selection):
8484         document font-name.
8486         * input/regression/font-name.ly: show Pango fonts for
8487         font-name. Update example. 
8489         * lily/pango-select.cc (properties_to_pango_description): don't
8490         convert symbol font-size to number, but use to lookup.
8492         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
8494         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
8495         (NAME . FILE-NAME) tuples for font descriptions. 
8496         (write-preamble): display BeginFont DSC comments.
8498         * python/fontextract.py (write_extracted_fonts): new file. Extract
8499         font resources from a PS file.
8501         * scripts/lilypond-book.py (option_definitions): --psfonts option.
8502         (Compile_error.process_include): do_file returns chunks.
8504         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
8506         * make/lysdoc-targets.make: .texi is .PRECIOUS
8508         * scripts/lilypond-book.py (write_if_updated): new function.
8510 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8512         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
8514 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8516         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
8518         * input/regression/markup-syntax.ly: remove \score.
8520         * scm/define-markup-commands.scm (draw-circle): add fill argument
8522         * scm/stencil.scm (make-circle-stencil): add fill argument
8524         * ps/music-drawing-routines.ps: add fill argument.
8526         * ly/performer-init.ly: add CueVoice to MIDI too.
8528         * ps/music-drawing-routines.ps: new routine BeginEPSF /
8529         EndEPSF.
8531         * input/regression/markup-eps.ly: new file.
8533         * scm/framework-ps.scm (write-preamble): change order: vars should
8534         be inited before procedures.
8536         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
8537         for EPS files.
8539         * scm/define-markup-commands.scm (epsfile): add epsfile command.
8541 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8543         * configure.in (gui_b): add check for ghostscript 8.15
8545 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8547         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
8548         start of line. Fixes cresc-after-newline.ly
8550         * lily/source-file.cc (file_line_column_string): use get_column().
8552 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8554         * lily/source-file.cc (get_column): utf-8 support for column numbers.
8556 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8558         * lily/*: use message () iso progress_indication () for messages.
8559         Revise/uniformise user messages.
8561         * flower/warn.cc (progress_indication): New function.
8562         (message): Use it.  Fixes newline problems.
8564         * config.make.in (webdir): Sort out install dirs.
8566         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
8568         * python/lilylib.py (command_name): Bugfix.
8569         (make_ps_images):
8571 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
8573         * lily/main.cc: --help says what types of backends are availabe
8575 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8577         Fix ./VERSION dependency, and without need to reconfigure.
8579         * lily/main.cc (setup_paths): Update.
8581         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
8583         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
8585         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
8586         Add \line for some simplistic cases.
8588         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
8590 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8592         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
8593         to compile LY files (useful for adding eg. "-I" args)
8594         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
8595         2Gnome command for gnome backend.
8596         (LilyPond-command-formatgnome): call the 2Gnome command. key
8597         binding: C-c C-g
8599 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
8601         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
8602         depend on all PNG images.
8604 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8606         * GNUmakefile.in: Bugfix: also link .map files.
8608 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8610         * scm/music-functions.scm (music->make-music): generate 
8611         a (make-music ...) sexpr from a music expression.
8612         (display-scheme-music): use guile pretty printer to display the
8613         make-music sexpr.
8615 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8617         * ly/engraver-init.ly: reindent.
8618         Add CueVoice.
8620         * scm/music-functions.scm (music-pretty-string): handle moments
8621         too.
8622         (music-pretty-string): only print non-empty lists.
8623         (cue-substitute): create CueVoice context, which has smaller type.
8625         * lily/moment-scheme.cc (LY_DEFINE): new methods
8626         ly:moment-grace-{numerator,denominator}
8628         * lily/context-handle.cc: remove quit() method. 
8630         * lily/font-config.cc (init_fontconfig): be verbose about font path.
8631         (init_fontconfig): success is 0, not !0
8633 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8635         * mf/feta-nummer-code.mf (code): add plus glyph.
8637         * lily/tie.cc (print): idem.
8639         * lily/slur.cc (print): don't use thickness property for
8640         slur shape-thickness.
8642         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
8643         while adding stencils.
8645         * scm/define-markup-commands.scm (with-color): with-color markup
8646         command.
8647         (whiteout): new markup command 
8648         (filled-box): new markup command
8650 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8652         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
8653         test for PDF docs.
8655         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
8656         PFAAybabtu-Regular.  Fixes feta font in PDFs.
8657         
8658         Notes for tetex-3.0 make web:
8659            psclean.map: s/uhv8a/uhvr8a/
8660            config.ps add:
8661                 p +psfonts_t1.map
8662                 p +psclean.map
8663                 p +typeface.map
8665 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8667         * scm/music-functions.scm (music-pretty-string): fix bug with
8668         string argument.
8670 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
8672         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
8674 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8676         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
8677         only process options if they're there.
8678         (write_file_map): add version-seen? to snippet-map.ly
8680 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
8682         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
8683         formatting cleanups.
8685         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
8686         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
8688 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8690         * scm/framework-ps.scm (ps-font-command): don't hash, just use
8691         name directly.
8693         * lily/main.cc (setup_paths): either add mf/out to search path or 
8694         fonts/{otf,type1,etc}
8695         
8696         * lily/font-config.cc (init_fontconfig): either add mf/out to
8697         FontConfig or fonts/{otf,type1,etc}
8699         * GNUmakefile.in: don't put mf/ link in share/ dir.
8701         * lily/staff-spacing.cc: move same-direction-correction to
8702         note-spacing-interface
8704         * scm/lily.scm (lilypond-main): use variable argument count for
8705         exception handler.
8707         * lily/font-config.cc (init_fontconfig): add operator pacification
8708         message.
8710         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
8712         * buildscripts/gen-emmentaler-scripts.py (i): generate
8713         PFAEmmentaler as well.
8715         * scm/framework-ps.scm (munge-lily-font-name): new function
8716         (write-preamble): hack: insert PFA equivalent of CFF into
8717         .PS. This makes LilyPond output printable on normal PS printers
8718         again.
8720         * buildscripts/gen-emmentaler-scripts.py (i): generate
8721         PFAEmmentaler.pfa aswell.
8723 2005-04-06  John Williams <williams@tni.com>  
8724         
8725         * scripts/lilypond-book.py: refactor the compose_ly procedure.
8726         
8727 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8729         * scm/page-layout.scm (default-page-make-stencil): always combine
8730         the header stencil, even if empty. This prevents the body text to
8731         reach up to the margins.
8733         * po/rw.po (Module): new file, for Kinyarwanda.
8735         * input/test/spacing-optical.ly (Module): new file.
8737         * lily/staff-spacing.cc: add same-direction-correction
8739 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8741         * Documentation/user/introduction.itely (Engraving): Comment-out
8742         non-existent file.
8744 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8746         * scm/define-grob-properties.scm (all-user-grob-properties): add
8747         same-direction-correction
8749         * VERSION: release 2.5.18
8751 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
8753         * lily/grob.cc (mark_smob): Check pscore->layout_ before
8754         dereferencing.  Fixes make web.
8756         * lily/midi-stream.cc: Handle unwritable midi file.  Include
8757         errno.h.
8759         * Documentation/user/: Fix links.
8761 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8763         * lily/text-interface.cc (Module): rename from text-item.cc
8765         * input/regression/apply-output.ly (texidoc): function naming fix.
8767         * lily/time-signature-performer.cc (derived_mark): new function.
8769         * lily/lily-parser-scheme.cc:  print mapped file name for progress
8771         * scripts/lilypond-book.py (find_linestarts): new function.
8772         (find_toplevel_snippets): keep track of line numbers.
8774         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
8775         all key changes.
8777         * ly/declarations-init.ly (partCombineListener): use
8778         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
8780         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
8782 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
8784         * lily/text-item.cc: Fix link.
8786         * Documentation/user/changing-defaults.itely (Changing defaults):
8787         Fix programs reference links.
8789         * Documentation/user/music-glossary.tely: Convert to utf-8.
8791 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8793         * make/lilypond-vars.make: remove TEXMF from variables.
8794         remove DEB_BUILD pk font variables.
8795         remove GUILE_LOAD_PATH
8796         remove TeX memory vars.
8798 2005-04-04  Werner Lemberg  <wl@gnu.org>
8800         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
8802 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8804         * ps/lilyponddefs.ps: remove reencode-font
8806         * lily/simple-spacer.cc (add_columns): also compare
8807         directly. Column rank doesn't distinguish between broken and
8808         unbroken columns. This fixes large spaces before time sig changes.
8810         * Documentation/user/point-and-click.itely: document ly:set-option.
8812         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
8813         point_and_click_global is set.
8815         * lily/scm-option.cc (LY_DEFINE): add point-and-click
8816         ly:set-option argument.
8818 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
8820         * GNUmakefile.in: Include symlinks in webball.
8822         * Documentation/user/GNUmakefile (source-links): Add symlinks to
8823         source dir for split and non-split manuals.
8825         * Documentation/user/*y: Fix @uref/@inputfile links for
8826         split/non-split HTML documents.
8828         * Documentation/user/GNUmakefile (local-WWW): Do not generate
8829         .ps.gz.
8830         
8831 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8833         * GNUmakefile.in: Add newline.
8835 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
8837         * tex/lilyponddefs.tex: use color instead of xcolor
8838         * scm/output-tex.scm: minor editing
8840 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8842         * scm/music-functions.scm (display-scheme-music): pretty printer
8843         for music expressions.
8845 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
8847         * buildscripts/install-info-html.sh (index_file): Fix link.
8849 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
8851         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
8853         * Documentation/index.html.in: Add size estimates with some big pages.
8855         * Documentation/user/tutorial.itely (Running LilyPond for the
8856         first time): Add/replace some @rglos links.  TODO: add more
8857         @rglos links in tutorial, test non-intrusiveness (.css).
8859         * stepmake/bin/add-html-footer.py (do_file): Remove info's
8860         annoying's indication of referencing external document.
8862         * Documentation/user/GNUmakefile: Split version of glossary too.
8863         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
8864         links, not only for html.
8866         * Documentation/user/introduction.itely: Fix some links for other
8867         than html, do not use `here' as link name.
8869 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8871         * scm/documentation-generate.scm (string-append): Fix @usermanref,
8872         @glossaryref.
8874 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8876         * scm/page-layout.scm (default-page-make-stencil): only add header
8877         if existing and not empty. Fixes spurious programming error.
8879         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
8881 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
8883         * scm/output-tex.scm: implement {re,}setcolor
8884         * tex/lilyponddefs.tex: use color package
8886 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
8888         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
8889         additions to website.
8891         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
8893         * Documentation/user/macros.itexi: Fix @usermanref html links in
8894         split documents: use @inforef.
8896 2005-03-30  Graham Percival  <gperlist@shaw.ca>
8898         * Documentation/user/programming-interface.itely: minor fix.
8900         * Documentation/user/advanced-notation.itely: added info to
8901         Metronome markings.
8903 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8905         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
8906         use box-stencil.  Remove y-padding argument.
8907         (make-stencil-circler): New function.
8909         * buildscripts/lilypond-words.py (F): 
8910         * elisp/SConscript (a): 
8911         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
8912         * vim/SConscript (a): 
8913         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
8915         * lily/general-scheme.cc: Build fix.
8917         * scm/markup.scm:
8918         * input/regression/markup-scheme.ly: 
8919         * input/regression/markup-syntax.ly: Drop 'new-' from name.
8921         * scm/stencil.scm (make-circle-stencil): New function.
8923         * scm/define-markup-commands.scm (draw-circle): Use it.  New
8924         name (was cicle).  Update callers.
8925         (circle): New markup command, similar to box.
8927         * scm/stencil.scm (circle-stencil): New function.
8929 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
8931         * configure.in: Detect libutf8/wchar.h variant.
8933         * stepmake/aclocal.m4: Modify shared size test.
8935 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8937         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
8939 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8941         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
8942         
8943         * VERSION (PACKAGE_NAME):  release 2.5.17
8945 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
8947         * scm/backend-library.scm (postscript->png): Fix comment and png
8948         message.
8950         * GNUmakefile.in (link-tree): Fix locales.
8952 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8954         * lily/stencil-scheme.cc (LY_DEFINE): change to
8955         ly:stencil-aligned-to, non mutating.
8957         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
8959         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
8961         * lily/quote-iterator.cc (derived_mark): call
8962         Music_wrapper_iterator::derived_mark() too.
8964         * lily/grace-engraver.cc (derived_mark): change signature, add
8965         const.
8967 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8969         * SConstruct (symlink): 
8970         * GNUmakefile.in (link-tree): Add scripts to prefix.
8972         * lily/general-scheme.cc (ly:effective-prefix): New function.
8974         * scm/backend-library.scm (postscript->png): Use it.
8976 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8978         * lily/paper-score.cc (process): don't delete grobs after
8979         producing stencils. 
8981         * scm/part-combiner.scm (determine-split-list): switch off
8982         debugging info.
8984         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
8985         if available.
8987         * scm/define-context-properties.scm
8988         (all-user-translation-properties): add stringNumberOrientations.
8990         * lily/new-fingering-engraver.cc (position_scripts): make generic,
8991         so fingering and string-numbers are separately controlled.
8993 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
8995         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
8996         not use debugging.
8998 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9000         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
9002         * config.hh.in: add HAVE_FONTCONFIG.
9004         * Documentation/user/instrument-notation.itely (String number
9005         indications): new node.
9007         * input/regression/new-markup-syntax.ly (texidoc): add circle.
9009         * lily/new-fingering-engraver.cc (add_string): new function. 
9010         (acknowledge_grob): accept string-number-event as well.
9012         * scm/define-markup-commands.scm (circle): new markup command.
9014         * scm/output-lib.scm (print-circled-text-callback): new function.
9016         * lily/GNUmakefile: move ifeq after include stepmake.make.
9018 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9020         * config.make.in (HAVE_LIBKPATHSEA_SO):
9021         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
9023         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
9024         add KPATHSEA_LIBS.
9026         * debian/watch: 
9027         * debian/control: Update.
9029 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9031         * input/test/title-markup.ly (spaceTest): remove.
9033         * input/test/embedded-tex.ly (Module): remove.
9035         * input/test/music-box.ly: use 'name property, not ly:music-name.
9037         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
9039         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
9041 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9043         * Documentation/topdocs/INSTALL.texi (Top): Remove information
9044         about xdeltas.  Add information about CVS.
9046         * scm/lily.scm (lilypond-main): Fix invocation of handler,
9047         gracefully handle failed files.
9049         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
9051         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
9052         small fixes.
9054         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
9055         No unnecessarily specific i18n messages.  Remove stray `1'.
9057 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9059         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
9060         documentencoding
9062         * scm/documentation-lib.scm (texi-file-head): set utf-8
9063         documentencoding.
9065         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
9066         Delta, not the Symbol one. 
9068         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
9069         for the .map file.
9071         * Documentation/topdocs/INSTALL.texi (Top): add running
9072         requirement as compilation requirement.
9074 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9076         * buildscripts/mutopia-index.py (headertext): add h1 header and
9077         utf-8 charset meta field.
9079         * input/GNUmakefile: prune example list.
9081         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
9082         options.
9084         * lily/slur-scoring.cc (get_base_attachments): only look at stem
9085         extent for visible stems.
9087         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
9089 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9091         * Documentation/topdocs/INSTALL.texi (Top): Updates.
9093         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
9095 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9097         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
9098         pass inf/nan into slur scoring.
9100         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
9101         page.
9103         * scripts/abc2ly.py (dump_voices): use alphabet().
9105 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
9106         
9107         * mf/GNUmakefile (depth): use $(FONTFORGE). 
9109 2005-03-27 Matthias Neeracher <neeracher@mac.com>
9110         
9111         * flower/include/virtual-methods.hh: simplify. Patch by
9113 2005-03-25  John Williams <williams@tni.com>  
9115         * scripts/lilypond-book.py (main): add png for HTML too, guess
9116         only if necessary. 
9118 2005-03-25  Graham Percival  <gperlist@shaw.ca>
9120         * Documentation/topdocs/INSTALL.texi: now recommends
9121         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
9123         * Documentation/user/basic-notation.itely,
9124         Documentation/user/tutoria.itely: warn about
9125         only one (phrasing) slur at once.
9127 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
9129         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
9131 2005-03-23  Graham Percival  <gperlist@shaw.ca>
9133         * Documentation/user/basic-notation.itely: fixed info about
9134         ending a (de)cresc.
9136         * Documentation/user/lilypond-book.itely: fixed
9137         lilypond-book filter example and warned about not doing
9138         --filter and --process at the same time.
9140 2005-03-23  Mats Bengtsson  <mabe@drongo.s3.kth.se>
9142         * lily/parser.yy (bass_number),
9143         Documentation/user/instrument-notation.itely (Figured bass): 
9144         Add the possibility to use text markup in figured bass. 
9146 2005-03-19  Graham Percival  <gperlist@shaw.ca>
9148         * Documentation/user/global.itely: added info about naming
9149         identifiers and breakbefore.
9151         * Documentation/user/invoking.itely: added info about batch
9152         processing files with convert-ly, removed references to TeX
9153         in the jail section.
9155         * Documentation/user/examples.itely: possibly fixed piano
9156         dynamics.
9158         * Documentation/user/advanced-notation.itely: added info
9159         about removing other types of Staff.
9161         * Documentation/user/instrument-notation.itely: possibly
9162         fixed piano staff line switch.
9164         * Documentation/user/changing-defaults.itely: added info
9165         about using normal font in titles.
9167 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9169         * VERSION (PATCH_LEVEL): release 2.5.16
9171         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
9172         explicitly.
9174 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
9176         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
9177         whitespace.
9179         * python/lilylib.py (make_ps_images):
9180         * scm/backend-library.scm (postscript->pdf, postscript->png):
9181         Quote file name.  Use format rather than string-append juggling.
9183 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9185         * python/lilylib.py (make_ps_images): add x to -g argument. 
9187         * lily/key-performer.cc (create_audio_elements): don't use
9188         scm_eval_string. Check for minor 3rd directly.
9189   
9190         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
9191         (sarabandeCelloGlobal): key is D minor, not F major.
9193 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9195         Fix truncated --png output (Peter Danenberg).
9196         
9197         * python/lilylib.py (make_ps_images):
9198         * scripts/ps2png.py (copyright): Grok --papersize option.
9200         * scm/backend-library.scm (postscript->png): Add parameter
9201         PAPERSIZE.  Update callers.
9203         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
9204         Fixes symbol placement.
9206         * lily/spanner.cc: 
9207         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
9208         <libc-extension.hh>).
9210 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9212         * Nitpick run.
9214         * buildscripts/fixcc.py: Update.
9216         Builddir run fixes.
9218         * HACKING (datadir): Add VERSION.
9220         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
9221         higher up.
9223 2005-03-15  Werner Lemberg  <wl@gnu.org>
9225         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
9226         diagonal stem doesn't become thinner.
9228 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
9230         * buildscripts/fixcc.py: Fixes (Werner).
9232 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9234         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
9235         Emmentaler/Aybabtu.
9237         * GNUmakefile.in: fix lilypond-words path.
9239         * po/tr.po: update to 2.3.21
9241         * lily/new-fingering-engraver.cc (position_scripts): take priority
9242         from head position.
9244         * input/regression/finger-chords-order.ly (texidoc): new file.
9246 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
9248         * make/ly-rules.make: 
9249         * stepmake/aclocal.m4: 
9250         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
9252         * buildscripts/fixcc.py (rules): Leave space after operator.
9254 2005-03-14  Werner Lemberg  <wl@gnu.org>
9256         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
9257         top of the glyph with smooth curve.
9259 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9261         * Documentation/user/global.itely (Page layout): remove
9262         printpagenumber.
9264 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
9266         * input/regression/mensural-ligatures.ly: new file (with examples
9267         compiled by Pal Benko).
9269         * Documentation/user/instrument-notation.itely: Bugfix: yet some
9270         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
9271         musicglyph access.  Many small beautifications in ancient
9272         examples.
9274         * input/test/divisiones.ly: fixed indentation; small
9275         beautifications
9277         * ly/engraver-init.ly: added FIXME comment
9279         * scripts/lilypond-book.py,
9280         Documentation/user/lilypond-book.itely: added music fragment
9281         option "packed" to lilypond-book
9283         * Documentation/user/instrument-notation.itely: Bugfix: added
9284         missing LedgerLineSpanner color setting in several places.  Added
9285         music fragment option "packed" to VaticanaContext example.
9287 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9289         * scm/define-grobs.scm (all-grob-descriptions): switch off
9290         Hyphen_spanner::set_spacing_rods 
9292         * lily/lyric-hyphen.cc (print): add padding between syllable and
9293         hyphen.
9294         (print): shorten hyphen in tight situations (determine using
9295         minimum-length)
9297         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
9298         0.4pt.
9300 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
9302         * ly/titling-init.ly (bookTitleMarkup): Refinements.
9304         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
9305         header/footer markings for regression-test.
9307         * scm/backend-library.scm (output-scopes, header-to-file): Move
9308         from framework-tex.scm.
9310         * scm/framework-ps.scm (output-framework)
9311         (output-preview-framework):
9312         * scm/framework-eps.scm (output-classic-framework)
9313         (output-framework): Use it.  Fixes collated files.
9315 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9317         * input/sakura-sakura.ly: 
9318         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
9320         * buildscripts/guile-gnome.sh: Update.
9322         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
9324         * mf/aybabtu.pe.in: Capitalize Aybabtu.
9326 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9328         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
9329         culprit: always exit the loop if we find a rod, even if it has
9330         distance < 0. 
9332         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
9333         algorithm.
9335         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
9336         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
9338         * scm/output-svg.scm (dashed-line): new  function body.
9339         
9340         * GNUmakefile.in: create .htaccess.
9342 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
9344         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
9346 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9348         * VERSION (PACKAGE_NAME): release 2.5.15
9350         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
9352         * scm/framework-svg.scm (output-framework): put scaling in
9353         document header. Apply scaling only once.
9354         (output-framework): dump page size in px, not mm. 
9356         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
9357         from font-size.
9359         * lily/paper-outputter-scheme.cc (LY_DEFINE):
9360         ly:outputter-output-scheme, new function.
9362         * scm/output-svg.scm (pango-description-to-svg-font): new function
9364 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9366         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
9367         target.
9369         * input/typography-demo.ly: new file.
9371 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9373         * Documentation/user/global.itely (File structure): Add markup blocks
9374         to toplevel expressions.
9375         (Multiple movements, Creating titles): Add markup blocks.
9377         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
9378         <libc-extension.hh>).
9380         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
9382         * flower
9383         * lily
9384         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
9386 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9388         * lily/accidental.cc: special bboxes for natural. 
9390         * mf/feta-toevallig.mf: make stems heavier.
9392         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
9393         texts as well.
9395         * mf/feta-klef.mf: revise. 
9397         * mf/feta-schrift.mf: make thinning of accent less pronounced.
9399         * mf/feta-klef.mf: add rounded curve at top. 
9400         make thinnib a little heavier.
9402 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9404         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
9406         * buildscripts/fixcc.py: New file.
9408         * input/regression/utf8.ly: Update Debian font description.
9410 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9412         * stepmake/aclocal.m4: Fix test.
9414 2005-03-09  Graham Percival  <gperlist@shaw.ca>
9416         * Documentation/user/invoking.itely: added Sebastino Vigna's
9417         docs for the --jail option.
9419 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9421         * lily/stem.cc (print): only produce stemlets if there are no
9422         noteheads on this stem.
9424         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
9425         don't crash on stemlet (visible stem without heads).
9427         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
9428         unbroken situations. 
9430         * scm/output-lib.scm (center-invisible): new function.
9432         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
9433         wishes to determine loose column space.
9435         * lily/font-config.cc (init_fontconfig): add
9436         fonts/{otf,type1,cff}  to path.
9438         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
9440         * mf/GNUmakefile (Module): install all fonts under otf/
9442         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
9443         replace /fonts/otf/ by /ps/ 
9445         
9446 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9448         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
9450         * lily/book.cc (process): Oops, add score_.header_.
9452         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
9454         * lily/parser.yy: Handle toplevel and book texts as score.
9456         * scm/page-layout.scm (default-page-make-stencil):
9457         Bugfix: (page-properties rename.
9459         * scm/backend-library.scm (ly:system): Typo.
9461 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9463         * stepmake/stepmake/executable-targets.make (installexe): don't
9464         strip installed executables
9466         * lily/font-select.cc (get_font_by_design_size): revert
9467         pango_description_string as well.
9469         * lily/system.cc (set_loose_columns): put loose column just left
9470         of next column.
9472         * lily/include/group-interface.hh (extract_grob_array): rename
9473         from Pointer_group_interface__extract_grobs
9475         * input/regression/ledger-line-minimum.ly (texidoc): new file.
9477         * lily/ledger-line-spanner.cc (set_spacing_rods): new
9478         function. Keep ledgered note heads at a minimum distance.
9479         Introduce minimum-length-fraction
9480         (print): introduce length-fraction property.
9482 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9484         * tex/GNUmakefile: remove latin1.enc rules.
9486 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9488         * scm/titling.scm: Typo.
9490         * input/regression/score-text.ly: Really add.
9492         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
9494 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9496         * lily/open-type-font-scheme.cc:  new file.
9498 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9500         * scm/titling.scm (layout-extract-page-properties): Rename from
9501         page-properties.  Update callers.
9503         * lily/lexer.ll (Lily_lexer):
9504         * lily/parser.yy: Junk lyric_markup state.
9506         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
9508         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
9509         Add texts parameter.
9511 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9513         * lily/lexer.ll (lyric_markup): New mode.
9514         (Lily_lexer::push_lyric_markup_state): New method.
9515         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
9517         * lily/parser.yy (book_body):
9518         (toplevel_expression): Grok \markup texts.
9520         * lily/score-scheme.cc (ly:music-scorify): 
9521         * scm/lily-library.scm (collect-music-for-book): Take texts
9522         parameter.
9524         * lily/score.cc (texts_): New member.
9526         * lily/paper-book.cc (systems): Format score texts.
9528         * score-text.ly: New file.
9530         * ttftool/SConscript:
9531         * kpath-guile/SConscript: New file.
9533         * lily/SConscript:
9534         * SConstruct: Update.
9536 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9538         * VERSION (PACKAGE_NAME): release 2.5.14
9540 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
9542         * lily/main.cc: Add dummy xgettext markers.
9544 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9546         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
9547         requirements
9549         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
9550         executable is < 40k
9552         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
9553         hack.
9555 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9557         * flower/libc-extension.cc:
9558         * flower/include/libc-extension.hh: [Open]BSD simply cast
9559         cookie/funopen declarations.
9561         * stepmake/aclocal.m4: Check for libkpathsea.so.
9563         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
9564         dl_kpse_find_file.
9566 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9568         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
9569         (open_library): alternative for static library.
9571 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9573         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
9575         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
9577         Drop run-time dependency on teTeX.
9579         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
9581         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
9582         KPATHSEA_LIBS in LIBS.
9583         (STEPMAKE_DLOPEN): New function.
9585         * lily/font-config.cc (init_fontconfig): Use dir for directory,
9586         not path.
9588         * flower/file-path.cc (directories): Rename from paths, as this
9589         return an array of directories (a single path).
9591 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9593         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
9595         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
9596         new ly:kpathsea-find-file
9598         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
9600         * kpath-guile/GNUmakefile: new file
9602         * buildscripts/gen-emmentaler-scripts.py (i): generate
9603         emmentaler-X.fontname as well.
9605         * buildscripts/ps-embed-cff.py: new script
9607         * scm/lily-library.scm: remove ps-embed-cff.
9609         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
9610         font loading. 
9612         * scm/font.scm (add-music-fonts): load dynamics/numbers through
9613         fontconfig as well.
9615         * lily/font-config.cc (init_fontconfig): add cff/ too.
9617         * ly/generate-embedded-cff.ly: capitalize.
9619         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
9620         so as to register the pango font.
9622         * lily/font-config.cc (init_fontconfig): add
9623         prefix/{otf,type1,mf/out} to fontconfig path.
9625         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
9626         overrides all. 
9628         * configure.in (gui_b): remove ec mftrace check
9630         * config.hh.in: use lilypond-Major.Minor as data directory.
9632         * scm/framework-ps.scm (dump-page): use output-units for landscape.
9634         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
9635         name.
9637 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
9639         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
9640         error messages.
9642         * flower/libc-extension.cc:
9643         * flower/include/libc-extension.hh: [Open]BSD fixes for
9644         cookie/funopen declarations.
9646 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9648         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
9649         emmentaler.
9651         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
9652         lcrm10.
9654         * scm/define-markup-commands.scm (fontsize): new markup
9655         command. Also set baseline-skip
9657 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
9658         
9659         * lily/main.cc (do_chroot_jail): paranoia security for webserver
9660         use.
9662 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9664         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
9666         * lily/pdf.cc: remove PDF related files
9668 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9670         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
9671         <hamamatsu@gmx.de>
9673 2005-03-05  Graham Percival  <gperlist@shaw.ca>
9675         * Documentation/user/advanced-notation.itely: first draft
9676         of reorg done.
9678         * Documentation/user/global.itely: fixed (sub)section
9679         bits of MIDI.
9681 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9683         * cygwin/mknetrel (extras): Bufix (Bertalan).
9685         * Documentation/user/basic-notation.itely (Chords): @ref fix.
9686         * Documentation/user/instrument-notation.itely (Introducing chord
9687         names): Compile fix: must have unique name.
9689 2005-03-02  Graham Percival  <gperlist@shaw.ca>
9691         * Documentation/user/instrument-notation.itely: reorg.
9693 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
9695         * scm/output-gnome.scm:
9696         * scm/output-svg.scm: Fix font scaling.
9698 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9700         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
9701         what link to use best.
9703         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
9704         * Documentation/user/tutorial.itely (Automatic and manual beams):
9705         Fix @ref.
9707         * lily/tweak-registration.cc (replace_grob_tweak): New function.
9708         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
9709         * scm/framework-gnome.scm (tweak): Use it.
9711 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9713         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
9715         * scm/output-ps.scm (white-text): reinstate white-text
9717 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9719         * scm/output-ps.scm (offset-add): Remove.
9721         * scm/lily-library.scm (offset-flip-y): New function.
9722         * scm/framework-gnome.scm (tweak): Use it.
9724         * scm/output-gnome.scm (grob-cause): Add parameter.
9726         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
9727         * scm/output-ps.scm (url-link): Move.
9728         (white-text): Warn user about brokenness.
9730         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
9731         wrt ghostscript.
9733 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9735         * lily/slash-repeat-engraver.cc (try_music): always make slashes
9736         if body length smaller than measure length.
9738         * scm/define-markup-commands.scm (with-url): oops. use Y extent
9739         for Y.
9741         * ly/titling-init.ly (tagline): put default tagline in \paper
9743 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9745         * lily/kpath.cc: 
9746         * lily/pdf.cc (Pdf_file): Use more generic error messages.
9748         * scm/lily-library.scm (version-not-seen-message): New function.
9749         * ly/init.ly: Use it.
9751         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
9752         breaks as progess.
9754         * scripts/lilypond-book.py (do_process_cmd): Do not lump
9755         whitespace with l10n message.
9757         * scm/framework-tex.scm (convert-to-ps):
9758         (convert-to-dvi): Do not use overly specific l10n messages.
9760         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
9762         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
9763         merge stderr with stdout.  
9765 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
9767         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
9768         Neeracher).
9770 2005-02-29  Graham Percival  <gperlist@shaw.ca>
9772         * Documentation/user/instrument-notation.teily: moved
9773         \arpeggio to Basic.
9775         * Documentation/user/advanced-notation.itely: Articulation to
9776         Basic, a bunch of stuff from Basic moved to Advanced.
9778         * Documentation/user/basic.itely: swapped various sections,
9779         reorganized Basic.
9781 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9783         * flower/memory-stream.cc: 
9784         * flower/libc-extension.cc: Remove obsolete #undefs.
9786         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
9787         more carefully.
9789 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9791         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
9792         dependency.
9794         * VERSION (PACKAGE_NAME): release 2.5.13
9796         * GNUmakefile.in (web-ext): don't ship ps.gz
9798         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
9799         stdout
9801 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9803         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
9804         without libintl.  Now it compiles too.
9806 2005-02-28  Graham Percival  <gperlist@shaw.ca>
9808         * Documentation/user/basic-notation.itely,
9809         instument-notation.itely, advanced-notation.itely:
9810         split up contents of notation.itely.
9812         * Documentation/user/notation.itely: file removed.
9814         * Documentation/user/invoking.itely, converters.itely:
9815         moved convert-ly info to invoking.itely.
9817         * Documentation/user/global.itely, changing-defaults.itely,
9818         sound-output.itexi: moved global settings, file layout, and
9819         sound into global.itely.
9821         * Documentation/user/sound-output.itexi: file removed.
9823         * Documentation/user/lilypond.tely: removed links to
9824         notation.itely and sound.itely.
9826 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9828         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
9830         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
9832         * THANKS: add sponsor.
9834         * scm/define-markup-commands.scm (with-url): new markup command.
9836         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
9837         tagline.
9838         
9839         * scm/output-tex.scm (url-link): stub.
9841         * scm/output-ps.scm (url-link): new function.
9843         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
9844         ly:set-point-and-click
9846 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9848         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
9849         based on pdf-viewer setting.
9851         * scm/framework-ps.scm (write-preamble): Find and set preferred
9852         pdf-viewer.
9854 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9856         * Documentation/user/point-and-click.itely: update for PDF point &
9857         click.
9859         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
9860         editors based on EDITOR setting.
9862 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9864         * scm/*: Oops, more grand 2005 replace bits.
9866 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9868         * ps/music-drawing-routines.ps: new routine: insert PDF mark
9870         * scm/output-ps.scm (grob-cause): point & click support for
9871         PostScript
9873 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9875         * lily/input-scheme.cc (LY_DEFINE): rename to
9876         ly:input-file-line-column
9878 2005-02-26  Graham Percival  <gperlist@shaw.ca>
9880         * Documentation/user/examples.itely: small fix from Steve Doonan.
9882         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
9884         * THANKS: added Yuval Harel.
9886         * Documentation/user/{various}: inserted two spaces after a period.
9888         * Documentation/user/lilypond.tely: added framework for reorg.
9890         * Documentation/user/basic-notation.itely, instrument-notation.itely,
9891         advanced-notation.itely, global.itely: new files, placeholder for
9892         future reorg.
9894 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
9896         * Documentation/user/notation.itely: revamped Polyphony section
9897         
9898 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9900         * Documentation/user/lilypond-book.itely (Music fragment options):
9901         doc fontload.
9903         * Documentation/user/changing-defaults.itely (Text encoding): add
9904         fontload option to utf8 include
9906         * scripts/lilypond-book.py (compose_ly): add fontload option
9908         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
9909         force-eps-font-include option.
9911         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
9912         black triangle
9914         * Documentation/user/invoking.itely (Editor support): remove
9915         lilypond-latex section.
9917         * scripts/lilypond-latex.py (Module): remove script.
9919         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
9920         overwrite .log. 
9922         * lily/main.cc: remove -m, --no-layout
9924         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
9925         to define. We don't want to override fprintf everywhere.
9927 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
9929         * cygwin/lilypond.hint: 
9930         * cygwin/README.in: Update dependencies.
9932         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
9933         Bugfix: do not pollute CPPFLAGS, LIBS.
9935         * cygwin/mknetrel (extras): Cross compile fixes.
9937         * ttftool/util.c: 
9938         * ttftool/ttfps.c: 
9939         * ttftool/ps.c: #include libc-extension.hh
9941         * flower/include/libc-extension.hh:
9942         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
9943         wrapper using funopen.
9944         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
9945         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
9947         * config.hh.in:
9948         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
9949         (AC_CHECK_HEADERS): Add libio.h
9951         * scripts/convert-ly.py: Uniformize, internationalize.
9952         (2.5.2): Remove fatal encoding rule.
9953         (2.5.13): Handle latin1 encoding gracefully.
9955 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
9957         * HACKING: Fix line breaks.
9959 2005-02-23  Werner Lemberg  <wl@gnu.org>
9961         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
9962         contains those two files.
9964 2005-02-21  Werner Lemberg  <wl@gnu.org>
9966         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
9967         to improve overlap removal process.
9969         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
9970         left and right ending.  This ensures better overlapping.
9971         Update all callers.
9972         ("lineprall"): Don't use draw_gridline to get better overlapping.
9974 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9976         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
9978         * Documentation/topdocs/NEWS.tely (Top): oops.
9980 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
9982         * HACKING: new file.
9984         * input/regression/utf8.ly (portuguese): added a portuguese example
9985         to show latin1 accents.
9987 2005-02-21  Pal Benko  <benkop@freestart.hu>
9989         * lily/mensural-ligature-engraver.cc:
9990         * lily/mensural-ligature.cc:
9991         * lily/include/mensural-ligature.hh: new algorithm implemented
9993         * scm/define-grob-properties.scm: join-left killed (add-join may
9994         be used); join-left-amount changed to join-right-amount
9996 2005-02-21  Graham Percival  <gperlist@shaw.ca>
9998         * Documentation/user/notation.itely: small but urgent fix.
10000 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
10002         * lily/duration-scheme.cc: bugfix: correct parameters to
10003         SCM_ASSERT_TYPE.
10005         * THANKS: added Pal.
10007         * Documentation/user/notation.itely: bugfix: unTeXified
10008         $\\backslash$.  Bugfix: yet another glyph renaming victim:
10009         "timesig.*x/y" -> "timesig.*xy".
10011 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10012         
10013         * VERSION (PACKAGE_NAME): release 2.5.12
10015 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10017         * ly/engraver-init.ly: set tieWaitForNote to #t by default
10019         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
10021         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
10023         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
10025 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10027         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
10028         latin1..utf-8.
10030         * input/regression/stanza-number.ly:
10031         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
10033         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
10035 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10037         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
10038         NEWS. Refer to website for older news.  
10040         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
10041         .HTML. This should be done for specific servers only.
10043         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
10044         .ly image examples.
10046         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
10047         in layer 0 too.
10049         * scm/define-context-properties.scm
10050         (all-user-translation-properties): add tieWaitForNote
10052         * scm/define-grobs.scm (all-grob-descriptions): add
10053         Tie_column::before_line_breaking
10055         * lily/tie.cc (get_column_rank): new function
10057         * lily/tie-column.cc (before_line_breaking): new function.
10058         (werner_directions): take into account ties that start on
10059         different columns.  
10061         * lily/score-engraver.cc (set_columns): move add_column() so we
10062         have column rank available.
10064         * lily/tie.cc (get_column_rank): new function.
10066         * input/regression/utf8.ly (japanese): add japanese lyrics.
10068         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
10070         * THANKS: add Steve D
10072         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
10073         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
10075 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
10077         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
10078         to show harmonic notes
10079         * scm/define-markup-commands.scm: in \markup-by-number
10080         "dots-dot" -> "dots.dot" to show dotted notes
10082 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10084         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
10086         * flower/memory-stream.cc (writer): new file.
10088         * configure.in: add endian test.
10090 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
10092         * Documentation/user/examples.itely: small
10093         simplification/beautification
10095         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
10096         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
10097         notation manual.
10099         * lily/mensural-ligature.cc: bugfix: another few victims of the
10100         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
10102         * ly/gregorian-init.ly: commit some experimental code for hi-level
10103         ligature input language lying around here for several months.
10105         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
10106         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
10108         * lily/vaticana-ligature-engraver.cc: bugfix: another few
10109         "x-y-z"->"x.y.s-z" fixes.
10111 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10113         * scm/framework-pdf.scm (scm): new file
10115         * lily/include/pdf.hh (class Pdf_file): new file.
10117         * lily/pdf.cc (write_trailer): new file.
10119 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
10121         * input/regression/color.ly: new file
10123         * lily/stencil.cc (interpret_stencil_expression):
10124         when a color expression is encountered: save current color,
10125         process the rest of the expression, and restore previous color.
10127         * lily/system.cc (get_line): check all grobs for color property and
10128         prepare the stencil scheme expressions for further processing.
10129         Fix layer-loop.
10131         * scm/define-grob-properties.scm: introduce the color property.
10133         * scm/output-lib.scm: color helper functions.
10135         * scm/output-ps.scm: introduce setcolor/resetcolor.
10137 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
10139         * ly/*.ly, input/regression/*.ly: Added missing \version
10140         statements in some files.
10142 2005-02-15  Graham Percival  <gperlist@shaw.ca>
10144         * Documentation/user/notation.itely: minor editing.
10146         * Documentation/user/converters.itely: updated convert-ly bugs.
10148         * Documentation/user/lilypond-book.itely: add info about using
10149         feta characters in latex.
10151 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10153         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
10155 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10157         * scm/define-grob-properties.scm (all-user-grob-properties):
10158         removed 'dashed property.
10160 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10162         * scm/lily.scm (define-safe-public): new macro for defining
10163         variables that can be used in --safe mode. Use it in *.scm
10164         instead of manually setting safe-objects in safe-lily.scm.
10166 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10167         
10168         * lily/slur.cc: Slur-dash patch by Bertalan.
10170         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
10172         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
10174 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10176         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
10178 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10180         * mf/GNUmakefile: teTeX-3.0 install fix.
10182         * Cygwin patch from Bertalan.
10184         * stepmake/stepmake/metafont-rules.make: Remove bashism.
10186 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10188         * GNUmakefile.in: 
10189         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
10191         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
10192         2.0.x compatibility.
10194 2005-02-08  Werner Lemberg  <wl@gnu.org>
10196         * mf/feta-din-code.mf: Format; clean up code.
10197         Replace `---' with `--' plus explicit path directions.
10198         (linethickness#, stafflinethickness#): Remove.
10199         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
10200         ("dynamic s"): Improve shape.
10201         ("dynamic p"): Improve shape.
10202         Replace `draw' with better outline approximation.
10203         ("dynamic r"): Improve shape.
10204         Don't call `fill' and `draw' at the same time.
10206 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10208         * SConstruct (symlink):
10209         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
10210         build fix: add enc symlink.
10212         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
10214         Support for DESTDIR besides prefix=/foo
10216         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
10218         * stepmake/stepmake/*.make:
10219         * */GNUmakefile:
10220         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
10222         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
10224         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
10225         mawk in fontforge (date) test.
10227 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10229         * scm/font.scm (make-century-schoolbook-tree): add NCS as
10230         font-family=roman. Add Luxi Sans as sans
10232 2005-02-07  Graham Percival  <gperlist@shaw.ca>
10234         * Documentation/user/notation.itely: add warning about
10235         percent repeats and Voice contexts.
10237         * Documentation/user/lilypond-book.itely: clarified the
10238         necessity of dvips -u arguments.
10240 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
10242         * THANKS: Added a bunch of bug hunters.
10244 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10246         * scm/framework-ps.scm (output-preview-framework): bugfix.
10248         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
10249         o/ for chord modifier..
10251         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
10253         * lily/drum-note-performer.cc:  remove unused (thanks Michael
10254         Welsh Duggan). 
10256 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10258         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
10260         * ly/titling-init.ly: Do not also print intstrument in header on
10261         first page.  Do not print page number on first and only page.
10263 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10265         * input/regression/*.ly: remove old-relative everywhere
10267         * lily/music-sequence.cc (simultaneous_relative_callback): do
10268         what-if analysis on copy, not on original. Fixes old-relative
10269         compatibility.
10271         * scm/backend-library.scm (postscript->png): space before
10272         --verbose.
10273         
10274 2005-02-05  Werner Lemberg  <wl@gnu.org>
10276         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
10277         is defined.
10279         * mf/feta-alphabet.mf: Define `staffsize#'.
10280         Include `feta-params.mf'.
10281         s/staffheight/design_size/.
10283         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
10285         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
10287         * mf/feta-nummer-code.mf: Reformatted.
10288         (draw_six): Use outline intersection to avoid a self-intersecting
10289         path.
10290         ("Numeral comma"): Fix serious outline glitches.  This slightly
10291         changes the glyph shape.
10292         ("Numeral dash"): Use `draw_rounded_block'.
10293         ("Numeral dot"): Use `drawdot'.
10294         ("Numeral 1"): Assure identical tangent directions for the
10295         intersection points of paths.  The glyph shape improvement is only
10296         visible at very high magnifications.
10297         ("Numeral 2"): Use `solve' macro to make the lower right part of
10298         the glyph outline touch the x axis exactly.  This changes the
10299         glyph shape.
10300         Minor fixes for better overlap removal support.
10301         ("Numeral 4"): Make lefter corner `rounder'.
10302         ("Numeral 5"): Assure identical tangent directions for the
10303         intersection points of paths.  This improves the glyph shape at
10304         high magnifications.
10305         ("Numeral 7"): Use `solve' macro to make the upper right part of
10306         the glyph outline touch the metrics box exactly.  This changes the
10307         glyph shape.
10308         Avoid corner in the upper left part of the glyph (causing a minor
10309         shape change).
10311         * mf/feta-ital-*.mf: Removed.  Unused.
10313 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10315         * VERSION (PATCH_LEVEL): release 2.5.11
10317         * input/regression/fill-line-test.ly: new file.
10319         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
10320         emmentaler name, eg. emmentaler-23. 
10322 2005-02-04  Christian Hitz  <chhitz@gmx.net>
10324         * scm/scm/define-markup-commands.scm (fill-line): rework for better
10325         alignment with centered texts
10327         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
10328         list of paddings
10330 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10332         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
10334         * lily/note-column.cc (translate_rests): call flush_extent_cache()
10335         of parents when translating rests. Fixes: c-chord-rest.ly 
10337         * lily/include/dimension-cache.hh (struct Dimension_cache): add
10338         dimension_callback_ member.
10340         * lily/grob.cc (flush_extent_cache): new function. Force recompute
10341         of extents.
10343 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
10345         * all but lily/*: The grand 2004/2005 replace.
10347 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10349         * lily/*: add space after ,  
10351         * scm/music-functions.scm (has-request-chord): don't use
10352         ly:music-name anywhere. Fixes <<\\>> notation. 
10354         * scm/define-markup-commands.scm (box): use font-size for
10355         padding. Fixes boxed-rehearsal-marks.ly
10357         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
10358         identifier definition too, so foo = \lyrics { ...   } bar = #1
10359         doesn't complain about "bar" being LYRICS_STRING.
10361         * lily/paper-def.cc (find_pango_font): new routine; Store
10362         pango_fonts in hash tab too. This is necessary for retrieving
10363         Pango_fonts::physical_font_tab() later on.
10365         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
10366         crash if psname is null.
10368         * lily/lily-guile.cc (ly_hash2alist): new function
10370         * Documentation/user/changing-defaults.itely (Text encoding):
10371         rewrite. 
10373         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
10374         -> font_filename mapping.
10376         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
10377         ly_pango_font_physical_fonts
10379         * scm/framework-ps.scm (supplies-or-needs): extract names from
10380         physical Pango_fonts.
10382         * utf8.ly: new file.
10384 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10386         * Documentation/user/changing-defaults.itely (Page layout): add
10387         doco about systemSeparatorMarkup.
10389         * scm/page-layout.scm (default-page-make-stencil): add-to-page
10390         function.
10391         (default-page-make-stencil): insert system separators.
10393         * scm/define-markup-commands.scm (hcenter): add
10394         (beam): add.
10396 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10398         * scm/output-ps.scm (ez-ball): reinstate ez notation.
10400 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10402         * lily/main.cc: Spell backend consistently.  Sort options.
10404 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10406         * scripts/lilypond-book.py (Module): revert @include.
10407         
10408 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10410         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
10411         Bugfix: @include .tex (not .texi).  Small cleanups.
10413         * stepmake/bin/add-html-footer.py (i18n): New function.
10415 2005-01-31  Werner Lemberg  <wl@gnu.org>
10417         * mf/feta-nummer.mf: Removed.  Unused.
10419 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10421         * lily/ : 2004 -> 2005 s&r
10423         * scm/file-cache.scm (cached-file-contents): add file. Read each
10424         file only once.
10426         * scm/font.scm (add-pango-fonts): change order. Medium weight is
10427         now default.
10429         * VERSION: release 2.5.10
10430         
10431         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
10433         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
10435         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
10436         that both X and Y extents of bbox are non-nil.
10438 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10440         * scm/chord-name.scm (alteration->text-accidental-markup): change
10441         - to . 
10443         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
10445         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
10447         * Documentation/user/invoking.itely (Invoking lilypond): add note
10448         about EPS backend.
10450         * scm/framework-eps.scm: new file: create per-system/per-page EPS
10451         files for inclusion in lilypond-book document.
10453         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
10455         * input/tutorial/lbook-texi-test.texi: new file.
10457         * scm/safe-lily.scm (safe-objects): add
10458         {begin,end}-of-line-(in)?visible as safe.
10460 2005-01-30  Graham Percival  <gperlist@shaw.ca>
10462         * Documentation/user/changing-defaults.itely: fixed example
10463         of (dynamics).
10465 2005-01-29  Graham Percival  <gperlist@shaw.ca>
10467         * lily/main.cc: fix info about -o=FILE.
10469 2005-01-29  Werner Lemberg  <wl@gnu.org>
10471         * mf/feta-toevallig.mf ("Natural"): Completely changed the
10472         construction to assure smooth transition from straight to curved
10473         lines.
10475 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10477         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
10478         stencils.
10480         * ps/lilyponddefs.ps: add start-page, start-system doesn't
10481         translate to top of page. Fixes alignment problems of
10482         lilypond-generated EPS files.
10484 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10486         * scm/part-combiner.scm (analyse-spanner-states): trigger on
10487         crescendo-end as well, since Decrescendo maybe ended with Stop
10488         Crescendo.). Fixes: partcombine-diminuendo.ly
10490         * scm/script.scm (default-script-alist): swap portato symbols.
10492         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
10494         * lily/paper-outputter-scheme.cc (LY_DEFINE):
10495         ly:outputter-port. New function.
10497         * scm/framework-ps.scm (output-classic-framework): dump a
10498         -systems.texi too
10499         (output-classic-framework): dump multiple systems on an "infinite"
10500         page EPS including fonts. 
10502         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
10503         .eps files for both texi and tex formats. Use PNG coming from
10504         lilypond.
10505         
10506 2005-01-28  Graham Percival  <gperlist@shaw.ca>
10508         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
10510         * scripts/lilypond-latex.py: fix info about -o=FILE.
10512 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10514         * ly/generate-embedded-cff.ly: write .cff.ps files.
10516         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
10518         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
10519         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
10521 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10523         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
10525 2005-01-28  Werner Lemberg  <wl@gnu.org>
10527         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
10528         macros.
10529         (draw_bulb): Improved.
10531         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
10532         metapost bug.
10533         (draw_pedal_P): Use soft_end_penstroke.
10534         (draw_pedal_d): Use soft_start_penstroke.
10536         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
10537         path.
10538         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
10539         doesn't change the glyph shape.
10541         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
10542         changing the shape) to avoid fontforge warnings.
10544         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
10545         soft_end_penstroke and fix glyph shape.
10547 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10549         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
10551 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10553         * scm/define-markup-commands.scm (line): filter out empty stencils
10554         from line command.
10556         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
10557         amount.
10559 2005-01-27  Graham Percival  <gperlist@shaw.ca>
10561         * Documentation/user/notation.itely: added info about what
10562         \voiceFoo does.  Also rewrote warning about marks at
10563         a line break.
10565         * Documentation/user/changing-defaults.itely: added info
10566         about putting dynamics in parenthesis and brackets.
10568 2005-01-27  Werner Lemberg  <wl@gnu.org>
10570         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
10572 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10574         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
10575         portato-direction.ly
10577         * lily/beam.cc (consider_auto_knees): add beam height to
10578         threshold. Fixes: knee-multiple-beam.ly
10580         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
10581         pedal line spanners. Fixes: instrument-center-pedal.ly
10583         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
10584         if encountering barline. Fixes: auto-beam-repeat.ly
10586 2005-01-26  Werner Lemberg  <wl@gnu.org>
10588         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
10589         overlapping.
10591         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
10592         with inflections for the 1/2 sharp glyph.
10594         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
10595         connection between `t' and `r'.
10596         Unify bulb with the rest of `r' to avoid grazing outlines which
10597         confuses the overlap removal algorithm of fontforge.
10599         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
10600         inflections.
10601         (draw_cross): Fix shape to have uniform thickness in corners.
10603         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
10604         to avoid an uneven number of self-intersections; this confuses
10605         fontforge.
10606         Fix a slight bug in the shape at left bottom (which is visible only
10607         at high magnifications).
10608         `Center' the stem horizontally to avoid overlapping.
10610 2005-01-24  Werner Lemberg  <wl@gnu.org>
10612         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
10613         to `asis'.
10614         (fet_begingroup): Save group name in string `feta_group'.
10615         (fet_endgroup): Updated.
10616         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
10618         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
10620         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
10621         in metapost.
10623 2005-01-24  Graham Percival  <gperlist@shaw.ca>
10625         * Documentation/user/notation.itely: really minor editing.
10627 2005-01-22  Graham Percival  <gperlist@shaw.ca>
10629         * Documentation/user/examples.itely: minor editing.
10631         * Documentation/user/changing-defaults.itely: minor editing.
10633         * Documentation/user/notation.itely: clarified info on polyphony
10634         and \addlyrics.
10636 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
10638         * scm/output-gnome.scm: 
10639         * scm/output-svg.scm:
10640         * scm/lily-library.scm (font-name-style): Update font name
10641         kludging for fontconfig use.
10643 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
10645         * scm/define-markup-commands.scm: Document right-align and
10646         larger markup commands. Remove "TODO" from the topmost comment
10647         "each markup function should have a doc string." More consistent
10648         use of new-lines.
10650 2005-01-22  Graham Percival  <gperlist@shaw.ca>
10652         * Documentation/user/changing-defaults: removed info about
10653         copyright symbol, since it's likely to change soon.
10654         Added info about betweensystemspace.
10656         * Documentation/user/notation.itely: minor fixes.
10658         * Documentation/user/lilypond.tely,
10659         Documentation/user/music-glossary.tely: changed copyright
10660         date to 2005 instead of 2004.
10662         * input/test/volta-chord-names.ly: added old example back.
10664 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10666         * mf/feta-beugel.mf: use design size 20 (not 15).
10668         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
10669         change name to aybabtu completely
10671 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10673         * buildscripts/gen-emmentaler-scripts.py (outdir): add
10674         design_size to fontname
10676 2005-01-19  Werner Lemberg  <wl@gnu.org>
10678         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
10679         mf/feta-schrift.mf: s/p/pat/ if a path variable.
10681         * mf/feta-autometric.mf (set_char_box): Add code which emits
10682         specials for mf2pt1 if run with metapost.
10683         (to_bp): New macro for mf2pt1.
10685 2005-01-18  Graham Percival  <gperlist@shaw.ca>
10687         * Documentation/user/changing-defaults: added info on
10688         creating a copyright symbol.
10690 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10692         * VERSION: release 2.5.9
10693         
10694 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
10696         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
10698         * Documentation/user/notation.itely: Document
10699         score-override-auto-beam-setting Fix documentation for
10700         revert-auto-beam-setting.
10702 2005-01-18  Werner Lemberg  <wl@gnu.org>
10704         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
10705         (procset): New function to define a procset resource.
10706         (ps-embed-pfa): New function to define a font resource.
10707         (setup): New function to define a `Setup' environment.
10708         (preamble): Use new functions.
10710         * ps/lilypond.defs (init-lilypond-parameters): New function to
10711         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
10713 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10715         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
10717 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
10719         * scm/define-markup-commands.scm: Change number->markletter-string
10720         to take two arguments (vector number). Add number->mark-alphabet-vector
10721         and markalphabet markup command.
10723         * scm/translation-functions.scm: Add format-mark-box-alphabet,
10724         format-mark-alphabet, format-mark-box-barnumbers and
10725         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
10727 2005-01-17  Graham Percival  <gperlist@shaw.ca>
10729         * Documentation/user/examples.itely: add SATB automatic piano
10730         reduction template.
10732         * Documentation/user/notation.itely: added info about changing
10733         partcombine texts.  Also adds examples of alternate lyrics.
10735         * Documentation/user/changing-defaults.itely: added warning
10736         about \RemoveEmptyStaffContext overriding previous changes.
10738 2005-01-17  Werner Lemberg  <wl@gnu.org>
10740         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
10741         feta-alphabet*.
10743 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10745         * python/lilylib.py (make_ps_images): don't do final showpage for
10746         multi-page documents.
10747         
10748         * VERSION (MY_PATCH_LEVEL): release 2.5.8
10750 2005-01-16  Graham Percival  <gperlist@shaw.ca>
10752         * Documentation/user/lilypond.tely: changed order of appendices;
10753         unified index should be last.
10755         * Documentation/user/notation.itely: add example of key signatures
10756         and info about Staff.printKeyCancellation.
10758 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10760         * lily/include/repeated-music.hh (class Repeated_music): change
10761         into "namespace" class.
10763         * lily/event.cc: remove Key_change_event.
10765         * lily/include/transposed-music.hh (class Transposed_music): remove.
10767         * lily/transposed-music.cc: remove
10769         * lily/include/relative-music.hh: remove.
10771         * lily/include/music-sequence.hh (struct Music_sequence): change
10772         into "namespace" class.
10774         * lily/untransposable-music.cc (Module): remove
10776         * lily/include/un-relativable-music.hh (Module): remove
10778         * lily/include/untransposable-music.hh (Module): remove
10780         * lily/include/music-list.hh (Module): remove file
10782         * lily/un-relativable-music.cc: remove file.
10784 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10786         * lily/parser.yy: Compile fix.
10788 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10790         * lily/include/music.hh (class Music): unvirtualize transpose().
10792         * lily/sequential-music.cc: remove file.
10794         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
10796         * lily/slur-scoring.cc (get_best_curve): only switch on
10797         DEBUG_SLUR_SCORING for non NDEBUG builds.
10799         * lily/include/music.hh (class Music): replace Music::start_mom()
10800         by start-callback property
10802         * lily/include/grace-music.hh: remove file. 
10804         * lily/stem.cc (height): robustness fix.
10806         * lily/time-scaled-music.cc: remove file.
10808         * lily/include/music.hh (class Music): include SCM init argument.
10809         (class Music): replace Music::get_length() virtual by
10810         length-callback property everywhere.
10812         * scripts/convert-ly.py (conv): add  # to \property scalar value.
10814         * mf/GNUmakefile: don't install *list.ly
10816 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10818         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
10820 2005-01-12  Werner Lemberg  <wl@gnu.org>
10822         This patch addresses the following problems in the feta sources
10823         files which contribute to the fetaXX fonts.
10825         . Many fixes for rasterization at low resolutions (consistent use of
10826           `vround' and `hround', integer shift values for paths, applying
10827           `eps' for mirrored paths, use of `define_whole_pixels' and
10828           friends, etc.) -- while this probably looks like a waste of time
10829           it has revealed deficiencies in some glyph shapes.  See comment at
10830           the end of feta-params.mf how vertical symmetry is achieved.
10832         . The `---' operator has been replaced everywhere with `--'; this
10833           both improves and considerably reduces the font size after
10834           conversion with mf2pt1.
10836         These change aren't explicitly mentioned below since virtually all
10837         glyphs are affected.
10839         Other notable differences:
10841         . Glyphs from feta-accordion.mf now have charboxes around the
10842           outline.
10844         . Fixed incorrect charbox for `accDot'.
10846         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
10848         . Fixed position of the bow in the `upprall' glyph and its siblings.
10850         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
10851           dependent on the staff line thickness to avoid touching the middle
10852           staff line at smaller sizes.
10854         . Largely extended output for feta-testXX: Where useful, glyphs
10855         are shown both between and on staff lines.
10858         * mf/feta-params.mf (staff_space_rounded,
10859         stafflinethickness_rounded, linethickness_rounded,
10860         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
10861         Update all code which uses them where appropriate.
10862         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
10863         New variables used to control rasterization at low resolutions.  Set
10864         to zero if feta code is processed with metapost.
10866         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
10867         (draw_rounded_block, draw_square_block): Updated to use `--' only.
10868         (flare_path): Updated.
10869         Make it work with `filldraw' (but only circular pens).
10870         (hfloor, vfloor, hceiling, vceiling): New macros.
10872         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
10873         Use `draw' again in mf mode to have good pixel dropout control.
10874         Fix intersection points of horizontal lines with circle.
10875         ("accDot"): Fix parameters for set_char_box.
10876         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
10877         control.
10879         * mf/feta-banier.mf: Updated.
10881         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
10882         testing.
10883         (undraw_inside_ellipse): Remove `center' argument.  Update all
10884         callers.
10885         (draw_brevis): New macro, called by "Brevis notehead".
10886         (draw_whole_triangle_head): New macro, called by "Whole
10887         trianglehead".
10888         (draw_small_triangle_head): Use `filldraw'.
10890         * mf/feta-eindelijk.mf: Remove useless global group.
10891         Updated.
10893         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
10894         `filldraw'.
10896         * mf/feta-pendaal.mf: Updated.
10898         * mf/feta-puntje.mf: Updated.
10900         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
10901         less points.
10902         ("Flageolet"): Use `draw' again in mf mode to have good pixel
10903         dropout control.
10904         ("Varied Coda"): Use `draw_block'.
10905         (draw_comma): Fix typo.
10906         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
10907         pixel dropout control.
10909         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
10910         position of bow.
10912         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
10913         sizes.
10915         * mf/feta-toevallig.mf (remember_pic): New variable, used for
10916         testing.
10917         (draw_meta_sharp): Much simplified.
10918         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
10920         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
10922 2005-01-13  Mats Bengtsson  <mabe@drongo.s3.kth.se>
10924         * Documentation/user/notation.itely (Ancient rests): Fix typo
10925         (thanks Anthony)
10927 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10929         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
10931         * lily/main.cc (setup_paths): Add cff.
10933         * mf/GNUmakefile (foe): Include actual target %.cff.
10934         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
10936 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10938         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
10939         suffix for main_input_b_.
10941         * scm/music-functions.scm (toplevel-music-functions):
10942         precompute music lengths for music expressions.  
10944 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
10946         * lily/include/input.hh (class Input): new `end_' slot for end of
10947         input. Renamed defined_str0_ to start_.
10949         * lily/input.cc (Input): Add Input::Input (Input const &) and
10950         remove Input::Input (Source_file*, char const *). Use the new
10951         slots.
10952         (set_location): method used by bison to propagate input
10953         locations (YYLLOC_DEFAULT).
10954         (end_line_number, end_column_number, step_forward): new methods
10955         
10956         * lily/input-scheme.cc (ly:input-both-locations): new function,
10957         similar to ly:input-location, but also return the end line and
10958         column.
10960         * lily/include/includable-lexer.hh: 
10961         * lily/includable-lexer.cc: 
10962         * lily/include/lily-lexer.hh (class Lily_lexer): 
10963         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
10964         Includable_lexer to Lily_lexer, in order to update lexloc (the
10965         yylloc), a new slot of Lily_lexer.
10966         (here_input, LexerError): simplify by using the lexloc slot (aka
10967         yylloc)
10969         * lily/lexer.ll: #define yylloc to use input locations (it may
10970         be useless here?). Fixed the #embedded_scm rule (step the location
10971         forward in order to skip the sharp sign before parsing the scheme
10972         expression)
10974         * lily/include/lily-parser.hh (class Lily_parser): 
10975         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
10976         here_input()
10977         (parser_error): overload for more precise locations of errors.
10979         * lily/parser.yy (YYLTYPE): set location type to Input
10980         (YYLLOC_DEFAULT): use Input::set_location()
10981         (yylex): add the YYLTYPE* location parameter.
10982         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
10983         Give an Input parameter to THIS->parser-error() for more accurate
10984         messages.
10986 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10988         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
10990         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
10991         on BEAMQUANTING for non-NDEBUG builds.
10993         * lily/stem.cc (head_count): performance: avoid String::String()
10994         inside oft called function.
10996 2005-01-09  Graham Percival  <gperlist@shaw.ca>
10998         * Documentation/user/examles.itely: attempted fix for broken
10999         string quartet template.
11001         * Documentation/user/notation.itely: remove unnecessary broken
11002         link.
11004 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11006         * VERSION (PACKAGE_NAME): release 2.5.7
11008 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11010         * config.make.in (METAFONT): Append -progname=mf, fixes use with
11011         mf-nowin for teTeX-3.0.  Backportme.
11013         * scm/output-svg.scm (utf8-string): New function.
11015         * scm/output-gnome.scm (utf8-string): New function.
11016         (otf-name-mangling): Remove.
11018         * lily/pango-font.cc (Pango_font): Use font string iso font
11019         filename for utf8-text.
11021         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
11022         name.
11024 2005-01-08  Graham Percival  <gperlist@shaw.ca>
11026         * Documentation/user/notation.itely: add info about
11027         Staff.extraNatural = ##f in Pitches section.  Also
11028         fixed some minor issues in the Vocal music section.
11030 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11032         * scm/output-ps.scm (white-text): comment out Helvetica font,
11033         which is broken for my GS install.
11035         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
11036         which provides a tighter bbox.
11038         * scm/define-grobs.scm (all-grob-descriptions): remove all
11039         extra-offsets from definitions.
11041 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
11043         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
11044         add tuning for 4-string bass and some common 4/5-string banjo
11045         tunings.  New function (four-string-banjo) turns a 5-string tuning
11046         into a 4-string tuning.  New function
11047         (fret-number-tablature-format-banjo) computes correct fret numbers
11048         on 5-string banjos.
11050         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
11051         Add beam correction to TabVoice.
11053         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
11054         using bold font; makes tabs more readable.
11056 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11058         * lily/font-select.cc (get_font_by_design_size): don't make
11059         Modified_font_metric; this causes trouble, since we don't know the
11060         font magnification from inside Pango_font::text_stencil()
11062         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
11064         * Documentation/user/notation.itely (The Lyrics context): comment out
11065         broken {Small ensembles} link.
11067         * scm/framework-svg.scm (output-framework): change calling convention.
11069         * lily/object-key-dumper-scheme.cc: new file.
11071         * lily/object-key-undumper-scheme.cc: new file.
11073         * lily/tweak-registration-scheme.cc: new file.
11075         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
11077         * Documentation/user/examples.itely (String quartet): uncomment
11078         broken example.
11080         * lily/font-config.cc: new file.
11082 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
11084         * scm/output-svg.scm: 
11085         * scm/output-gnome.scm: s/bigcheese/emmentaler.
11087         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
11089 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11091         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
11092         Add headers.
11094         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
11096 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11098         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
11100         * lily/include/main.hh: lose _b hungarian suffixes for global
11101         variables.
11103         * lily/include/lily-guile-macros.hh: new file.
11105         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
11107         * lily/general-scheme.cc: new file. 
11109         * lily/font-select.cc (get_font_by_design_size): retrieve
11110         PangoFont for (designsize . "pango-descr") entries.
11112         * lily/lily-parser-scheme.cc: new file.
11114         * lily/output-def-scheme.cc: new file.
11116         * lily/paper-book-scheme.cc: new file.
11118         * lily/duration-scheme.cc (LY_DEFINE): new file.
11120         * lily/pitch-scheme.cc:  new file.
11122         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
11124 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11126         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
11128 2005-01-06  Graham Percival  <gperlist@shaw.ca>
11130         * Documentation/user/notation.itely: minor editing.
11132         * Documentation/user/changing-defaults: minor editing.
11134         * Documentation/user/examples.itely: add template for
11135         string quartet part extraction; demonstrates tag.
11137 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
11139         * Documentation/user/notation.itely: documents
11140         format-mark-box-letters and format-mark-box-numbers
11142         * scm/define-context-properties.scm: change comment.
11144 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11146         * scm/framework-ps.scm (output-classic-framework): new function:
11147         dump systems as separate .eps files (without fonts) and write a
11148         single collecting .tex file.
11150 2005-01-05  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11152         * Documentation/user/notation.itely (Setting simple songs):
11153         Correct several errors in the equivalent formulation of
11154         \addlyrics. 
11155         (The Lyrics context): Corrected link to the SATB example.
11157 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11159         * scm/lily.scm (completize-formats): new function
11160         (postprocess-output): new function
11162         * lily/paper-book.cc (classic_output): change calling
11163         convention. Give basename as first argument. 
11164         remove Paper_book::post_processing().
11166         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
11168 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11170         * lily/paper-outputter.cc (LY_DEFINE): new function
11171         ly:outputter-close.
11173         * lily/main.cc: change --format,-f to --backend,-b
11175         * lily/include/main.hh: rename format to backend.
11177         * scm/translation-functions.scm (format-mark-box-numbers): add.
11178         patch by Erlend Aasland
11180 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11182         * lily/pango-font.cc (text_stencil): dump string as
11183         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
11185 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
11187         * configure.in (gui_b): Remove handy developer-only
11188         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
11189         CVS source installations (but break other non-default but correct
11190         PKG_CONFIG_PATH setups), as this is no longer developer-only.
11192         * SConstruct: 
11193         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
11194         compatibility (backportme).
11196         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
11198 2005-01-03  Werner Lemberg  <wl@gnu.org>
11200         Prepare glyph shapes for mf2pt1 conversion.
11202         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
11203         (accDiscant, accFreebase, accStdbase): Replace `draw' with
11204         `penstroke'.
11205         (accDot): Use `drawdot'.
11206         (accBayanbase): Replace `draw' with `draw_gridline'.
11207         (print_penpos): Moved to feta-macros.mf.
11208         (accOldEE): Replace `filldraw' with `penstroke'.
11209         Replace `draw' with `penstroke' and `drawdot'.
11211         * mf/feta-banier.mf: Code clean-up.
11212         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
11213         `fill'.
11215         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
11217         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
11218         paremeter to control drawing of labels.  Update all callers.
11220         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
11221         (new_bulb): Return a bulb as a single path.  To do that, it now
11222         takes some more parameters.  Updated all callers.
11223         (draw_gclef): Major clean-up.  `draw' has been replaced with
11224         `penstroke', unnecessary outlines have been removed.
11225         Remove (unused) gnome-canvas code.
11227         * mf/feta-macros.mf (print_penpos): New macro (from
11228         feta-accordion.mf).
11229         Other minor fixes.
11231         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
11232         ("Pedal dot"): Use `drawdot'.
11233         (draw_pedal_P): Add parameter to control drawing of labels.  Update
11234         all callers.
11235         Fix shape at top.
11236         (draw_pedal_e): Add parameter to control drawing of labels.  Update
11237         all callers.
11238         (draw_pedal_d): Add parameter to control drawing of labels.  Update
11239         all callers.
11240         Revert drawing direction.
11242         * mf/feta-schrift.mf (draw_fermata): Use single path.
11243         (draw_short_fermata): Replace `filldraw' with `fill'.
11244         (draw_long_fermata, draw_very_long_fermata): Replace calls to
11245         `draw_rounded_block' with a single path.
11246         ("Thumb"): Draw full circle instead of mirroring segments.
11247         (draw_accent): New macro.
11248         ("> accent", "espr"): Use it.
11249         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
11250         ("open (unstopped)"): Draw full circle instead of mirroring
11251         segments.
11252         (draw_vee): Removed.
11253         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
11254         ("Downbow"): Replace calls to `draw_rounded_block' with a single
11255         path.
11256         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
11257         partial pieces drawn with `fill' -- these do still overlap with the
11258         stem of the `t' but just once, not multiple times so that fontforge
11259         can handle it gracefully.
11260         Change other parts of the glyph so that fontforge's overlapping
11261         algorithm reliably works.
11262         (draw_heel): Replace `draw' with `fill'.
11263         (draw_toe): Use `draw_accent' instead of `draw_vee'.
11264         ("Flageolet"): Replace `draw' with `penstroke'.
11265         ("Segno"): Replace `filldraw' with `penstroke'.
11266         Replace `draw' with `drawdot'.
11267         ("Coda"): Replace `fill' with `penstroke', using a single path.
11268         ("Varied Coda"): Use less overlapping paths.
11269         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
11270         single path.
11272         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
11273         group to better control the `labels' command.
11274         Rename argument to `offset' and use it actually.  Update all
11275         callers.
11276         Replace `filldraw' with `fill'.
11277         ("mordent", "prallmordent", "upmordent", "downmordent",
11278         "lineprall"): Replace `draw' with `draw_gridline'.
11279         ("upprall", "downprall"): Replace `draw' with `fill'.
11281         * mf/feta-timesig.mf: Formatting.
11283         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
11284         to...
11285         ("Flat"): Here.
11286         (draw_paren): Move code to draw labels to...
11287         ("Right Parenthesis"): Here.
11289 2005-01-02  Graham Percival <gperlist@shaw.ca>
11291         * Documentation/user/notation.itely: add example of \setTextDecresc
11292         and \setTextDim.
11294 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
11296         * scm/define-markup-commands.scm :  fix glyph-strings of
11297         accidentals and \note-by-number
11299 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11301         * VERSION: 2.5.6 released.
11302         
11303         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
11305         * input/regression/new-markup-scheme.ly: oops. font-family=music
11306         -> font-encoding fetaMusic.  
11308         * lily/main.cc: put default to PS.
11310         * lily/tfm.cc: idem.
11312         * lily/afm.cc: idem.
11314         * lily/include/modified-font-metric.hh (struct
11315         Modified_font_metric): remove coding_scheme() method.
11317         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
11319         * scripts/convert-ly.py (conv): crash on encountering \encoding.
11321         * input/les-nereides.ly: convert to utf8
11323         * lily/modified-font-metric.cc (text_dimension): idem.
11325         * lily/parser.yy (TODO): idem.
11327         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
11329         * lily/lexer.ll: remove encoding
11331         * scm/framework-ps.scm (output-variables): separately scale the
11332         page to mm 
11334         * lily/pango-font.cc (Pango_font): fix scaling.
11336         * lily/font-metric.cc (design_size): design_size returns a
11337         dimension now as well.
11339 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11341         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
11342         brace generation. 
11344         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
11346 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
11348         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
11349         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
11351 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11353         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
11354         in first run as well.
11356         * scm/paper.scm (layout-set-staff-size): use text-font-size in
11357         dimension less points (ie. 12 = 12 point)
11359         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
11361         * lily/all-font-metrics.cc (find_pango_font): set description_
11363         * lily/pango-font.cc (text_stencil): export size as well.
11364         (text_stencil): fix scaling and extents box.
11366 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11368         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
11370         * Documentation/user/invoking.itely (Invoking lilypond): document
11371         texstr
11373         * scripts/convert-ly.py (conv): add ancient rules.
11375         * scm/clef.scm (c0-pitch-alist): replace - with .
11377         * scripts/lilypond-book.py (process_snippets): add texstr support.
11379         * scm/framework-texstr.scm (header): change extension to .textmetrics
11381         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
11382         -f tex.
11384         * lily/text-metrics.cc: new file.
11385         (try_load_text_metrics): new function
11387         * lily/include/text-metrics.hh: new file.
11389 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11391         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
11392         ly_scheme_function to ly_lily_module_constant.
11394         * lily/modified-font-metric.cc (text_dimension): try
11395         lookup_tex_text_dimension() first.
11397         * lily/tfm.cc: new function ly:load-text-dimensions
11399 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11401         * scm/output-texstr.scm (text): use \lilygetmetrics
11403         * scm/framework-texstr.scm (header): dump in new format.
11405         * tex/lilypond-tex-metrics: new file.
11406         
11407 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
11409         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
11410         mapping.
11411         (index_to_charcode): New method.
11413         * scm/output-ps.scm (glyph-string): 
11414         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
11416 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
11418         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
11419         implement fully, need FONT to get to charcode.
11421         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
11423         * scm: Cleanups.
11425         * Documentation/user/changing-defaults.itely: Fix internalsrefs
11426         {Tunable context properties},
11427         {All layout objects},
11428         {Music definitions}.
11430 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11432         * VERSION: release 2.5.5
11433         
11434         * lily/main.cc: use TeX as default output format.
11436         * flower/file-path.cc (find): try to open directly as well, so we
11437         find absolute path files. 
11439         * lily/pango-select.cc: new file.
11441         * scm/framework-ps.scm: remove all encoding code. 
11442         load pfb/pfa for PangoFont too.
11443         
11444         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
11446 2004-12-22  Werner Lemberg  <wl@gnu.org>
11448         Prepare glyph shapes for mf2pt1 conversion.
11450         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
11452         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
11453         (define_triangle_shape): Use it to replace `draw' with `fill' and
11454         `unfill'.  Update all callers.
11455         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
11456         (draw_cross): Ditto.
11457         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
11458         Use penrazor for better conversion with mf2pt1.
11459         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
11460         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
11461         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
11462         draw_la_head, draw_ti_head): Replace `filldraw' with
11463         `fill'.  Update all callers.
11465 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11467         * lily/paper-book.cc (output): revert: only allow a single output
11468         format.
11470         * lily/include/pango-font.hh: new file.
11472         * lily/pango-font.cc: new file.
11474         * lily/font-metric.cc (text_stencil): new routine
11476         * lily/all-font-metrics.cc (find_pango_font): new routine.
11478         * lily/include/font-metric.hh (struct Font_metric): add
11479         text_stencil()
11481         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
11483 2004-12-22  Werner Lemberg  <wl@gnu.org>
11485         Prepare glyph shapes for mf2pt1 conversion.
11487         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
11489         * mf/feta-toevallig.mf: Formatting.
11490         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
11491         ("Natural"): Fix paths to allow better postprocessing.
11492         (draw_meta_flat): Use `z3l' as additional point in path to get
11493         better conversion with mf2pt1.
11494         Other minor cleanups.
11495         ("3/4 Flat"): Add auxiliary points and modify path to replace
11496         `draw' with `fill'.
11497         ("Double Sharp"): Mirror path segments instead of picture elements
11498         to get a single outline.
11499         Modify path to replace `filldraw' with `fill'.
11501 2004-12-22  Graham Percival  <gperlist@shaw.ca>
11503         * input/test/unfold-all-repeats.ly: added file back.
11505         * Documentation/user/notation.itely,
11506         Documentation/user/programming-interface.itely
11507         Documentation/user/changing-defaults.itely: fixed misc broken
11508         links to input/test/ files.
11510 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
11512         * tex/texinfo.tex: Update.  We should not be distributing this,
11513         but since we do, use latest version.
11515         * Documentation/user/macros.itexi: Comment-out \fetaflat,
11516         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
11517         macros for feta glyphs.
11519 2004-12-22  Graham Percival  <gperlist@shaw.ca>
11521         * Documentation/user/changing-defaults.itely: fix index for set.
11523         * Documentation/user/converters.itely: added convert-ly bugs list
11524         from CVS.
11526 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11528         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
11529         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
11530         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
11531         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
11533         * mf/GNUmakefile (pfa_warning): Use less broken check.
11535         * python/lilylib.py (setup_environment): Remove cruft from
11536         GS_FONTPATH.
11538         * configure.in: Bump mftrace requirement to 1.1.1.
11540 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11542         * scm/output-svg.scm (beam): Use polygon.
11544         * scm/lily-library.scm: Bugfix.
11546         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
11548         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
11550 2004-12-19  Werner Lemberg  <wl@gnu.org>
11552         Prepare glyph shapes for mf2pt1 conversion.
11554         * mf/feta-eindelijk: Some formatting.
11555         (multi_rest_x, multi_beam_height): Removed.  Unused.
11556         ("Quarter rest"): Use `intersectiontimes' to create a single
11557         outline.
11558         (rest_crook): Removed.  Unused.
11559         (draw_rest_bulb): Return path (without filling).  Update callers.
11560         Simplified.
11561         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
11562         "128th rest"): Simplify `pat'.
11563         Create single outline.
11565 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11567         * mf/GNUmakefile (ALL_GEN_FILES):
11568         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
11570         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
11571         function.
11573 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11575         * scm/output-texstr.scm (placebox): add routine
11577         * VERSION (PACKAGE_NAME): release 2.5.4
11579         * scm/framework-texstr.scm (output-framework): new file.  
11581         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
11582         processing.
11584         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
11586         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
11587         rule.
11589         * configure.in (gui_b): bump mftrace requirement to 1.1.0
11591         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
11593         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
11595 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11597         * scm/framework-svg.scm (dump-page): Implement landscape.
11599 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11601         * lily/main.cc (setup_paths): Add svg to search path.
11603         * scm/output-svg.scm:
11604         * scm/framework-svg.scm: Add pageSet.  Update.
11605         (dump-fonts): New function.
11606         (output-framework): Use it.
11608         * mf/GNUmakefile: 
11609         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
11611 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11613         * tex/lilyponddefs.tex: comment out new ifpdf code.
11615 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11617         * GNUmakefile.in: 
11618         * SConstruct (symlink): Replace afm by otf.
11620         * scm/framework-gnome.scm (gnome-main): Remove invocation of
11621         ly:pango-add-afm-decoder.
11623         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
11625 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11627         * scm/output-ps.scm (new-text): don't access t glyph for getting
11628         space dimension.
11630         * ly/init.ly: warn about \version
11632         * lily/lexer.ll: set version-seen?
11634 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11636         * scm/output-svg.scm (string->entities): Update.
11638 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11640         * lily/main.cc (setup_paths): replace afm by otf for path. 
11642         * lily/pangofc-afm-decoder.cc: remove.
11644         * lily/include/pangofc-afm-decoder.hh: remove.
11646         * scm/framework-scm.scm (output-framework): new file.
11648         * mf/GNUmakefile: remove SAUTER_FONTS.
11649         remove SVG/sodipodi hacks.
11651         * scm/lily-library.scm (stderr): move stderr.
11653         * mf/GNUmakefile: remove AFM support.
11655         * buildscripts/mf-to-table.py (base): remove AFM support.
11657         * lily/open-type-font.cc (design_size): use design_size
11659 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
11661         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
11663 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11665         * mf/GNUmakefile: Generate combined aybabtu info.
11666         * mf/aybabtu.pe.in (i): Load it.
11668         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
11669         are not symbols.
11671         * lily/include/open-type-font.hh (count): New method.
11673         * mf/aybabtu.pe.in: Typo.
11675         * Documentation/user/out/lilypond-internals.nexi (Scheme
11676         functions): Typo.
11678         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
11680 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11682         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
11683         subfonts.
11685         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
11687         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
11688         (tex-font-command-raw): new function.
11690         * lily/include/virtual-font-metric.hh (Module): remove file
11692         * lily/virtual-font-metric.cc (Module): remove file.
11693         
11695         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
11696         (get_indexed_char): read bbox from lily table if present.
11698 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11700         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
11701         aybabtu.subfonts
11703         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
11704         global glyphname. Enables more than 64 glyphs in the OTF.
11706 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11708         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
11709         braces.
11711         * lily/open-type-font.cc (design_size): Use 12 as default for
11712         design size.
11714         * mf/aybabtu.pe.in: New file.  Merge all our braces.
11716         * mf/GNUmakefile: Generate aybabtu.
11718         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
11720 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11722         * scm/lily-library.scm (char->unicode-index): Remove.
11724         * scm/output-gnome.scm (text): Bugfix for plain string input.
11725         Updates.
11727         * scm/output-svg.scm (svg-font): Add weight to font selection.
11729 2004-12-14  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11731         * Documentation/topdocs/INSTALL.texi (Top): Point to
11732         buildscripts/out/clean-fonts instead of
11733         buildscripts/clean-fonts.sh. 
11735 2004-12-13  Graham Percival  <gperlist@shaw.ca>
11737         * input/regression/figured-bass.ly: attempt to clarify text.
11739         * Documentation/user/notation.tely: add cindex for tag, attempt to
11740         add figured bass example.
11742         * Documentation/user/changing-defaults: basic editing.
11744 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11746         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
11748         * lily/open-type-font.cc (LY_DEFINE): new function
11749         ly:font-sub-fonts
11751         * lily/include/font-metric.hh (struct Font_metric): new method
11752         sub_fonts()
11754         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
11755         . with - in add.stem.
11756         
11757 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11759         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
11760         and fetaDynamic.
11762         * lily/rest.cc (glyph_name): Change - to . .
11764         * scm/output-gnome.scm (text): Hello world, again.
11766         * scm/output-svg.scm (named-glyph): New function.  Hello world!
11768         * lily/modified-font-metric.cc (index_to_charcode): New method.
11770         * lily/include/font-metric.hh (index_to_charcode): New function.
11772         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
11773         new function.
11774         (ly:font-glyph-to-index): Remove.
11776 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11778         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
11780         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
11782         * lily/open-type-font.cc (load_scheme_table): new function
11784         * lily/dots.cc (print): replace - 
11786         * lily/open-type-font.cc (attachment_point): new function.
11787         (load_table): read LILC table
11789         * buildscripts/gen-bigcheese-scripts.py (Module): new
11790         file. Generate FF scripts.
11792         * mf/feta-din10.mf: idem.
11794         * mf/feta-nummer10.mf: remove mf files.
11796         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
11798 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11800         * lily/lily-guile.cc: Use scm_from_locale_stringn.
11802         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
11803         compatibility.
11805 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11807         * lily/open-type-font.cc (get_indexed_char): scale metrics by
11808         design-size and units_per_EM.
11810         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
11812 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11814         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
11815         does not crash fontforge.
11817         * scm/lily-library.scm (char->unicode-index): Hack to map onto
11818         PUA.
11820 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11822         * scm/framework-ps.scm (ps-embed-cff): new function.
11824         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
11826 2004-12-12  Werner Lemberg  <wl@gnu.org>
11828         * mf/bigcheese.pe.in: Add PUA mapping.
11829         Don't create Type 42 but bare CFF font.
11831 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11833         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
11834         within canvas boundaries.
11836         * mf/merge.pe.in: Set font names, version, license GPL.
11838         * make/substitute.make: Add FONTFORGE.
11840         * config.make.in (FONTFORGE): Add.
11842         * configure.in (gui_b): Use PATH_PROG for fontforge.
11844 2004-12-11  Graham Percival  <gperlist@shaw.ca>
11846         * scm/define-markup-commands.scm: add baseline-skip to info
11847         about \column.
11849 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11851         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
11853         * scm/output-gnome.scm (named-glyph): Use it.
11855         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
11857         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
11858         (upper_string, lower_string, reverse_string): Remove.
11860         * configure.in (fontforge): Reinstate version check.
11862         * ly/engraver-init.ly: Fix clef glyph names.
11864         * lily/time-signature.cc (special_time_signature): Fix fraction
11865         glyph names.
11867 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11869         * mf/merge.pe: new file.
11871         * lily/freetype.cc: new file.
11873         * lily/include/open-type-font.hh (class Open_type_font): new file.
11875         * lily/include/freetype.hh: new file.
11877         * lily/open-type-font.cc: new file.
11879         * lily/all-font-metrics.cc (find_otf): new function.
11881 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11883         * lily/time-signature.cc (special_time_signature): Fix.
11885         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
11886         GTK2 before checking for pango.  Fixes -fgnome.
11888         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
11889         Scheme name.
11891         * scm/define-markup-commands.scm:
11892         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
11894         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
11896         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
11897         date versions.  Fixes configure.
11898         (STEPMAKE_CHECK_VERSION): Support optional actual program version
11899         argument.
11901 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11903         * buildscripts/mf-to-table.py (write_ps_encoding): write real
11904         names in .enc
11906         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
11908 2004-12-09  Graham Percival  <gperlist@shaw.ca>
11910         * Documentation/user/changing-defaults.itely: add info about
11911         make-dynamic-script
11913         * Documentation/user/notation.itely: add link in dynamics to
11914         section about make-dynamic-script.
11916 2004-12-09  Christian hitz  <chhitz@gmx.net>
11918         * lily/lily-guile.cc: change MACOS_X to __APPLE__
11920 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11922         * buildscripts/mf-to-table.py (parse_logfile): use . for
11923         concatting name and group.
11924         (parse_logfile): use M for Minus (negative.)
11926         * lily/include/type-swallow-translator.hh
11927         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
11929         * lily/*.cc: cosmetics around = sign.
11931         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
11932         lyric spacing on the penultimate column.
11934 2004-12-05  Christian Hitz  <chhitz@gmx.net>
11936         * configure.in:
11937         * lily/accidental-placement.cc:
11938         * lily/bar-line.cc:
11939         * lily/beam-concave.cc:
11940         * lily/beam-quanting.cc:
11941         * lily/beam.cc:
11942         * lily/bezier-bow.cc:
11943         * lily/bezier.cc:
11944         * lily/break-align-interface.cc:
11945         * lily/custos.cc:
11946         * lily/dimension-cache.cc:
11947         * lily/dot-column.cc:
11948         * lily/font-metric.cc:
11949         * lily/font-select.cc:
11950         * lily/gourlay-breaking.cc:
11951         * lily/grob-property.cc:
11952         * lily/grob.cc:
11953         * lily/lily-guile.cc:
11954         * lily/line-spanner.cc:
11955         * lily/lookup.cc:
11956         * lily/lyric-extender.cc:
11957         * lily/lyric-hyphen.cc:
11958         * lily/mensural-ligature.cc:
11959         * lily/midi-def.cc:
11960         * lily/misc.cc:
11961         * lily/note-collision.cc:
11962         * lily/note-column.cc:
11963         * lily/note-head.cc:
11964         * lily/paper-outputter.cc:
11965         * lily/percent-repeat-item.cc:
11966         * lily/rest-collision.cc:
11967         * lily/side-position-interface.cc:
11968         * lily/simple-spacer.cc:
11969         * lily/slur-configuration.cc:
11970         * lily/slur-scoring.cc:
11971         * lily/slur.cc:
11972         * lily/spaceable-grob.cc:
11973         * lily/spacing-spanner.cc:
11974         * lily/spanner.cc:
11975         * lily/staff-symbol-referencer.cc:
11976         * lily/stem.cc:
11977         * lily/stencil.cc:
11978         * lily/system-start-delimiter.cc:
11979         * lily/system.cc:
11980         * lily/text-item.cc:
11981         * lily/tie.cc:
11982         * lily/tuplet-bracket.cc:
11983         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
11984         <cmath> beacause isinf/isnan is undefined in <cmath>
11986 2004-12-03  Mats Bengtsson  <mabe@drongo.s3.kth.se>
11988         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
11990 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11992         * VERSION: release 2.5.3
11993         
11994 2004-11-29  Arno Waschk <arno@arnowaschk.de>
11996         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
11998 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12000         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
12002         * lily/note-head.cc (internal_print): always try the "s" head if
12003         u/d not found.
12005         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
12007 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12009         * mf/parmesan-heads.mf (overdone_heads): typos.
12011 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12013         * lily/parser.yy (markup): in markups, { .. } without command
12014         before are also flattened, ie \line must be explicitely used.
12016         * Documentation/user/changing-defaults.itely:
12017         * Documentation/user/notation.itely: 
12018         * input/wilhelmus.ly: 
12019         * input/regression/instrument-name-markup.ly: 
12020         * input/regression/markup-score.ly: 
12021         * input/regression/new-markup-scheme.ly: 
12022         * input/regression/new-markup-syntax.ly: 
12023         * input/test/coriolan-margin.ly: use \line in markups where
12024         appropriate
12025         
12026 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12028         * scm/new-markup.scm (map-markup-command-list): helper function
12029         used in parser.yy to map markup commands on a markup list.
12031         * lily/parser.yy: get rid off < > in markups by treating { } as
12032         real lists.
12034         * lily/lexer.ll: remove < > from markup lexer mode.
12036         * scripts/convert-ly.py (conv): add rule for converting 
12037         \markup < > to \markup { }
12039         * ly/titling-init.ly: 
12040         * input/test/coriolan-margin.ly: 
12041         * input/regression/new-markup-syntax.ly: 
12042         * input/regression/new-markup-scheme.ly: 
12043         * input/regression/multi-measure-rest-text.ly: 
12044         * input/regression/markup-stack.ly: 
12045         * input/regression/markup-score.ly: 
12046         * input/regression/instrument-name-markup.ly: 
12047         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
12048         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
12049         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
12050         * input/wilhelmus.ly: 
12051         * Documentation/user/notation.itely: 
12052         * Documentation/user/music-glossary.tely: 
12053         * Documentation/user/changing-defaults.itely: change < > to { } in
12054         markups
12056 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12058         * lily/accidental-placement.cc (position_accidentals): shortcut if
12059         no accidentals to place.
12061 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12063         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
12064         typo s/ly:dimension ?/ly:dimension?/
12066         * input/regression/lily-in-scheme.ly: 
12067         * input/regression/music-function.ly: 
12068         * ly/spanners-init.ly (assertBeamSlope): 
12069         * scm/music-functions.scm (def-grace-function): add the paper
12070         argument to music function definitions.
12072 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12074         * lily/moment.cc (LY_DEFINE):
12075         ly:moment-main-{denominator,numberator}, new function.
12077         * lily/score-engraver.cc (typeset_all): assign to column on basis
12078         of axis-group-parent-X setting.
12080         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
12081         add_element() on basis of axis-group-parent-Y setting.
12083         * lily/grob.cc: add axis-group-parent-{XY} properties.
12085         * input/regression/spacing-stick-out.ly: new file.
12087         * lily/simple-spacer.cc (add_columns): use binary search for
12088         setting column rods. Changes O(n^2) to O(n log(n)) for
12089         constructing spacing problem from columns.
12090         (add_columns): read allow-outside-line to make sure no texts stick
12091         out.
12092         (solve): Simple_spacer::is_active() only determines
12093         satisfies_constraints_ for non-ragged typesetting.
12095         * lily/simultaneous-music.cc (to_relative_octave): only set
12096         old_relative_used if return pitch actually changed.
12098         * scm/define-context-properties.scm
12099         (all-user-translation-properties): change to match implementation.
12101         * python/lilylib.py: Replace re.match by re.search and adds "-c
12102         showpage" to the gs command line (Johannes Schindelin)
12104         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
12105         before processing. Prevents crash when inf is in the extent.
12107         * scm/define-markup-commands.scm (note-by-number): add "s" to
12108         "noteheads-" glyphname.
12110         * lily/parser.yy (Generic_prefix_music): supply parser argument to
12111         music function as well.
12112         
12113 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12115         * VERSION: release 2.5.2
12117         * Documentation/user/changing-defaults.itely (Creating titles):
12118         add breakbefore variable.
12120         * lily/paper-book.cc (set_system_penalty): new function. Set
12121         penalty_ based on breakBefore setting
12123         * lily/context-specced-music-iterator.cc (construct_children):
12124         interpret special context id $uniqueContextId 
12126         * lily/context.cc (create_unique_context): new method. Move
12127         creation of unique (\new) contexts into interpreting phase. This
12128         makes
12130           foo= \new Staff ..
12131           << \foo \foo >>
12133         produce 2 staves.
12134         
12136         * scm/define-music-properties.scm (all-music-properties): add
12137         quoted-voice-direction
12139         * ly/music-functions-init.ly: killCues function.
12141         * scm/music-functions.scm (cue-substitute): move creation of voice
12142         contexts further to the back. 
12144 2004-11-25  Werner Lemberg  <wl@gnu.org>
12146         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
12147         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
12149 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
12151         * buildscripts/guile-gnome.sh: Fixed typo.
12153 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12155         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
12157         * scripts/abc2ly.py (dump_slyrics): add ord(). 
12159         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
12160         to regular engraver. 
12162 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12164         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
12166 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
12168         * scm/define-markup-commands.scm (fill-line): Typo.
12170         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
12171         and newer.
12173 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
12175         * ly/dynamic-scripts-init.ly: Fixed typo.
12177 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12179         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
12180         note-head, to have different attachment points for up and down.
12182         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
12184         * mf/feta-generic.mf (else): remove solfa.
12186         * mf/feta-bolletjes.mf (tishape): remove unicode test.
12188         * scm/define-context-properties.scm
12189         (all-user-translation-properties): add shapeNoteStyles property.
12191         * lily/shape-note-heads-engraver.cc (process_music): new file.
12193         * lily/event.cc (transpose): call Event::transpose() for
12194         transposing the tonic.
12196 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12198         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
12199         Unicode/OpenType and AFM.
12201         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
12203 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12205         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
12207         * lily/context.cc (Context): unprotect key from ctor.
12209         * scm/stencil.scm (stack-lines): return empty-stencil if argument
12210         is '()
12211         (stack-stencils): idem.
12213         * Documentation/user/changing-defaults.itely (Creating titles):
12214         document new title layout options.
12216         * lily/parser.yy (lilypond_header_body): copy previous
12217         $globalheader if present.
12219         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
12220         ly:module-copy
12221         
12222         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
12224         * scm/titling.scm: remove old titling functions
12226         * lily/stencil.cc (translate): remove absolute dimension.
12228         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
12229         via markup.
12231         * scm/page-layout.scm (marked-up-headfoot): create header/footer
12232         field from user-supplied markup
12234         * scm/define-markup-commands.scm (on-the-fly): new markup
12235         command. Enter SCM markup procedure directly in Scheme.
12236         (fromproperty): new markup command. Read markup from props argument.
12238         * scm/titling.scm (marked-up-title): create title via
12239         user-specified markup. 
12241         * scm/define-markup-commands.scm (column): remove empty stencils
12242         from column.
12244         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
12245         not have side-effect of creating variable stub.
12247         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
12249 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
12251         * scm/encoding.scm (coding-alist): 
12252         * scm/font.scm (add-ec-fonts):
12253         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
12254         Extended-TeX-Font-Encoding---Latin.
12256         * lily/side-position-interface.cc (general_side_position): Add
12257         actual offset to error message (avoid constant error messages).
12259         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
12260         block.
12262         * lily/font-select.cc (select_encoded_font)
12263         (get_font_by_mag_step, get_font_by_design_size): 
12264         * lily/modified-font-metric.cc (Modified_font_metric): 
12265         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
12267         * scm/encoding.scm (coding-alist): Add fetaDynamic.
12268         (read-encoding-file): Bugfix: do not require space after bracket.
12270         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
12271         these do not exist.
12273 2004-11-20  Graham Percival  <gperlist@shaw.ca>
12275         * Documentation/user/notation.itely: added info about typesetting
12276         boxed bar numbers.
12278 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12280         * flower/interval.cc (T_to_string): gcc4 fixes.
12282         * scm/define-markup-commands.scm (fill-line): use
12283         stack-stencils. This fixes problems with putting already centered
12284         stencils in a line.
12286         * VERSION: release 2.5.1
12288         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
12290 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12292         * input/example-[1-3].ly: simplify.
12294         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
12296         * scm/output-ps.scm (new-text): new function. Use glyphshow to
12297         show glyphs.
12299         * scm/encoding.scm (decode-byte-string): new function.
12301         * scripts/convert-ly.py (conv): add warning about
12302         set-global-staff-size.
12304         * Doxyfile: add. 
12306         * scripts/convert-ly.py (conv): add raggedlastbottom rule
12307         (conv): warn for TextSpanner split.
12308         (conv): warn for textheight.
12310 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
12312         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
12313         building the documentation, info with images are installed.
12314         (final-install): Fix description.  Mention sourcing of login
12315         scripts (instead of running).
12317 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12319         * Debian lmodern support.  Note that LilyPond will issue warnings
12320         
12321             no such encoding: "FontSpecific"
12323           The font selection mechanism wants to get the encoding from the
12324           font itself, but the idea of lmodern is that it is usable with
12325           different encodings, ie, Lily should get the encoding from the
12326           font tree, rather than the font itself.  This would require some
12327           more work.
12328         
12329         * configure.in: Test for and accept lmodern if EC fonts not found.
12331         * scm/framework-tex.scm (font-load-command): TeX font name
12332         mangling for latin1 encoded cork-lm fonts.
12333         (convert-to-ps): Load lm.map if available.
12335         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
12336         available.
12338         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
12340         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
12341         available.
12343         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
12344         path for absolute file name, that is silly.
12346         * lily/score-engraver.cc (initialize): 
12348         * Documentation/user/GNUmakefile (local-install-info): Invoke
12349         install-info --remove first.
12351         * #include cleanup (Andreas Scherer).
12353 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
12355         * input/test/script-abbreviations.ly: fix typos.
12357 2004-11-17  Werner Lemberg  <wl@gnu.org>
12359         * python/lilylib.py (options_help_str): Support pretty-printing of
12360         newlines in fourth element of option description.
12362         * scripts/lilypond-book.py (option_definitions): Use new lilylib
12363         feature.
12364         Sort options.
12366         * Documentation/user/lilypond-book.itely: Finish update.
12368 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12370         * Documentation/user/macros.itexi: Add comment about \command.
12372         * Documentation/user/lilypond.tely:
12373         * Documentation/user/lilypond-book.itely: Fix names of lilypond
12374         and lilypond-book nodes, so that `info lilypond' visits the manual
12375         at top level, and `info lilypond-book' visits the lilypond-book
12376         section.
12378         * Documentation/user/GNUmakefile (local-install-info): Fix rules
12379         and packager messages.
12381         * lily/pangofc-afm-decoder.cc: Update test.
12383 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12385         * scm/lily-library.scm (char->unicode-index): New function.
12387         * scm/output-gnome.scm: 
12388         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
12390         * Proper naming of file name throughout; s/filename/file[-_]name/.
12392         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
12394         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
12396 2004-11-16  Werner Lemberg  <wl@gnu.org>
12398         * scripts/lilypond-book.py: The Lord has commanded me to use only
12399         tabs for indentation.  Your humble servant obeys.
12401 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12403         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
12404         including font, if LilyPond-feta font is only feta font in path.
12406         * scm/output-gnome.scm (text): Revert to file name of font if font
12407         has no name.  Fixes ec font selection.
12408         (char): Bugfix: do not utf8 twice.  Fixes clefs.
12410         * scm/framework-svg.scm:
12411         * scm/output-svg.scm: New file.  TODO: figure out how to
12412         do character by index in font.
12414         * scm/output-sodipodi.scm: Remove.
12416         * scm/output-ps.scm (stem): Remove.
12418 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12420         * scm/output-gnome.scm (beam): New function.
12421         (slur): Round corners.
12422         (round-filled-box): Round corners.
12424 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12426         * scm/output-gnome.scm (beam): add function.
12427         (draw-line): new routine.
12428         (dashed-line): stub; call draw-line
12429         (polygon): new routine.
12431 2004-11-15  Werner Lemberg  <wl@gnu.org>
12433         * Documentation/user/lilypond-book.itely: Revise section on
12434         lilypond-book options.
12435         Other minor fixes.
12437         * scripts/lilypond-book.py: Change indentation to 4.
12438         Minor formatting.
12440 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12442         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
12443         grobs that have tweaks specced.
12444         
12445 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
12447         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
12449 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12451         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
12452         actual char #, not 0 based index.
12454         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
12456         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
12457         Warning: do make -C mf clean.
12459         * lily/context-property.cc: Compile fix.
12461         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
12462         Grok ec-fonts, braces and dynamics.
12464         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
12466 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12468         * lily/include/tweak-registration.hh: new file.
12470         * lily/tweak-registration.cc: new file.
12472         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
12473         saving tweaks.
12475         * scm/output-gnome.scm (text): comment dribble.
12477 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12479         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
12481         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
12482         path-def before using.  Fixes muchtomany slurs in wrong places
12483         bug.
12485 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12487         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
12489         * lily/include/object-key-undumper.hh (Module): new file.
12491         * lily/object-key-undumper.cc (Module): New file. Deserialize
12492         keys. SCM bindings
12494         * lily/object-key-dumper.cc (Object_key_dumper): idem.
12495         Provide SCM bindings.
12497         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
12498         new file. Serialize object keys.
12499         
12500         * lily/object-key.cc (dump): new function.
12501         (as_scheme): new virtual function
12502         (undump): new function
12503         (undumpers): new table.
12505         * lily/include/global-context.hh (Context): take \score key upon init.
12507         * lily/object-key-dumper.cc (serialize_key): new file.
12509         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
12511         * lily/lily-lexer.cc: remove \quote.
12513         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
12515         * lily/context.cc (Context): take key argument in ctor.
12516         (create_context): new function
12518         * lily/grob.cc (Grob): take key argument in ctor.  
12520         * lily/lilypond-key.cc (do_compare): new file.
12522         * lily/object-key.cc (Object_key): new file.
12524         * lily/include/object-key.hh (class Object_key): new file.
12526         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
12528 2004-11-13  Graham Percival  <gperlist@shaw.ca>
12530         * Documentation/user/lilypond-book.itely: add small warning about
12531         noindent default in lilypond-book.
12533         * Documentation/user/converters.itely: add examples for convert-ly.
12535         * Documentation/user/examples.itely: change version string in templates
12536         to 2.4.0.
12538 2004-11-12  Karl Hammar  <karl@aspodata.se>
12540         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
12541         cmdline, use xargs instead (backportme)
12543 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
12544         
12545         * Documentation/user/: Numerous fixes in the user manual.
12547 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12549         * lily/parser.yy (re_rhythmed_music): search music expression for
12550         context-id, surround by \new Voice if not found. Fixes:
12551         addlyrics-second-staff.ly
12553         * VERSION: 2.5.0 released.
12554         
12555 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12557         * Documentation/index.html.in: Fix url to one big page.  (backportme)
12559         * Documentation/user/GNUmakefile: Separate rules for split and
12560         unsplit html documents.  Remove perl massaging.  (backportme)
12562 2004-11-11  Graham Percival  <gperlist@shaw.ca>
12564         * Documentation/user/lilypond-book.itely: add short warning about
12565         \lilypond{} in LaTeX docs.
12567 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12569         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
12570         found.  (backportme)
12572         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
12573         version requirement.  (backportme)
12575         * configure.in: Be explicit about old versions of
12576         ec-fonts-mtraced.  (backportme)
12578         * lily/context-selector.cc (set_tweaks): New function.
12579         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
12580         web with -DTWEAK.
12582         * Documentation/user/introduction.itely (Automated engraving):
12583         Remove fragment option.  Fixes web.
12585         * lily/context-property.cc (make_item_from_properties):
12586         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
12587         #ifdef.
12589         * scm/define-context-properties.scm
12590         (all-internal-translation-properties): Add tweakRank and tweakCount.
12592         * lily/grob.cc: 
12593         * scm/define-grob-properties.scm (all-internal-grob-properties):
12594         Add tweak-rank and tweak-count.
12596 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12598         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
12599         New function.
12600         (text): Use them.
12602         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
12603         animated/opaque grob dragging tweaks.
12605         * buildscripts/guile-gnome.sh: Update.
12607 2004-11-10  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12609         * scm/define-grobs.scm (all-grob-descriptions): Added
12610         line-interface to the LigatureBracket object.
12612 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12614         * scm/framework-gnome.scm (item-event): Support non-animated mouse
12615         dragging tweaks.
12617         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
12619         * lily/context-selector.cc (store_context): New function.
12621         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
12622         (store_grob): New function.
12623         (identify_grob): Add Moment parameter.
12625         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
12626         exists.
12628         * scm/framework-gnome.scm (save-tweaks): Write as alist.
12630 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12632         * scm/framework-gnome.scm (item-event): Print grob id.
12633         (save-tweaks): New function.
12634         (tweak): New funtion.
12635         (item-event): Use it, bound to arrow keys.
12637         * lily/context-property.cc (make_item_from_properties): Register grob.
12638         * lily/context.cc (add_context): Register context.
12640         * lily/include/context-selector.hh:
12641         * lily/include/grob-selector.hh:
12642         * lily/context-selector.cc:
12643         * lily/grob-selector.cc: New file.
12645 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12647         * lily/slur.cc: add 'positions to interface
12649         * lily/main.cc: reinstate PS as standard output format. 
12651         * scm/framework-tex.scm (output-preview-framework): print systems
12652         up to first non title system.
12654         * lily/grace-engraver.cc (start_translation_timestep): split
12655         scm_cadddr
12656         
12657 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12659         * lily/quote-iterator.cc (Module): remove old quote-iterator
12661         * scm/define-music-types.scm (music-descriptions): move
12662         NewQuoteMusic over QuoteMusic
12664         * Documentation/user/notation.itely (Formatting cue notes): use
12665         \cueDuring.
12667         * lily/new-quote-iterator.cc (quote_ok): new function.
12669         * input/regression/quote-cue-during.ly: new file.
12671         * input/regression/quote-grace.ly: new file.
12673         * scm/define-context-properties.scm (Module): change definition of
12674         graceSettings
12676         * lily/context-property.cc (Module): rename from
12677         translator-property.cc
12679         * lily/context.cc (context_name_symbol): new function
12681         * lily/grace-engraver.cc: new file. Set properties for grobs based
12682         on the grace-ness of now_moment().
12684         * scm/music-functions.scm (add-grace-property): use list
12685         iso. vector for graceSettings
12686         remove set-{start,stop}-grace-properties. 
12688         * lily/new-quote-iterator.cc (construct_children): set
12689         quote_outlet_ if no quoted-context-{id,type} specified.
12691         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
12693         * lily/parser.yy (command_element): remove \quote.
12695         * ly/music-functions-init.ly (location): add quoteDuring music
12696         function. 
12698         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
12699         optional semicolon. (backportme)
12701 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12703         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
12704         need to link to GUILE et al.
12706 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12708         * scm/define-music-properties.scm (all-music-properties): add
12709         quoted-context-type, quoted-context-id.
12711         * scm/lily.scm (type-check-list): new function.
12712         
12713         * scm/lily-library.scm: new file. Generic library routines.
12715         * lily/parser.yy (Generic_prefix_music): move typechecking out of
12716         parser.
12718         * ly/music-functions-init.ly: add quoteDuring function.
12720         * lily/include/music-iterator.hh (class Music_iterator): rename
12721         set_translator -> set_context
12723         * lily/parser.yy (Generic_prefix_music_scm): add
12724         MUSIC_FUNCTION_SCM_SCM_MUSIC
12726         * scm/lily.scm (sanitize-command-option): new function. (backportme)
12728         * scm/framework-tex.scm (header): sanitize TeX paper size.
12729         (backportme)
12731 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12733         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
12735         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
12737         * scm/framework-tex.scm (font-load-command): Use T1 if no
12738         font-encoding set.  (backportme)
12740         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
12741         exists before converting.  (backportme)
12743         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
12744         exists before converting.  (backportme)
12745         (convert-to-ps): Remove .ps file if it exists before
12746         converting.  (backportme)
12748         * lily/lexer.ll: Remove extra progress newline, use present tense.
12750         * scm/paper.scm (paper-alist): public.
12751         * scm/framework-tex.scm (convert-to-ps):
12752         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
12753         command line.
12755 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12757         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
12759         * lily/recording-group-engraver.cc (derived_mark): mark
12760         now_events_. (backportme)
12762 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12764         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
12766         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
12767         invoking latex. (backportme.)
12769         * lily/stem.cc (off_callback): center stems for all rest stems.
12771 2004-11-05  Werner Lemberg  <wl@gnu.org>
12773         * Documentation/user/lilypond.tely: Add more guidelines for writing
12774         lilypond texinfo documents.
12776 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
12778         * Documentation/index.html.in: remove <hr>.
12780         * THANKS: change 2.3 to 2.4.
12782 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
12784         * scm/output-gnome.scm: More fontconfig comment.
12786 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
12788         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
12789         <package> directory in $(builddir)/share according with
12790         PACKAGE_NAME defined in the VERSION file.
12792 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12794         * lily/beam.cc (rest_collision_callback): use local beam
12795         multiplicity.
12797         * input/regression/stem-stemlet.ly: new file.
12799         * lily/stem.cc (add_head): store rests as well.
12801         * scm/define-grob-properties.scm (all-user-grob-properties): add
12802         stemlet-length
12804         * lily/stem.cc: store rests as well.
12805         
12806         * input/regression/new-slur.ly: mention forcing.
12808 2004-11-04  Werner Lemberg  <wl@gnu.org>
12810         * Documentation/user/*: A new round of layout fixes and document
12811         structure cleanup.
12813 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
12815         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
12817 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12819         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
12821 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12823         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
12825         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
12827         * lily/main.cc (main): Invoke identify.
12829         * scm/lily.scm (postscript->pdf): Remove progress newline.
12830         Write progress to stderr.
12832         * lily/paper-book.cc (output): Remove progress newline.
12834         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
12835         gettext on user messages, and remove whitespace.
12837         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
12839         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
12840         argv[0] (Thomas Scharkowski).
12842         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
12843         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
12844         for ec-fonts-mtraced.
12846         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
12847         --srcdir build (Bertalan).
12849         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
12850         headers and library too (Laura Conrad).
12852         * Documentation/topdocs/INSTALL.texi (Top): Mention development
12853         package for guile too (Laura Conrad).
12855         * lily/main.cc (usage): Typo.
12857 2004-11-02  Werner Lemberg  <wl@gnu.org>
12859         * Documentation/user/notation.ly: More fixes to improve appearance.
12861         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
12862         better output for multicolumn tables.
12864 2004-11-01  Mats Bengtsson  <mabe@drongo.s3.kth.se>
12866         * lily/main.cc (dir_info): Fixed typo in the printouts.
12868 2004-11-01  Werner Lemberg  <wl@gnu.org>
12870         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
12871         of output.
12872         Set `per_line' to 2; replace hard-coded value with it.
12874         * Documentation/user/*: Many fixes to improve appearance of
12875         printed manual.
12877 2004-11-01  Werner Lemberg  <wl@gnu.org>
12879         * Documentation/user/changing-defaults.itely,
12880         Documentation/user/notation.ly,
12881         Documentation/user/programming-interface.itely: Use @/.
12882         Fix formatting of some lilypond snippets and tables.
12884         * scripts/lilypond-book.py (compose_ly): Provide useful default
12885         for LINEWIDTH in `override'.
12887 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12889         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
12891 2004-10-31  Werner Lemberg  <wl@gnu.org>
12893         Resetting @exampleindent to `5' gives ugly results with texinfo's
12894         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
12895         (if not quoting) to change @exampleindent only locally.
12897         * scripts/lilypond-book.py (NOQUOTE): New variable.
12898         (output) [LATEX]: Remove AFTER and BEFORE.
12899         [TEXINFO]: Remove AFTER and BEFORE.
12900         Fix QUOTE and VERBATIM pattern.
12901         Add NOQUOTE pattern.
12902         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
12903         and BEFORE.
12904         [output_texinfo]: Use NOQUOTE.
12906 2004-10-31  Graham Percival  <gperlist@shaw.ca>
12908         * Documentation/user/changing-defaults.itely: clarify paper
12909         size commands with correct info.
12911         * Documentation/user/lilypond-book.itely: add more docs for
12912         filename extensions.
12914 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12916         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
12917         (PATCH_LEVEL): start 2.5.0.
12919 #Local variables:
12920 #coding: utf-8
12921 #End: